cat /dev/maxilys

A glance in the mind of a KDE/Linux developer to see how ideas turn into code.

2006-11-28

KDE: Stating the obvious

Of course, I'm going to talk about Serenity's obvious changes. Last time, I really indulged myself in bragging about an internal change that has very few interest for the users. This time, let's see what you will see.

The oldest change I made is to introduct a new tree view style. I don't remember where I saw it apart that it was on a mockup somewhere in KDE's world. Any way, I fell in love. I called it "Modern". The colors are still a bit grey but not for long. What I really liked is the dotted list style of the expanded branches. That's very visible, very clean and nobody will complain about the solid lines. ;-)

Next, I made the sliders (the ones like in KMix volume control) look like arrowless sliders (the ones of the scrollbars), including the little arrows. I even had to draw tiny arrows. They also totally follow the colorscheme set for the scrollbars except that the arrows are less visible.

Then I touched again and again the progress bars patterns of which ones the drawing was less than optimal. I tried for a while to make patterns proportional to the height of the progress bar but it was useless. The difference in between a regular progress bar and a tiny one like in GIMP or at the bottom of Konqueror's window was very minimal. The only feature I've kept from my experiments is the introduction of a new shade of color. So, instead of being only bright-dark, the progress bar are bright-medium-dark.

New progress bar


If you find the colors odd or if you don't recognize the global style, it's just because there are two very obvious changes that I haven't spoken of yet.

I don't know which one is most obvious. So let's start with the oldest one: I wanted to introduce a third global style --I don't count "Flat" as a real one. I did like usual, I modified the main drawing routine of the Zen style. I don't know what I was trying to achieve but I know what I got: A very smooth new Zen style. The only thing I add to think about is the vertical scrollbars that were now ugly. That's simple, I just made my routine switch to a special design when the shape to draw is taller than wide and as much or narrower than a scrollbar. So you can still have tall buttons that won't look like scrollbars.

New Zen style


The second obvious change is everywhere: No more grey! In Serenity's README provided with the sources, --I wonder if somebody ever read it.-- I give the advice to add a little color to the blacks used in foreground, button label and text colors to fight against the invasion of the Little Greys. ;-) That's was a good start but not enough to my liking any more.

I changed the colorscheme I'm using right now ("Caloris Planitia") to be more orange than greyish orange but that's still not enough to explain the colors of the progress bar above.

For a few time, I had been using a special option to colorize the menu bar groove. It used to turn its color in something that you could call orange or at least brown. This morning, I got a flash: Why wouldn't I colorize everything that is so grey?

That's easier to do than it looks like. If everything is so grey that's because Serenity mixes the colors with the foreground to produce all its shades of color and that foreground is usually black. So, in Serenity's color factory, I hired lines of code to pour some color in the mix. Et voilĂ  ! You can keep on adding a very little color to the black texts but you won't be able to go as far as the color factory or the result will turn to ugly.

Now "Caloris Planitia" (which is the name of an area of the planet Mercury) burns on screen with all its shades of orange. Much closer from what I had in mind when I chose the name of the colorscheme!

All this led me to re-design the configuration dialog (again). I realized that spaces were good enough separators so I ditched all the utilitarian lines to keep only cosmetic ones. I like the result, especially the bold section titles. Now, I have to do the same with the window decoration configuration dialog for the sake of consistency but that will be very quick. I have mastered Qt Designer... when I pay attention to what I'm doing. ;-)

Next, I'll also propagate the new zen style to the windec, touch a little the layout so that the buttons don't walk on the (external) line when the border is reduced to 2 pixels. I already did a lot of work on it, especially to speed up the calculations to draw the frame, to select the colors of the buttons. It had become a kind of nightmare now that I added to possibility to choose the colorization tint of both the buttons and their symbol. I mean, you can now use either a color from the color list or the title blend color (for the buttons) or the title button color (for the symbols) instead of only their glow colors previously. That's how I managed to obtain the nice buttons on the dialogs hereabove. The Gay Pride is over, you can remove the Rainbow Flag from your title bar. ;-)

The rest are minor modifications that you'll discover in the changelog. If things go smoothly, maybe I'll release this week-end... for the world to find my new bugs. :-D

Labels: , ,

2 Comments:

At 28 November, 2006 18:54, Blogger Daniel D. said...

Awesome stuff.

 
At 28 November, 2006 20:03, Blogger jospoortvliet said...

man, you're creating such an original style... i really hope you can continue maintaining it.

 

Post a Comment

<< Home