Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

new/extra/additional ttk themes?

640 views
Skip to first unread message

Zhang Weiwu

unread,
Jun 7, 2010, 5:17:20 AM6/7/10
to
Having googled so far, I didn't find any more ttk themes for use than
the ones come with tk8.5 (that have ttk embeded). Consider it is
possible to create a new theme only by using tcl/tk, such low barrier of
theme authoring must have attracted some people to make their new theme
and very likely they already published somewhere. How would you search
for them? I for one is attracted to theme making and hope to find time
to authoring some themes, for example, with pure black and white color
blocks for application that uses black-white display, and another theme
which represents the look of a web page for those who feel more homy
with web application than with desktop application. I guess someone
might have done it.

Thanks.

Thomas MENEZ

unread,
Jun 7, 2010, 3:27:09 PM6/7/10
to

Hi !

PureTkGUI supports and comes with additional ttk:: themes : plastik
and keramic.

Thomas

Zhang Weiwu

unread,
Jun 7, 2010, 10:39:44 PM6/7/10
to
On 2010年06月08日 03:27, Thomas MENEZ wrote:
> PureTkGUI supports and comes with additional ttk:: themes : plastik
> and keramic.
>
Just read they became closed source product now (check their home page
at http://puretkgui.sourceforge.net/). Yet is there standalone release
or legal source for the two themes?

Zhang Weiwu

unread,
Jun 8, 2010, 1:31:33 AM6/8/10
to
On 2010年06月08日 10:39, Zhang Weiwu wrote:
> Just read they became closed source product now (check their home page
> at http://puretkgui.sourceforge.net/).
Sorry, when I say "their", I wasn't aware you are the author of puretkgui.

Zhang Weiwu

unread,
Jun 8, 2010, 2:16:30 AM6/8/10
to
On 2010年06月08日 03:27, Thomas MENEZ wrote:
> PureTkGUI supports and comes with additional ttk:: themes : plastik
> and keramic.
>
Hi.

Not being able to download PureTkGUI as all download links are removed
now, I tried to google the two themes and found them in Tile project,
and got a copy by CVS checkout. Apparently Tile chose to not to release
the two within their official packages. Thanks for hinting the theme
names anyway:)

George Petasis

unread,
Jun 8, 2010, 2:59:03 AM6/8/10
to

In the tile cvs repository, you can also find tileqt/tilegtk, which will
allow you to use any Qt/GTK theme.

George

MSEdit

unread,
Jun 8, 2010, 6:23:14 AM6/8/10
to

I found (somewhere on the net) a black theme which is based on clam
with padding reduced, I have used this to make a compact clam theme
which reduces the buttons and things.

I cannot remember where I found the black theme (Just looked it has
Mats Bengtsson in so probably coccionella ?) it is < 40 loc so could
post it here if necessary


Martyn

Christian Rapp

unread,
Jun 8, 2010, 10:37:23 AM6/8/10
to

I would like to see the dark clam theme. If anyone else has modified
ttk themes please share them.

@George

I'am sorry bute I don't think tilegtk/tileqt is really usable. Still
too many bugs and optical glitches. It is good work but not finished
and we would need native look & feel on Gtk / Qt.

Regards

lr...@localhost.localdomain

unread,
Jun 8, 2010, 10:40:44 AM6/8/10
to
W poście <2e90e41a-f45a-4540...@b35g2000yqi.googlegroups.com>,
Christian Rapp nabazgrał:

> I'am sorry bute I don't think tilegtk/tileqt is really usable. Still
> too many bugs and optical glitches. It is good work but not finished
> and we would need native look & feel on Gtk / Qt.

There is a GSoC project on that, so it should become usable in a few months.
But it's not clear whether it will be fixing the current extensions, or
writing from scratch.

Christian Rapp

unread,
Jun 8, 2010, 10:46:55 AM6/8/10
to
On 8 Jun., 16:40, l...@localhost.localdomain wrote:
> W po cie <2e90e41a-f45a-4540-a071-8d4050ac7...@b35g2000yqi.googlegroups.com>,
>  Christian Rapp nabazgra :

>
> > I'am sorry bute I don't think tilegtk/tileqt is really usable. Still
> > too many bugs and optical glitches. It is good work but not finished
> > and we would need native look & feel on Gtk / Qt.
>
> There is a GSoC project on that, so it should become usable in a few months.
> But it's not clear whether it will be fixing the current extensions, or
> writing from scratch.

Oh really, did not know that. That sounds very promising. Perhaps it
will be available with Tcl/Tk 8.6, if we ever get that :D

MSEdit

unread,
Jun 8, 2010, 11:34:17 AM6/8/10
to
# black.tcl -
#
# Experimental!
#
# Copyright (c) 2007-2008 Mats Bengtsson
#
# $Id: black.tcl,v 1.13 2008-06-07 06:50:38 matben Exp $

package require Tk 8.5; # minimum version for Tile

namespace eval ttk {
namespace eval theme {
namespace eval black {
variable version 0.0.1
}
}
}

namespace eval ttk::theme::black {

#variable imgdir [file join [file dirname [info script]] black]
#variable I
#array set I [tile::LoadImages $imgdir *.png]

variable dir [file dirname [info script]]

# NB: These colors must be in sync with the ones in black.rdb
variable colors
array set colors {
-disabledfg "#999999"
-frame "#424242"
-dark "#222222"
-darker "#121212"
-darkest "black"
-lighter "#626262"
-lightest "#ffffff"
-selectbg "#4a6984"
-selectfg "#ffffff"
}

ttk::style theme create black -parent clam -settings {

#
-----------------------------------------------------------------
# Theme defaults
#
ttk::style configure "." \
-background $colors(-frame) \
-foreground white \
-bordercolor $colors(-darkest) \
-darkcolor $colors(-dark) \
-lightcolor $colors(-lighter) \
-troughcolor $colors(-darker) \
-selectbackground $colors(-selectbg) \
-selectforeground $colors(-selectfg) \
-selectborderwidth 0 \
-font TkDefaultFont \
;

ttk::style map "." \
-background [list disabled $colors(-frame) \
active $colors(-lighter)] \
-foreground [list disabled $colors(-disabledfg)] \
-selectbackground [list !focus $colors(-darkest)] \
-selectforeground [list !focus white] \
;

# ttk widgets.
ttk::style configure TButton \
-width -8 -padding {5 1} -relief raised
ttk::style configure TMenubutton \
-width -11 -padding {5 1} -relief raised
ttk::style configure TCheckbutton \
-indicatorbackground "#ffffff" -indicatormargin {1 1 4 1}
ttk::style configure TRadiobutton \
-indicatorbackground "#ffffff" -indicatormargin {1 1 4 1}

ttk::style configure TEntry \
-fieldbackground white -foreground black \
-padding {2 0}
ttk::style configure TCombobox \
-fieldbackground white -foreground black \
-padding {2 0}

ttk::style configure TNotebook.Tab \
-padding {6 2 6 2}

# tk widgets.
ttk::style map Menu \
-background [list active $colors(-lighter)] \
-foreground [list disabled $colors(-disabledfg)]

ttk::style configure TreeCtrl \
-background gray30 -itembackground {gray60 gray50} \
-itemfill white -itemaccentfill yellow
}
}

# A few tricks for Tablelist.

namespace eval tablelist {}

proc tablelist::blackTheme {} {
variable themeDefaults
array set colors [array get ttk::theme::black::colors]
array set themeDefaults [list \
-background white \
-foreground black \
-disabledforeground "#999999" \
-stripebackground "" \
-selectbackground $colors(-selectbg) \
-selectforeground $colors(-selectfg) \
-selectborderwidth 0 \
-font TkTextFont \
-labelbackground $colors(-frame) \
-labeldisabledBg "#dcdad5" \
-labelactiveBg "#eeebe7" \
-labelpressedBg "#eeebe7" \
-labelforeground white \
-labeldisabledFg "#999999" \
-labelactiveFg white \
-labelpressedFg white \
-labelfont TkDefaultFont \
-labelborderwidth 2 \
-labelpady 1 \
-arrowcolor "" \
-arrowstyle sunken10x9 \
]
}

package provide ttk::theme::black $::ttk::theme::black::version

The important line is the
ttk::style theme create black -parent clam -settings
which inherits and overrides the clam settings.

There was talk (at the European TCL User Meeting) of a central
collection (Wiki maybe) of user defined themes.

Martyn

Georgios Petasis

unread,
Jun 8, 2010, 11:41:54 AM6/8/10
to
στις 8/6/2010 17:37, O/H Christian Rapp έγραψε:
>
> @George
>
> I'am sorry bute I don't think tilegtk/tileqt is really usable. Still
> too many bugs and optical glitches. It is good work but not finished
> and we would need native look& feel on Gtk / Qt.
>
> Regards

I see that this rumor circulates c.l.t, but I am not sure it is true.
As a user, you may see some visual glitches in tileqt for example, and
it is easy to attribute them as tileQt bugs. In reality these may be due
to limitations of the Qt engine, or even bugs in the Qt style
themselves. And these cannot be fixed. Just use a theme that is correct :-)

The GTK themes are more primitive, and thus easier to support. But the
configuration system of gtk is a mess. Even if there are some visual
glitches there (of course I have not tested all themes), it is still
your best bet right now.

For me, bugs are when tileqt/tilegtk crash and terminate your
application. Visual differences with native apps are not bugs, but
adjustments that are theme specific, that can be fixed from the Tcl
level. Lot's of theme declare wrong element dimensions, which are fixed
by qt or gtk due to other reasons. In ttk themes these fixes cannot be
applied automatically.

And finally, there is always the option to try and use them, and report
bugs. But please don't report bugs on forked projects: in such a case
report the bugs into the authors of the forked projects directly :-)

George

Christian Rapp

unread,
Jun 8, 2010, 2:38:37 PM6/8/10
to

Hi George,

ok you might be right optical glitches do not have to be a bug.
Unfortunately Jos Decoster stopped working on tileqt despite he was
already there. Ok it does not help to complain, like I said you did a
splendid job. I will retry tilegtk this evening to see what it looks
like.

Regards

Christian Rapp

unread,
Jun 8, 2010, 3:56:08 PM6/8/10
to

This looks quite nice and a central collection of tile themes would be
great. I have one Problem with your code, the border of labelframes is
invisible and the selected item in a treeview widget has no special
color. In the clam theme this is some dark blue. But I got the general
idea and may be able to rework your code so it is working as I want.
Thank you!

Regards

Igor Novikov

unread,
Jul 7, 2010, 5:34:58 AM7/7/10
to

Sorry George, can you explain why you used Qt classes inside tilegtk?

Regards,

Igor Novikov
sK1 Project
http://sk1project.org

Georgios Petasis

unread,
Jul 7, 2010, 8:17:48 AM7/7/10
to Igor Novikov

I am not sure I use Qt classes in tilegtk. Can you please point me a
place in the sources that I do use Qt?

George

Georgios Petasis

unread,
Jul 7, 2010, 8:21:43 AM7/7/10
to Igor Novikov
στις 7/7/2010 12:34, O/H Igor Novikov έγραψε:

Your application has a very professional look. Do you use tileqt/tilegtk
in it?
If yes, I would be very interested to hear problems you may have with
them, or features you may want :-)

George

Igor Novikov

unread,
Jul 7, 2010, 10:11:51 AM7/7/10
to

For example in tileGtk_Separator.cpp in function SeparatorElementDraw
there are references on QPixmap, QPainter, QStyle, QRect etc. And not
only in this file. The project cannot be compiled under Ubuntu without
Qt installed.

Igor

Igor Novikov

unread,
Jul 7, 2010, 10:19:50 AM7/7/10
to

sK1 uses python driven ttk bitmap theme. Actually we need native theme
like tilegtk
but it seems it's impossible to compile native theme for conventional
tcl/tk 8.5.x
Or may be you have found a way? As I googled your answers in mail
lists was
rather negative concerning this issue.

Regards,

Igor

Georgios Petasis

unread,
Jul 7, 2010, 5:17:27 PM7/7/10
to Igor Novikov

Yes, you are right. I will fix this, as I haven't noticed that there
were remains (as I always have Qt in my systems).

George

Georgios Petasis

unread,
Jul 10, 2010, 7:51:13 AM7/10/10
to Igor Novikov

Dear Igor,

I am looking at the code, and despite the fact that there are remains of
Qt stuff in some files, I cannot see how these prevent you for building
tile-gtk. I have just tested building tile-gtk under Ubuntu 10.4, and
builds without a glitch. The file with the Qt references is not included
in the build, and this is why tile-gtk compiles.

How did you tried to compile tile-gtk?

The correct way is to go inside the cmake directory, run sh
build(_64).sh, then go inside the proper directory (release/debug) and
run make install.

George

0 new messages