Those are changeable in the Shellstyle
. As rajtheeban showed in the pictures,
by default, changing one property inside the MSSTYLES will also change other parts. Why is this? Because inside Shellstyle file there are many font="gtf(TEXTSTYLE, TEXT_BODYTEXT, 0)" statements. What does "
gtf()" mean? It means "
Get Theme Font". And it does exactly as the name implies...
It looks inside your theme MSSTYLES file for (TEXTSTYLE, TEXT_BODYTEXT, 0). But you say "Huh?" -- what is (TEXTSTYLE, TEXT_BODYTEXT, 0)?
(
TEXTSTYLE,
TEXT_BODYTEXT,
0) is this inside VSB: (
Styles > TextStyle > BodyText,
state)... if there are
no states (Normal, Hot, Pressed, etc.), then the
blue parameter should be 0.
Note: By default, "gtf()" method will look at the FONT:FONT property. If you want it to look at a different property like GLYPHFONT:FONT, you will have to add a fourth parameter (explained in the steps below)).What's the significance of "gtf(TEXTSTYLE, TEXT_BODYTEXT, 0)"? Thanks to PandaX's
research, we are now able to understand what each parameter stands for and can now
modify the argument to point at our own property with our own value.
By doing this we can avoid much of the sharing between global variables.
The statement "font="gtf(TEXTSTYLE, TEXT_BODYTEXT, 0)"" appears many times inside the Shellstyle. The difficult part will be to find what each one modifies, but with patience you can figure it out.
If you're still a little unsure of what I'm exactly talking about, try this out. It should clear up any confusion:
1. In VSB, go to
Styles > TextStyle > BodyText2. Click on the "Add Property" button and select a FONT property... it doesn't matter which one you choose.
I will use STATUSFONT:FONT in this example.
3. Change the value to something crazy, like Wingdings, Bold styling, and size 16 font,
so you can immediately notice the change. Save the change.
4. Now open up Shellstyle/UIFILE/1 in your Resource hacking program.
5. Find (Ctrl + F) this line: <if id="atom(ProperTreeLinksHeader)">
6. You should come across this <if> block.
I'm using default Aero shellstyle.dll, yours may look a little different.
<if id="atom(ProperTreeLinksHeader)">
<Element
foreground="themeable(argb(255, 139, 139, 139), windowtext)"
background="themeable(argb(255, 252, 252, 252), window)"
padding="rect(9rp,9rp,0rp,7rp)"
font="gtf(textstyle, TEXT_BODYTEXT, 0)"
/>
</if>
7. We will modify the blue statement (above) to look for STATUSFONT:FONT property. If you look in the
Property Identifier page, you will see a list of numbers that pertain to the specific FONT property amongst other properties. In this example, I used STATUSFONT:FONT property so I will remember the property number
804.
8. The
font="gtf(textstyle, TEXT_BODYTEXT, 0)" statement is currently linking to the default FONT:FONT property in Styles > TextStyle > BodyText. Since we don't want to use default FONT:FONT property, we will introduce a fourth parameter to the statement.
9. Remember the property number in step 7? Good. What you have to do now is place the property number (804) behind the third parameter in
font="gtf(textstyle, TEXT_BODYTEXT, 0)".
10. The font statement should now look like this:
font="gtf(textstyle, TEXT_BODYTEXT, 0, 804)" Now save your Shellstyle.dll.
11. Change theme and change back to the theme with that holds the Shellstyle.dll file you just modified. This will refresh the Shellstyle.dll file.
12. Open Explorer and you should now see your Favorites text change
Like I said, there are many instances of "font="gtf(textstyle, TEXT_BODYTEXT, 0)". You will have to find which one changes which. I suggest you use Notepad++ program with View set to XML to make the DuiXML look more friendly and readable.
As for the orbs, I haven't found the image for the SaveAs arrow orb, yet, but I may set aside some time to hunt that little bugger down (along with the Control Panel navigation bullet which might even be a font
(just like Start Menu arrow is Marlett font).
Good luck!