What happened to the Messenger Plus! forums on msghelp.net?
Shoutbox » MsgHelp Archive » Messenger Plus! for Live Messenger » Skinning » [?] RcClr in a Gradient?

[?] RcClr in a Gradient?
Author: Message:
Matti
Elite Member
*****

Avatar
Script Developer and Helper

Posts: 1646
Reputation: 39
31 / Male / Flag
Joined: Apr 2004
O.P. [?] RcClr in a Gradient?
Hey,

I'm currently trying to make some sort of port of Wave11 MSN 7.5 to 8.5 using Plus! Live's brand new skinning system. Now, I haven't skinned for ages and thus I'm still discovering the possibilities of all the new stuff since 7.5. I already managed to do some cool stuff, like porting the minmaxclose buttons and the window title. But now, I stumbled on the gradients used for Wave11 MSN's backgrounds.

As you can see in this screenshot of Wave11 MSN, the contact list MeArea background isn't an image but a gradient. I managed to extract the UIFILEs of Wave11 MSN 7.5 and found those gradients. I then placed them in the right positions of the new UIFILE, removed the references to the images and hurray, I have a beautiful gradient on my contact list just like in Wave11 MSN!

One of the problems with Wave11 MSN was that colorizing wasn't possible. I now want to break this and make use of rcclr() to let Messenger create colors based on the user's selected color and use these in my gradients. I added some new colors using Plus!' Color elements and use the Intensity value for the right color. But it seems like the gradient() thing doesn't accept rcclr()! :(
code:
Snippet from my 923 definition UIFILE
This thing is the title bar's gradient. When I use the normal rgb() colors from Wave11 MSN, this works perfectly. However, when I try to use rcclr()s, it fails.

...
<Element id=atom(vapor)/>
<Element Layout=filllayout()>
<element layoutpos=top layout=gridlayout(1,7) height=30>
<element Background=rcclr(59900)/> //This is line 31
<element Background=Gradient(rcclr(59900), rcclr(59901), 0)/> //This is line 32
<element Background=Gradient(rcclr(59901), rcclr(59902), 0)/>
<element Background=rcclr(59902)/>
<element Background=Gradient(rcclr(59902), rcclr(59901), 0)/>
<element Background=Gradient(rcclr(59901), rcclr(59900), 0)/>
<element Background=rcclr(59900)/>
</element>
<Element layout=borderlayout()>
<Element layoutpos=top Layout=borderlayout() id=atom(MWWindowBar)>
...
When I try to start the skin with this and open the contact list, Skin Trace outputs this:
code:
07/12/19 14:36:15| **** The trace has started ****
07/12/19 14:36:15| Skin: Wave11 WLM 0.1
07/12/19 14:36:15| Messenger version: 8.5.1302.1018 (nl-nl)
07/12/19 14:36:15| Messenger Plus! version: 4.50.312
07/12/19 14:36:15| Last definition file loaded: 923
07/12/19 14:36:15| DUIParserFailure: parse error 'rcclr' 32

What do you think? Is this a limitation and will I have to simply use themes in the Skin Options, or would it be possible to actually use "colorized colors" for gradients?

Note: I'm currently just experimenting with the skinning system and am not yet planning to release a Wave11 WLM. If I'd want to release this, I'll first ask permission to the creators (theunknown and Fizical) if they're OK with this. So don't blame me from stealing skins, because this is only for private use at the moment!
Plus! Script Developer | Plus! Beta Tester | Creator of Countdown Live | Co-developer of Screenshot Sender 5

Found my post useful? Rate me!
12-19-2007 01:55 PM
Profile E-Mail PM Web Find Quote Report
davidpolitis
Full Member
***


Posts: 371
Reputation: 16
Joined: Aug 2006
RE: [?] RcClr in a Gradient?
The colors you're trying to use with rcclr do not exist in msgres_colors.txt... correct me if I'm wrong.

EDIT: Sorry, you did create new ones. This may help. Also, maybe you can try using the colors in msgres_colors.txt just to test that it's not your UIFile code that's faulty.

This post was edited on 12-20-2007 at 12:44 AM by davidpolitis.
12-19-2007 10:37 PM
Profile PM Find Quote Report
freak544
Full Member
***

Avatar

Posts: 245
Reputation: 2
35 / Male / Flag
Joined: Dec 2007
RE: [?] RcClr in a Gradient?
You are correct the highest value in the msgres_colors.txt file is 46604=rgb(152,151,139)

mattike you areusing numers like 59900 unless the numers are coming from somewhere else?
12-19-2007 10:46 PM
Profile E-Mail PM Find Quote Report
TheSteve
Full Member
***

Avatar
The Man from Japan

Posts: 179
Reputation: 23
40 / Male / Flag
Joined: Aug 2005
RE: [?] RcClr in a Gradient?
In theory, the highest number usable is 65535 as this is the limit for the microsoft resource format.

Unfortunately, it appears that the gradient function does not support embedded rcclr calls. Because of this, you can't make a colorizable gradient. If you can add or replace a current color, (which last I heard wasn't supported), the binary format for such a gradient would be as follows:

(each <> part is one byte)
HC<rr><gg><bb><aa>C<rr><gg><bb><aa>

The H stands for horizontal gradient, (you'd use V if you wanted a vertical gradient)
C is a colorizable color. (as opposed to D for a normal color)
then the rr, gg, bb and aa parts are the desired colors and alpha in the gradient parts. (you'll want the alpha to be 255 (0xFF) most of the time)

This post was edited on 12-20-2007 at 12:39 AM by TheSteve.
12-20-2007 12:39 AM
Profile PM Web Find Quote Report
Matti
Elite Member
*****

Avatar
Script Developer and Helper

Posts: 1646
Reputation: 39
31 / Male / Flag
Joined: Apr 2004
O.P. RE: [?] RcClr in a Gradient?
Hmm... so I understand that rcclr()s in a gradient() are a no-go, right? :P

Okay then, now I have two choices then:
  • Use skin options to have multiple themes (like in the original Wave11 MSN and like Ev0 3 does now)
  • Make an image from the gradient (with dimensions somewhere at 1000x1) and use that instead, so that the gradient image can be colorized after all.
What would be your choice?
Plus! Script Developer | Plus! Beta Tester | Creator of Countdown Live | Co-developer of Screenshot Sender 5

Found my post useful? Rate me!
12-20-2007 09:24 AM
Profile E-Mail PM Web Find Quote Report
TheSteve
Full Member
***

Avatar
The Man from Japan

Posts: 179
Reputation: 23
40 / Male / Flag
Joined: Aug 2005
RE: [?] RcClr in a Gradient?
I'd pick option number 3 :P
  • Wait until Patchou adds in color replacement
12-20-2007 09:44 AM
Profile PM Web Find Quote Report
Matti
Elite Member
*****

Avatar
Script Developer and Helper

Posts: 1646
Reputation: 39
31 / Male / Flag
Joined: Apr 2004
O.P. RE: [?] RcClr in a Gradient?
quote:
Originally posted by TheSteve
I'd pick option number 3 :P
  • Wait until Patchou adds in color replacement

Heh... well yes, that could be another method indeed. :P I think I'll go for method 1 at the moment, that'll give me the opportunity to work with Skin Options too! :)
Plus! Script Developer | Plus! Beta Tester | Creator of Countdown Live | Co-developer of Screenshot Sender 5

Found my post useful? Rate me!
12-20-2007 10:05 AM
Profile E-Mail PM Web Find Quote Report
Willz
Senior Member
****

Avatar

Posts: 953
Reputation: 52
36 / Male / Flag
Joined: Jul 2006
RE: [?] RcClr in a Gradient?
but there already is color replacement :P

I'm not sure if it can replace gradients :P

but there definitely is just color replacements

code:
<Replace>
<Colors>
<Color Id="#">
  <R>0</R>
  <G>0</G>
  <B>0</B>
  <A>255</A>
</Color>
</Colors>
</Replace>

or for colorized colors

code:
<Replace>
<Colors>
<Color Id="#">
  <I>100</I>
  <A>255</A>
</Color>
</Colors>
</Replace>

This post was edited on 12-20-2007 at 10:45 AM by Willz.
12-20-2007 10:39 AM
Profile PM Web Find Quote Report
Patchou
Messenger Plus! Creator
*****

Avatar

Posts: 8607
Reputation: 201
43 / Male / Flag
Joined: Apr 2002
RE: [?] RcClr in a Gradient?
59000+ resource IDs are the ones reserved for Plus! new colors (as Willz just pointed out). Unfotunately, if rcclr() aren't accepted for the Gradient calls, they probably won't be of any use in this case.

Secondary colorization is on the lost of ideas for the next update, it will probably be done if it has some use such as this.
[Image: signature2.gif]
12-20-2007 05:48 PM
Profile PM Web Find Quote Report
TheSteve
Full Member
***

Avatar
The Man from Japan

Posts: 179
Reputation: 23
40 / Male / Flag
Joined: Aug 2005
RE: RE: [?] RcClr in a Gradient?
quote:
Originally posted by Willz
but there already is color replacement :P

I'm not sure if it can replace gradients :P

I meant replacement for the actual color resources or the addition of colorized gradients to the XML.  I am not 100% sure about WLM 9.0, but WLM 8.5 does support colorized gradients when the previously mentioned resource format is used.  It appears that 9 is using a more complicated system which may still support this format but I have not yet tested it.
12-21-2007 12:49 AM
Profile PM Web Find Quote Report
« Next Oldest Return to Top Next Newest »


Threaded Mode | Linear Mode
View a Printable Version
Send this Thread to a Friend
Subscribe | Add to Favorites
Rate This Thread:

Forum Jump:

Forum Rules:
You cannot post new threads
You cannot post replies
You cannot post attachments
You can edit your posts
HTML is Off
myCode is On
Smilies are On
[img] Code is On