forked from osmocom/wireshark
0ec7f232e2
gdk_font_from_description() may return NULL if no GdkFont matching a PangoFontDescription can be loaded. Replace primitives using GdkFonts (gdk_string_width, gdk_draw_string) with their pango equivalent (pango_layout_get_pixel_size, gdk_draw_layout). svn path=/trunk/; revision=6639
85 lines
3.4 KiB
Text
85 lines
3.4 KiB
Text
Status of the GTK+ 2.0 port :
|
|
---------------------------
|
|
|
|
GtkList and GtkCList ==> GtkTreeView conversion :
|
|
- color_dlg.c : done
|
|
- column_prefs.c : done
|
|
- decode_as_dlg.c : done
|
|
- dfilter_expr_dialog.c : done
|
|
- filter_prefs.c : done
|
|
- main.c :
|
|
- plugins_dlg.c : done
|
|
|
|
GtkCTree ==> GtkTreeView conversion : done
|
|
|
|
GtkText ==> GtkTextView conversion : done
|
|
|
|
Remaining problems :
|
|
|
|
- gtk_font_selection_dialog_set_filter doesn't exist anymore (but hasn't
|
|
been removed from the documentation). There is no way to filter the
|
|
font selection to get only fixed width fonts; in a message at
|
|
|
|
http://mail.gnome.org/archives/gtk-devel-list/2002-July/msg00202.html
|
|
|
|
Owen Taylor explains why Pango (and hence GTK+ 2.0) doesn't know what
|
|
fonts are fixed-width and what fonts aren't:
|
|
|
|
From: Owen Taylor <otaylor redhat com>
|
|
To: Allin Cottrell <cottrell wfu edu>
|
|
Cc: gtk-devel-list.gnome.org
|
|
Subject: Re: fonts in gtk-2.0/pango
|
|
Date: Sat, 27 Jul 2002 10:06:52 -0400 (EDT)
|
|
|
|
...
|
|
|
|
> Second observation: Pango has an elaborate classification system for
|
|
> fonts, but this system has some serious blind spots. So far as I can
|
|
> tell, Pango maintains no record of whether a font is monospaced or
|
|
> proportional. (I believe the X11 backend to pango reads this
|
|
> information when it queries the X server for available fonts, but then
|
|
> throws it away.) I presume this has something to do with its failure
|
|
> to provide correct metrics for Lucida Typewriter. I presume, too,
|
|
> that it has something to do with the removal of the "filter" mechanism
|
|
> on the GTK font selection dialog between 1.2 and 2.0. That is, you
|
|
> used to be able to specify that the font selection should show only
|
|
> monospaced fonts (rather essential for terminal/console type
|
|
> applications) but you can't any more -- I guess, because pango has no
|
|
> notion of what's a monospaced font and what's not.
|
|
|
|
Give us code that can distinguish reliably between monospaced and
|
|
not-monospaced fonts for Type1 and TrueType fonts and at that
|
|
point it becomes reasonable to think about such an API. It's
|
|
not all that easy to do.
|
|
|
|
Even then, there are still problems - Pango by default will
|
|
draw characters not in the main font using fallback fonts --
|
|
whose metrics almost certainly don't match your grid. So,
|
|
you'd have to be able to turn this off.
|
|
|
|
- we have to remove GUI prefs which are not useful anymore, such as the
|
|
tree line style and tree expander style. Those two items aren't
|
|
settable in GTK+ 2.0's new tree view widget, as the GTK+ developers
|
|
consider them per-user preferences rather than items that should be
|
|
set by individual applications.
|
|
==> Done
|
|
|
|
- double click on item in protocol tree doesn't expand or collapse its
|
|
subtree ;
|
|
==> Done
|
|
|
|
- the spacing between lines in the tree view is too big ;
|
|
|
|
- merge gtk and gtk2 directories. Create a gtk12 directory if necessary.
|
|
==> done
|
|
|
|
- replace gtk_signal_xxx function with g_signal_xxx equivalent. The GTK+
|
|
2.0 documentation says :
|
|
The GTK+ 2.0 signal system merely proxies the GSignal system now. For
|
|
future usage, direct use of the GSignal API is recommended.
|
|
==> done
|
|
|
|
- gdk_font_from_description() may return NULL. It would be better to use
|
|
pango and drop GdkFont (and functions which use it, like
|
|
gdk_string_width, gdk_draw_string).
|