Since it turns out that x/yalign can't be quite equivalently
replaced by h/valign, bring them back as label properties, so
we can eventually get rid of GtkMisc.
https://bugzilla.gnome.org/show_bug.cgi?id=735841
When setting the lines property, the label will be ellipsized
to that many lines, with the ellipsis only appearing in the
last line. This is different from how ellipsization of multi-line
labels normally works in GTK+.
...and show them in menus when navigating the menu with the keyboard.
This is similar to what other platforms do, and reduces visual clutter.
There is a setting to control this. Most of the work on this patch was
done by Thomas Wood. See bug 588554.
2008-10-30 Michael Natterer <mitch@imendio.com>
* gtk/*.h: no need to include <gdk/gdk.h> in any widget header,
it's included via gtkwidget.h anyway.
svn path=/trunk/; revision=21732
2008-06-30 Cody Russell <bratsche@gnome.org>
* Practically everything changed.
Change all references of GIMP Toolkit (and variations of it)
to GTK+ Toolkit, showing no mercy at all to our beloved
ancestry. (#540529)
svn path=/trunk/; revision=20709
2008-05-28 Michael Natterer <mitch@imendio.com>
* gtk/gtk*.h: whitespace cleanup: remove trailing whitespace and
excess newlines and sprinkled some newlines where needed. Zero
code or formatting changes included.
svn path=/trunk/; revision=20225
2008-05-28 Michael Natterer <mitch@imendio.com>
* gtk/gtk.h: define __GTK_H_INSIDE__ around including all other
headers.
* gtk/gtktypebuiltins.h.template
* gtk/gtkversion.h.in
* gtk/gtk*.h: add single-include guards that #error out if
GTK_DISABLE_SINGLE_INCLUDES is defined and any of these files is
included individually.
* gtk/gtkprintbackend.h
* gtk/gtkprinter-private.h
* gtk/gtktextlayout.h
* gtk/gtktexttagprivate.h
* gtk/gtktexttypes.h
* gtk/gtktreedatalist.h: include <gtk/gtk.h> instead of individual
headers in these private or semi-private headers.
* gtk/gtkimmodule.h: also here because it's not in gtk.h.
* gtk/gtkpagesetupunixdialog.h
* gtk/gtkprinter.h
* gtk/gtkprintjob.h
* gtk/gtkprintunixdialog.h: likewise in the gtkunixprint headers.
* gtk/gtkclist.h
* gtk/gtkcombo.h
* gtk/gtkctree.h
* gtk/gtkfilesel.h
* gtk/gtkitemfactory.h
* gtk/gtklist.h
* gtk/gtklistitem.h
* gtk/gtkoldeditable.h
* gtk/gtkoptionmenu.h
* gtk/gtkpixmap.h
* gtk/gtkpreview.h
* gtk/gtksignal.h
* gtk/gtktipsquery.h: whenever possible, include only <gtk/gtk.h>
instead of individual headers in these deprecated headers. They
don't get included at all when GTK_DISABLE_DEPRECATED is defined,
so if an app needs them anyway, it must undef GTK_DISABLE_DEPRECATED
and include them individually, which should continue to work.
* gtk/gtkclist.c: include "gtkctree.h" because of the change
above.
svn path=/trunk/; revision=20221
2007-07-09 Matthias Clasen <mclasen@redhat.com>
* gtklabel.[ch]: Use a bit of the GtkLabel structure to
remember that a pattern has been set.
(gtk_label_set_pattern_internal): Don't do anything if
a specific pattern has been set.
(gtk_label_set_pattern): set the new bit to TRUE when
setting a pattern, and recalculate everything if the
pattern is unset. Fix gtk_label_set_pattern() not working
anymore. (#452861, Vincent Untz)
svn path=/trunk/; revision=18426
2006-06-19 Alexander Larsson <alexl@redhat.com>
* gtk/gtk.symbols:
* gtk/gtklabel.[ch]:
Add gtk_label_set_line_wrap_mode, gtk_label_get_line_wrap_mode, and
a wrap-mode property that lets you set the PangoWrapMode.
2005-03-20 Matthias Clasen <mclasen@redhat.com>
Make PLT-reduction work with gcc4, and don't include
everything in gdkalias.h:
* gtk/grk.symbols: Group symbols by header and source file.
* gtk/makegtkalias.pl: Protect definitions by the same
preprocessor symbols used to guard the headers. Move
the alias declarations to a separate file which is
produced when calling makegtkalias.pl -def
* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
this file.
* gtk/*.c: Include gtkalias.h after the other headers,
include gtkaliasdef.c at the bottom.
* gtk/*.h: Small cleanups.
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtklabel.[hc]: Add a max-width-chars property, which can
be used to specify the width of the label in characters, while
still allowing it to fall short of this length if the text
is shorter. (#155944, Christian Persch)
* gtk/gtk.symbols: Add new symbols.
Sat Nov 20 15:13:51 2004 Owen Taylor <otaylor@redhat.com>
* gdk/gdkpango.[ch]: Add GdkPangoRenderer, a subclass of
PangoRenderer targeting GDK drawables. Use to implement the old
gdk_draw_layout() and friends.
* gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkwindow.c gdk/gdkpixmap.c:
Add gdk_draw_glyphs_transformed() gdk_draw_trapezoids() and
the corresponding members of GdkDrawableClass. Add a fallback
implementation of gdk_draw_trapezoids() in terms of pixbufs.
* gdk/gdkwindowing.h gdk/x11/gdkg-x11.h: Add
_gdk_windowing_gc_get_foreground() to enable the fallback
trapezoid implementation.
* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkdisplay-x11.h: Implement
draw_glyph_transformed, draw_trapezoids.
* gdk/x11/gdkdrawable-x11.[ch]: Add
_gdk_x11_drawable_draw_xtrapezoids, _gdk_x11_drawable_draw_xft_glyphs
for use of GdkX11Renderer.
* gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Implement
GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED in the RENDER codepath.
* gdk/gdkpango-x11.c: Add GdkX11Renderer... a subclass of
PangoXftRenderer that does tiles/stipples and fallback rendering
of trapezoids without the RENDER extension.
* gdk/gdkpango-x11.c gdk/x11/gdkscreen-x11.[ch] _gdk_x11_renderer_get:
Add _gdk_x11_renderer_get() to get a singleton GdkX11Renderer
for the screen.
* gdk/x11/gdkdrawable-x11.c (get_impl_drawable): Fix a None/NULL
confusion.
* gtk/gtklabel.[ch] gtk/gtk.symbols: Add gtk_label_set/get_angle(),
and an ::angle property.
* gtk/gtklabel.c: Remove #if 0'd dead code gtk_label_paint_word().
* gtk/gtktextdisplay.c: Switch to using a GtkTextRenderer subclass
of GdkPangoRenderer for drawing.
* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Switch to using
gtk_attr_shape_new_with_data() to store backreferences to
embedded pixmaps and widgets. Leave line_display->shaped_objects
around for backwords compatibility.
* gdk/gdkpango.[ch] (gdk_pango_context_set_colormap): Describe
as deprecated, remove implementation.
* gtk/gtkwidget.c (gtk_widget_create_pango_context): Remove
call to gdk_pango_context_set_colormap.
* demos/gtk-demo/Makefile.am demos/gtk-demo/rotated_text.c: Add
a demo showing drawing rotated text.
* tests/testgtk.c: Add a rotated-label test, and also a rotated
drawing test (differs from demos/gtk-demo/rotated_text by also
using a tile)
2004-11-09 Matthias Clasen <mclasen@redhat.com>
Avoid resizing GtkStatusbar if the text of the label
changes (#90955, He Qiangqiang, fix proposed by
Owen Taylor, patch by Christian Persch)
* gtk/gtklabel.[hc]: Add a boolean single-line-mode property
which causes the label height not to depend on the actual
text, but only on the font.
* gtk/gtkstatusbar.c (gtk_statusbar_init): Turn on
single-line-mode for the label.
Thu Jul 22 01:05:16 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Require Pango 1.5.1 (for ellipsisation).
* gtk/gtklabel.h:
* gtk/gtklabel.c (gtk_label_class_init): Add a new :ellipsise
property which controls ellipsisation of the label. (#125250,
Tim Van Wassenhove, patch by James M. Cape)
* tests/testellipsise.c: Simple test for ellipsisation.
Sat Feb 23 11:54:12 2002 Owen Taylor <otaylor@redhat.com>
* gtk/*.h gdk/*.h: Massive padding addition to class structures.
* gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
Tue Oct 16 17:04:44 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
MNEMONIC_ACTIVATE; signal was changed a long time
ago.
* gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale):
Fix wrong return statement. (Reported by HideToshi
Tajima and others.)
* gtk/gtklabel.h (struct _GtkLabelClass): Remove
left over select_all vfunc.
2001-09-18 Alex Larsson <alexl@redhat.com>
* gtk/gtkcheckbutton.c:
* gtk/gtkradiobutton.c:
Don't draw with GTK_STATE_ACTIVE.
* gtk/gtkclist.c:
* gtk/gtkctree.c:
Draw lines between rows with base_gc[GTK_STATE_NORMAL].
* gtk/gtktextdisplay.c:
Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
unfocused with base_gc [GTK_STATE_ACTIVE].
* gtk/gtkentry.c:
Add select all menu-item.
Default cursor color is red.
Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
unfocused with base_gc [GTK_STATE_ACTIVE].
* gtk/gtklabel.[ch]:
Add keynav + menu to selectable lables.
Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
unfocused with base_gc [GTK_STATE_ACTIVE].
* gtk/gtkfilesel.c:
Add drag and drop support.
* gtk/gtkstyle.c:
(This was checked in earlier)
New default values for text/base SELECTED and ACTIVE
Wed Aug 22 19:15:39 2001 Owen Taylor <otaylor@redhat.com>
[ Patch from Sebastian Wilhelmi, 52790 ]
* gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
* gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h:
Move compatibility macros from g[dt]kcompat.h to within
#ifndef G[DT]K_DISABLE_DEPRECATED in each file.
* gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
* demos/Makefile.am demos/gtk-demo/Makefile.am
docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
* demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
testpixbuf.c}: Fix usages of deprecated functions.
Sun Jun 24 11:29:35 2001 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
introduced last night that was making things decidedly not work.
* gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
so that we have getter/setter pairing everywhere it makes
sense. (#55767)
* gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
deprecated compat macro. (#55516)
* gtk/gtklabel.[ch]: Add functions
gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
gtk_label_set_label(), which mirror the property API for GtkLabel.
Make gtk_label_get_attributes() only reflect the attributes
set by gtk_label_set_attributes.
* gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
from gtk_notebook_set_page().
2001-06-08 Havoc Pennington <hp@redhat.com>
* gtk/gtkentry.c (gtk_entry_class_init): add read-only
"scroll_offset" property for notification when the layout offsets
may have changed
(gtk_entry_adjust_scroll): add notify for scroll_offset
(gtk_entry_layout_index_to_text_index): function to compensate for
preedit string when doing coordinate stuff on the entry's layout
(gtk_entry_text_index_to_layout_index): inverse function
(gtk_entry_get_layout_offsets): hook to get current position of
the layout
(gtk_entry_get_layout): hook to get the layout itself.
* gtk/gtklabel.c (gtk_label_get_layout): new function
2001-06-01 Havoc Pennington <hp@redhat.com>
* gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
* gtk/gtktextview.c (gtk_text_view_commit_handler): don't
overwrite in overwrite mode if we already deleted the selection
and replaced it with new text.
* gtk/gtklabel.c (gtk_label_select_region_index): if you set the
selection to an empty range, clear the clipboard if we owned it.
(gtk_label_set_selectable): give up selection if we become
unselectable.
(gtk_label_state_changed): override state changed to unselect text
when insensitive
(get_text_callback): add paranoia check that indexes aren't
outside of label->text
(gtk_label_select_region): make -1 for start_offset mean "end of
label," for consistency with GtkEditable
* gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
GTK_DIALOG_NO_SEPARATOR flag
Thu Mar 22 13:01:44 2001 Tim Janik <timj@gtk.org>
* gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
added PROP_MNEMONIC_WIDGET.
* gtk/gtkwindow.c (gtk_window_activate_mnemonic):
(gtk_window_remove_mnemonic):
(gtk_window_add_mnemonic): fixed assertions.
(gtk_window_activate_mnemonic): constrain modifier checks to those
permitted by gtk_accelerator_get_default_mod_mask().
got rid of gtk_window_get_default_accel_group().
* gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
activatable widgets either by focussing or a warning.
added a signal accumulator to ::activate_mnemonic which stops the
emission once a handler returned TRUE.
2001-03-22 Havoc Pennington <hp@pobox.com>
* gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
the stock item label
* gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
* gtk/gtkstock.c (builtin_items): add mnemonics where missing
* demos/gtk-demo/*.c: Add mnemonics all over the place
* gtk/gtklabel.h: mark parse_uline deprecated
2001-03-21 Alexander Larsson <alexl@redhat.com>
* gtk/gtkbutton.[ch]:
* gtk/gtkdialog.c:
Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
removed accel_group argument. Renamed gtk_button_new_accel() to
gtk_button_new_with_mnemonic() and removed accel_group argument.
* gtk/gtkcheckbutton.[ch]:
New function gtk_check_button_new_with_mnemonic().
* gtk/gtkentry.c:
Override activate_mnemonic and just grab focus.
* gtk/gtkitemfactory.c:
Don't add menu uline accel group, instead use mnemonics support.
* gtk/gtklabel.[ch]:
New support for mnemonics.
* gtk/gtkmarshal.list:
Needed BOOLEAN:BOOLEAN for activate_mnemonic.
* gtk/gtkmenu.[c]:
* gtkmenushell.c:
Use mnemonics instead of accel groups for uline
support in menu items.
Removed gtk_menu_get_uline_accel_group() and
gtk_menu_ensure_uline_accel_group().
* gtk/gtkmenuitem.c:
Override activate_mnemonic to handle switching between
menu items if there are collisions.
* gtk/gtknotebook.c:
Connect to activate_mnemonic on the tab_label, so that
activating it switches to that notebook page.
* gtk/gtkwidget.[ch]:
Add activate_mnemonic signal. New function
gtk_widget_activate_mnemonic() to emit it.
Default implementation does activate/grab_focus.
* gtk/gtkwindow.[ch]:
Add support for mnemonics in windows.
New functions:
gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
* gtk/testgtk.c:
Update to function name changes.
2001-03-07 Havoc Pennington <hp@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
off decorations for a window.
* demos/gtk-demo/button_box.c (create_bbox): adapt to button box
changes
* gtk/gtklabel.c (gtk_label_get_layout_offsets): new function
to get location of PangoLayout inside the label, closes#51198
* gtk/testgtk.c (create_bbox): fix up button box usage
* gtk/testcalendar.c (create_calendar): fix up button box usage
* gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
* gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
* gtk/gtkhbbox.h: deprecations
* gtk/gtkvbbox.h: deprecations
* gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
emulate deprecated gtk_button_box_get_spacing
* gtk/gtkbbox.h: deprecate some useless functions, remove entirely
the "set global default" functions
(struct _GtkButtonBox): remove "spacing" field, use the one from
GtkBox base class
* gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
* gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
render the icon, return the missing image icon.
* gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
image icon if the load fails.
* gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
when no image is found; should be the Netscape "missing image"
icon eventually but for now is a random image
* gtk/gtkwindow.c (gtk_window_set_role): new function, sets the
role for the session manager
* gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
* gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
* gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG