Working on Squareness 2.0 for Windowblinds

| Tags: dev, java

After releasing the Look And Feel and the Colorizer tool, I’m now working on the upcoming Windowblinds release of Squareness. It’s been a long time since the last Windowblinds release - nearly 7 months now. In the meantime Windowblinds 4.4 was released and new features were made available to skinners.

I have already fixed a bug, which really annoyed me during the past months. In Squareness 1.2 for Windowblinds the “More Programs” section is - at least on my computer - sometimes highlighted with the green activation color that is used everywhere else in Squareness and quite often it is also highlighted with a dark blue color, which looks like shit. Well, black color on dark blue background simply looks like shit though there is nothing brownish in that. If I remember correctly this wasn’t always the case. I think when I released this version, the bug wasn’t there yet. To make it short, I found the bug. I was searching through SkinStudio, to find any new yet unused features and found this start panel highlighting color. And suddenly it works. Funny thing is that Windowblinds behaved totally indeterministic without this color. I thought this to be a bug in Windowblinds. It must have thrown dice each time it loaded.

One other thing I fixed is the horizontal task bar. While looking ok, it was far from perfect. I have played around with it yesterday and today, until I finally understood how it works. Seems like I had a total misconception about it. As I was at it I made it a bit thinner. It’s now only 26 pixels high. I tried to make it thinner than that, but it wouldn’t go all that well with the rest of Squareness. I have still to look into horizontal quick launch buttons , which I do not use, and play the whole game again for the vertical task bar.

I’ve also added XP progress bars. Strangely Windowblinds paints a 3D lighting effect around the normal progress bar out of its own. So you simply cannot have a flat progress bar. No matter what you do, it becomes 3D. The new XP progress bar doesn’t paint anything other that what is specified in the skin. So finally there’s a flat progress bar in the Squareness skin and it looks much better now. The way was very stony partly because it is very poorly documented in SkinStudio. Another problem was with the way I was handling this. I thought I could play around with the horizontal variant and rotate it once it was finished to make the vertical one. The problem is that you have to do both at the same time to make them work. Both have to have the same properties. So when you specify a chunk size of 2 in the horizontal variant, the vertical variant must also have a chunk size of 2. If you don’t follow this scheme, it will all be ignored and the default values will be used.

Also quite annoying is the start panel. I don’t use it all that often, but each time I do, I see how bad it is. The colors are ok, but it’s too big and bulky. I’ll play around with compact start panels soon.

After all this is done or maybe somewhere in between, I’ll extend Colorizer to create subskins. It won’t be able to do it on it’s own. You’ll need SkinStudio for the process. I could develop Colorizer in such a way that it would make the whole subskins itself. That’s not really the problem. The format of the Windowblinds files, which are INI-files with specific sections and properties, is easy to understand. The problem is that the format is copyrighted by Stardock. I have negotiated with Stardock about a “no royalties license” that would allow me to parse and write those files. Unfortunately the negotiation didn’t have the desired outcome. Stardock proposed a contract to me that would allow me to do what I wanted, but this contract has a little hook to it. Anyone working on the Colorizer code would have to sign the contract. While at sight this contract seems to be ok and without any negative effects, it would have hindered me from distributing Colorizer as Open Source. How could I make sure, that everyone looking through the Colorizer code and possibly deriving other applications from it, signs the contract. No way. At first this looked like the end of the Windowblinds part of Colorizer, but now I think that the inclusion of SkinStudio in the process will do the trick.

When I started developing Squareness more than a year ago, SkinStudio looked like one of the most complicated applications to me and I resorted to editing the INI-files by hand with jEdit. In the last couple of days I have changed to SkinStudio again and am quite satisfied with it now. Funny thing, but I think that because I got to know UIS1+, which is the Windowblinds format I use, from the background without embellishments and convenient tools, I can find my way faster through the dungeons of SkinStudio. Back then when I started it was too much at once. Now it all makes more or less sense. That said I don’t mean that there is nothing to be improved in SkinStudio. It surely could be better in terms of usability and comprehensibility. One thing Stardock could do, is improve the documentation. The worst thing is to see “Undefined” or nothing at all in the help window when you click on a property. So it’s often making and proving assertions. And more likely than not the proof will fail. So making a Windowblinds skin is an adventure that tends to get boring if the tenth assertion about something also cannot be proven.