Commit Graph

4981 Commits

Author SHA1 Message Date
Owen Taylor
3d737ee8ba Add GdkPangoRenderer, a subclass of PangoRenderer targeting GDK drawables.
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-21 16:24:01 +00:00
Matthias Clasen
d1031c8503 Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
2004-11-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkdialog.h:
	* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array):
	Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
	for language bindings.  (#158798, John Finlay)
2004-11-21 04:57:23 +00:00
Matthias Clasen
6603a0868d Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
2004-11-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkdialog.h:
	* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array):
	Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
	for language bindings.  (#158798, John Finlay)
2004-11-21 04:55:37 +00:00
Federico Mena Quintero
dc478e8647 Merged from gtk-2-4:
2004-11-20  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c (list_icon_data_func): Set an empty
	icon if we are on the editable row:  if we don't set the cell
	renderer at all, it will reuse the last thing it painted.
2004-11-20 06:21:30 +00:00
Federico Mena Quintero
038236d42b Merged from gtk-2-4:
2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #158475:

	* gtk/gtkpathbar.c (make_directory_button): Make the button a drag
	source.
	(button_drag_data_get_cb): New callback to let us drag the
	button's path as a text/uri-list.
2004-11-20 04:52:57 +00:00
Federico Mena Quintero
e44612e7da Merged from gtk-2-4:
2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #141077.  Based on a patch by Christian Neumair <chris@gnome-de.org>:

	* gtk/gtkfilechooserdefault.c (new_folder_button_clicked):
	Desensitize the "new folder" button.
	(edited_idle_cb): Sensitize the button back.
2004-11-20 02:00:45 +00:00
Federico Mena Quintero
a006f66238 Merged from gtk-2-4:
2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #158477:

	* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
	Remove the "save_extra_align" and "browse_extra_align" fields; use
	a single "extra_align" field.
	(save_widgets_create): Don't create the save_extra_align.
	(browse_widgets_create): Don't create the browse_extra_align.
	(gtk_file_chooser_default_constructor): Create the extra_align
	here.
	(set_extra_widget): Add the extra widget to the alignment here,
	and remove the old one if necessary.
	(update_appearance): No need to frob the extra widget's alignments
	anymore.
	(gtk_file_chooser_default_set_property): No need to call
	update_appearance() anymore when we set the extra widget.

2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_initial_focus): Don't set the cursor if
	we are still loading.
2004-11-20 01:39:26 +00:00
Federico Mena Quintero
74c146301c Merged from gtk-2-4:
2004-11-18  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fixes #155744:

	Try to load the whole file system model within a specified time.

	* gtk/gtkfilechooserdefault.c (set_list_model): Don't create and
	set the sort model here.  Instead, set up a timer in which we'll
	try to load the file system model.
	(load_set_model): Create and set the sort model here.
	(load_setup_timer): New function to set up a timer and switch to
	the LOAD_LOADING state.
	(load_remove_timer): New function to unset the timer and switch to
	the LOAD_FINISHED state.
	(browse_files_model_finished_loading_cb): Remove the timer if
	needed and set the file system and sort model; switch to the
	LOAD_FINISHED state.
	(gtk_file_chooser_default_finalize): Remove the load timer.
	(gtk_file_chooser_default_init): Start in the LOAD_FINISHED state.
2004-11-20 00:17:30 +00:00
Manish Singh
60b30ff513 gdk/linux-fb/gdkgc-fb.c gdk/win32/gdkgc-win32.c
Fri Nov 19 14:54:09 2004  Manish Singh  <yosh@gimp.org>

        * gdk/linux-fb/gdkgc-fb.c
        * gdk/win32/gdkgc-win32.c
        * gdk/win32/gdkwindow-win32.c
        * gtk/gtkaboutdialog.c
        * gtk/gtkaction.c
        * gtk/gtkactiongroup.c
        * gtk/gtkcellrendererprogress.c
        * gtk/gtkcellview.c
        * gtk/gtkcolorbutton.c
        * gtk/gtkcombobox.c
        * gtk/gtkcomboboxentry.c
        * gtk/gtkentrycompletion.c
        * gtk/gtkfilechooserbutton.c
        * gtk/gtkmenutoolbutton.c
        * gtk/gtkrc.c
        * gtk/gtksettings.c
        * gtk/gtkstyle.c
        * gtk/gtktoggletoolbutton.c
        * gtk/gtktoolbutton.c
        * gtk/gtktoolitem.c
        * gtk/gtktreemodelfilter.c
        * gtk/gtktreeselection.c
        * gtk/gtktreeviewcolumn.c
        * gtk/gtkuimanager.c: get rid of unnecessary casts.

        * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property):
        cast away the const for g_value_set_enum. This is after the g_warning,
        so this is a hack to begin with.

        * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property):
        add a cast to GTK_FILE_CHOOSER for impl here.
2004-11-19 23:18:38 +00:00
Manish Singh
3d325e30d9 Don't put /* within a comment.
Fri Nov 19 15:10:32 2004  Manish Singh  <yosh@gimp.org>

        * xdgmime.c: Don't put /* within a comment.
2004-11-19 23:16:14 +00:00
Matthias Clasen
ba6f66ab8e Destroy the correct data. (#158522, John Finlay)
2004-11-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaboutdialog.c (gtk_about_dialog_set_email_hook)
	(gtk_about_dialog_set_url_hook): Destroy the correct
	data.  (#158522, John Finlay)
2004-11-17 22:38:38 +00:00
Matthias Clasen
283ce68f83 Fix a stupid oversight. 2004-11-17 01:21:16 +00:00
Davyd Madeley
b23e4c2349 Allow backspace to move up the FileChooser tree to make it consistent with
2004-11-17  Davyd Madeley  <davyd@madeley.id.au>

        * gtk/gtkfilechooserdefault.c: Allow backspace to move up the
        FileChooser tree to make it consistent with Nautilus and others.
2004-11-16 16:52:17 +00:00
Matthias Clasen
e23cf6361d Don't use the foreground color for selected cells, Don't use the
2004-11-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcellrenderertext.c (get_layout): Don't use the foreground
	color for selected cells, Don't use the background color
	in unfocused selected cells. Also avoid creating two PangoLayouts
	per render call.  (#154615, #154611, Billy Biggs)
2004-11-16 05:19:21 +00:00
Matthias Clasen
b4c4bc8947 Reduce the clipboard timeout from 300 seconds to 30 seconds. (#155428,
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkselection.c: Reduce the clipboard timeout from 300
	seconds to 30 seconds.  (#155428, Billy Biggs)
2004-11-16 04:24:57 +00:00
Manish Singh
b3121f550a gdk/abicheck.sh don't hardcode lengths for cut, instead split on the third
Mon Nov 15 19:02:07 2004  Manish Singh  <yosh@gimp.org>

        * gdk/abicheck.sh
        * gtk/abicheck.sh: don't hardcode lengths for cut, instead split on
        the third field.
2004-11-16 03:03:49 +00:00
Matthias Clasen
d651bb25cd Really free the list. (#158422, Morten Welinder)
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_setting_changed):
	* gtk/gtkbutton.c (gtk_button_setting_changed): Really free the
	list.  (#158422, Morten Welinder)
2004-11-16 02:06:20 +00:00
Matthias Clasen
a5869f4c50 Use GPOINTER_TO_UINT()/GUINT_TO_POINTER() for guints. (#158420, Morten
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_screen_changed):
	* gtk/gtkbutton.c (gtk_button_screen_changed): Use
	GPOINTER_TO_UINT()/GUINT_TO_POINTER() for guints.  (#158420,
	Morten Welinder)
2004-11-16 02:01:41 +00:00
Manish Singh
aa04eae7b7 Output Makefile for the pixbuf engine directory.
Mon Nov 15 17:17:17 2004  Manish Singh  <yosh@gimp.org>

        * configure.in: Output Makefile for the pixbuf engine directory.

        * gtk/gtk.symbols: Add gtk_button_{get,set}_image.

        * modules/engines/pixbuf/pixbuf-render.c: Replace usage of deprecated
        functions.

        * modules/engines/pixbuf/pixbuf-draw.c: undef GDK_DISABLE_DEPRECATED
        for gdk_draw_string (ick).
2004-11-16 01:20:47 +00:00
Matthias Clasen
10132d37c9 *** empty log message *** 2004-11-15 20:56:28 +00:00
Matthias Clasen
c21954a3f9 Add some more docs.
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_set_image): Add
	some more docs.
2004-11-15 20:07:26 +00:00
Jonathan Blandford
1bf2ff0a7f somehow this got missed mid-commit 2004-11-15 19:55:07 +00:00
Matthias Clasen
5cfa1d1b20 *** empty log message *** 2004-11-15 18:07:22 +00:00
Matthias Clasen
5c93ee5d5c *** empty log message *** 2004-11-15 16:22:49 +00:00
Erwann Chenede -
5cca30a877 fix unselect in multiple selection (#156805)
2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>

      * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)
2004-11-15 13:48:52 +00:00
Matthias Clasen
a63d57cd49 Include gtkdnd.h (#158243, Kazuki IWAMOTO)
2004-11-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)
2004-11-15 13:40:06 +00:00
Matthias Clasen
3644afd14b Allow min == max. (#158225, Vasco Alexandre da Silva Costa)
2004-11-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Allow
	min == max.  (#158225, Vasco Alexandre da Silva Costa)
2004-11-14 01:25:35 +00:00
Matthias Clasen
59e887534b Add more docs.
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init): Add more docs.
2004-11-12 22:57:09 +00:00
Matthias Clasen
4114ad2c02 Fix typo in docs.
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilefilter.c (gtk_file_filter_filter): Fix typo in
	docs.
2004-11-12 22:18:04 +00:00
Matthias Clasen
cb87aa11c9 Implement DND for selectable labels.
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c (gtk_label_button_press, gtk_label_button_release)
	(gtk_label_drag_data_get): Implement DND for selectable labels.
2004-11-12 21:52:04 +00:00
Matthias Clasen
74a5fd15d7 Adjust to the current entry popup menu.
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtklabel.c (gtk_label_do_popup): Adjust to the current
	entry popup menu.
2004-11-12 20:20:29 +00:00
Matthias Clasen
49d0db8197 2.5.5 2004-11-12 17:52:08 +00:00
Matthias Clasen
3411287ebd Don't try to use xdgmime on Windows where we don't build it. (#157944, J.
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilefilter.c: Don't try to use xdgmime on
	Windows where we don't build it.   (#157944, J. Ali Harlow)
2004-11-12 03:39:02 +00:00
Matthias Clasen
73b0f2bc45 Also reserve space for the resize grip if the grip_window is not realized
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Also
	reserve space for the resize grip if the grip_window is not
	realized yet.  (#158010, Christian Persch)
	(gtk_statusbar_button_press): Only start a resize if the
	button press comes from the grip_window.  (#158011, Christian Persch)
2004-11-12 03:36:35 +00:00
Matthias Clasen
d1a02aaa34 Fix some C99isms.
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c (update_node): Fix some C99isms.
2004-11-11 21:18:18 +00:00
Matthias Clasen
75eb3f9d2f Remove two more places where we were unconditionally setting "visible",
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c (update_node): Remove two more places
	where we were unconditionally setting "visible", causing
	unnecessary notifications.

	* gtk/gtkclipboard.c (gtk_clipboard_get_for_display):
	(gtk_clipboard_get): Clarify the docs.  (#156638, Torsten
	Schoenfeld)
	(gtk_clipboard_finalize): Warn if the clipboard is still in
	its displays clipboard list.
2004-11-11 19:57:41 +00:00
Matthias Clasen
41628edebb Considerably speed up GtkUIManager, by changing the semantics of the dirty
2004-11-11  Matthias Clasen  <mclasen@redhat.com>

	Considerably speed up GtkUIManager, by changing the semantics
	of the dirty flag. It is now propagated up the tree, and
	update_node() doesn't descend into clean subtrees.  (#143668,
	Dave Neary, Michael Natterer, Sven Neumann, fix proposed
	by Soeren Sandmann)

	* gtk/gtkuimanager.c (node_prepend_ui_reference): Only prepend
	a new node reference if the merge_id is different. Take a GNode,
	so we can walk up the tree, adjust all callers.
	(node_remove_ui_reference): Only mark a node dirty if the first
	ui reference is removed. Take a GNode here as well for
	consistency.
	(update_node): Don't descend into clean subtrees.
	(mark_node_dirty): New function to mark a node and its
	predecessors dirty.
2004-11-11 18:13:19 +00:00
Jonathan Blandford
7b1c2c1bea return FALSE instead of TRUE. This is just a quick fix to prevent the idle
Thu Nov 11 11:34:32 2004  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtkfilechooserbutton.c (update_idler): return FALSE instead
        of TRUE.  This is just a quick fix to prevent the idle from
        looping indefinitely.
2004-11-11 16:46:14 +00:00
J. Ali Harlow
097b42b53c Use embedded tab rather than '\t' escape sequence. (#157949)
2004-11-11  J. Ali Harlow  <ali@juiblex.co.uk>

 	* gdk/Makefile.am:
 	* gdk-pixbuf/Makefile.am:
 	* gtk/Makefile.am (gtk.def): Use embedded tab rather than '\t'
 	escape sequence. (#157949)
2004-11-11 14:22:51 +00:00
Matthias Clasen
b1941d1233 Only shorten the label if it actually overlaps the resize grip.
2004-11-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only
	shorten the label if it actually overlaps the resize grip.
	(gtk_statusbar_size_allocate): Handle extra children
	by leaving room for the resize grip.  (#157778, Christian Persch)
2004-11-10 16:33:33 +00:00
Matthias Clasen
06d507703d Only shorten the label if it actually overlaps the resize grip.
2004-11-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only
	shorten the label if it actually overlaps the resize grip.
2004-11-10 15:32:19 +00:00
Matthias Clasen
3ee4892fee Make power a double. (gtk_range_class_init): s/digits/decimal digits/ in
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkrange.c (gtk_range_real_change_value): Make
	power a double.
	(gtk_range_class_init): s/digits/decimal digits/ in doc
	comment.
2004-11-10 03:20:11 +00:00
Matthias Clasen
384b1c4886 Remove debugging printfs.
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserbutton.c (update_idler): Remove debugging
	printfs.
2004-11-10 03:13:43 +00:00
Matthias Clasen
dc25aac558 Improve the docs. (#157785, Torsten Schoenfeld)
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkicontheme.[ch]: Improve the docs.  (#157785,
	Torsten Schoenfeld)
2004-11-10 02:03:36 +00:00
Matthias Clasen
16912474cc Add new symbols.
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols: Add new symbols.

	* xdgmime.h: Prefix all symbols.
2004-11-09 20:02:08 +00:00
Matthias Clasen
ac3e3fd8e2 Make it work with *big* icon views. (#154466)
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Make
	it work with *big* icon views.  (#154466)
2004-11-09 19:49:13 +00:00
Matthias Clasen
994f8216f1 Make return types G_CONST_RETURN instead of const.
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaction.[hc]:
	* gtk/gtkactiongroup.[hc]: Make return types G_CONST_RETURN
	instead of const.

	* gtk/gtk.symbols:
	* gtk/gtkaction.h:
	* gtk/gtkaction.c (gtk_action_get_accel_path): Add
	a function to obtain the accel path of an action. (#148106,
	Michael Natterer)
2004-11-09 19:15:44 +00:00
Matthias Clasen
857468e46c Raise the grip window when appropriate. (gtk_statusbar_init): Instead of
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusbar.c (gtk_statusbar_init): Raise the grip
	window when appropriate.
	(gtk_statusbar_init): Instead of cutting the text of, make
	ellipsize the label.
	(gtk_statusbar_size_allocate): Don't let the label extend
	under the resize grip.
2004-11-09 18:03:21 +00:00
Matthias Clasen
df40795df8 Raise the grip window when appropriate.
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkstatusbar.c (gtk_statusbar_init): Raise the grip
	window when appropriate.
2004-11-09 17:20:04 +00:00
Matthias Clasen
05a16d62a9 Use a row reference, not a path, to associate separators with their tree
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (find_menu_by_path)
	(gtk_combo_box_menu_fill_level, gtk_combo_box_menu_row_inserted):
	Use a row reference, not a path, to associate separators
	with their tree row.
2004-11-09 16:38:57 +00:00