From: Pat Thoyts <patthoyts@googlemail.com>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: Pat Thoyts <patthoyts@users.sourceforge.net>,
git@vger.kernel.org, "Shawn O. Pearce" <spearce@spearce.org>,
msysgit@googlegroups.com
Subject: Re: [msysGit] [PATCH] git-gui: use themed tk widgets with Tk 8.5
Date: Sun, 20 Dec 2009 15:23:11 +0000 [thread overview]
Message-ID: <a5b261830912200723s131f0b93w2f5ab94f19faf86a@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.1.00.0912201412420.4985@pacific.mpi-cbg.de>
2009/12/20 Johannes Schindelin <Johannes.Schindelin@gmx.de>:
>>
>> On Windows and MacOSX ttk defaults to the native look as much as possible.
>> On X11 the user may select a theme using the TkTheme XRDB resource class.
>
> Maybe you could describe a quick way to set that resource?
echo '*TkTheme: clam' | xrdb -merge -
Or edit ~/.Xdefaults or maybe ~/.Xresources to add a line containing
*TkTheme: clam
Used to be the X resource database was the way to customize X11. The
builtin themes are:
default: thin borders, kind of windows98ish
classic: motif style
alt: more windowsy still.
clam: based on some version of the XFCE look a few years ago.
On Windows you also get winnative, xpnative or vista but the intention
is that Tk just makes everything look native by selecting the correct
theme when it starts up. MacOSX gets an aqua theme. There is some work
in progress to get the Qt or Gtk styling engines to draw the ttk
elements so that it can pick up the current GNOME/KDE desktop -
effectively making it look native on such systems there too. However,
on Windows is where this stuff makes the most difference and works
best.
You can of course just run git-gui in any git repository to see how it
looks at the moment. However I put up another screenshot at
http://www.patthoyts.tk/screenshots/git-gui-old.png which is the
unmodified git-gui code with tcl8.5. The fonts look worse with 8.4
(even on windows).
> As to the patch: it is huge. I suspect that it would be easier to read
> and verify if it was done in two patches: the first one introducing helper
> procs that replace the existing repeated code, and a second patch that
> modifies only the helper procs to handle ttk if desired. You did that
> with pad_label, but that proc is not defined in a central place, but
> limited to about.tcl.
I could split it up but it is quite hard to validate without switching
themes to ensure you got everything. I toggle through some themes
looking for unchanged widgets or rogue borders.
I did find a bug in the choose_rev conversion when I rechecked with
tcl 8.4 so I will reissue this.
Pat Thoyts
next prev parent reply other threads:[~2009-12-20 15:23 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-20 0:46 [PATCH] git-gui: use themed tk widgets with Tk 8.5 Pat Thoyts
2009-12-20 13:16 ` [msysGit] " Johannes Schindelin
2009-12-20 15:23 ` Pat Thoyts [this message]
2009-12-20 19:04 ` Junio C Hamano
2009-12-20 20:25 ` [msysGit] " Pat Thoyts
2009-12-20 21:05 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a5b261830912200723s131f0b93w2f5ab94f19faf86a@mail.gmail.com \
--to=patthoyts@googlemail.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=msysgit@googlegroups.com \
--cc=patthoyts@users.sourceforge.net \
--cc=spearce@spearce.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).