VistaStyleBuilder

Help => Windows 7 => Topic started by: Legacy-Code on April 25, 2010, 02:26:56 am



Title: Add an image property to navigation pane
Post by: Legacy-Code on April 25, 2010, 02:26:56 am
Can i add an image into the navigation pane ? I want to add my image from the control panel. I tried to add a gradient property to it but it didnt work ( dont really know what im doing to be honest  :D)

If i can , what size will i have to make the image or will my existing bitmap image size be ok ?

  (http://img412.imageshack.us/img412/8559/snippy1c.png) (http://img412.imageshack.us/i/snippy1c.png/)



Title: Re: Add an image property to navigation pane
Post by: 3am on April 25, 2010, 03:05:36 am
No. Explorer & Shell > Explorer > Proper Tree > 2 is a fillcolor...it has no image associated with it.

Maybe you could do it by linking the shellstyle to msstyles via Direct UI manipulation. But this is way over my head. Check out Panda's (and others) Direct UI posts. Good luck!


Title: Re: Add an image property to navigation pane
Post by: Legacy-Code on April 25, 2010, 11:25:23 am
Did a forum search for direct UI Manipulation and nothing came up , any ideas as what section to look in please ?


Title: Re: Add an image property to navigation pane
Post by: 3am on April 25, 2010, 12:35:49 pm
I just used the forum search and a whole page of posts turned up.

You could start here for instance http://vistastylebuilder.com/forum/index.php?PHPSESSID=218b594b096100b29829d41370d45c15&topic=215.0

Your Control Panel image looks like just a solid blue...so why don't you just use that blue for fillcolor in Explorer & Shell > Explorer > Proper Tree > 2. Be a lot easier.

btw here's a tip on using the Forum Search. Always do it from the Main Page and you'll get a thorough search. If you do it from other pages you get almost nothing.


Title: Re: Add an image property to navigation pane
Post by: hjyknight on April 25, 2010, 01:02:53 pm
I also want to know how to do that.

I just know how to change the folder's background when I change the view.

here is the effect. http://www.tudou.com/v/Om4WHMm6eB4



see also
   http://vistastylebuilder.com/forum/index.php?topic=1041.10


Title: Re: Add an image property to navigation pane
Post by: Legacy-Code on April 26, 2010, 09:15:55 am
Really cool ! Nice job. Thats exactly the kind of thing i want , just in the navigation pane. Was that hard to do ?

Thanks for the link 3am , didint seem to find anything when i searched ? Maybe i need to work on my search skills first lol.



Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on April 26, 2010, 09:41:16 am
Can i add an image into the navigation pane ? I want to add my image from the control panel. I tried to add a gradient property to it but it didnt work ( dont really know what im doing to be honest  :D)

If i can , what size will i have to make the image or will my existing bitmap image size be ok ?


i think it should work with adding a link to msstyle in shellstyle.dll>mui.txt in the concerning background-part
like Background=(themeable(dtb.... ) (i have no WSB here atm, so i can't describe the whole line)
like panda described in the DirectUI-XML-Notes here in the Forum...




Title: Re: Add an image property to navigation pane
Post by: Legacy-Code on April 26, 2010, 11:15:17 am
Thanks. To be honest it seems a little complex but I'm sure if i sit down and try and work it out and read up on all the posts i may achieve what i want to do.


Title: Re: Add an image property to navigation pane
Post by: rajtheeban on April 27, 2010, 06:11:01 pm
I'm interested too
I personally tried a dozen different configurations between shellstyle and the .msstyles file but I have not succeeded  :(

The properties and changes that I extrapolated from the explorerFrame.dll don't seem to work.
Hope Panda X, SunBeam or Idas, who are accustomed to this kind of thing, will succeed  8)




Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on April 28, 2010, 12:34:25 am
I'm interested too
I personally tried a dozen different configurations between shellstyle and the .msstyles file but I have not succeeded  :(

The properties and changes that I extrapolated from the explorerFrame.dll don't seem to work.
Hope Panda X, SunBeam or Idas, who are accustomed to this kind of thing, will succeed  8)


it didn't work like i thought  :(

i've changed the fillcolor-link to an imagelink in shellstyle.dll but it only produced random fillcolors in propertree

i hoped it would work like this (there is an image in WSB, but resizing the WSB window makes it disappear, as you know):

(http://img693.imageshack.us/img693/7066/propertree.jpg) (http://img693.imageshack.us/i/propertree.jpg/)

so the search goes on...


Title: Re: Add an image property to navigation pane
Post by: Panda X on April 28, 2010, 01:35:54 am
The background of ProperTree and the ListView just do that when you use bitmaps.


Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on April 28, 2010, 08:19:43 am
The background of ProperTree and the ListView just do that when you use bitmaps.

 :( i remember, in vista it was a bitmap, so i thought it could simply be reactivated..


Title: Re: Add an image property to navigation pane
Post by: Panda X on April 28, 2010, 08:33:32 am
:( i remember, in vista it was a bitmap, so i thought it could simply be reactivated..
In propertree?


Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on April 28, 2010, 09:53:29 am
In propertree?

Yes it was an 1x1px image in propertree for the vista "favourite links"-Pane


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 24, 2010, 10:17:20 pm
I modified shell32.dll to show favourite links
and add an image property in win7stylebuilder.
plz look at the attache. As you see, I delete the favorite links text.


Title: Re: Add an image property to navigation pane
Post by: 3am on July 24, 2010, 10:19:18 pm
How?


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 24, 2010, 10:24:21 pm
here is the No.52 uifile of shell32.dll that I modified.

Quote
<duixml>
    <Element resid="ProperTree" sheet="propertreestyle" layout="borderlayout()"
        animation="rectangle|s|fast"> </Element>
    <Element resid="ProperTreeInner" sheet="propertreestyle" layout="filllayout()">
        <Element layoutpos="client" layout="borderlayout()" background="dtb(Propertree,2,0)">
            <Element id="atom(ProperTreeLinksGroup)" layoutpos="top" layout="borderlayout()">
            </Element>
            <Element id="atom(ProperTreeExpandoGroup)" layout="filllayout()" layoutpos="top">
                <Button id="atom(ProperTreeHeaderExpand)" layout="borderlayout()" layoutpos="top"
                    accessible="true" accname="resstr(0x8014, library(shell32.dll))"
                    accrole="pushbutton" active="mouse | keyboard">
                    <Element id="atom(ProperTreeHeader)"
                        content="resstr(0xC2FC, library(shell32.dll))" layoutpos="left"/>
                    <Element id="atom(ProperTreeExpandoButtonExpand)" layoutpos="right"/>
                </Button>
                <Button id="atom(ProperTreeHeaderCollapse)" layout="borderlayout()" layoutpos="top"
                    accessible="true" accname="resstr(0x8015, library(shell32.dll))"
                    accrole="pushbutton" active="mouse | keyboard">
                    <Element id="atom(ProperTreeHeader)"
                        content="resstr(0xC2FC, library(shell32.dll))" layoutpos="left"/>
                    <Element id="atom(ProperTreeExpandoButtonCollapse)" layoutpos="right"/>
                </Button>
                <Sizer id="atom(ProperTreeExpandoSizer)" sizingtarget="atom(ProperTreeLinksGroup)"
                    ReservedTarget="atom(ProperTreeModuleInner)" SlidesUpAndDown="true"
                    DownOrRightGrowsTarget="true" FramePersistType="2" layoutpos="top"/>
            </Element>
            <ProperTreeHost id="atom(ProperTreeHost)" width="170rp" layoutpos="client"
                padding="rect(1rp,0rp,3rp,0rp)" TopMargin="9" accessible="true"
                accname="resstr(0x8001, library(shell32.dll))"/>
        </Element>
        <Sizer id="atom(PageSpaceControlSizer)" sizingtarget="atom(ProperTreeModuleInner)"
            SlidesUpAndDown="false" FramePersistType="2" layoutpos="Right"/>
    </Element>
</duixml>


Title: Re: Add an image property to navigation pane
Post by: 3am on July 24, 2010, 10:31:25 pm
Cool. Looks good. Have to check this out. Thanks :)

Did you see this: http://vistastylebuilder.com/forum/index.php?topic=1235.0


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 24, 2010, 10:45:19 pm
Cool. Looks good. Have to check this out. Thanks :)

Did you see this: http://vistastylebuilder.com/forum/index.php?topic=1235.0

...I knew how to change classgroup.xml and classmap.xml.

And I ever saw a member in this forum,whose name is rajtheeban, posted a topic.

From then on, I knew how to add parts and states in these xml files.

Here is the capture of win7stylebuilder that I use.


Title: Re: Add an image property to navigation pane
Post by: 3am on July 24, 2010, 10:52:38 pm
I know. I saw in your other posts. Nice work!

Can you keep both the text and image?

Can you do this for the entire Explorer & Shell > Explorer > ProperTree > 2?


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 24, 2010, 10:57:20 pm
 :'( I 'm sorry. I don't have a clue now.

Have you ever made a theme for vista?
Can we change the background of the whole navigation pane?


Title: Re: Add an image property to navigation pane
Post by: 3am on July 24, 2010, 10:59:34 pm
You have a lot of talent. Keep looking and you will find it.

You should do a tutorial video on this subject...it would be very interesting :)

Yes I have made a theme for Vista. Yes you can change the entire background. I forget now. I'd have to go back and look :P

Interesting redone WSB you have there 8)


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 24, 2010, 11:57:18 pm
there is a propertreestyle in uifile of shellstyle.

Maybe what count is how to modify the propertreestyle.


Title: Re: Add an image property to navigation pane
Post by: 3am on July 25, 2010, 12:11:15 am
It's been a while since I themed Vista. All I can say is some of the background is in msstyles and a lot is in shellstyle. Just look at all the parts of the shellstyle UI file that reference the term "ProperTree" not just ProperTreeStyle. I vaguely remember most of them needed to be modified.
I wish I could remember in more detail but I can't offhand. Sorry.

EDIT: Background of Favorite Links is  Explorer & Shell > Shell > Common Places > Toolbar > Button
         Background of Folder Tree here: http://vistastylebuilder.com/forum/index.php?topic=82.0



Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on July 25, 2010, 12:30:56 pm
(http://img15.imageshack.us/img15/2135/gradienth.png) (http://img15.imageshack.us/i/gradienth.png/)

i tried to add a gradient to the navigation pane.. didn't work yet..

first i added a gradient from the readingpane-class to the ItemsView background by changing the 40960 in explorerframe.dll.... works fine..
the Navigationpanebackground is set somewhere else, but not in shellstyle.uifile

when i add the same text to Propertree in shellstyle (where it takes that solid fillcolor), there stays a solid fillcolor (but the first one of the gradient-ones)

original:
<style resid="propertreestyle">
<ProperTreeModule
background="themeable(gtc(PROPERTREE, 2, 0, 3821),  window)"
foreground="themeable(gtc(TooltipStyle, 2, 0, 3803), windowtext)"
/>
<ProperTreeHost
font="IconFont"
background="themeable(gtc(PROPERTREE, 2, 0, 3821),  window)"
foreground="windowtext"
/>

to:
<style resid="propertreestyle">
<ProperTreeModule
background="themeable(Gradient(gtc(ReadingPane, 1, 0, 3810), gtc(ReadingPane, 1, 0, 3811), gtc(ReadingPane, 1, 0, 3812), 4), window)"
foreground="themeable(gtc(TooltipStyle, 2, 0, 3803), windowtext)"
/>
<ProperTreeHost
font="IconFont"
background="themeable(Gradient(gtc(ReadingPane, 1, 0, 3810), gtc(ReadingPane, 1, 0, 3811), gtc(ReadingPane, 1, 0, 3812), 4), window)"
foreground="windowtext"
/>



but i guess it's under the solid-color-pane, because my separator line is transparent at the bottom, and the gradient is visible there (not in the screenshot)

where the hell is that pane set?



Title: Re: Add an image property to navigation pane
Post by: Panda X on July 25, 2010, 01:11:58 pm
I've been everywhere with trying to add images/gradients to the navi pane. Never got anywhere. With images it just shows a random color and gradients only take the first color. I just gave up trying to get it to work. If I recall correctly the list view in Vista did the same thing, but now in 7 it takes images.


Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on July 25, 2010, 01:38:13 pm
I've been everywhere with trying to add images/gradients to the navi pane. Never got anywhere. With images it just shows a random color and gradients only take the first color. I just gave up trying to get it to work. If I recall correctly the list view in Vista did the same thing, but now in 7 it takes images.

Thanks for trying to help..
i've experienced the same, what you described.

the only thing just have to say is, as i tried to add the gradient in ListItems-part by adding the gradient in shellstyle.uifile, it only took the first gradient color, too.
at last, mr.grim's image in one of his themes led me the way, that it is in explorerframe..
maybe we'll find the right resource for the navigation-pane.


Title: Re: Add an image property to navigation pane
Post by: Panda X on July 25, 2010, 04:39:15 pm
Theory: If you were to add a blank element in between the background and the foreground that had an image it might display properly. It probably won't have a good chance of working but it might.


Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on July 25, 2010, 07:03:11 pm
Theory: If you were to add a blank element in between the background and the foreground that had an image it might display properly. It probably won't have a good chance of working but it might.

hmm, don't really understand how to..

in this screenshot you can see that the added gradient in shellstyle as described above is under the solid pane (a very close look shows it on the left and right at the red arrows)
Additionally it might be helpful, that the textcolors and the ListItem in this Pane are set in

Explorer & Shell > Explorer > TreeView > TreeItem

and there is no link to it in shellstyle.dll, shell32.dll nor Explorerframe.dll (for example the ItemsView ListItems are in Explorerframe.dll)

so it must be somewhere else..

At last i guess, most of the ProperTree-Section in shellstyle.dll is not used anymore, it still has the vista-syntax with the ProperTreeExpandoButton etc, which are gone in 7.

(http://img340.imageshack.us/img340/6965/gradient2.png) (http://img340.imageshack.us/i/gradient2.png/)

Uploaded with ImageShack.us (http://imageshack.us)


Title: Re: Add an image property to navigation pane
Post by: 3am on July 25, 2010, 08:31:01 pm
So what do you two think about what hjyknight did?


Title: Re: Add an image property to navigation pane
Post by: sunbeam2000 on July 25, 2010, 08:50:24 pm
So what do you two think about what hjyknight did?

yes, i can see in his preview, that he's added an image, but not in the navigation part..
however, i don't know why and how he reactivated the Folder-Expand button..
but it seems, that he has this "random color bug" in the (lower) navigation part, too

anyway, my theory is, that there is some yet unknown place where that navigation-pane is described more detailed..
i'm really sure, it's not completely in the shellstyle.uifile.1.txt





Title: Re: Add an image property to navigation pane
Post by: Panda X on July 25, 2010, 10:08:43 pm
So what do you two think about what hjyknight did?
Wow. I took a quick glance earlier and just thought that was vista. Didn't realize it was 7.

Interesting that if you remove the propertreemodule from a layouttype it remains yet it takes the whole left side. Including beside the details pane.


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 26, 2010, 01:20:56 am
it's not random color bug. I modified the fillcolor in explorer>explorer>propertree>2

========================================================

Actually, I ever searched propertree in the uifile of shell32.dll, and thought maybe there were some relationships between 9 and 52.

so I copied the content of 9, and pasted to 52. After I restarted my computer, the navigation pane of win7 look like that of vista.

But as you see, thought I added background="dtb(Propertree,2,0) in

Quote
<Element layoutpos="client" layout="borderlayout()" background="dtb(Propertree,2,0)">

the background of tree was still affected by fillcolor.


Title: Re: Add an image property to navigation pane
Post by: Panda X on July 26, 2010, 03:40:32 am
it's not random color bug. I modified the fillcolor in explorer>explorer>propertree>2

========================================================

Actually, I ever searched propertree in the uifile of shell32.dll, and thought maybe there were some relationships between 9 and 52.

so I copied the content of 9, and pasted to 52. After I restarted my computer, the navigation pane of win7 look like that of vista.

But as you see, thought I added background="dtb(Propertree,2,0) in

the background of tree was still affected by fillcolor.

If you set it to use an image it's a random color bug. I tested this many times with UK.Intel, ZeusOSX, and others. By the way that's interesting that it went Vista style. I removed all of 9's code earlier today and nothing changed which I thought was interesting.

Update: My theory didn't work. The PropTree doesn't allow a transparent background (just turns black) so :(


Title: Re: Add an image property to navigation pane
Post by: hjyknight on July 26, 2010, 05:50:15 pm
yeah~ I also tried that.

and if you change the padding attribute in ProperTreeHost, for example, padding="rect(100rp,0rp,100rp,0rp)", and add an image in vsb,

you can see something more interesting.