yashsingh1/xdaforums huggingface dataset:
[Windows Mobile Themes] Vostradamus:
All the graphics used in mobile shell can only be made by 2 bmp images (so, unfortunately, no png transparency)

- actual image

- transparency mask

the actual image is 16 bit bmp, but the transparency mask is 8 bit grayscale, I'd suggest you extract the palette from one of my mask images and just apply it to yours once you're done modifying it ;)
[Windows Mobile Themes] jotha:
What a stupid question. The existence of your masking bitmap should have answered my question. Sorry for bothering you before thinking.
[Windows Mobile Themes] Vostradamus:
lol no problem, don't worry ;)

actually... it was a due question, I think anyone modding widget graphics would LOVE the possibility of using png images, so it's just normal wondering if it can be done :p
[Windows Mobile Themes] jotha:
Hi Vostradamus,

I have made my own small and tiny Graphics in 5% steps. They look good in my opinion. Now I have another question: In your xml the part for this skin reads:

<Plugin Name="BatteryFuelSmall" Class="Spb.LSP.Battery" Skin="qa_BatteryFuelSmall" DoubleSkin="va_BatteryFuelSmall" MiddleSkin="qa_BatteryFuelSmall" BoldFont="n">

<BoundRect X="0" Y="0" Width="120" Height="65"/>

<Rect Name="IconRect" X="0" Y="0" Width="120" Height="65"/>

<Rect Name="TextRect" X="2" Y="51" Width="0" Height="0"/>

</Plugin>

Does the TextRect mean, that I can show the percentage in the widget, if I use reasonable numbers for Width, Height, X and Y? Do I have to mask out the rectangle in the fuel_m.bmp?

Sorry, I could try it by myself or dissect the other skins that have graphics AND Text, but I would be grateful, if you could spare me the time. Thanks in advance.
[Windows Mobile Themes] Vostradamus:
Yep, the TextRec is meant exactly to show the percentage :)

I dunno what would happen if you place it overlapped with the icon graphics, I never tried it so I can't tell you if the text would be in the foreground or in the background (meaning that if it's in the background then you'll have to modify the mask accordingly)

If you plan to add it, though, you will find useful to add this line too:

<DefaultFont Face="Tahoma" HeightPxl="11" Bold="n" Color="FFFFFF"/>

Of course using your preferred values for the various parameters (font, size, bold and color)

Oh, and about the color keep in mind another thing too: usually you would expect the hexadecimal values to describe RGB color coding... but for some unknown (at least to me) reason... spb decided to code them as BGR instead
[Windows Mobile Themes] jotha:
Thanks alot, I will try it immediately. From where are the offsets x and y? I assume left and top of the graphics, but could be left and bottom.
[Windows Mobile Themes] Vostradamus:
Left and top of the BoundRect area :)

Graphics are inside the IconRect area, centered in it if it's defined larger than the graphic itself
[Windows Mobile Themes] jotha:
Thank, have figured it out. No need for masking. Text is printed on top. Here's what it looks like. Graphics are not as beautiful as yours, but I had to build them from scratch. Now it is exactly as I wanted it.

I wanted to insert the changed WidgetsZioGian with your cab, so copied the changed xml in install dir and started xmlinstaller cab. But the qa_layouts.dat was not updated. Had to insert the WidgetsZioGian manually. Why?

Thanks again for your help. Will mod the tiny now.
[Windows Mobile Themes] Vostradamus:
It looks nice indeed! :)

If you have a need for them, I could send you the gimp project files with the graphic parts inside... only drawback is: you should wait 'til monday 'cause I have them on my pc at office :p

About the installer cab... actually qa_layouts has been updated... but not with your xml file :p the installer cab has the xml file inside, and that's the one it uses for the update (I update the installer cab on every release)

The xml file inside my zip is there just because a couple users asked me to include it because they were having some issues with the installer and they preferred to import it manually :)
[Windows Mobile Themes] jotha:
Thanks for the offer, but I like the graphics. They are made as vector files so I can change the size very easily without loss of quality. I am used to work like this and have no clue of Gimp.

The thing with the xml is bad news. Now I have to manually change the qa_layouts every time I install new widgets from you. Nothing in the world comes for free I presume :-)
[Windows Mobile Themes] Vostradamus:
Well.... not really, actually :)

if you create your own xml file (different name of course), import it in qa_layouts and change the registry keys for those widgets to make them point to your xml and not mine you won't have any problem when installing new things from me ;)
[Windows Mobile Themes] jotha:
Well... wouldn't your xml installer change these reg-keys back, the next time I run it?
[Windows Mobile Themes] WMLover212:
Alright. :(

How about a different music player widget that looks more like the Hero or something totally new?
[Windows Mobile Themes] Vostradamus:
Nope.. xml installer's only job is to import the xml into qa_layouts :)

Registry keys are set by the single widget cabs... every cab sets its own keys, so you would be ok as long as you don't reinstall the ones you modified ;)
[Windows Mobile Themes] jotha:
Thanks, then thats the way to go. I'm gonna look at your install file for the fuel gauge and mod it to point to my own xml
[Windows Mobile Themes] Vostradamus:
That's something I want to try when I have a lil bit of time for it.

I'm not 100% sure it will work though, here's why.

Most "normal" widgets have their graphic set up each in a "private" dat file.

Some (few) of them are different, and they all share a common dat files with several graphics inside.

The media player widget is one of them, as are the wireless widgets and the shortcut widget.

As you most probably noticed, I already skinned the shortcut widgets several times, "redirecting" where they go looking for their graphics, and everything works fine with them. :)

When I tried to do the same with the wireless widgets, though, things did not go as I hoped... :( the new skin names appeared in the skin list, but the graphics did not change... most probably due to sort of a bug in mobile shell code, which ignores the instruction telling it where to go looking for the graphics and always take them from the same place even if you state otherwise.

Now, I didn't try with the media player widget so far, but if it should suffer from the same "bug" of the wireless widgets, then it won't work. I guess I'll find out for sure when I'll give it a try :p

Oh, of course I tried reporting this issue to spb guys, and my message about it apparently followed the same route as users request for a sdk: right into the trash can :mad:

Of course both the wireless widgets and the media player (if it should prove to have the same problem) can still be modified by replacing their original graphics with new ones, but that's not what I want my widgets to do: I want them to work as addons, something which can be selected if desired, but without altering the original parts ;)
[Windows Mobile Themes] Vostradamus:
Keep me posted, and lemme know if you need further assistance about it ;)
[Windows Mobile Themes] WMLover212:
Hmmm those darn spb guys :P

Ok, I look forward to seeing what you come up with. The one that comes with it is not very....flashy. Lol
[Windows Mobile Themes] Vostradamus:
lol "not very flashy" is a very kind euphemism :D

Let's just say it clear... it really sucks big time :D
[Windows Mobile Themes] WMLover212:
*snicker* kinda. It would be nice to have a status bar (time elapse/remaining)
[Windows Mobile Themes] Vostradamus:
Keep in mind that, even if it works, I cannot add functionalities which are not already defined... if the pluginclass of the media player widget does not provide those informations I have no way for showing them... :(

it all goes back once again to the lack of a sdk :mad:
[Windows Mobile Themes] WMLover212:
This is true. :) Still, a nicer looking version of the same thing is I believe called for regardless.
[Windows Mobile Themes] jotha:
Hi Vostradamus,

I accept gladly your offer to help me with the registry issues.

I now have renamed my modded widget.

Then I took your xml and reduced it to the single widget I want to use and renamed it.

I injected my modified xml in qa_layouts.dat.

I copied the new qa_layouts.dat and the widget dat into spb directory.

Then I took your battery cab and changed everything inside to the new names and locations and renamed it.

I copied the cab to the Mobile and installed it. The I restarted the Shell. Something must be wrong, because the Skin is in the list, but no graphics show up when choosen.

As long as your fuel-skin is also installed, YOUR graphics show up, when I choose MY mod, when I unsinstall your battery, the graphics do not show. There must still be a path to your dat, that I have not found.

I have already checked that the registry-keys from the cab are installed

I have attached the files I made and use. Would you be so kind and look at them, where I made my mistake?
[Windows Mobile Themes] Vostradamus:
First thing that I notice is:

in the registry keys, in the "class" value you wrote "BatteryFuelSmall:WidgetsJH", but inside you WidgetsJH.xml you named the plugin "BatteryJH_FuelSmall" and not "BatteryFuelSmall", so of course mobile shell can't find it.

I'm not 100% sure of the reason why it shows my graphics if my one is installed, but it could very likely have something to do again with the value written in the "class" value inside the registry: "BatteryFuelSmall" would appear 2 times in the registry because in your cab you left it unchanged.

First thing to do: correct either the registry key or the xml so that the plugin is correctly named and called at from the registry

Second thing to do: either uninstall my battery fuel small or change the plugin name in your xml/registry (BatteryJH_FuelSmall currenlty used in the xml would be ok I guess)
[Windows Mobile Themes] jotha:
Thank you. That did it. I had not realized the connection between the class definition and the plugin-name. Now it works. Next is cannibalizing your xmlsetup.cab to automatically inject my xml in qa_layouts.dat. That one should be not to hard.

Thanks again

Edit: I see, that you use a self-written mortscript to inject the xml in qa_layouts.dat. I ask for your permission to use it to install my own xml-file. I will not publish it or use it for anything else without asking.
[Windows Mobile Themes] Vostradamus:
Of course you can use it, don't worry ;)
[Windows Mobile Themes] hsmcd:
Hi Vostradamus,

I have shared and posted your app in http://www.wmfreeware.net/2010/01/vostradamus-widgets-226.html to share with others. Hope you don't mind :D

Great job!! Thanks for the development.
[Windows Mobile Themes] Vostradamus:
Of course I don't mind, thank you for the appreciation :)
[Windows Mobile Themes] jotha:
Hi Vostradamus.

I have to bother you again. I made my first own skin, but as expected, I ran into trouble.

My definition widgetsJH.xml reads:

<Plugin Name="BatteryJHLED" Class="Spb.LSP.Battery" Skin="qa_BatteryJHLED" DoubleSkin="va_BatteryJHLED" MiddleSkin="qa_BatteryJHLED" BoldFont="n">

<BoundRect X="0" Y="0" Width="480" Height="23"/>

<Rect Name="IconRect" X="0" Y="0" Width="480" Height="23"/>

<Rect Name="TextRect" X="1" Y="1" Width="0" Height="0"/>

</Plugin>

My index xml in va_BatteryJHLED.dat reads:

<skin name="BatteryDefault">

<items>

<item id="Battery" class="BATTERY">

<Bitmap Name="Icons" Image="LED.bmp" Mask="LED_M.bmp"/>

<Int Name="Height" Value="23"/>

</item>

</items>

</skin>

The registry keys are:

Class: BatteryJHLED:WidgetsJH

Index: 115

PluginClass: SPB.LSP.Battery

Size: LED

After installing the cab and importing the xml, the files are where they should be, but the skin does not appear in the list. I do not know what the keys index and Size do, so maybe these are responsible.

By the way, I have attached the bmp. I f you want to use the skin, I would be glad and could provide you with different sizes.
[Windows Mobile Themes] Vostradamus:
"index" key is used merely to determine in which order the widget names will appear in the list

"desc" and "size" keys (when present) determine what you read in the skin list, in the format

desc - size when both are present

one of them only when the other is not defined

"default" when both or them are missing

Dumb question: did you restart the shell after installing the widget and importing the xml? :p
[Windows Mobile Themes] jotha:
I use a copy of your xml-installer to inject my xml and it does a restart by itself. But I even reset the phone when it didn't work.
[Windows Mobile Themes] Vostradamus:
uhm... could you attach your cabs so I can take a look at them?
[Windows Mobile Themes] jotha:
Thanks for the effort. I checked that the expected registry-keys in widgetslist are there and the dat file is there also.
[Windows Mobile Themes] Vostradamus:
Oh, I didn't notice this at first....

in the quoted line, it should read

PluginClass: Spb.LSP.Battery

if I remember right, it's case sensitive....
[Windows Mobile Themes] jotha:
What the hell...

Who invents these things ?? CASE SENSITIVE??

OK That was it. Thanks. Now one thing is left. There is a Mistake in my size definitions, because the frame of the skin seems to be twice the size of the screen. it should be 480, but the frame either begins on the left and the picture begins in the middle of the screen or it snaps to the right and the picture ends in the middle.

Edit: I think I got it. Because VGA is double, all the numbers must be half the actual sizes?
[Windows Mobile Themes] Vostradamus:
lol actually the case sensitive thing got me confused too at first :p

Yep, you got it right: in the xml imported into qa_layouts the measures are all written in qvga resolution, so half of the vga ;)
[Windows Mobile Themes] jotha:
Thank you so much again. I now did two, one with 480 and one with 240 width. You can see it in the screenshot right below the fuel gauge. Next in line is a link. I want to make one that looks like a computer screen with the icon on the screen.
[Windows Mobile Themes] Vostradamus:
Grats! it looks great :)

Can't wait to see the link too, the computer screen is a real cool idea! :D
[Windows Mobile Themes] Vostradamus:
Good news: it seems that the media player does not suffer from the same "bug" of the wireless widgets :)

Now I just need an idea on what kind of skin I could try to make :p
[Windows Mobile Themes] jotha:
Good morning Vostradamus

Is it possible to get the Icon in a link-widget out of the center? In my Screen-Link I need to have it slightly to the top of the center. Can I use IconRect as in the battery-widget?

Thanks in advance
[Windows Mobile Themes] Vostradamus:
Yep, you guessed it right: you can use iconrect and place it wherever you need it :)

(even the "invisible links" are made this way... by placing the icon out of the screen using iconrect)
[Windows Mobile Themes] jotha:
Thanks, they are done. I have them with black, white and grey background and with a windows-screenshot as background (this one is a bit confusing with most of the link-icons). They are 120x120 and fit 4 in a row. Again, if you want to use them, you are welcome and I could provide you with the necessary graphics.
[Windows Mobile Themes] Vostradamus:
They look great :)

Even if it can be a lil bit confusing, I think the one with the screenshot looks the best :p

Maybe you could open a thread and release them for other users too ;) (together with your other creations, that is)
[Windows Mobile Themes] jotha:
Quite frankly, I see what a wonderful job you (and for instance MSkip) do, with providing people with this outstanding work and all the support. I am afraid that my workload and other interests do not allow for me to invest this much time.

On the other hand do I not want to put these things online and abandon them. So publishing them was never my intention. Thats why I offered them to you. I didn't want to persuade you to include them, as they were intended for my own use and for learning.
[Windows Mobile Themes] Vostradamus:
Yeah, time is a tyrant, I know what you mean :)

I'll be glad to grab your creations as they look really good, I'm sure I'll use them here and there on my phone :p

If you'd also like other users to use them and if you feel ok about it, I could create a qvga version too and include them in my package (of course together with credits)
[Windows Mobile Themes] Vostradamus:
Released version 2.27 :)

ChangeLog, detailed info and download links in the first post ;)

Enjoy! :D
[Windows Mobile Themes] jotha:
You can use them as you wish. I do not think you want to use my fuelskin, as you have your own. For the LED-Battery and the Screen-Link I could send you the source (which is Corel Draw cdr, i could export to eps of course if you work with adobe products) or I could provide the necessary bmp-files if you tell me the size (the link would be 60x60 I assume and for the LED Battery you would probably need 120 wide).

By the way, the new battery circle would be great in the size of your round status skins so they can pe put alongside (best with the loading-bmp and/or the backgrounds in the different colours of the status skin).
[Windows Mobile Themes] Vostradamus:
Yep, the bmps for the qvga versions should be half of the vga ones

There could be small problem with the led battery though... if I'm not mistaken you used an odd value of height, so it won't be possible to make it half, it will need a lil adjustment.

But don't worry, I can manage the same starting from the vga sized images, it's just a matter of resizing (I use gimp for the graphics, don't remember if it can open photoshop files) :)

Circle battery the size of the circle status/links? Brilliant! Didn't think of it! I'll see to it for sure! :D
[Windows Mobile Themes] jotha:
I think I worked them over to avoid odd numbers (already thinking in the future) so you can easily just reduce them to 50%. But I think the quality would be better if the bmp would be directly generated from the vector graphics than by deleting every second pixel.
[Windows Mobile Themes] Vostradamus:
Of course :) I just didn't want to bother you asking for a resized version of your graphics :p

About the odd numbers... some posts ago you mentioned your index.xml of the led battery

the height of the single led line was 23... did you change it later on?
[Windows Mobile Themes] jotha:
Yes I changed it to 24. Here the xml.

<Plugin Name="BatteryJHLED" Class="Spb.LSP.Battery" Skin="qa_BatteryJHLED" DoubleSkin="va_BatteryJHLED" MiddleSkin="qa_BatteryJHLED" BoldFont="n">

<BoundRect X="0" Y="0" Width="240" Height="24"/>

<Rect Name="IconRect" X="0" Y="0" Width="240" Height="24"/>

<Rect Name="TextRect" X="1" Y="1" Width="0" Height="0"/>

</Plugin>

<Plugin Name="BatteryJHLEDHalf" Class="Spb.LSP.Battery" Skin="qa_BatteryJHLED" DoubleSkin="va_BatteryJHLEDHalf" MiddleSkin="qa_BatteryJHLED" BoldFont="n">

<BoundRect X="0" Y="0" Width="120" Height="12"/>

<Rect Name="IconRect" X="0" Y="0" Width="120" Height="12"/>

<Rect Name="TextRect" X="1" Y="1" Width="0" Height="0"/>

</Plugin>
[Windows Mobile Themes] Vostradamus:
Great, then if you send me the graphics I'll add them to my next release. :)

I'm thinking of setting them all up in a single cab (both the led battery widgets and the link widgets) named "JH Widgets", and I'll set up another xml installer too for your xml, is it ok for you?
[Windows Mobile Themes] jotha:
Please don't make yourself more work than necessary. I do not mind at all if you rename all the xmls and dats to your naming scheme. I do not need my name in the package. I think for all the other users it would be hard to understand why these skins are named different than the others. I suggest you treat them as your own. It is more then enough if you mention me in the changelog as the creator.

I will make the smaller bmps this evening. Perhaps you pm me an email-adress, because I think it is not in the best interest of the Thread if I continue to send them through the thread. It just congests the thread.
[Windows Mobile Themes] Vostradamus:
Oooook, I'll do just that :)

Gonna pm you right now
[Windows Mobile Themes] rubadub234:
thanks VWW loving the larger text status widget skins!.

I used the picture frames to simulate the text status widgets kind of like the skinnable clock idea. The turned out ok, but the big ones took up a lot of room and the invisible status icons made the smaller ones look bad when they popped up. I never realized there were so many possibilities using the picture frame and invisible icons.

As always, thanks for your work

http://xdaforums.com/attachment.php?attachmentid=272729&stc=1&d=1264475100

http://xdaforums.com/attachment.php?attachmentid=272730&stc=1&d=1264475100

http://xdaforums.com/attachment.php?attachmentid=272731&stc=1&d=1264475100
[Windows Mobile Themes] Peterjac:
Hi Vostradamus,

Any chance you could make a weather widget using the original Diamond weather icons, thats the ones without backgrounds, it was in the change skin program but has been removed in the new version.

Many thanks for all your ongoing work and for putting up with all our requests.

Peter
[Windows Mobile Themes] Vostradamus:
You're welcome :)

Yep, the picture frame can actually be a quite "powerful tool" for skinning things :) If only spb guys made it compatible with png transparency it would be just perfect... let's hope they'll realize this some day :p
[Windows Mobile Themes] Vostradamus:
I'm not really sure which icons you're referring to :p

Do you happen to have one to show me, so I can look for the whole set?
[Windows Mobile Themes] krisztian b:
Battery fuel versions (all) not workin' on wm5. :( Otherwise great job! Thanks.
[Windows Mobile Themes] Vostradamus:
huh? that's quite weird, they should not be sysop version dependant :confused:

is the standard mobile shell battery widget working? and the other ones, like duracell, beer and so on?

EDIT: and what's exactly the problem they're showing?
[Windows Mobile Themes] krisztian b:
Well, I didn't install the other themes like duracell and others, just the fuel ones. When I install them only black icons, I mean nothing shows up. The standard batt icon works fine. However they are working fine on my diamond (stock wm6.1). Just like other gadgets like clocks, links etc, they work fine on both units.
[Windows Mobile Themes] Vostradamus:
It's quite strange...

Reading your signature, I guess the WM5 phone is the HTC trinity, I know this is gonna be a dumb question, sorry about it: are you sure you installed on the trinity the right cabs (qvga ones) and you didn't pick the vga ones (ok on the diamond) by mistake? :p
[Windows Mobile Themes] krisztian b:
That's true: this is a Trininty running stock wm5. No, these were separate installations, I picked the correct version. Beside the battery issue, everything else works fine. (skinnable ana clock, digital clock, link shield and xml installed on the devices and work excellent) on the diamond everything perfect.
[Windows Mobile Themes] Vostradamus:
Uhm... looks like I'll have to find a wm5 device or emulator to experiment on... :confused:

I'm a bit confused 'cause apparently there's nothing in the graphical definition part which can take the sysop version into consideration
[Windows Mobile Themes] krisztian b:
Great job tho! Thanks anyway!
[Windows Mobile Themes] Vostradamus:
You're welcome! :)

As I suspected, though, the issue is not about WM version, I tried it on WM5 and it worked, so there must be something else which is causing it. :confused:

After trying to install them, do their names show up in the change skin menu?

If yes, could you post a screenshot of what happen when trying to select them?
[Windows Mobile Themes] krisztian b:
All others work. The red candle, the beer and the original. But the fuel ones... They show up, but no preview and when I pick one of them they just remove the battery widget that used before.