Jump to content

391 posts in this topic

Recommended Posts

Yeah - I Know. Seems a crazy way of doing it but maybe it's a better way??? Who knows.

 

Anyway, I'm nearly there with my BGM_SVG theme. It now includes images as symbols, where appropriate, and I've finally got round to including the font in the Theme file.

 

I still need to add images for the scroll bar and add night images for checkboxes, radio buttons and scroll bar. Maybe some other clean-ups etc. before I release it properly. I envisage this first release will not include animation.

 

Here's my latest file for testing. I'm interested in hearing any issues. For example, if there's anything that's not aligned properly or something that's obviously incorrect.

 

BGM_SVG_v0.8.2.zip

 

Edited by blackosx

Share this post


Link to post
Share on other sites
Advertisement
1 hour ago, blackosx said:

Yeah - I Know. Seems a crazy way of doing it but maybe it's a better way??? Who knows.

 

Anyway, I'm nearly there with my BGM_SVG theme. It now includes images as symbols, where appropriate, and I've finally got round to including the font in the Theme file.

 

I still need to add images for the scroll bar and add night images for checkboxes, radio buttons and scroll bar. Maybe some other clean-ups etc. before I release it properly. I envisage this first release will not include animation.

 

Here's my latest file for testing. I'm interested in hearing any issues. For example, if there's anything that's not aligned properly or something that's obviously incorrect.

 

BGM_SVG_v0.8.2.zip

 

Please ask me to add it to Clover (Theme) to work?

Thank you.

Share this post


Link to post
Share on other sites

Yes. Install it as you would any other theme.

So, download the attachment, unzip it and drop the BGM_SVG_v0.8.2 dir in to your EFI/Clover/Themes directory.

Then either:

1 - change your config.plist GUI->Theme Entry to BGM_SVG_v0.8.2 or NVRAM var, if using one.

2 - Reboot in to Clover GUI with your currently installed theme, then change the theme in the GUI by navigating the menu options.

 

Edited by blackosx

Share this post


Link to post
Share on other sites
13 minutes ago, blackosx said:

Yes. Install it as you would any other theme.

So, download the attachment, unzip it and drop the BGM_SVG_v0.8.2 dir in to your EFI/Clover/Themes directory.

Then either:

1 - change your config.plist GUI->Theme Entry to BGM_SVG_v0.8.2 or NVRAM var, if using one.

2 - Reboot in to Clover GUI with your currently installed theme, then change the theme in the GUI by navigating the menu options.

 

Please look at my Themes folder and config.plist, where I have a problem that does not show the .svg theme.

Thank you.

Archive.zip

Share this post


Link to post
Share on other sites

That looks fine.

Do you have a Clover.Theme nvram var set? Type nvram -p in terminal to check. if you do then that will take priority over config.plist.

 

But don't worry, just boot in to Clover using your current theme and select the theme from the menus. Options -> GUI tuning -> Themes ->

 

Share this post


Link to post
Share on other sites
27 minutes ago, blackosx said:

That looks fine.

Do you have a Clover.Theme nvram var set? Type nvram -p in terminal to check. if you do then that will take priority over config.plist.

 

But don't worry, just boot in to Clover using your current theme and select the theme from the menus. Options -> GUI tuning -> Themes ->

 

The BGM_SVG_v0.8.2 theme moves with the arrows forward after the start menu is OK, but it does not go back.

The Clovy Theme is OK and I can move with the arrows back and forth.

 

BGM_SVG_v0.8.2

 

Clovy

Share this post


Link to post
Share on other sites

Do you mean pressing the arrow keys left and right on the keyboard to move the selector?

 

EDIT: I don’t see any issues this end. To me, the theme functions as any other.

Share this post


Link to post
Share on other sites
8 hours ago, blackosx said:

Do you mean pressing the arrow keys left and right on the keyboard to move the selector?

 

EDIT: I don’t see any issues this end. To me, the theme functions as any other.

Moving with the arrows to the right is OK, back to the left does not go, blocking occurs.

If the 128x128 icons were great.

Edited by luky35

Share this post


Link to post
Share on other sites
3 hours ago, luky35 said:

Moving with the arrows to the right is OK, back to the left does not go, blocking occurs.

Ok. Thanks for the report. I cannot replicate any situation were the selector does not move left when I press the left arrow key, after pressing the keyboard to move the selector to the right. I wonder if anyone else has experienced the same issue? I cannot think why it would specifically be a problem with the BGM_SVG theme though and not other themes. Maybe Slice would have some idea?

 

 

7 hours ago, droples said:

 

Thanks @droples

Your log reminds me of some outstanding stuff still to implement :P

 

TO DO list (note for self)

- Set Badge Offset to 150 (0x96)
- Add BUILTIN_ICON_FUNC_SECURE_BOOT
- Add BUILTIN_ICON_FUNC_SECURE_BOOT_CONFIG
- Add BUILTIN_ICON_FUNC_HELP
- Add BUILTIN_ICON_TOOL_PART
- Add BUILTIN_ICON_TOOL_RESCUE
- Add BUILTIN_ICON_VOL_FIREWIRE
- Add BUILTIN_ICON_BANNER
- Add os_tiger
- Add os_win

 

Edited by blackosx

Share this post


Link to post
Share on other sites
22 minutes ago, blackosx said:

Thanks @droples

Your log reminds me of some outstanding stuff still to implement :P

 

TO DO list (note for self)

- Set Badge Offset to 150 (0x96)
- Add BUILTIN_ICON_FUNC_SECURE_BOOT
- Add BUILTIN_ICON_FUNC_SECURE_BOOT_CONFIG
- Add BUILTIN_ICON_FUNC_HELP
- Add BUILTIN_ICON_TOOL_PART
- Add BUILTIN_ICON_TOOL_RESCUE
- Add BUILTIN_ICON_VOL_FIREWIRE
- Add BUILTIN_ICON_BANNER
- Add os_tiger
- Add os_win

 

I just guess. But you all can. We will wait.

Edited by droples

Share this post


Link to post
Share on other sites
44 minutes ago, blackosx said:

@Slice

Is MenuScroll not yet taken from theme.svg, instead using embedded images?

 

Qemu-vs-SVG.thumb.jpg.3c149b53dbe4d4e2184707ae9d4caef2.jpg

 

 

Yes, still embedded. I think we can take scroll images same way as other images but I have no appropriate sample to work with older algorithm.

It will be better to implement new way for scrolling with fewer images.

Share this post


Link to post
Share on other sites

How about a simpler scrollbar using 4 images?

 

Scroll_Bar_Details.jpg.d1ca7daf02b2f41b77f5ec87560b9965.jpg

 

However, wouldn't changing the scroll bar affect raster themes? or would you support two types, old and a new style?

 

Edited by blackosx

Share this post


Link to post
Share on other sites
9 hours ago, blackosx said:

How about a simpler scrollbar using 4 images?

 

Scroll_Bar_Details.jpg.d1ca7daf02b2f41b77f5ec87560b9965.jpg

 

However, wouldn't changing the scroll bar affect raster themes? or would you support two types, old and a new style?

 

There is a condition 

if (GlobalConfig.TypeSVG) {} else {}

we can apply anywhere. We should claim scroll bar images to be obligatory in vector themes? Else it will be messy with embedded images. 

Yes, I want new simpler scroll bar.

Share this post


Link to post
Share on other sites

Yes. I don't see why scroll images can't be set to mandatory elements in SVG themes. Now's the time to do it as they're new and can be part of a theme template for the other theme designers (mostly @Badruzeus and @chris1111 if they choose to work on SVG themes in the future) to follow.

 

My suggestion of 4 parts to make a scroll bar above could be made even simpler with just 2 parts. There could just be a background fill and a scroll element fill and drop the top and bottom buttons. This could work as the scroll element of the bar is already coded to be draggable. And the menus are never really that long, even on a small screen, so the scroll part would always be quite large.

 

EDIT: Something like this?

Mockup.thumb.jpg.f6d94d5f9f3f9d5336e33be18549876a.jpg

 

Edited by blackosx

Share this post


Link to post
Share on other sites

I saw the procedure ScrollingBar() and found that if some part of scrolling images lego will be absent then nothing dangerous happen.

For example if BarStartImage=NULL then

   egComposeImage(Total, BarStartImage, BarStart.XPos - ScrollTotal.XPos, BarStart.YPos - ScrollTotal.YPos);

just return.

This is weird and must be totally revised

    for (i = 0; i < Scrollbar.Height; i++) {
      egComposeImage(Total, ScrollbarImage, Scrollbar.XPos - ScrollTotal.XPos, Scrollbar.YPos + i - ScrollTotal.YPos);
    }

taking into account scalable graphics.

Share this post


Link to post
Share on other sites
10 hours ago, Slice said:

I saw the procedure ScrollingBar() and found that if some part of scrolling images lego will be absent then nothing dangerous happen.

Yes. I confirm that.

 

I've tried a quick edit to menu.c to only use embedded images, other than ScrollbarBackgroundImage and ScrollbarImage for vector themes. This works as far as an presenting an example of a scroll bar working with just two images.

--- /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/refit/menu.c    2018-12-15 13:59:49.000000000 +0000
+++ /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/refit/menu.c    2018-12-15 20:07:20.000000000 +0000
@@ -3198,10 +3198,10 @@
     }
   }
 
-  if (!BarStartImage) {
+  if (!BarStartImage && !GlobalConfig.TypeSVG) {
     BarStartImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_bar_start), ACCESS_EMB_SIZE(emb_scroll_bar_start), TRUE);
   }
-  if (!BarEndImage) {
+  if (!BarEndImage && !GlobalConfig.TypeSVG) {
     BarEndImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_bar_end), ACCESS_EMB_SIZE(emb_scroll_bar_end), TRUE);
   }
   if (!ScrollbarBackgroundImage) {
@@ -3210,26 +3210,37 @@
   if (!ScrollbarImage) {
     ScrollbarImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_scroll_fill), ACCESS_EMB_SIZE(emb_scroll_scroll_fill), TRUE);
   }
-  if (!ScrollStartImage) {
+  if (!ScrollStartImage && !GlobalConfig.TypeSVG) {
     ScrollStartImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_scroll_start), ACCESS_EMB_SIZE(emb_scroll_scroll_start), TRUE);
   }
-  if (!ScrollEndImage) {
+  if (!ScrollEndImage && !GlobalConfig.TypeSVG) {
     ScrollEndImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_scroll_end), ACCESS_EMB_SIZE(emb_scroll_scroll_end), TRUE);
   }
-  if (!UpButtonImage) {
+  if (!UpButtonImage && !GlobalConfig.TypeSVG) {
     UpButtonImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_up_button), ACCESS_EMB_SIZE(emb_scroll_up_button), TRUE);
   }
-  if (!DownButtonImage) {
+  if (!DownButtonImage && !GlobalConfig.TypeSVG) {
     DownButtonImage = egDecodePNG(ACCESS_EMB_DATA(emb_scroll_down_button), ACCESS_EMB_SIZE(emb_scroll_down_button), TRUE);
   }
-  UpButton.Width      = ScrollWidth; // 16
-  UpButton.Height     = ScrollButtonsHeight; // 20
-  DownButton.Width    = UpButton.Width;
-  DownButton.Height   = ScrollButtonsHeight;
-  BarStart.Height     = ScrollBarDecorationsHeight; // 5
-  BarEnd.Height       = ScrollBarDecorationsHeight;
-  ScrollStart.Height  = ScrollScrollDecorationsHeight; // 7
-  ScrollEnd.Height    = ScrollScrollDecorationsHeight;
+  if (!GlobalConfig.TypeSVG) {
+    UpButton.Width      = ScrollWidth; // 16
+    UpButton.Height     = ScrollButtonsHeight; // 20
+    DownButton.Width    = UpButton.Width;
+    DownButton.Height   = ScrollButtonsHeight;
+    BarStart.Height     = ScrollBarDecorationsHeight; // 5
+    BarEnd.Height       = ScrollBarDecorationsHeight;
+    ScrollStart.Height  = ScrollScrollDecorationsHeight; // 7
+    ScrollEnd.Height    = ScrollScrollDecorationsHeight;
+  } else {
+    UpButton.Width      = ScrollWidth; // 16
+    UpButton.Height     = 0;
+    DownButton.Width    = UpButton.Width;
+    DownButton.Height   = 0;
+    BarStart.Height     = ScrollBarDecorationsHeight; // 5
+    BarEnd.Height       = ScrollBarDecorationsHeight;
+    ScrollStart.Height  = 0;
+    ScrollEnd.Height    = 0;
+  }
 }
 
 VOID SetBar(INTN PosX, INTN UpPosY, INTN DownPosY, IN SCROLL_STATE *State)

All that would be needed now would be to put SVG versions of ScrollbarBackgroundImage and ScrollbarImage in place of the embedded versions.

 

Edited by blackosx

Share this post


Link to post
Share on other sites

1 - Does it not work the same as you would do for raster themes?

2 - This is determined by time of day. You'll have to change your system clock is you want to see different option.

Share this post


Link to post
Share on other sites
1 - Does it not work the same as you would do for raster themes?

2 - This is determined by time of day. You'll have to change your system clock is you want to see different option.

I couldn’t get the Manjaro icon to appear using the old method as it looks for icons in the images folder and I can see svg themes don’t have an images folder.

Usually it’s something like

Images\os_manjaro.png

 

Besides setting the theme BGM_SVG are there any other settings needed to activate the day / night option? Or is it default?

 

 

Sent from my iPhone using Tapatalk

Share this post


Link to post
Share on other sites

Good point about custom images and I don't know the answer to that. I guess that's not been implemented yet.

 

Yes, the night/day switching option is default in Clover. If the theme contains images for night then they will be shown when viewing at the appropriate time of day. Are you after an option to disable this day/night switching and say, always show the daytime version? 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By glasgood
      CLOVER DUAL BOOT MOJAVE & WINDOWS 10 GUIDE 
       

       
       
      INCLUDES  MBR / LEGACY BIOS  TO  GPT / EFI CONVERSION
      USING MBR2GPT TOOL
       
       
      PREREQUISITE: Two physical discs ( SSD’s or HDD’s )
       
       
       
       
       
      STEP 1 - Clover dual boot configuration 
       
      Open config.plist with Clover Configurator
       
      Boot
       Legacy = PBR Timeout = True ( will remove the Timeout countdown, from Clover boot menu)  

       
      GUI 
      Scan / Custom
       Entries = True  Tool = True  Legacy = False ( removes extra Windows 10 entries )  
      Hide Volume
      - Preboot ( macOS Preboot )
      - Recovery ( macOS Recovery )
       

       
      So at boot you will have two options: boot macOS Mojave or Windows 10 
       
       
       
       
       
       
       
      ————————————————————
       
       
      STEP 2 - Using a drive without Windows 10 installed
       
      Disconnect system drive that contains your macOS Mojave install from computer ( This is so that Windows does not overwrite existing macOS Mojave boot loader )
       
      Proceed with a Windows 10 UEFI install.  
      After installation reconnect macOS Mojave Drive, the Windows installation should now be detected and usable in Clover. 
      If Windows 10 is not detected or able to boot,  then verify you installed Windows 10 as UEFI and not MBR ---->  ( Read step 2 - For a drive with Windows 10 installed )
       
       
      OR
       
       
       
      STEP 2 - Using a drive with Windows 10 already installed
       
      Verify your Windows install is  GPT / UEFI or MBR / Legacy BIOS.   
      If Windows install is GPT UEFI then Windows 10 install is ready to use at Clover boot menu, you should be able to boot into Windows directly from Clover boot screen. 
       

       
       
      But if  Windows drive is detected at Clover boot screen, but when booting Windows you get a black screen with a cursor on the top left,
      then this is most likely because Windows drive is MBR ( Legacy BIOS ).  You can easily convert MBR to GPT using  Windows MBR2GPT tool ( this saves hours work having to reinstall Windows 10 and setting up all your applications again  ) 
       
      If Windows 10 install is MBR / Legacy BIOS  then simply convert to GPT / UEFI  following instructions below ( read video summary and view video )
       
       
      ** To use Windows 10  MBR2GPT tool  you must have Windows 10 version 1703 ( creators update  ) or later and less than 3 partitions on 
      the Windows 10 drive **
       
      Video summary:
       
      Confirm Windows 10 drive is MBR Legacy BIOS ( in Windows Disk Management ) Reboot into Windows PE ( Advanced Startup ) Convert from MBR Legacy BIOS to GPT UEFI ( using commands below ) mbr2gpt /validate mbr2gpt /convert Restart Verify Windows 10 drive has changed to GPT UEFI ( in Windows Disk Management )  
       
       
       
      After conversion Windows 10 is ready to use at the Clover boot menu 
       
       
       
      STEP 3 - Stop Windows Boot manager from overriding Clover boot manager
       
      How to stop Windows boot manager from overriding your Hackintosh Clover boot manager when using dual booting between macOS and Windows
       
       
       
       
       
       
    • By AppleBytes
      OK, I've searching for days trying to gather up the tools to make my current install work correctly. I'm well on my way. But all the links to the things I currently must have were apparently nuked "during a forum upgrade". :(
      As far as EFI Studio goes; I can find many links to it. But for Insanelymac, they're broken (due to the upgrade), or for the Netkas site, they're links to either Rapidshare, or Mediafire that also no linger exist. I see many users here indicating that they used it to tweak their DSDT. But the web (google/duckduckgo), Instanelymac, and Netkas seem to have no idea where it's gone.
      Could some kind soul please share a copy, or a link? I'm a loooong time hacker, and would love to bring it back to life. In fact, I'd love to improve it -- or at least bring it up to current times. If only I knew where it was.
      Thank you for all your time, and consideration.
       
      --Chris
       
    • By SoThOr
      This was spurred on from a discussion in the Clover General thread. Where there was a debate on bcdedit being able create/read/edit (U)EFI Boot entries. I didn't think it appropriate to post all this information there and somebody may want to make use of this and its likely to get lost in that massive thread.
       
      Out of curiosity I decided to see if I could create an EFI entry using bcdedit. What can I say I like a challenge.  Whilst is not a documented method by Microsoft, as it turns out in a round about way it IS possible to create an EFI entry using bcdedit and these are the steps I went through to add UEFI Shell located on a USB stick to the EFI entries. 
       
      Third party software is available that can create and edit UEFI entries from Windows with better support and more features. I'm just making this information available in case those options are unavailable. 
       
      DISCLAIMER - This is not a supported method. Use at your own risk. I recommend backing up your BCD/Firmware variables/settings beforehand.
       
      1) Copy {bootmgr} entry.
      C:\Windows\System32>bcdedit /copy {bootmgr} /d "UEFI Shell" The entry was successfully copied to {34e8383c-73a7-11e9-9cb0-94de8078a7b5}. 2) Edit the new entry using the new GUID bcdedit generated in the copy step.
        a) Set the device and path for UEFI shell on my USB stick.
      bcdedit /set {34e8383d-73a7-11e9-9cb0-94de8078a7b5} device partition=G: bcdedit /set {34e8383d-73a7-11e9-9cb0-94de8078a7b5} path \EFI\SHELL\SHELLX64.efi   b) Clean up some of the stuff that was copied from {bootmgr} (optional as far as I can tell, just makes things tidier in bcdedit)
      3) Put the new EFI entry first in boot order. (optional)
       
      After completing the steps above, here is what "bcdedit /enum firmware" shows:
       
      I shutdown my computer and when I turned my computer back on it booted up into UEFI Shell. After exiting the shell my PC went on to boot Windows.
      Here is the resulting dump using "bcfg boot dump -v" from that shell:
       
      You may notice that the shell shows as "Windows Boot Manager" in the bcdedit output. This I believe is because of the "WINDOWS" at the beginning of the option data that bcdedit added to the EFI Boot entry. I also believe this why bcdedit shows my Windows 8 installation as "Firmware Application" because it has no option data. I don't know how to remove this data using bcdedit nor do I know how the option data, that bcdedit adds, will affect other EFI applications.

      There might be a way to create the EFI entry without copying the Windows entry but if there is I'm unable to find any documentation on how one would do so. If you use the create command then it just puts it in the BCD and I'm unaware of a way to tell it to create it in EFI instead, other than by doing the above.
×