Recommended Posts

ive started work on the backgrounds again.. and so far dead end and stuff ups

im posting this in the hope someone will help me......as im going nuts. ive followed the trail of most things but the reference to the rcbmps of either the watermarks or banners is not found in the shell32 or shellstyles dll's which mean thre is more to its controll else where. i believe that banner is the background of the seperate task panes and could be usefull... but i also believe the watermark to be a pain in the @55 and hopeless as windows uses it tooo much

ive been playing with

element [id=atom(banner)]

{

background: argb(0,0,0,0);

}

and

element [id=atom(watermark)]

{

background: rgb(239, 243, 255);

contentalign: bottomright;

animation: rectanglev | s | fast;

}

in both shell32 and shellstyle dll's to no avail... no matter how i arraing either i cannot get windows to cooperate

ive also xplorered the route of some registry trails i found ie. ListviewWatermark

i believe this is causes my woe in regard to trying the banner approach

<style resid=BannerSS>

element [id=atom(banner)]

{

background: argb(0,0,0,0);

}

element [id=atom(iconsite)]

{

padding: rect(10rp, 7rp, 0, 0);

}

element [id=atom(icon)]

{

background: argb(0,0,0,0);

}

element [id=atom(header)]

{

background: gradient(argb(0,255,255,255), argb(0,255,255,255), 0);

padding: rect(50rp, 1rp, 3rp, 1rp);

}

element [id=atom(title)]

{

foreground: rgb(132,132,132);

fontface: rcstr(1);

fontsize: rcint(15)pt;

fontweight: rcint(10);

contentalign: middleleft;

margin: rect(0, 4rp, 0, 4rp);

}

</style>

or this <element id=atom(banner) layoutpos=top layout=filllayout() sheet=styleref(BannerSS)>

i simply cannot move either ir windows ceases to use the taskspane

all i can say is.... see if you can do what i cant.. its just toying with me i swear it ^_^

Edited by EnIgMa-PenGuIn

monkey man all you need to do is replace the present background with rehacker

however if you wish to add one to an original task pane you will need to add in the resource

by first inserting the bitmap then using the appropraite code to insert it

for example if you wish to add a background to the side bar in the file in this thread you put in

(this is iff you insert the new bmp as 124 and call the item new bg)

element [id=atom(newbg)]

{

content: rcbmp(124,2,255,0,0,0,0);

contentalign: topleft;

}

under the section

<style resid=mainsectionss>

and at the bottom you change

<ScrollViewer id=atom(scroller) sheet=styleref(taskpane) layoutpos=left xscrollable=false width=0rp>

</ScrollViewer>

to

<ScrollViewer id=atom(scroller) sheet=styleref(taskpane) layoutpos=left xscrollable=false width=90rp>

<element id=atom(newbg) layoutpos=top layout=filllayout()/>

</ScrollViewer>

so then you'll have a side bar with a new background , as well as the top bar

you have to turn off the theme your using first.. then you open its shellstyle dll...

now you use the program "reshacker" to replace the bitmap in the dll

and you put the script above in the file "uifile 1"

and nope you dont need to restart just set the theme back on

(this is iff you insert the new bmp as 124 and call the item new bg)

element [id=atom(newbg)]{

content: rcbmp(124,2,255,0,0,0,0);

contentalign: topleft;

}

under the section

<style resid=mainsectionss>

I think he meant :)

&lt;style resid=taskpane&gt;

you have to turn off the theme your using first.. then you open its shellstyle dll...

now you use the program "reshacker" to replace the bitmap in the dll

and you put the script above in the file "uifile 1"

simple trick is to just close all explorer windows instead of disableing the theme. Just close all of them and then you can save. and then open my computer to see the changes. :)

ok here's a simple background tutorial for all you kiddies out there

there are a couple ways of doing this. I will go over them now and discuss the differences. and give you screenies to show what you get.

The first thing to do for all the tricks is create a new bitmap element named 113 in language 1033 containing your image for the background.

To do this in reshack go to the action menu and click add new resource...

then browse for you're image file, and fill in the proper information like so.

post-34-1057852350.jpg

post-34-1057852350.jpg

Now we are ready to begin

Trick 1:

1.) Find the following lines

&lt;style resid=taskpane&gt;
element [id=atom(sectionlist)]
{
background: gradient(argb(0,123,162,231), argb(0,99,117,214), 1);
padding: rect(12rp,12rp,12rp,12rp);
borderthickness: rect(1,0,0,1);
bordercolor: white;
}

2.) Change the code to this

&lt;style resid=taskpane&gt;
element [id=atom(sectionlist)]
{
background: rcbmp(113,0,#FF00FF,0,0,0,0);  // Here is what changed
padding: rect(12rp,12rp,12rp,12rp);
borderthickness: rect(1,0,0,1);
bordercolor: white;
}

and presto you're image will be tiled in as the background simple and quick :)

post-34-1057852419.jpg

post-34-1057852419.jpg

If you don't want the image tiled and you want it to appear in a specific location things get a bit more complicated. We will start with the easy route. Make sure you have the background image added as 113.

Trick 2:

1.) Find the following lines

&lt;style resid=taskpane&gt;
element [id=atom(sectionlist)]
{
background: gradient(argb(0,123,162,231), argb(0,99,117,214), 1);
padding: rect(12rp,12rp,12rp,12rp);
borderthickness: rect(1,0,0,1);
bordercolor: white;
}

2.) Change the code to this

&lt;style resid=taskpane&gt;
element [id=atom(sectionlist)]
{
background: gradient(argb(0,123,162,231), argb(0,99,117,214), 1);
content: rcbmp(113,0,#FF00FF,0,0,0,0); ?//I added these two lines
contentalign: bottomleft; ? ? ? ? ? ? ? ? ? ? ? ? ?//right here. Pretty simple.
padding: rect(12rp,12rp,12rp,12rp);
borderthickness: rect(1,0,0,1);
bordercolor: white;
}

This will use the image as a background not tiled in the location you want but the image will be confined to the boundaries that the task boxes are. this is a real pain. but if you make the image to work with this tecnique can still lo:) very good. :)

post-34-1057852508.jpg

post-34-1057852508.jpg

Now if you require more control and want you're image flush with the sides then it gets a bit more tough as you need a new element. To make a new element you need to use my shellstyle extension trick to do so add the following code to the end of uifile 1.

&lt;hwndview resid=main id=atom(main) sheet=styleref(main) layout=borderlayout()&gt;
&lt;ScrollViewer id=atom(scroller) sheet=styleref(taskpane) layoutpos=Left xscrollable=false width=210rp&gt;
&lt;element id=atom(sectionlist) layout=verticalflowlayout(0,0,3)/&gt;
&lt;/ScrollViewer&gt;
&lt;Element layoutpos=Client layout=filllayout()&gt;
&lt;Element id=atom(clientviewhost) layout=borderlayout()&gt;
&lt;/Element&gt;
&lt;Element id=atom(blockade) layout=borderlayout()&gt;
&lt;Element id=atom(blockadeaccent) layoutpos=left width=1/&gt;
&lt;Element id=atom(blockadeclient) layoutpos=client layout=borderlayout()&gt;
&lt;Element id=atom(blockadetitle) layoutpos=top/&gt;
&lt;Element id=atom(blockademessage) layoutpos=top/&gt;
&lt;Element id=atom(blockadeclear) layoutpos=top layout=borderlayout()&gt;
&lt;Button id=atom(blockadeclearbutton) layoutpos=left layout=borderlayout()&gt;
&lt;Element id=atom(blockadecleartext) layoutpos=left/&gt;
&lt;/Button&gt;
&lt;/Element&gt;
&lt;/Element&gt;
&lt;/Element&gt;
&lt;/Element&gt;
&lt;/hwndview&gt;
&lt;expando resid=mainsection layout=borderlayout() width=186rp&gt;
&lt;element layoutpos=top layout=filllayout()&gt;
&lt;button id=atom(header) layoutpos=bottom layout=borderlayout()&gt;
&lt;element id=atom(title) layoutpos=client/&gt;
&lt;element id=atom(arrow) layoutpos=right/&gt;
&lt;/button&gt;
&lt;element id=atom(icon) layoutpos=left/&gt;
&lt;/element&gt;
&lt;clipper layoutpos=top&gt;
&lt;element id=atom(watermark) layoutpos=top layout=filllayout()&gt;
&lt;tasklist id=atom(tasklist) layout=verticalflowlayout(0,0,0)/&gt;
&lt;/element&gt;
&lt;/clipper&gt;
&lt;/expando&gt;
&lt;expando resid=section layout=borderlayout() width=186rp&gt;
&lt;button id=atom(header) layoutpos=top layout=borderlayout()&gt;
&lt;element id=atom(title) layoutpos=client/&gt;
&lt;element id=atom(arrow) layoutpos=right/&gt;
&lt;/button&gt;
&lt;clipper layoutpos=top&gt;
&lt;tasklist id=atom(tasklist) layout=verticalflowlayout(0,0,0)/&gt;
&lt;/clipper&gt;
&lt;/expando&gt;

Now that uifile 1 has been extended and image 113 has been added we are ready for the last background trick.

Trick 3:

1.) Find the following lines:

&lt;style resid=taskpane&gt;
element [id=atom(sectionlist)]
{
background: gradient(argb(0,123,162,231), argb(0,99,117,214), 1);
padding: rect(12rp,12rp,12rp,12rp);
borderthickness: rect(1,0,0,1);
bordercolor: white;
}

2.) Change the code to this:

&lt;style resid=taskpane&gt;
element [id=atom(backdrop)]             //This whole section has been
{                                       //added. It is the render
background: buttonface;                 //section for the new item we
content: rcbmp(113,0,#FF00FF,0,0,0,0);  //will be creating. The way 
contentalign: bottomleft;               //this works is it draws all
bordercolor: white;                     //of this in this item behind
margin: rect(0,0,0,0);                  //the sectionlist item so it's
}                                       //free of the padding settings
element [id=atom(sectionlist)]
{
background: argb(0,0,0,0);              //This line has been changed
padding: rect(12rp,12rp,12rp,12rp);
borderthickness: rect(1,0,0,1);
bordercolor: white;
}

3.) Find these lines in the extension:

&lt;ScrollViewer id=atom(scroller) sheet=styleref(taskpane) layoutpos=Left xscrollable=false width=210rp&gt;
&lt;element id=atom(sectionlist) layout=verticalflowlayout(0,0,3)/&gt;
&lt;/ScrollViewer&gt;

4.) Change them to this:

&lt;ScrollViewer id=atom(scroller) sheet=styleref(taskpane) layoutpos=Left xscrollable=false width=210rp&gt;
&lt;element id=atom(backdrop) layoutpos=top layout=filllayout()&gt;   //Added this
&lt;element id=atom(sectionlist) layout=verticalflowlayout(0,0,3)/&gt;
&lt;/element&gt;                                                      //Don't forget this
&lt;/ScrollViewer&gt;

And here we are a nice flush non-tiled background. Still pretty easy huh. :)

post-34-1057852667.jpg

post-34-1057852667.jpg

So there you go that is how to put a background into the taskpane. Three different techniques with different effects. Of course there are many other ways this can be achieved but these should suffice for most people I think. Hope you guys learned something get some use out of this little tutorial. And let me know if you have any questions and also what you think of my tutorial.

i never was the best at explaining things........^_^

btw

whack did you read what i said on the last page about the longhorn bar backgrounds?

ive almost got it.. it just keep dodging me.

Edited by EnIgMa-PenGuIn

EnIgMa-PenGuIn - it is in the shel32.dll in the binary section view it with a hex editor instead of a resource hacker and you will find it as well as alot shellstyle stuff. but you can't just edit the hex as it will often toast you're shell32.dll I've also run it through a disasembler and found some more stuff but I'm not sure how to get around it. I think that a dll really does need to be written. And as for help with it I don't think anyone out there knows anymore about the shellstyle than you or me. With the obvious exception of the guys at MS who desighned it.

I think that a dll really does need to be written. And as for help with it I don't think anyone out there knows anymore about the shellstyle than you or me. With the obvious exception of the guys at MS who desighned it.

Just in case you're not already aware the shellstyle.dll is simply a resource store which is used by shell32.dll which takes care of the drawing etc.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.