Polyester

KDE 3.5 Themes

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

4
5 .0
Description:

Widget style + kwin decoration both aimed to be a good balance between eye candy and simplicity
Last changelog:

11 years ago

2.0
-some fixes in build files, links less stuff
-fixed icons on tabbars
-fixed a bug in kcalc

2.0 beta2
-built with cmake is a kstyle, built with qmake is a plain qt style
-some fixes here and there
-corrected a crash with qt webkit
-corrected a graphical glitch with textboxes in Plasma

Polyester 1.0.5:
-compiles with gcc 4.3

Polyester 1.0.4:
-Corrected some visual glitches in ksnapshot

Polyester 2.0 Beta1:
-some graphics fixes
-some build system fixes
-translations should be ported

Polyester 1.0.3:
-Polish translation by Tomek Argasiński
-Italian translation

Polyester 1.95:
The widget set it's more or less complete, there are still some issues and i didn't tried all the combinations of configuration options, so some of these can still be broken :)

Polyester 1.90:
This is the first public releases of the qt4/kde4 port of polyester, some important notes:
-First of all it must be considered a very early alpha quality code not intended for everyday use, it could blow up your computer or eat your cat, use at your own risk :P
-as i said is not very stable and probably not all configuration option works
-at the moment there is only the style, i don't know if or when i will port the window decoration
-it can be compiled with cmake (and you will need a kde4 snapshot o do so) typing
cmake . -DCMAKE_INSTALL_PREFIX=whathever you want
make
make install
-or with qmake (you will need only qt4 with devel package, but you won't get the configuration dialog)
in order to use qmake you must go in the style subfolder and type:
qmake qmake.pro
make
make install
-probably i won't release another release tarball for quite some time, but if you're curious there is a bazaar repository at http://launchpad.net/polyester

Polyester 1.0.2:
-corrected a bug in the configuration dialog (centered tabbars)

Polyester 1.0.1:
mostly a bugfix release
-corrected a build problem with automake 2.6+
widget:
-better management of the menu stripe width
-another hack for gtk-qt: the menu stripe is always off (yeah, it's a broken solution but it was managed too bad...)
-when both toolbar separators and menubar emphasis with border are turned on don't draw an extra line under the menubar
deco:
-when the focus policy is set to "focus follows mouse" the bad flickering should be done (need some testing)
-corrected a bug that caused the windows not being completely painted when kcompmgr is activated

Polyester 1.0:
This will be more or less the final version for Qt3/KDE3, apart some fixes for the garzillions of terrible bugs I'm sure that are still there :)
widget:
-With colored scrollbars option turned off, the scrollbar handle has colored extremities on mouse over (similar to the Ubuntu theme)
-In the configuration dialog "Menus and toolbars" was misleading, now it's "Advanced"
-nice circles instead of asterisks in password lineedits. Idea from Daniel Molkentin http://daniel.molkentin.de/blog/index.php?/archives/59-Password-shadowing-Pimp-My-Plastique.html (will probably be the default in KDE 3.6 btw)
-default button highlight when animations are disabled
-alphablending (yes, fake of course:)) at the corners of the popup menus
-corrected a bug in the sliders aspect
deco:
-titlebar buttons icons have a cleaner aspect

Polyester 1.0_rc1:
widget:
-less (and bigger) dots on QSplitters
-button like menuitems works with transparent menus
-menu stripe works with transparent menus
-entirely redesigned the configuration dialog (should be more usable)
-a lot of code cleanups in the configuration code
-light gradient in the progressbar blank area
-corrected an ugly rendering bug in the QGridView headers
-corrected a rendering bug in the slider with reverse layout
-minor cosmetic changes to the following widgets:
-scrollbars
-sliders
-default buttons contour
-spinboxes
-inactive tabs
-better mouse over highlight with checkboxes and radiobuttons
-border of buttons and other 3d widgets

deco:
-option to make rectangular titlebar buttons (at the moment is the default)
-antialiased titlebar buttons border
-redesigned the configuration dialog to be similar to the style configuration
-added svg sources of the titlebar buttons icons so it's easier to make modifications
-some code cleanups
-drawing of titlebar buttons follows the global contrast settings

Polyester 1.0_beta2:
-Now Gentoo ebuild should work
widget:
-Nicer animation on buttons when the mouse cursor leaves them
-Shadowed text of buttons and menubar configurable separately
-Fixed a bug in the rendering of scrollbar handles
-Don't render dots on scrollbar handle when the handle is too little
-Optimization: lot useless loops in the animation code (i.e. deactivating the QTimer when is not needed :))

deco:
-More Fitts' law friendly: titlebar buttons works also when the mouse cursor is at the top edge of the screen
-No longer draws the round border if the window is maximized
-Uses 16x16 icons in titlebar where available instead of scaling down bigger icons

yogeshm02

14 years ago

Oops, looks like you are wrong here. You are not corerctly hadling the case where slider->minValue() could be -ve. I've modified polyester.cpp as per folowing (which solves the problem): -

(output of diff against modified polyester.cpp)
1393c1393
< double coloredWidth = ((double)r.width()/(slider->maxValue()-slider->minValue())*(slider->value() + slider->minValue());
---
> double coloredWidth = ((double)r.width()/slider->maxValue())*slider->value();
1400c1400
< double coloredHeight = ((double)r.height()/slider->maxValue()-slider->minValue())*(slider->value() + slider->minValue());
---
> double coloredHeight = ((double)r.height()/slider->maxValue())*slider->value();

Report

C

mart

14 years ago

uhm, yeah, it has gotten better, but the colored area movement still seems not syncronized (it's still drawn correctly only after the mouse button is released)

Report

yogeshm02

14 years ago

Explanation: slider->valueChanged() signal is emitted only when slider->tracking == TRUE; and it appears that many programmes have this set to FALSE, hence the slider is not updated while mouse button is pressed.

I have three rough ideas to achieve desired result; will reply soon if results are good. (Hint: Never looked into a KStyle code before)

Report

yogeshm02

14 years ago

I've fixed this.

(Please note that I've used version 0.8.5)

Here is the output of 'diff polyester.h polyester_my.h
---------------------------
270a271
> void sliderThumbMoved(int);
393a395
> QMap sliderValues;




Here is the output of 'diff polyester.cpp polyester_my.cpp
--------------------------------
344a345,350
> QSlider *slider = ::qt_cast(widget);
> if(slider)
> {
> connect(slider, SIGNAL(sliderMoved(int)), this, SLOT(sliderThumbMoved(int)));
> connect(slider, SIGNAL(valueChanged(int)), this, SLOT(sliderThumbMoved(int)));
> }
384a391,393
> const QSlider *slider = ::qt_cast(widget);
> if(slider && sliderValues.contains(slider))
> sliderValues.remove(slider);
1390c1399,1401
<
---
> int value = slider->value();
> if(sliderValues.contains(slider))
> value = sliderValues[slider];
1393c1404
< double coloredWidth = ((double)r.width()/slider->maxValue())*slider->value();
---
> double coloredWidth = ((double)r.width()/(slider->maxValue()-slider->minValue()))*(value-slider->minValue());
1400c1411
< double coloredHeight = ((double)r.height()/slider->maxValue())*slider->value();
---
> double coloredHeight = ((double)r.height()/(slider->maxValue()-slider->minValue()))*(value-slider->minValue());
4070a4082,4090
>
> void PolyesterStyle::sliderThumbMoved(int val)
> {
> QSlider *slider = ::qt_cast(sender());
> if(slider) {
> sliderValues.insert(slider, val);
> slider->repaint(false);
> }
> }

You may note that it is not only tracking == FALSE which is the cause of concern. Some sliders with tracking == TRUE also does not repaint correctly (could not found any reason), and to my surprise my own app has this behaviour!


But everything seems fine after above changes. Please test it.

Report

yogeshm02

14 years ago

This is the first time I've fixed something in an app of somebody else as my own app take most of my time.
But it was your style which inspired me to contribute (and also that the fix was going to be relatively easy). So, keep on the GOOD work.

Report

C

mart

14 years ago

ok, fixed.
the correct formula was:
coloredWidth = ((double)r.width()/(slider->maxValue()-slider->minValue()))*(slider->value() - slider->minValue());
(and so for the height)

and thanks again for your help :-)

Report

C

mart

14 years ago

oh, thanks dude!
now it is much better :-)

the only very strange thing I noted is that some sliders are drawn correctly with the size computed as
coloredWidth = ((double)r.width()/slider->maxValue()-slider->minValue())*(slider->value() + slider->minValue());

some others only with

coloredWidth = ((double)r.width()/slider->maxValue())*(slider->value() + slider->minValue());

for example in the "panels" control center module there are both types of sliders
i should investigate why

Report

C

mart

14 years ago

oh, thank you man :-)

Report

logixoul

14 years ago

Polyester doesn't follow KDE's contrast settings. I think it'd be better if it did.

Report

C

mart

14 years ago

uhm, strange: both the surfaces rendering code and the code thar renders the button contours computes the colors based on the contrast value, what graphic element is not affected by the contrast value?

Report

logixoul

14 years ago

The glossy gradients used for the buttons, comboboxes, etc.

Report

C

mart

14 years ago

here they works, i think the only thing is that this setting for some reasons affects only apps started after the contranst has been applyed and not the old ones.

Report

logixoul

14 years ago

Okay, you're right. Thanks.

Report

logixoul

14 years ago

I have a suggestion: add an option to make the editboxes (even multiline ones) glossy. This means that they'd look like they glossy buttons, only they'd look concave instead of convex. This can be achieved by mirroring along the X axis.

Report

spacepenguin

14 years ago

Many many thanks for this absoultely perfect window decoration. By now it's the only available window decoration I've found where you can set the button size and which has at the same time buttons with a high contrast and which allows to show all buttons (also help and sticky).

The problem with most of the window decorations is that 99% of the window decorations are not able to resize the buttons, so you end up with a huge title bar with some tiny buttons which looks ugly and is hard to use for visually impaired people. But your window decoration is very well thought out - and looks really beautiful. I use it with buttons of size 30 and a titlebar size of 32 and no lighter borders.

Report

logixoul

14 years ago

Both "Button-like menu items" and "Menu items spacing" don't work.

Report

yogeshm02

14 years ago

Works for me.
Though it seems like there is some problem in the way settings dialog tracks changes in settings. So after you have changed these settings as desired toggle option e.g. "Centred tabbars" and then click OK and subsequently "Apply" in the "Style page".

Report

logixoul

14 years ago

Worked, thanks. mart, are you reading?

Report

C

mart

14 years ago

yes, i noticed that some changes are applied immediately and some other not, i still not had discovered why

Report

sebwouaib

14 years ago

Hi,

I cannot manage to have effect (glass, gradient, etc.) on buttons. There are only flat...
But I have the same problem with other themes... perhaps a checkbox somewhere in the control panel...

Do you have already had this problem ?

Thanks in advance...

Report

C

mart

14 years ago

check in apperance->colors control center module how much contrast is set

Report

yogeshm02

14 years ago

This works for me. See my other post in the next message, may also help you.

Report

yogeshm02

14 years ago

Try out this colour scheme: http://www.kde-look.org/content/show.php?content=35937

Looks good with "SUSE" Window Decoration which goes well with Polyester.

I think Polyester's Window Decoration should take some clues from SUSE's implementation.

Report

C

mart

14 years ago

wow, so pink :-P
yes, maybe i will render configurable also the style of the titlebar and titlebar buttons, like the widget buttons.

Report

carlspear

14 years ago

I hope I'm not overstepping my bounds by asking such a simple question but can someone please give me the steps to install this Theme? I've been able to import the colors but everything else requres the entire package to be installed. Thanks for your help!

Report

11 years ago

2.0
-some fixes in build files, links less stuff
-fixed icons on tabbars
-fixed a bug in kcalc

2.0 beta2
-built with cmake is a kstyle, built with qmake is a plain qt style
-some fixes here and there
-corrected a crash with qt webkit
-corrected a graphical glitch with textboxes in Plasma

Polyester 1.0.5:
-compiles with gcc 4.3

Polyester 1.0.4:
-Corrected some visual glitches in ksnapshot

Polyester 2.0 Beta1:
-some graphics fixes
-some build system fixes
-translations should be ported

Polyester 1.0.3:
-Polish translation by Tomek Argasiński
-Italian translation

Polyester 1.95:
The widget set it's more or less complete, there are still some issues and i didn't tried all the combinations of configuration options, so some of these can still be broken :)

Polyester 1.90:
This is the first public releases of the qt4/kde4 port of polyester, some important notes:
-First of all it must be considered a very early alpha quality code not intended for everyday use, it could blow up your computer or eat your cat, use at your own risk :P
-as i said is not very stable and probably not all configuration option works
-at the moment there is only the style, i don't know if or when i will port the window decoration
-it can be compiled with cmake (and you will need a kde4 snapshot o do so) typing
cmake . -DCMAKE_INSTALL_PREFIX=whathever you want
make
make install
-or with qmake (you will need only qt4 with devel package, but you won't get the configuration dialog)
in order to use qmake you must go in the style subfolder and type:
qmake qmake.pro
make
make install
-probably i won't release another release tarball for quite some time, but if you're curious there is a bazaar repository at http://launchpad.net/polyester

Polyester 1.0.2:
-corrected a bug in the configuration dialog (centered tabbars)

Polyester 1.0.1:
mostly a bugfix release
-corrected a build problem with automake 2.6+
widget:
-better management of the menu stripe width
-another hack for gtk-qt: the menu stripe is always off (yeah, it's a broken solution but it was managed too bad...)
-when both toolbar separators and menubar emphasis with border are turned on don't draw an extra line under the menubar
deco:
-when the focus policy is set to "focus follows mouse" the bad flickering should be done (need some testing)
-corrected a bug that caused the windows not being completely painted when kcompmgr is activated

Polyester 1.0:
This will be more or less the final version for Qt3/KDE3, apart some fixes for the garzillions of terrible bugs I'm sure that are still there :)
widget:
-With colored scrollbars option turned off, the scrollbar handle has colored extremities on mouse over (similar to the Ubuntu theme)
-In the configuration dialog "Menus and toolbars" was misleading, now it's "Advanced"
-nice circles instead of asterisks in password lineedits. Idea from Daniel Molkentin http://daniel.molkentin.de/blog/index.php?/archives/59-Password-shadowing-Pimp-My-Plastique.html (will probably be the default in KDE 3.6 btw)
-default button highlight when animations are disabled
-alphablending (yes, fake of course:)) at the corners of the popup menus
-corrected a bug in the sliders aspect
deco:
-titlebar buttons icons have a cleaner aspect

Polyester 1.0_rc1:
widget:
-less (and bigger) dots on QSplitters
-button like menuitems works with transparent menus
-menu stripe works with transparent menus
-entirely redesigned the configuration dialog (should be more usable)
-a lot of code cleanups in the configuration code
-light gradient in the progressbar blank area
-corrected an ugly rendering bug in the QGridView headers
-corrected a rendering bug in the slider with reverse layout
-minor cosmetic changes to the following widgets:
-scrollbars
-sliders
-default buttons contour
-spinboxes
-inactive tabs
-better mouse over highlight with checkboxes and radiobuttons
-border of buttons and other 3d widgets

deco:
-option to make rectangular titlebar buttons (at the moment is the default)
-antialiased titlebar buttons border
-redesigned the configuration dialog to be similar to the style configuration
-added svg sources of the titlebar buttons icons so it's easier to make modifications
-some code cleanups
-drawing of titlebar buttons follows the global contrast settings

Polyester 1.0_beta2:
-Now Gentoo ebuild should work
widget:
-Nicer animation on buttons when the mouse cursor leaves them
-Shadowed text of buttons and menubar configurable separately
-Fixed a bug in the rendering of scrollbar handles
-Don't render dots on scrollbar handle when the handle is too little
-Optimization: lot useless loops in the animation code (i.e. deactivating the QTimer when is not needed :))

deco:
-More Fitts' law friendly: titlebar buttons works also when the mouse cursor is at the top edge of the screen
-No longer draws the round border if the window is maximized
-Uses 16x16 icons in titlebar where available instead of scaling down bigger icons

12345678910
Be the first to comment
kamesh
Jan 20 2012
Frank
Feb 17 2009
8siem
Feb 08 2009
panshizhu
Jan 21 2009
File (click to download) Version Description Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
1.0.4 - 2.0
updated Feb 17 2009
added Aug 20 2005
downloads 24h
0
mediaviews 24h 0
pageviews 24h 3