Commit Graph

562 Commits

Author SHA1 Message Date
Javier Jardón
4e3db2e3a8 gtkcombobox: Use accessor functions to access GtkTreeViewColumn 2010-11-19 08:38:12 +01:00
Javier Jardón
fb3429e507 gtkcombobox: Do not access GtkEntry internals
It's not needed anymore
2010-11-19 06:15:27 +01:00
Michael Natterer
3a0afce509 gtk: remove "gboolean homogeneous" from gtk_box_new()
Because it's FALSE in virtually all use cases.
2010-10-31 19:22:28 +01:00
Javier Jardón
a9894d4cf4 Use gtk_box_new() instead gtk_[v|h]box_new() 2010-10-30 05:22:58 +02:00
Javier Jardón
8d008790be Use gtk_separator_new() instead gtk_[v|h]separator_new() 2010-10-30 02:26:23 +02:00
Matthias Clasen
ac3fe174f7 GtkComboBox: Add a constructor that takes a model and adds an entry
https://bugzilla.gnome.org/show_bug.cgi?id=633050
2010-10-29 12:28:42 -04:00
Matthias Clasen
520a6aeb8f Fix up docs 2010-10-23 23:41:08 +02:00
Matthias Clasen
7651c231e0 Revert the id-column patch
It didn't quite turn out as I wanted it.
I'll put it in bug 619148 for now.
2010-10-23 19:34:20 +02:00
Matthias Clasen
9fb36fff36 Add a way to associate numeric ids with combobox values
This will let us use combo boxes as property editors for
GSettings enmerations easily.
2010-10-23 02:31:30 +02:00
Alberto Garcia
d6a73fd5b0 Assign all g_signal_connect() and friends to gulong variables
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=87821
2010-10-22 18:58:47 +02:00
Matthias Clasen
0219eea4d7 Remove GtkComboBoxEntry and the combo box text api 2010-10-20 11:02:03 +02:00
Matthias Clasen
d1a9d764a8 Remove gtk_widget_hide_all()
it's useless and a trap for programmers

https://bugzilla.gnome.org/show_bug.cgi?id=438318
2010-10-19 19:31:38 +02:00
Tristan Van Berkom
31abdf723a Allow GtkComboBox popup to be wider than the combo itself.
This patch adds a GtkComboBox:popup-fixed-width to decide if the
popup's width should be a fixed width matching the combo's allocated width.

The patch includes a kindof hack to work around treeviews currently
not supporting height-for-width geometry (for list-mode only), this
hack can be safely removed once treeviews start reporting natural
widths properly.
2010-10-17 14:11:27 +09:00
Matthias Clasen
a62e1b95bc Fix some GtkComboBoxText problems 2010-10-16 08:16:55 -04:00
Christian Dywan
d70b7f49b6 Use property system to coerce model data to G_TYPE_STRING
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=423201
2010-10-15 17:00:13 -04:00
Matthias Clasen
50cbd23d5b docs: cross-reference to GtkComboBoxText 2010-10-15 16:58:28 -04:00
Matthias Clasen
43250e8faf Deprecate the old combobox text convenience api 2010-10-15 16:58:27 -04:00
Javier Jardón
e7f51ef6a4 Use the new GtkComboBoxText API
Also remove mentions of the old text convenience API from the docs,
and point to GtkComboBoxText instead.
2010-10-15 16:58:27 -04:00
Matthias Clasen
8353754c17 docs: adjust Since tags 2010-10-15 16:58:26 -04:00
Tristan Van Berkom
9612c64817 Deprecate GtkComboBoxEntry in favor of added properties to GtkComboBox
GtkComboBox now sports a construct-only "has-entry" property which
decides if it uses a GtkEntry to allow additional user input. Also
it has a new "entry-text-column" to fetch strings for the entry
from the model.

This patch deprecates the GtkComboBoxEntry and updates the rest of GTK+
to use the new semantics on GtkComboBox instead.

GtkComboBoxEntry will be removed altogether before GTK+ 3, in a
later commit.
2010-10-13 21:52:27 -04:00
Javier Jardón
5a30dad531 docs: Move documentation to inline comments: GtkComboBox 2010-10-04 02:37:42 +02:00
Benjamin Otte
7adeca53b2 combobox: Fix compilation warnings - missing cast 2010-09-28 18:24:14 +02:00
Matthias Clasen
f53ad33994 Remove GtkObject completely 2010-09-26 22:18:19 -04:00
Javier Jardón
eac1959d2c Move destroy signal to GtkWidget
Also make GtkWidget derive from GInitiallyUnowned
2010-09-26 22:18:18 -04:00
Benjamin Otte
d9c9259861 Move GtkSizeRequest into GtkWidget
It doesn't make sense to keep them separate as GtkSizeRequest requires a
GtkWidget and GtkWidget implements GtkSizeRequest, so you can never have
one without the other.
It also makes the code a lot easier because no casts are required when
calling functions.

Also, the names would translate to gtk_widget_get_width() and people
agreed that this would be a too generic name, so a "preferred" was added
to the names.

So this patch moves the functions:
gtk_size_request_get_request_mode() => gtk_widget_get_request_mode()
gtk_size_request_get_width() => gtk_widget_get_preferred_width()
gtk_size_request_get_height() => gtk_widget_get_preferred_height()
gtk_size_request_get_size() => gtk_widget_get_preferred_size()
gtk_size_request_get_width_for_height() =>
  gtk_widget_get_preferred_width_for_height()
gtk_size_request_get_height_for_width() =>
  gtk_widget_get_preferred_height_for_width()
... and moves the corresponding vfuncs to the GtkWidgetClass.

The patch also renames the implementations of the vfuncs in widgets to
include the word "preferrred".
2010-09-26 15:11:45 +02:00
Benjamin Otte
1d3f6b30b0 API: Rename gtk_cairo_paint_*() to gtk_paint_*()
Large patch, but just renaming.
Indentation should still mostly be correct because I took care of
keeping the indentation for this function name.
2010-09-26 15:11:42 +02:00
Benjamin Otte
1f640d127e combobox: Port to draw vfunc 2010-09-26 15:11:38 +02:00
Matthias Clasen
e0aa12eb0a Tons of transfer annotations 2010-09-21 00:18:11 -04:00
Javier Jardón
b140884fec Use gtk_size_request_get_size() instead deprecated gtk_widget_size_request()
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=629598

Signed-off-by: Javier Jardón <jjardon@gnome.org>
Signed-off-by: Tristan Van Berkom <tristanvb@openismus.com>
2010-09-15 03:02:58 +02:00
Havoc Pennington
c29f0a1392 Fix more SizeRequest implementations to avoid recursive calls to wrapper API
GtkFrame, GtkComboBox, GtkExpander, GtkMenu, GtkWrapBox

These are all the examples I could find so far.

https://bugzilla.gnome.org/show_bug.cgi?id=628829
2010-09-12 21:47:10 -04:00
Colin Walters
913cdf3be7 GDK: Prefix key names with KEY_
The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.

For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.

Just one user in GTK+ continues to use gdkkeysyms-compat.h, which is
the gtkimcontextsimple.c, since porting that requires porting more
custom Perl code.
2010-09-08 18:51:44 -04:00
Matthias Clasen
2766cd14ad Remove depth restriction from gtk_combo_box_set_active_iter docs
While it may not work perfectly in menu mode, it works fine for
list mode. Bug 627843.
2010-08-24 21:51:17 -04:00
Javier Jardón
42a0a8143b gtk/gtkcombobox.c: use accessor functions to access GtkWidget 2010-08-22 22:56:13 +02:00
Tristan Van Berkom
005e8a6c2f Changed combo box's menu position function to use child menu
item's allocation instead of a complex calculation to guess
it's height for width.
2010-08-20 19:26:10 -04:00
Tristan Van Berkom
9c26bd525f Added height-for-width management for GtkComboBox/GtkCellView
now GtkComboBox (and GtkCellView) request and allocate children/cells
in a height-for-width manner.
2010-08-18 20:01:28 -04:00
Javier Jardón
8b2108a8a4 gtkcombobox: Only use the child if It is a GtkCellLayout
This error was introduced in
commit 4427760bcc

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=625104
2010-08-08 06:22:45 +02:00
Javier Jardón
63d3b197c2 Add _gtk_bin_set_widget() internal function 2010-07-13 19:40:47 +02:00
Javier Jardón
4427760bcc Use GtkBin accessors 2010-07-13 19:40:47 +02:00
Javier Jardón
3a10216dd0 Use accessor functions to acces GtkContainer 2010-07-13 19:40:46 +02:00
Javier Jardón
56cc11a416 gtkcombobox: unseal private pointer 2010-07-13 19:40:46 +02:00
Javier Jardón
0a07e9733b gtk/: fully remove gtkalias hacks
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:51:26 +02:00
Philip Withnall
0b51abbfdf Add (out) annotations to GtkTreeIter parameters 2010-07-07 18:20:37 +02:00
Colin Walters
905f988166 Revert "Add length to gtk_tree_path_get_indices"
This reverts commit eebb16eb1a.

Was an accidental commit.
2010-06-28 14:15:10 -04:00
Colin Walters
eebb16eb1a Add length to gtk_tree_path_get_indices
The old version wasn't introspectable as it didn't have a length
return parameter.  Also, delete gtk_tree_path_get_indices_with_depth,
since it's no longer needed.
2010-06-28 13:50:36 -04:00
Matthias Clasen
bd4609b140 Merge the xi2-for-master branch 2010-05-25 18:38:44 -04:00
Javier Jardón
b18b33ae82 Revert "Forward-port a GtkAdjustment compatibility fix"
In the early 2.14.x releases, GtkAdjustment was changed to enforce
that values are restricted to the range [lower, upper - page_size].
This has always been the documented behaviour, and the recommended
practice is to set page_size to 0 when using adjustments for simple
scalar values, like in a slider or spin button.
Due to the large number of applications that are affected by this
change, the behaviour has been reverted to the old behaviour in
2.14.3, with an explicit warning that this change will be
reintroduced in 2.90.

This reverts commit e6373738fc.

https://bugzilla.gnome.org/show_bug.cgi?id=619474
2010-05-24 15:39:30 +02:00
Javier Jardón
32b9aeaadd Don't use GTK_WIDGET_STATE in internal code anymore
Use gtk_widget_get/set_state() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-09 02:40:17 +01:00
Javier Jardón
16a59ad912 Deprecate widget flag: GTK_WIDGET_REALIZED
Use gtk_widget_get_realized() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-03 20:41:05 +01:00
Javier Jardón
1fe7d3cefd Deprecate widget flag: GTK_WIDGET_MAPPED
Use gtk_widget_get_mapped() instead.

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-03 20:19:03 +01:00
Javier Jardón
483a5a9e1a Don't use GTK_WIDGET_*SET_FLAGS (wid, GTK_CAN_FOCUS)
Use new API instead: gtk_widget_set_can_focus ()
2010-03-02 04:42:54 +01:00
Javier Jardón
214a023e91 Deprecate widget flag: GTK_WIDGET_VISIBLE
Use gtk_widget_get_visible() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 07:52:07 +01:00
Javier Jardón
4232115e22 Deprecate widget flag: GTK_WIDGET_HAS_FOCUS
Use gtk_widget_has_focus() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 06:11:01 +01:00
Javier Jardón
64f526d34e Deprecate widget flag: GTK_WIDGET_SENSITIVE
Use gtk_widget_get_sensitive() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 05:59:23 +01:00
Javier Jardón
4f78f70b15 Deprecate widget flag: GTK_WIDGET_DRAWABLE
Use gtk_widget_is_drawable() instead.

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 04:55:55 +01:00
Johan Dahlin
fe85272112 [annotations] Add allow-none
This commit was created using a script that searched for all docstrings
containing a parameter and the string 'or %NULL'.
Gdk backends and demos excluded as they are not part of a public API

https://bugzilla.gnome.org/show_bug.cgi?id=610474
2010-02-19 17:57:51 -02:00
Christian Persch
e18ac2a617 Allow NULL iter in gtk_combo_box_set_active_iter to unset
Bug #606230.
2010-01-08 19:48:14 +01:00
Christian Dywan
bb1824c131 Deprecate flag macros for toplevel, state, no window and composite child
Deprecate widget flag macros GTK_WIDGET_STATE, GTK_WIDGET_SAVED_STATE,
GTK_WIDGET_FLAGS, GTK_WIDGET_TOPLEVEL, GTK_WIDGET_NO_WINDOW and
GTK_WIDGET_COMPOSITE_CHILD.

Also deprecate the type macros GTK_WIDGET_TYPE, GTK_OBJECT_TYPE_NAME and
GTK_OBJECT_TYPE which have become redundant.

Instances of GTK_WIDGET_TOPLEVEL are replaced with gtk_widget_is_toplevel,
GTK_WIDGET_TYPE is replaced with G_OBJECT_TYPE, GTK_WIDGET_COMPOSITE_CHILD
is replaced with use of the "composite-child" property and uses of
GTK_WIDGET_NO_WINDOW are adjusted to use gtk_widget_get_has_window.

Uses of GTK_WIDGET_SAVED_STATE and GTK_WIDGET_FLAGS inside GtkWidget are
changed to direct flag usage.

Documentation is updated to refer to gtk_widget_set_has_window and
gtk_widget_get_has_window.

Gail and tests are updated as well.

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-01-04 07:57:05 +01:00
Hiroyuki Ikezoe
702ee3b350 [gtk] GtkCellEditable::editing-cancelled should be writable
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=604881

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2009-12-19 01:21:22 +01:00
Colin Walters
6529c07614 [introspection] Merge in Gtk-custom.c annotations
The Gtk-custom.c file in gir-repository contained a number of
introspection annotations.  Merge those into the GTK source files.

Some documentation was moved from the tmpl/ files to accomodate
the addition of annotations.
2009-12-16 17:22:01 -02:00
Javier Jardón
325bd9299a Use GtkCellEditable::editing-canceled
GtkCellEditable::editing-canceled property was added in 2.19 cycle,
so we should make the code that currently uses entry->editing_canceled
directly go through the property

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=599213
2009-12-04 02:50:57 +01:00
Cody Russell
0f33ad4ee1 Added editing_canceled property to GtkCellEditable
GTK_ENTRY()->editing_canceled should really have been a parameter of the
GtkCellEditable::editing-done signal, it should be a property on the cell
editable interface

https://bugzilla.gnome.org/show_bug.cgi?id=594962
2009-10-21 18:55:24 +02:00
Kristian Rietveld
95cb1cc86c Sensitivity event box should only be toggled if cell view is non-NULL 2009-09-21 12:59:44 +02:00
Kristian Rietveld
fef3c88e89 Unbreak GtkComboBox::button-sensitivity
Fixed the button-sensivity patch done to GtkComboBox to account for
changes in appearance (changes to the appears-as-list style property).
Also, in list-mode, the event box that has been created below the cell
view also needs to have its sensitivity updated.
2009-09-09 21:30:13 +02:00
Alexander Larsson
0111030586 Merge branch 'client-side-windows' 2009-07-01 16:15:03 +02:00
Matthias Clasen
724ab58244 Add a way to turn off toggle spacing in menus
Reserving toggle space is nice for consistency in main menus
and context menus, but it gets in the way in special situations,
such as combo boxes, tabular menus, etc.
2009-06-24 01:01:51 -04:00
Matthias Clasen
8f57c91766 Remove extra padding from comboboxes
We do want to have consistent padding in menus in menubars and context
menus, but the menus used in comboboxes don't need the extra padding.
Add private GtkMenu API for turning this off. Bug 564063
2009-06-22 00:53:14 -04:00
Alexander Larsson
7303f3c9fd Merge branch 'master' into client-side-windows
This updates client-side-windows to the the latest soname
change for easier testing.

Conflicts:
	gdk/x11/gdkwindow-x11.c
	tests/Makefile.am
2009-06-17 12:56:05 +02:00
Matthias Clasen
c12a8388f6 More instances of those deprecated functions 2009-06-16 12:21:36 -04:00
Matthias Clasen
d51132e584 Don't use deprecated api internally 2009-06-16 11:27:06 -04:00
Alexander Larsson
89e187e7c1 Use gdk_window_get_root_cords to get popup position for combobox
This makes us handle transformed offscreen widgets much better.
2009-06-08 20:01:05 +02:00
Matthias Clasen
e18a4fa047 Improve gtk_combo_box_get_active_text() docs
Make it more explicit that the return value needs to be freed.
Fixes bug 583050.
2009-05-23 01:20:39 -04:00
Matthias Clasen
e6373738fc Forward-port a GtkAdjustment compatibility fix
We reverted GtkAdjustment to its traditional behaviour wrt. to
clamping in 2.14.3, but the fix was lost between 2.14 and 2.16.
2009-05-03 13:04:06 -04:00
Michael Hasselmann
a02ade3737 Added a check to not emit a "changed" signal when an already invalid
2009-02-19  Michael Hasselmann <michaelh@openismus.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
	Added a check to not emit a "changed" signal when an already
	invalid selection was set to invalid.

svn path=/trunk/; revision=22390
2009-02-22 17:21:37 +00:00
Christian Dywan
a8cc721e7c Bug 567413 – GtkComboBoxEntry doesn't emit "changed" signal on entry
2009-01-21  Christian Dywan  <christian@twotoasts.de>

	Bug 567413 – GtkComboBoxEntry doesn't emit "changed" signal
        on entry editing

	* gtk/gtkcombobox.c (gtk_combo_box_set_active): Return only if index
        is set. Patch by Carl-Anton Ingmarsson.

svn path=/trunk/; revision=22152
2009-01-21 00:03:00 +00:00
Matthias Clasen
4cf69fddb4 Allow out-of-order setting of model and active. Patch by Christian Dywan
* gtk/gtkcombobox.c: Allow out-of-order setting of model and active.
        Patch by Christian Dywan



svn path=/trunk/; revision=21888
2008-12-13 08:11:54 +00:00
Christian Dywan
446fd7d72a Bug 547449 – Entry/ Combo popup misplaced after resize
svn path=/trunk/; revision=21263
2008-09-03 12:38:32 +00:00
Michael Natterer
b2d286d5bf examples/gtkdial/gtkdial.c gdk/gdkapplaunchcontext.c gdk/gdkpango.c
2008-08-12  Michael Natterer  <mitch@imendio.com>

	* examples/gtkdial/gtkdial.c
	* gdk/gdkapplaunchcontext.c
	* gdk/gdkpango.c
	* gtk/gtkcellrendererpixbuf.c
	* gtk/gtkcellrenderertext.c
	* gtk/gtkcellview.c
	* gtk/gtkcombobox.c
	* gtk/gtkfontsel.c
	* gtk/gtkinvisible.c
	* gtk/gtkliststore.c
	* gtk/gtktexttag.c
	* gtk/gtktexttagtable.c: remove dereferencing from some function
	pointers i missed before.


svn path=/trunk/; revision=21089
2008-08-12 09:51:16 +00:00
Sven Neumann
2a95978506 gtk/gtkaboutdialog.c gtk/gtkcellrendereraccel.c gtk/gtkcellrenderercombo.c
2008-08-11  Sven Neumann  <sven@gimp.org>

	* gtk/gtkaboutdialog.c
	* gtk/gtkcellrendereraccel.c
	* gtk/gtkcellrenderercombo.c
	* gtk/gtkcellrendererspin.c
	* gtk/gtkcellrenderertext.c
	* gtk/gtkclipboard.c
	* gtk/gtkcolorsel.c
	* gtk/gtkcombo.c
	* gtk/gtkcombobox.c
	* gtk/gtkdnd-quartz.c
	* gtk/gtkdnd.c
	* gtk/gtkentry.c
	* gtk/gtkentrycompletion.c
	* gtk/gtkfilechooserbutton.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkfilechooserentry.c
	* gtk/gtkfontsel.c
	* gtk/gtkinputdialog.c
	* gtk/gtkmenutoolbutton.c
	* gtk/gtkpathbar.c
	* gtk/gtktooltip.c: use canonical signal names in 
g_signal_connect().


svn path=/trunk/; revision=21060
2008-08-11 09:17:49 +00:00
Michael Natterer
3d75f27801 gtk/gtkcombobox.c gtk/gtkiconview.c gtk/gtkrange.c gtk/gtkscrolledwindow.c
2008-08-06  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c
	* gtk/gtkiconview.c
	* gtk/gtkrange.c
	* gtk/gtkscrolledwindow.c
	* gtk/gtktreeview.c: remove CLAMPing from values passed to
	gtk_adjustment_set_value() since it does it right now.


svn path=/trunk/; revision=21021
2008-08-06 11:32:33 +00:00
Michael Natterer
da61c61c4b bail out early if priv->button is NULL to avoid zillions of warnings when
2008-08-05  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_update_sensitivity): bail out
	early if priv->button is NULL to avoid zillions of warnings when
	destroying combo boxes that were working fine before the
	button sensitivity patch.


svn path=/trunk/; revision=21014
2008-08-05 15:44:04 +00:00
Matthias Clasen
7d85757776 Bug 382291 – Automatically dim the combobox when the model is empty
2008-08-04  Matthias Clasen  <mclasen@redhat.com>

        Bug 382291 – Automatically dim the combobox when the model is empty

        * gtk/gtk.symbols:
        * gtkcombobox.[hc]: Add a GtkComboBox::button-sensitivity
        property with getter and setter to control the sensitity of
        empty combo boxes. Patch by Carlos Garnacho, Sven Herzberg,
        Christian Dywan and others.

        * README.in: Add a note about automatic combobox sensitivity.


svn path=/trunk/; revision=20997
2008-08-04 23:40:36 +00:00
Michael Natterer
7f00695920 remove _gtk_binding_signal_new().
2008-07-21  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkbindings.[ch]: remove _gtk_binding_signal_new().

	* gtk/gtkfilechooserdefault.c
	* gtk/gtkmenu.c
	* gtk/gtkmenushell.c
	* gtk/gtkscalebutton.c
	* gtk/gtktextview.c
	* gtk/gtktoolbar.c
	* gtk/gtkwidget.c: use g_signal_new_class_handler() instead. Add
	some missing I_() to the signal names.


svn path=/trunk/; revision=20874
2008-07-21 09:48:20 +00:00
Michael Natterer
d905a906a4 allocate ComboCellInfo with GSlice.
2008-07-04  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c: allocate ComboCellInfo with GSlice.


svn path=/trunk/; revision=20760
2008-07-04 10:52:52 +00:00
Johan Dahlin
d97cdbdf53 Include "config.h" instead of <config.h> Command used: find -name
2008-06-21  Johan Dahlin  <jdahlin@async.com.br>

    * *.[ch]: Include "config.h" instead of <config.h>
    Command used:
    find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
    Rubberstamped by Mitch and Tim


svn path=/trunk/; revision=20669
2008-06-22 14:28:52 +00:00
Michael Natterer
2ba736d775 Bug 538395 – gtk_combo_box_append_text() on non-compliant model
2008-06-20  Michael Natterer  <mitch@imendio.com>

	Bug 538395 – gtk_combo_box_append_text() on non-compliant model
	segfaults

	* gtk/gtkcombobox.c (gtk_combo_box_append_text)
	(gtk_combo_box_insert_text)
	(gtk_combo_box_prepend_text)
	(gtk_combo_box_remove_text)
	(gtk_combo_box_real_get_active_text): apply patch from Christian
	Dywan which adds the needed g_return_if_fail() to prevent the
	crashes.


svn path=/trunk/; revision=20477
2008-06-20 10:00:40 +00:00
Michael Natterer
fe8a946e87 deprecate GtkDestroyNotify.
2008-06-18  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktypeutils.h: deprecate GtkDestroyNotify.

	* gtk/gtkactiongroup.[ch]
	* gtk/gtkcombobox.[ch]
	* gtk/gtkcontainer.[ch]
	* gtk/gtkliststore.[ch]
	* gtk/gtkmain.[ch]
	* gtk/gtkmenu.c
	* gtk/gtkstock.[ch]
	* gtk/gtktreedatalist.[ch]
	* gtk/gtktreemodelfilter.[ch]
	* gtk/gtktreemodelsort.[ch]
	* gtk/gtktreeprivate.h
	* gtk/gtktreeselection.[ch]
	* gtk/gtktreesortable.[ch]
	* gtk/gtktreestore.[ch]
	* gtk/gtktreeview.[ch]
	* gtk/gtktreeviewcolumn.[ch]: s/GtkDestroyNotify/GDestroyNotify/g.


svn path=/trunk/; revision=20448
2008-06-18 09:12:32 +00:00
Michael Natterer
37c28957fe use _gtk_marshal_BOOLEAN__VOID instead of the deprecated
2008-06-16  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init): use
	_gtk_marshal_BOOLEAN__VOID instead of the deprecated
	gtk_marshal_BOOLEAN__VOID.


svn path=/trunk/; revision=20404
2008-06-16 16:44:19 +00:00
Michael Natterer
6aaea97378 cast menu's toplevel to GtkWindow when passing to
2008-06-13  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position): cast menu's
	toplevel to GtkWindow when passing to gtk_window_set_type_hint().


svn path=/trunk/; revision=20372
2008-06-13 13:30:38 +00:00
Matthias Clasen
5f8af6d910 Bug 536765 – GtkComboBox should set COMBO type hint for its menu
* gtk/gtkoptionmenu.c:
        * gtk/gtkcombobox.c: Set the window type hint on popups.
        Patch by Danny Baumann


svn path=/trunk/; revision=20351
2008-06-11 03:36:32 +00:00
Alberto Ruiz
ca5c68f160 The child is now aware of both the combobox and frame (if has-frame is
2008-16-03  Alberto Ruiz <aruiz@gnome.org>

	* gtl/gtkcombobox.c: (gtk_combo_box_size_allocate) The child is now aware of
	both the combobox and frame (if has-frame is set) thickness and border. (bug #521442)


svn path=/trunk/; revision=19886
2008-03-16 01:37:12 +00:00
Alberto Ruiz
1e1f49e09a Take thickness into account in the size allocation of the child widgets in
2008-03-11  Alberto Ruiz  <aruiz@gnome.org>

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate):
	Take thickness into account in the size allocation of the child widgets in
	list mode.
	Fixes #521442


svn path=/trunk/; revision=19747
2008-03-11 13:46:37 +00:00
Matthias Clasen
0509519d35 Unify the handling of various "Enter" keysyms all over the place.
2008-02-12  Matthias Clasen  <mclasen@redhat.com>

        * gtk/*.c: Unify the handling of various "Enter" keysyms
        all over the place.  (#515047, Christian Persch)



svn path=/trunk/; revision=19528
2008-02-12 15:51:09 +00:00
Cody Russell
d7292b61f8 Removed an extra semicolon. (#515219, reported by Kazuki IWAMOTO)
2008-02-08  Cody Russell  <bratsche@gnome.org>

        * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_start):
        Removed an extra semicolon.  (#515219, reported by Kazuki IWAMOTO)


svn path=/trunk/; revision=19502
2008-02-09 04:03:25 +00:00
Michael Natterer
d95069aa1f gtk/gtkaction.c gtk/gtkassistant.c gtk/gtkbin.c gtk/gtkbox.c
2008-02-07  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkaction.c
	* gtk/gtkassistant.c
	* gtk/gtkbin.c
	* gtk/gtkbox.c
	* gtk/gtkcalendar.c
	* gtk/gtkcellrenderercombo.c
	* gtk/gtkcombobox.c
	* gtk/gtkcombo.c
	* gtk/gtkdrawingarea.c
	* gtk/gtkentrycompletion.c
	* gtk/gtkfixed.h
	* gtk/gtkgamma.c
	* gtk/gtkhpaned.c
	* gtk/gtkiconview.c
	* gtk/gtkitem.c
	* gtk/gtkitemfactory.c: remove g_return_if_fail() from private
	functions and virtual function implementations.


svn path=/trunk/; revision=19491
2008-02-07 15:50:39 +00:00
Michael Natterer
ea8ffe42aa g_return_if_fail() is the cell is not part of the combo instead of
2008-02-04  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_add_attribute):
	g_return_if_fail() is the cell is not part of the combo instead of
	crashing in the next line.


svn path=/trunk/; revision=19462
2008-02-04 23:01:00 +00:00
Matthias Clasen
9fbb25f734 Emit the notify::model signal. (#509819, David Zeuthen)
2008-01-16  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_set_model): Emit
        the notify::model signal.  (#509819, David Zeuthen)



svn path=/trunk/; revision=19374
2008-01-16 05:25:35 +00:00
Michael Natterer
9c7a2c321f remove unused variable.
2008-01-09  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcolorsel.c (make_label_spinbutton): remove unused
	variable.

	* gtk/gtkcombobox.c (gtk_combo_box_detacher)
	* gtk/gtkicontheme.c (theme_list_contexts)
	(gtk_icon_theme_lookup_icon)
	* gtk/gtkimcontextsimple.c (beep_window)
	* gtk/gtklinkbutton.c (set_link_color)
	* gtk/gtkuimanager.c (child_hierarchy_changed_cb): add casts to
	fix warnings.

	* gtk/gtkpathbar.c (_gtk_path_bar_set_file_system): remove unused
	variable and add const to another to fix a warning.


svn path=/trunk/; revision=19330
2008-01-09 17:02:50 +00:00
Johan Dahlin
71e9be7e6d Use G_OBJECT_WARN_INVALID_PROPERTY_ID consistently. Fixes #5075
2008-01-06  Johan Dahlin  <johan@gnome.org>

	* gtk/gtkcellrenderercombo.c:
	(gtk_cell_renderer_combo_get_property),
	(gtk_cell_renderer_combo_set_property):
	* gtk/gtkcombobox.c: (gtk_combo_box_set_property):
	* gtk/gtkcomboboxentry.c: (gtk_combo_box_entry_set_property):
	* gtk/gtknotebook.c: (gtk_notebook_set_property):
	* gtk/gtkspinbutton.c: (gtk_spin_button_set_property):
	* gtk/gtktextbuffer.c: (gtk_text_buffer_set_property),
	(gtk_text_buffer_get_property):
	* gtk/gtktextview.c: (gtk_text_view_set_property):
	* gtk/gtktogglebutton.c: (gtk_toggle_button_set_property):
	* gtk/gtktoolbutton.c: (gtk_tool_button_set_property),
	(gtk_tool_button_get_property):
	* gtk/gtktoolitem.c: (gtk_tool_item_set_property),
	(gtk_tool_item_get_property):
	* gtk/gtktreeview.c: (gtk_tree_view_set_property):
	* gtk/gtkwidget.c: (gtk_widget_set_property):
	* gtk/gtkwindow.c: (gtk_window_set_property):
	Use G_OBJECT_WARN_INVALID_PROPERTY_ID consistently.
	Fixes #5075

svn path=/trunk/; revision=19311
2008-01-06 03:28:40 +00:00
Matthias Clasen
d52e6cd124 Introduce local priv variables to reduce ->->
2007-12-28  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c: Introduce local priv variables to
        reduce ->->



svn path=/trunk/; revision=19258
2007-12-28 06:56:48 +00:00
Matthias Clasen
f78277f0a3 Fix the default value of the tearoff-title property
svn path=/trunk/; revision=19257
2007-12-28 05:49:21 +00:00
Matthias Clasen
3b8541a8c4 When popping up a menu from a treeview cell, use the time and button
2007-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c: When popping up a menu from a treeview cell,
        use the time and button information from the event.  (#504901,
        Peter Bloomfield)


svn path=/trunk/; revision=19234
2007-12-25 04:04:21 +00:00
Kristian Rietveld
d719605dac implement missing get_cells method. (Spotted by Paolo Borelli).
2007-09-07  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
	(gtk_combo_box_cell_layout_get_cells): implement missing get_cells
	method.  (Spotted by Paolo Borelli).


svn path=/trunk/; revision=18747
2007-09-07 11:02:04 +00:00
Mikael Hallendal
9e9767401d Document the new signals popup, popdown and move-active.
2007-08-08  Mikael Hallendal  <micke@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init):
	Document the new signals popup, popdown and move-active.

svn path=/trunk/; revision=18594
2007-08-08 19:59:42 +00:00
Matthias Clasen
13c0e7a0ff Emit ::changed when removing the active row. (#452056, Paul Pogonyshev)
2007-07-09  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted): Emit
        ::changed when removing the active row.  (#452056, Paul Pogonyshev)


svn path=/trunk/; revision=18416
2007-07-09 18:23:49 +00:00
Johan Dahlin
60a409785f Rename buildable methods to not clash with widget methods. (#448928,
2007-06-19  Johan Dahlin  <jdahlin@async.com.br>

    * gtk/*: Rename buildable methods to not clash with widget 
    methods. (#448928, Torsten Schoenfeld)


svn path=/trunk/; revision=18187
2007-06-19 12:23:36 +00:00
Johan Dahlin
4d638bf0c1 Add GtkBuilder, fixes #172535
2007-06-15  Johan Dahlin  <jdahlin@async.com.br>

    * demos/gtk-demo/Makefile.am:
    * demos/gtk-demo/builder.c: (quit_activate), (about_activate),
    (do_builder):
    * demos/gtk-demo/demo.ui:
    * docs/reference/gtk/gtk-docs.sgml:
    * docs/reference/gtk/gtk-sections.txt:
    * docs/reference/gtk/gtk.types:
    * docs/reference/gtk/tmpl/gtkbuildable.sgml:
    * docs/reference/gtk/tmpl/gtkbuilder.sgml:
    * gtk/Makefile.am:
    * gtk/gtk.h:
    * gtk/gtk.symbols:
    * gtk/gtkaction.c: (gtk_action_buildable_init),
    (gtk_action_buildable_set_name), (gtk_action_buildable_get_name):
    * gtk/gtkactiongroup.c: (gtk_action_group_get_type),
    (gtk_action_group_buildable_init),
    (gtk_action_group_buildable_add),
    (gtk_action_group_buildable_set_name),
    (gtk_action_group_buildable_get_name):
    * gtk/gtkbuildable.c: (gtk_buildable_get_type),
    (gtk_buildable_set_name), (gtk_buildable_get_name),
    (gtk_buildable_add), (gtk_buildable_set_property),
    (gtk_buildable_parser_finished), (gtk_buildable_construct_child),
    (gtk_buildable_custom_tag_start), (gtk_buildable_custom_tag_end),
    (gtk_buildable_custom_finished),
    (gtk_buildable_get_internal_child):
    * gtk/gtkbuildable.h:
    * gtk/gtkbuilder.c: (gtk_builder_class_init), (gtk_builder_init),
    (gtk_builder_finalize), (gtk_builder_set_property),
    (gtk_builder_get_property), (_gtk_builder_resolve_type_lazily),
    (gtk_builder_real_get_type_from_name),
    (gtk_builder_get_parameters), (gtk_builder_get_internal_child),
    (_gtk_builder_construct), (_gtk_builder_add),
    (apply_delayed_properties), (_gtk_builder_finish),
    (gtk_builder_new), (gtk_builder_add_from_file),
    (gtk_builder_add_from_string), (gtk_builder_get_object),
    (object_add_to_list), (gtk_builder_get_objects),
    (gtk_builder_set_translation_domain),
    (gtk_builder_get_translation_domain),
    (gtk_builder_connect_signals_default),
    (gtk_builder_connect_signals), (gtk_builder_connect_signals_full),
    (gtk_builder_value_from_string),
    (gtk_builder_value_from_string_type),
    (_gtk_builder_enum_from_string), (_gtk_builder_flags_from_string),
    (gtk_builder_get_type_from_name), (gtk_builder_error_quark):
    * gtk/gtkbuilder.h:
    * gtk/gtkbuilderparser.c: (state_push), (state_peek), (state_pop),
    (error_missing_attribute), (error_invalid_attribute),
    (error_invalid_tag), (builder_construct), (parse_object),
    (free_object_info), (_get_type_by_symbol), (parse_child),
    (free_child_info), (parse_property), (free_property_info),
    (parse_signal), (_free_signal_info), (parse_interface),
    (create_subparser), (free_subparser), (subparser_start),
    (subparser_end), (parse_custom), (start_element), (end_element),
    (text), (_gtk_builder_parser_parse_buffer):
    * gtk/gtkbuilderprivate.h:
    * gtk/gtkcelllayout.c: (attributes_start_element),
    (attributes_text_element),
    (_gtk_cell_layout_buildable_custom_tag_start),
    (_gtk_cell_layout_buildable_custom_tag_end),
    (_gtk_cell_layout_buildable_add):
    * gtk/gtkcelllayout.h:
    * gtk/gtkcellview.c: (gtk_cell_view_buildable_init),
    (gtk_cell_view_buildable_custom_tag_start),
    (gtk_cell_view_buildable_custom_tag_end):
    * gtk/gtkcolorseldialog.c:
    (gtk_color_selection_dialog_buildable_interface_init),
    (gtk_color_selection_dialog_buildable_get_internal_child):
    * gtk/gtkcombobox.c: (gtk_combo_box_buildable_init),
    (gtk_combo_box_buildable_custom_tag_start),
    (gtk_combo_box_buildable_custom_tag_end):
    * gtk/gtkcomboboxentry.c:
    (gtk_combo_box_entry_buildable_interface_init),
    (gtk_combo_box_entry_buildable_get_internal_child):
    * gtk/gtkcontainer.c: (gtk_container_get_type),
    (gtk_container_buildable_init), (gtk_container_buildable_add),
    (gtk_container_buildable_set_child_property),
    (attributes_start_element), (attributes_text_element),
    (gtk_container_buildable_custom_tag_start),
    (gtk_container_buildable_custom_tag_end):
    * gtk/gtkdebug.h:
    * gtk/gtkdialog.c: (gtk_dialog_buildable_interface_init),
    (gtk_dialog_buildable_get_internal_child),
    (attributes_start_element), (attributes_text_element),
    (gtk_dialog_buildable_custom_tag_start),
    (gtk_dialog_buildable_custom_finished):
    * gtk/gtkentrycompletion.c: (gtk_entry_completion_buildable_init):
    * gtk/gtkexpander.c: (gtk_expander_buildable_add),
    (gtk_expander_buildable_init):
    * gtk/gtkfontsel.c:
    (gtk_font_selection_dialog_buildable_interface_init),
    (gtk_font_selection_dialog_buildable_get_internal_child):
    * gtk/gtkframe.c: (gtk_frame_buildable_init),
    (gtk_frame_buildable_add):
    * gtk/gtkiconview.c: (gtk_icon_view_buildable_init),
    (gtk_icon_view_buildable_custom_tag_start),
    (gtk_icon_view_buildable_custom_tag_end):
    * gtk/gtkliststore.c: (gtk_list_store_buildable_init),
    (list_store_start_element), (list_store_end_element),
    (list_store_text), (gtk_list_store_buildable_custom_tag_start),
    (gtk_list_store_buildable_custom_tag_end):
    * gtk/gtkmain.c:
    * gtk/gtknotebook.c: (gtk_notebook_buildable_init),
    (gtk_notebook_buildable_add):
    * gtk/gtksizegroup.c: (gtk_size_group_buildable_init),
    (size_group_start_element),
    (gtk_size_group_buildable_custom_tag_start),
    (gtk_size_group_buildable_custom_finished):
    * gtk/gtktreestore.c: (gtk_tree_store_buildable_init),
    (tree_model_start_element),
    (gtk_tree_store_buildable_custom_tag_start),
    (gtk_tree_store_buildable_custom_finished):
    * gtk/gtktreeview.c: (gtk_tree_view_buildable_init),
    (gtk_tree_view_buildable_add):
    * gtk/gtktreeviewcolumn.c: (gtk_tree_view_column_buildable_init):
    * gtk/gtkuimanager.c: (gtk_ui_manager_buildable_init),
    (gtk_ui_manager_buildable_add),
    (gtk_ui_manager_buildable_construct_child),
    (gtk_ui_manager_buildable_custom_tag_start),
    (gtk_ui_manager_buildable_custom_tag_end):
    * gtk/gtkwidget.c: (gtk_widget_get_type),
    (gtk_widget_buildable_interface_init),
    (gtk_widget_buildable_set_name), (gtk_widget_buildable_get_name),
    (gtk_widget_buildable_set_property),
    (gtk_widget_buildable_parser_finshed), (accel_group_start_element),
    (gtk_widget_buildable_custom_tag_start),
    (gtk_widget_buildable_custom_finshed):
    * gtk/gtkwindow.c: (gtk_window_buildable_interface_init),
    (gtk_window_buildable_set_property),
    (gtk_window_buildable_parser_finished):
    * tests/Makefile.am:
    * tests/buildertest.c: (builder_new_from_string), (test_parser),
    (signal_normal), (signal_after), (signal_object),
    (signal_object_after), (signal_first), (signal_second),
    (signal_extra), (signal_extra2), (test_connect_signals),
    (test_uimanager_simple), (test_domain), (test_translation),
    (test_sizegroup), (test_list_store), (test_tree_store),
    (test_types), (test_spin_button), (test_notebook),
    (test_construct_only_property), (test_children),
    (test_child_properties), (test_treeview_column), (test_icon_view),
    (test_combo_box), (test_combo_box_entry), (test_cell_view),
    (test_dialog), (test_accelerators), (test_widget), (main):

    Add GtkBuilder, fixes #172535


svn path=/trunk/; revision=18141
2007-06-15 17:53:46 +00:00
Carlos Garnacho
28589d8ae8 removed unused and hardly visible GtkFrame from the menu widget hierarchy
2007-06-14  Carlos Garnacho  <carlos@imendio.com>

        * gtk/gtkcombobox.c: removed unused and hardly visible GtkFrame from
        the menu widget hierarchy when ::appears-as-list is TRUE. (#435471)
        * NEWS: add a note about repercussions of this change to RC files.


svn path=/trunk/; revision=18127
2007-06-13 23:15:42 +00:00
Michael Natterer
ece25ff10c add "submenu" property. Fix gtk_menu_item_set_submenu() to accept NULL
2007-06-13  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkmenuitem.[ch]: add "submenu" property. Fix
	gtk_menu_item_set_submenu() to accept NULL submenus and deprecate
	gtk_menu_item_remove_submenu() because we have a properly working
	setter now (bug #447065).

	* gtk/gtk.symbols: deprecate gtk_menu_item_remove_submenu().

	* gtk/gtkcombobox.c: use gtk_menu_item_set_submenu() instead of
	gtk_menu_item_remove_submenu().


svn path=/trunk/; revision=18125
2007-06-13 15:21:10 +00:00
Michael Natterer
b3ce266b6e revert last change.
2007-05-21  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_model): revert last change.


svn path=/trunk/; revision=17886
2007-05-21 12:43:50 +00:00
Tim Janik
1ba507f09f removed redundant check.
Mon May 21 13:58:32 2007  Tim Janik  <timj@imendio.com>

        * gtk/gtkcombobox.c (gtk_combo_box_set_model): removed redundant check.



svn path=/trunk/; revision=17885
2007-05-21 12:05:57 +00:00
Carlos Garnacho
1dc2df1565 Make combobox menu popdown keybindable (#433593)
2007-05-18  Carlos Garnacho  <carlos@imendio.com>

        Make combobox menu popdown keybindable (#433593)

        * gtk/gtkcombobox.c (gtk_combo_box_class_init): Add "popdown" binding
        signal and keybindings.
        (gtk_combo_box_real_popdown): Added, "popdown" keybinding signal
        handler.
        (gtk_combo_box_menu_key_press):
        (gtk_combo_box_list_key_press): forward the event to the combobox if
        it wasn't handled by the menu.


svn path=/trunk/; revision=17861
2007-05-18 11:33:13 +00:00
Armin Burgmeier
e82e337ee9 Destroy the menu in dispose instead of finalize, because the menu might
2007-05-02  Armin Burgmeier  <armin@openismus.com>

	* gtk/gtkcombobox.c: Destroy the menu in dispose instead of
	finalize, because the menu might unparent itself from its parent and
	cause a signal emission on a finalized object. (#430746)

svn path=/trunk/; revision=17782
2007-05-02 22:19:45 +00:00
Matthias Clasen
b72dfb8c4e Plug memory leaks caused by wrong use of g_slist_remove_link(). (#405515,
2007-04-28  Matthias Clasen  <mclasen@redhat.com>

        * gdk/win32/bdfcursor.c (compose_cursors_from_fonts):
        * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_reorder):
        * gtk/gtkfilesystemmodel.c (got_root_folder_cb):
        (get_children_folder_cb): Plug memory leaks caused by wrong
        use of g_slist_remove_link().  (#405515, Nicolas Peninguy)



svn path=/trunk/; revision=17671
2007-04-28 14:41:04 +00:00
Matthias Clasen
c27179b2c5 Doc improvements
svn path=/trunk/; revision=17494
2007-03-12 06:04:44 +00:00
Mathias Hasselmann
a1b0dba103 Add shadow-type style property, set shadow-type property of GtkEntry
2007-03-08  Mathias Hasselmann <mathias.hasselmann@gmx.de>

	* gtk/gtkcombobox.c: Add shadow-type style property, set shadow-type
	property of GtkEntry accordingly, unify size-allocation of toggle
	button (#411123, patch from Mathias Hasselmann).
	* gtk/gtkentry.c: Add shadow-type property. Query style properties
	on style changes only (#411123, patch from Mathias Hasselmann).
	* modules/engines/ms-windows/msw_style.c: Drop combo_box_draw_box
	hack as GtkComboBox emits drawing requests now (#411123, patch 
	from Mathias Hasselmann).

svn path=/trunk/; revision=17426
2007-03-08 02:36:46 +00:00
Matthias Clasen
c0c2ac8e38 Set names on the popup widgets to make them themable. (#414975, Benjamin
2007-03-07  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtkcombo.c: (gtk_combo_init):
        * gtk/gtkcombobox.c: (gtk_combo_box_set_popup_widget),
        (gtk_combo_box_menu_setup):
        Set names on the popup widgets to make them themable. (#414975,
        Benjamin Berg)

svn path=/trunk/; revision=17417
2007-03-07 21:10:45 +00:00
Xan Lopez
ee6b709ffd Cleanup the logic in expose event handler. Reviewed by Matthias Clasen,
* gtk/gtkcombobox.c (gtk_combo_box_expose_event): Cleanup the logic
  in expose event handler. Reviewed by Matthias Clasen, #406112

svn path=/trunk/; revision=17312
2007-02-16 16:00:19 +00:00
Tim Janik
9d573d5f69 remove extra reference that gtkcombobox keeps on priv->popup_widget if
Thu Feb  1 12:22:06 2007  Tim Janik  <timj@imendio.com>

        * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): remove extra reference
        that gtkcombobox keeps on priv->popup_widget if it's a tree view.



svn path=/trunk/; revision=17246
2007-02-01 11:42:38 +00:00
Matthias Clasen
d6e4485f9f move set_cursor after realization of the popup window, so clamp node
2007-01-04  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_popup): move set_cursor
        after realization of the popup window, so clamp node doesn't fail.
        (#346616, Tommi Komulainen, patch by Kristian Rietveld).



svn path=/trunk/; revision=17073
2007-01-05 05:41:25 +00:00
Matthias Clasen
8d286a7239 Accept NULL.
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcellview.c (gtk_cell_view_set_model): Accept NULL.

        * gtk/gtkcombobox.c (gtk_combo_box_set_model):
        (gtk_combo_box_unset_model): Handle repeated unsetting
        of models without warnings.  (#367529, Robert Ancell)
2006-12-27 07:17:53 +00:00
Matthias Clasen
264e9c0ce1 Fix a few problems with nested menus in comboboxes (#386694, Yevgen
2006-12-17  Matthias Clasen  <mclasen@redhat.com>

        Fix a few problems with nested menus in comboboxes
        (#386694, Yevgen Muntyan)

        * gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Always
        connect the activate callback.
        (gtk_combo_box_menu_item_activate): Do nothing if called on
        an item with a submenu.
        (gtk_combo_box_menu_row_deleted): Remove a submenu when it
        is empty.
2006-12-27 06:12:53 +00:00
Matthias Clasen
721c3bc101 Replace a lot of idle and timeout calls by the new gdk_threads api.
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * *.c: Replace a lot of idle and timeout calls by
        the new gdk_threads api.
2006-12-22 19:10:43 +00:00
Dom Lachowicz
36fa058fa2 Make GtkComboBox in "appears-as-list" mode more closely resemble its Win32
2006-12-15  Dom Lachowicz <domlachowicz@gmail.com>

        * gtk/gtkcombobox.c: Make GtkComboBox in "appears-as-list" mode
        more closely resemble its Win32 counterpart. Bug #340204.
2006-12-15 19:08:15 +00:00
Benjamin Berg
1830558a3e Undo bogus commit. 2006-12-14 18:33:43 +00:00
Benjamin Berg
78fcce907f - Remove unused code/options from the code. Warn about their usage while
2006-12-13  Benjamin Berg  <benjamin@sipsolutions.net>


	* engines/clearlooks/src/clearlooks_rc_style.c:
	(clearlooks_rc_style_init), (clearlooks_gtk2_rc_parse_dummy),
	(clearlooks_rc_style_parse), (clearlooks_rc_style_merge):
	* engines/clearlooks/src/clearlooks_rc_style.h:
	* engines/clearlooks/src/clearlooks_style.c:
	(clearlooks_style_draw_box), (clearlooks_style_init_from_rc),
	(clearlooks_style_copy):
	* engines/clearlooks/src/clearlooks_style.h:
	* engines/clearlooks/src/clearlooks_types.h:
	- Remove unused code/options from the code. Warn about their usage
	while parsing.


	* themes/Clearlooks/gtk-2.0/gtkrc:
	- Remove options that don't have any effect.
2006-12-13 17:32:49 +00:00
Michael Natterer
7f374a74ba Add new infrastructure for notifications of failed keyboard navigation and
2006-11-16  Michael Natterer  <mitch@imendio.com>

	Add new infrastructure for notifications of failed keyboard
	navigation and navigation with restricted set of keys.

	The patch handles configurable beeping, navigating the GUI with
	cursor keys only (as in phone environments), and configurable
	wrap-around. Fixes bugs #322640, #70986, #318827, #334726, #334742
	and #309291.

	* gtk/gtksettings.c: added properties gtk-keynav-cursor-only,
	gtk-keynav-wrap-around and gtk-error-bell.

	* gtk/gtkwidget.[ch]: added new signal "keynav-failed" and public
	API to emit it. Added New function gtk_widget_error_bell() which
	looks at the gtk-error-bell setting and calls gdk_window_beep()
	accordingly.

	* gtk/gtk.symbols: add the new widget symbols.

	* gtk/gtkcellrendereraccel.c
	* gtk/gtkimcontextsimple.c
	* gtk/gtkmenu.c
	* gtk/gtknotebook.c: use gtk_widget_error_bell() or look at the
	gtk-error-bell setting instead of calling gdk_display_beep()
	unconditionally.

	* gtk/gtkcombobox.c
	* gtk/gtkentry.c
	* gtk/gtkiconview.c
	* gtk/gtklabel.c
	* gtk/gtkmenushell.c
	* gtk/gtkspinbutton.c
	* gtk/gtktextview.c
	* gtk/gtktreeview.c: call gtk_widget_error_bell() on failed keynav.

	* gtk/gtkentry.c
	* gtk/gtklabel.c
	* gtk/gtkrange.c
	* gtk/gtktextview.c: consult gtk_widget_keynav_failed() on failed
	cursor navigation and leave the widget if it returns FALSE.

	* gtk/gtkmenushell.c
	* gtk/gtknotebook.c: only wrap around if gtk-keynav-wrap-around
	is TRUE.

	* gtk/gtkradiobutton.c: ask gtk_widget_keynav_failed() to decide
	whether to to wrap-around, and don't select active items on cursor
	navigation if gtk-keynav-cursor-only is TRUE. Should look at
	gtk-keynav-wrap-around too, will look into that.
2006-11-16 12:56:30 +00:00
Kristian Rietveld
be3e5ab9a6 add arrow-size property to control the minimum size of the arrow, have the
2006-11-01  Kristian Rietveld  <kris@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init),
	(gtk_combo_box_size_request): add arrow-size property to control
	the minimum size of the arrow, have the arrow scale up with the
	font by default. (#357950).
2006-11-01 19:15:54 +00:00
Michael Natterer
b17f5b6e05 fix commit below (committed the wrong patch).
2006-10-12  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init): fix commit below
	(committed the wrong patch).
2006-10-12 13:48:07 +00:00
Michael Natterer
932a45d6c7 added "move-active" and "popup" signals and bindings to trigger them.
2006-10-12  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcombobox.c: added "move-active" and "popup" signals and
	bindings to trigger them. Removed gtk_combo_box_key_press(), it's
	obsolete now. Fixes bug #358293.
2006-10-12 13:04:44 +00:00
Matthias Clasen
07e7719441 Apply a cleanup patch by Kjartan Maraas (#341812)
2006-10-08  Matthias Clasen  <mclasen@redhat.com>

	* Apply a cleanup patch by Kjartan Maraas  (#341812)
2006-10-08 05:07:55 +00:00
Matthias Clasen
1c1a3a7c41 Null the cell_view pointer if the internal cell view is removed. (#348828,
2006-08-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_remove): Null the
	cell_view pointer if the internal cell view is removed.
	(#348828, Rolando Espinoza La Fuente)
2006-08-14 20:12:10 +00:00
Matthias Clasen
f8794cccca Improve consistency of signal and property names 2006-07-06 05:14:03 +00:00
Matthias Clasen
f0b7224fde Avoid a refcounting leak in the python bindings. (#344876, Phil Dumont)
2006-06-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c (gtk_cell_view_menu_item_new): Avoid
        a refcounting leak in the python bindings.  (#344876, Phil Dumont)
2006-06-26 10:25:14 +00:00
Matthias Clasen
13f2e4fb1b Update the height as well when changing fonts. (#321393, Billy Biggs) `
2006-06-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkcombobox.c: Update the height as well
        when changing fonts.  (#321393, Billy Biggs)
`
2006-06-24 17:53:45 +00:00
Kristian Rietveld
a70e666423 Separate sensitive/selectable properties.
2006-06-02  Kristian Rietveld  <kris@imendio.com>

	Separate sensitive/selectable properties.

	* gtk/gtktreeselection.c (tree_column_is_sensitive): remove,
	(_gtk_tree_selection_row_is_selectable): remove checks to see if at
	least one column is sensitive,
	(gtk_tree_selection_real_select_node): remove code which enables
	insensitive rows to always be unselected.

	* gtk/gtktreeview.c (gtk_tree_view_row_changed): remove code
	that unselects a node if it just became insensitive.

	* gtk/gtkcombobox.c (gtkcombo_box_list_select_func): new function,
	based on the at least one column sensitive check from
	_gtk_tree_selection_row_is_selectable(),
	(gtk_combo_box_list_setup): set selection function on tree selection.
2006-06-02 18:55:59 +00:00
Matthias Clasen
113f364a37 More of the same 2006-05-14 04:25:34 +00:00
Matthias Clasen
f26aad1916 Boilerplate reduction 2006-05-02 23:56:43 +00:00
Søren Sandmann
b9d1a03440 Create 'composited' label.
Tue Apr 25 10:25:28 2006  Søren Sandmann  <sandmann@redhat.com>

	* tests/testgtk.c (create_alpha_window): Create 'composited' label.

	* tests/testgtk.c (on_composited_changed): New function, change
	the label to say whether the screen is composited or not.

	* gtk/gtkwindow.c (gtk_window_on_composited_changed): When
	composited status change, invalidate the window and propagate the signal;.

	* gtk/gtkwindow.c (gtk_window_map): Set the appropriate type hint
	if reset_type_hint is TRUE.

	* gtk/gtkwindow.c (gtk_window_set_type_hint): If hint is one of
	the old hints, store a shadow copy in the public window->type_hint
	bitfield, otherwise set this field to normal. Set the private
	field to the type hint.

	* gtk/gtkwindow.c (gtk_window_init): Initialize priv->type_hint.

	* gtk/gtkwindow.c (struct _GtkWindowPrivate): New field
	"reset_type_hint" indicating whether the type hint needs to be
	reset. New field type_hint containing a GdkWindowTypeHint.

	* gtk/gtkwidget.c (propagate_composited_changed): New function to
	propagate changes in composited status.
	(gtk_widget_class_init): Add composited_changed signal.

	* gtk/gtkwidget.h (struct _GtkWidgetClass): New signal composited-changed.

	* gtk/gtkwidget.c (gtk_widget_is_composited): New function.

	* gtk/gtktooltips.c (gtk_tooltips_draw_tips): Set transient for.

	* gtk/gtktooltips.c (gtk_tooltips_force_window): Set the type hint

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Compute whether
	the item belongs to a menubar. Set the type_hint appropriately
	depending on the outcome.

	* gtk/gtkmenu.c (gtk_menu_position): Set the default type hint here.

	* gtk/gtkmenu.c (gtk_menu_attach_to_widget): connect to hierarchy
	changed on the attach widget.

	* gtk/gtkmenu.c (attach_widget_hierarchy_changed): New function to
	set the transient_for property for menus.

	* gtk/gtkdnd.c (set_icon_stock_pixbuf): Set the appropriate type hint.

	* gtk/gtkcombo.c (gtk_combo_popup_list): Make the popup window
	transient for the toplevel.

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Set
	transient-for, for the popup window.

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): Support for
	new window types.

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_type_hint): Add support
	for new window types.

	* gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
	New function called whenever the compositing manager comes and goes.

	* gdk/x11/gdkscreen-x11.c (gdk_screen_is_composited): New function.

	* gdk/x11/gdkscreen-x11.c
	(_gdk_x11_screen_request_cm_notification, make_cm_atom,
	check_is_composited): New functions

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
	_gdk_x11_screen_process_owner_change when an
	XFixesSelectionNotifyEvent is received.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Call
	_gdk_x11_screen_request_cm_notification() on all screens.

	* gdk/quartz/gdkscreen-quartz.c (gdk_screen_is_composited): Dummy
	implementation.

	* gdk/gdkscreen.c (gdk_screen_class_init): New signal,
	'composited-changed'.

	* gdk/gdkwindow.h: Add new EWMH window types.

	* gdk/win32/gdkscreen-win32.c (gdk_screen_is_composited)
2006-04-25 14:27:32 +00:00
Paolo Borelli
3fc009ec44 plug small leak (#339132) ditto
2006-04-20  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtkcombobox.c: plug small leak (#339132)
	* tests/testcombo.c: ditto
2006-04-20 15:00:01 +00:00
Matthias Clasen
7ae595b99e Don't leave page->tab_label dangling. (gtk_notebook_real_remove): Use
2006-03-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_remove_tab_label): Don't leave
	page->tab_label dangling.
	(gtk_notebook_real_remove): Use GTK_IN_DESTRUCTION.
	(gtk_notebook_destroy): Leave the removal of the children
	to the container destroy method.  (#319032, Yevgen Muntyan)

2006-03-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_remove): Use the existing
	GTK_IN_DESTRUCTION flag, rather than roll our own.
2006-03-21 00:12:48 +00:00
Matthias Clasen
1d2eaf4b22 Move it to the right place 2006-03-15 19:03:46 +00:00
Matthias Clasen
097e3b0b1f Popdown the list before changing the active iter, otherwise people will be
2006-03-15  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_list_button_released)
	(gtk_combo_box_list_key_press): Popdown the list before changing
	the active iter, otherwise people will be surprised by the
	grabs that are still in place when their ::changed handler
	runs.
2006-03-15 19:00:59 +00:00
Matthias Clasen
9c7e7a546e Replace the popup-show and popup-hide signals with a readonle popup-shown
2006-03-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
	popup-show and popup-hide signals with a readonle popup-shown
	property.  (#162531, Christian Persch)
2006-03-09 20:20:30 +00:00
Matthias Clasen
adce3190f1 Apply a patch by Murray to improve comboboxentry docs 2006-02-10 18:53:35 +00:00
Matthias Clasen
9963bd083b Fix a crash with combo boxes in RESIZE_IMMEDIATE containers. (#326806,
2006-01-14  Matthias Clasen  <mclasen@redhat.com>

	Fix a crash with combo boxes in RESIZE_IMMEDIATE
	containers.  (#326806, Sebastian Bacher)

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate)
	(gtk_combo_box_size_request): Don't call
	gtk_combo_box_check_appearance() from here, as that
	can lead to recursion.
	(gtk_combo_box_init): Instead, call it here.
2006-01-15 04:08:31 +00:00
Matthias Clasen
dcfac2c69c Make this function public API. (#307099, Todd Berman)
2006-01-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkwindow.h:
	* gtk/gtkwindow.c (gtk_window_get_group): Make this function
	public API.  (#307099, Todd Berman)

	* gtk/gtkmenu.c:
	* gtk/gtkmain.c:
	* gtk/gtkentrycompletion.c:
	* gtk/gtkcombo.c:
	* gtk/gtkcombobox.c: Update all callers.
2006-01-10 04:33:30 +00:00
Tim Janik
fbb2e3f4f5 deprecated floating/sink API and implemented it in terms of the GObject
Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>

        * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
        in terms of the GObject floating/sink API.

        * gtk/gtkaboutdialog.c:
        * gtk/gtkaction.c:
        * gtk/gtkcellview.c:
        * gtk/gtkclist.c:
        * gtk/gtkcolorsel.c:
        * gtk/gtkcombobox.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtkiconview.c:
        * gtk/gtkinvisible.c:
        * gtk/gtkitemfactory.c:
        * gtk/gtklayout.c:
        * gtk/gtkmenu.c:
        * gtk/gtkmenutoolbutton.c:
        * gtk/gtknotebook.c:
        * gtk/gtkprogress.c:
        * gtk/gtkrange.c:
        * gtk/gtkspinbutton.c:
        * gtk/gtkstatusicon.c:
        * gtk/gtktext.c:
        * gtk/gtktextview.c:
        * gtk/gtktoolbar.c:
        * gtk/gtktoolbutton.c:
        * gtk/gtktoolitem.c:
        * gtk/gtktreeitem.c:
        * gtk/gtktreeview.c:
        * gtk/gtktreeviewcolumn.c:
        * gtk/gtkuimanager.c:
        * gtk/gtkviewport.c:
        * gtk/gtkwidget.c:
        * gtk/gtkwindow.c:
        ported to use GObject's g_object_ref_sink().

        * gtk/gtkcolorsel.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtkaboutdialog.c:
        fixed compiler warnings.
2005-11-23 18:06:58 +00:00
Matthias Clasen
adcf33fa4d Add a tearoff-title property, with getter and setter. (#316482, Olexiy
2005-11-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkcombobox.[hc]: Add a tearoff-title property,
	with getter and setter.  (#316482, Olexiy Avramchenko)

	* tests/testcombo.c (main): Test gtk_combo_box_set_title
2005-11-21 16:01:56 +00:00
Matthias Clasen
02663e7121 Fix for bug #321542, Benedikt Meurer:
2005-11-21  Matthias Clasen  <mclasen@redhat.com>

	Fix for bug #321542, Benedikt Meurer:

	* gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
	Emit notify::active.

	(gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
	g_signal_emit, not g_signal_emit_by_name.
2005-11-21 14:34:52 +00:00
Matthias Clasen
e0cad47afc Add show-popup and hide-popup signals and emit them when the popup is
2005-11-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
	emit them when the popup is shown or hidden.  (#162531, Tommi
	Komulainen)
2005-11-10 21:17:19 +00:00
Matthias Clasen
7de0d97271 Don't eat Ctrl-PageUp/PageDown. (#318670, Christian Neumair)
2005-10-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
	Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
2005-10-27 04:38:55 +00:00
Matthias Clasen
463aab93dd Various cleanups. (#315360, Kjartan Maraas)
2005-09-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
2005-09-13 19:57:42 +00:00
Matthias Clasen
9a86f65818 Stylistic improvements and clarifications for some blurbs. (#315520,
2005-09-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkiconview.c (gtk_icon_view_class_init):
	* gtk/gtkfilesel.c (gtk_file_selection_class_init):
	* gtk/gtkcombobox.c (gtk_combo_box_class_init):
	* gtk/gtklabel.c (gtk_label_class_init):
	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
	Stylistic improvements and clarifications for some blurbs.
	(#315520, Clytie Siddall)
2005-09-09 16:21:15 +00:00
Matthias Clasen
94eec04267 Intern some more strings.
2005-09-01  Matthias Clasen  <mclasen@redhat.com>

        * gdk/*.c: Intern some more strings.
        * gtk/gtkintl.h:
        * gtk/*.c: Define an I_() macro and use it instead of the
        bulky g_intern_static_string().
2005-09-01 05:11:46 +00:00
Matthias Clasen
f4bbe8f0de Also intern static strings passed to g_object_set_data() 2005-08-31 17:58:55 +00:00
Matthias Clasen
c09cc89317 Intern type names in code generated by glib-mkenums, too.
2005-08-31  Matthias Clasen  <mclasen@redhat.com>

	* gdk/Makefile.am:
	* gtk/Makefile.am: Intern type names in code generated by
	glib-mkenums, too.

	* gtk/*.c:
	* gdk/x11/*.c:
	* gdk/*.c: Intern type names before registering the type to avoid
	unnecessary copies.
2005-08-31 16:53:43 +00:00
Matthias Clasen
9c002e4abc Cleanup a possible resize idle. (#311141, Robert Ögren)
2005-07-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_list_destroy): Cleanup
	a possible resize idle.  (#311141, Robert Ögren)

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_changed):
	(gtk_tree_model_sort_sort_level): Ref the level while using it,
	otherwise it may get nuked by gtk_tree_model_sort_increment_stamp.
	(gtk_tree_model_sort_row_deleted): Don't leak the root level
	here.  (#300089, James Bramford, Markku Vire)
2005-07-22 03:38:14 +00:00
Matthias Clasen
1e76488bab Remove useless calls to gtk_tree_row_reference_inserted/deleted, since we
2005-07-18  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted)
	(gtk_combo_box_model_row_inserted): Remove useless calls
	to gtk_tree_row_reference_inserted/deleted, since we
	don't use manual row references here.
2005-07-18 19:14:46 +00:00
Matthias Clasen
a8b97834de Propagate the focus-on-click value to the button. (#310543, Christian
2005-07-18  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_focus_on_click): Propagate
	the focus-on-click value to the button.  (#310543, Christian Persch)
2005-07-18 14:47:55 +00:00
Matthias Clasen
d45263d5fa Don't do explicitly ungrab pointer and keyboard. We're unmapping the grab
2005-06-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't do
	explicitly ungrab pointer and keyboard. We're unmapping
	the grab window anyway.
	(gtk_combo_box_popup): Handle grab failures.
2005-06-26 06:26:47 +00:00
Matthias Clasen
dc04c470a1 Make autoscrolling work at the bottom of the screen.
2005-05-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_list_auto_scroll): Make
	autoscrolling work at the bottom of the screen.
2005-05-26 17:26:29 +00:00
Matthias Clasen
128ccea10b Keep the popup posted if the button is released over the cellview. This
2005-05-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Keep
	the popup posted if the button is released over the cellview.
	This matches the behaviour of other combo box implementations.
	(#171378)
2005-05-17 05:41:34 +00:00
Matthias Clasen
7e832a73ce Make this work when called from gtk_combo_box_destroy(). (#172999,
2005-04-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Make this
	work when called from gtk_combo_box_destroy().  (#172999,
	Christian Persch)
2005-04-08 22:07:35 +00:00
Matthias Clasen
c825c71a66 Implement grab_focus for GtkComboBox and GtkComboBoxEntry. (#171912,
2005-04-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus):
	* gtk/gtkcombobox.c (gtk_combo_box_grab_focus): Implement
	grab_focus for GtkComboBox and GtkComboBoxEntry.  (#171912,
	Gustavo Carneiro)
2005-04-06 04:01:19 +00:00
Matthias Clasen
b82af5ce89 Make gtk_combo_box_get_active_text do the right thing for GtkComboBoxEntry
2005-04-01  Matthias Clasen  <mclasen@redhat.com>

	Make gtk_combo_box_get_active_text do the right thing for
	GtkComboBoxEntry (#171373, Robert Staudinger)

	* gtk/gtkcombobox.h: Add a get_active_text vfunc.

	* gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And
	implement it here.

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text):
	Implement get_active_text by always returning the content of
	the entry.
2005-04-01 20:53:04 +00:00
Matthias Clasen
adef99d4c2 Don't segfault if somebody tries to popup an unrealized combo box.
2005-03-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_popup): Don't
	segfault if somebody tries to popup an unrealized
	combo box.  (#172031, Felipe Heidrich)
2005-03-30 17:09:13 +00:00
Matthias Clasen
4c28ce0877 Use canonical names for g_object_notify() as well.
2005-03-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/*.c:
	* gdk/gdkdisplaymanager.c:
	Use canonical names for g_object_notify() as well.
2005-03-26 05:49:15 +00:00
Matthias Clasen
269d89c79c Define macros GTK_PARAM_READABLE, GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE
2005-03-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
	GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like
	their G_ counterparts, but also mark the name, nick
	and blurb as static.

	* gtk/*.c: Mark param spec strings as static, using
	the new macros.
2005-03-22 02:14:55 +00:00
Matthias Clasen
cca8dd6347 Make PLT-reduction work with gcc4, and don't include everything in
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.
2005-03-20 07:01:23 +00:00
Matthias Clasen
52711c24e8 More canonical property names. 2005-03-09 06:15:13 +00:00
Matthias Clasen
af12141d2d Don't leak a path here. (#168443, Morten Welinder)
2005-02-25  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Don't leak a
	path here.  (#168443, Morten Welinder)
2005-02-25 19:14:18 +00:00
Matthias Clasen
d9264f1365 Consistently use gtk_tree_row_reference_valid().
2005-02-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c: Consistently use gtk_tree_row_reference_valid().
	(gtk_combo_box_model_row_deleted): Update the displayed row in
	the cell_view.  (#167842, Gustavo Carneiro)
2005-02-24 17:57:07 +00:00
Manish Singh
a7e43ebfaf Pass gtk_widget_get_toplevel() a GTK_WIDGET.
Thu Feb 17 14:52:57 2005  Manish Singh  <yosh@gimp.org>

        * gtk/gtkcombobox.c: Pass gtk_widget_get_toplevel() a GTK_WIDGET.
2005-02-17 22:54:37 +00:00
Matthias Clasen
a0c5253c26 Fixes for #143829, Tommi Komulainen, Christian Persch:
2005-02-16  Matthias Clasen  <mclasen@redhat.com>

	Fixes for #143829, Tommi Komulainen, Christian Persch:

	* gtk/gtktreeview.c (gtk_tree_view_destroy): Remove the
	typeselect_flush_timeout when destroying the widgets
	it is operating on.
	(gtk_tree_view_ensure_interactive_directory): Add the
	popup to the window group of the toplevel it belongs to.

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget)
	(gtk_combo_box_popup): Do the same here.
2005-02-16 16:37:24 +00:00
Matthias Clasen
3a316fb562 Fix state propagation when making an insensitive combo box sensitive
2004-12-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix
	state propagation when making an insensitive combo box sensitive
	again.  (#162524, Carlos Garnacho Parro)
2004-12-30 16:15:53 +00:00
Matthias Clasen
f9403b12e3 Transfer state from the button to the cell view to get prelighting right.
2004-12-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed):
	Transfer state from the button to the cell view to get
	prelighting right.  (#156327, Ricardo Veguilla)
2004-12-24 03:44:17 +00:00
Matthias Clasen
57d366882d Pass a last item to gtk_combo_box_relayout_item. (#161050, John Finlay)
2004-12-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): Pass a
	last item to gtk_combo_box_relayout_item.  (#161050, John Finlay)
2004-12-13 04:22:07 +00:00
Matthias Clasen
731f230c24 Only wrap if we are in the topmost menu. (#160936, John Finlay)
2004-12-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level)
	(gtk_combo_box_menu_row_changed): Only wrap if we are in the
	topmost menu.  (#160936, John Finlay)
2004-12-11 05:25:02 +00:00
Matthias Clasen
4e957a8cd0 Fix a typo in the docs. (#160826, Jay Camp)
2004-12-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Fix a typo
	in the docs.  (#160826, Jay Camp)
2004-12-09 03:58:24 +00:00
Matthias Clasen
ec6454bf02 Don't call gtk_cell_view_set_cell_data() from here.
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (cell_view_is_sensitive): Don't call
	gtk_cell_view_set_cell_data() from here.

	* gtk/gtk.symbols: Remove gtk_cell_view_set_cell_data()

	* gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): Call
	gtk_cell_view_set_cell_data() from here.
	(gtk_cell_view_set_cell_data): Make static.

	* gtk/gtkcombobox.c (gtk_combo_box_menu_popup): Make menu mode
	work better when resizing the combo box.
2004-11-29 18:43:41 +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
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
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
Matthias Clasen
14ed2beff5 Jump through a few hoops to make the tooltip on the filter combo box work
2004-11-06  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilechooserdefault.c (file_pane_create): Jump through
	a few hoops to make the tooltip on the filter combo box work
	a bit better. This fixes #157273 and #157074.
2004-11-07 04:10:01 +00:00
Matthias Clasen
55a372042f Add the ComboCellInfo to the list. (#157528, Carlos Garnacho Parro)
2004-11-06  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end):
	Add the ComboCellInfo to the list.  (#157528, Carlos Garnacho
	Parro)
2004-11-06 20:16:40 +00:00
Matthias Clasen
08ef258df5 Remove this unneeded function, as it breaks state propagation.
2004-11-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_button_state_changed):
	Remove this unneeded function, as it breaks state propagation.
2004-11-05 21:20:09 +00:00
Matthias Clasen
f41c59cce3 Don't crash if the active_row reference has become invalid. (#157156,
2004-11-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_get_active): Don't crash
	if the active_row reference has become invalid.  (#157156,
	Christophe Fergeau)
2004-11-03 06:16:43 +00:00
Matthias Clasen
5675f113c8 Update the state of the cell view when the state of the button changes (to
2004-10-31  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
	state of the cell view when the state of the button changes (to
	get prelighted drawing right).  (#138650, Frances Keenan, Christian Persch)
2004-11-01 04:38:24 +00:00
Matthias Clasen
b6aa6f0fa9 Use g_signal_connect_object() to prevent premature finalization of the
2004-10-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_start_editing): Use
	g_signal_connect_object() to prevent premature finalization
	of the cell_editable while the key_press_event signal is
	handled.  (#156325, Olivier Andrieu)
2004-10-28 16:50:10 +00:00
Matthias Clasen
d966036d4d Resize the popup if a new model is set. (#154129, Bernd Damian)
2004-10-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_model): Resize the
	popup if a new model is set.  (#154129, Bernd Damian)
2004-10-05 04:37:29 +00:00
Matthias Clasen
49174ac1be Add a comment regarding cell renderers to the docs.
2004-10-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_model): Add a comment regarding
	cell renderers to the docs.
2004-10-01 19:00:47 +00:00
Matthias Clasen
f50cab885a Document the return value.
2004-09-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible):
	Document the return value.
2004-09-01 21:26:35 +00:00
Matthias Clasen
5210bf17c6 Make it compile.
2004-08-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.

2004-08-27  Matthias Clasen  <mclasen@redhat.com>

	Fix #151112, Olexiy Avramchenko:

	* gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
	* gtk/gtkiconview.c (scroll_timeout, layout_callback)
	(gtk_icon_view_item_accessible_idle_do_action):
	* gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
	(popup_idle): Protect idle callbacks and timeouts with
	GDK_THREADS_ENTER/_LEAVE.

	* gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
	call update_dialog() from an idle with the necessary protection.
2004-08-30 13:16:39 +00:00
Matthias Clasen
a15842e68e Don't crash if model is not set. Noted by Mariano Suarez-Alvarez.
Thu Aug 26 23:58:11 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't crash
	if model is not set. Noted by Mariano Suarez-Alvarez.
2004-08-27 03:59:05 +00:00
Matthias Clasen
e4e4aca0fc Fix #150125:
Mon Aug 16 01:35:25 2004  Matthias Clasen  <maclas@gmx.de>

	Fix #150125:

	* gtk/gtkcombobox.[hc]: Add a ::focus-on-click property and
	change the default behaviour to focus on click.

	* gtk/gtkbutton.c (gtk_button_set_focus_on_click): Typo fix.
2004-08-16 05:43:50 +00:00
Matthias Clasen
95239fca67 Remove leftover debugging output 2004-08-13 17:03:13 +00:00
Matthias Clasen
c92d4d6786 Make re-sensitivation work in menu mode.
2004-08-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c: Make re-sensitivation work
	in menu mode.
2004-08-13 16:50:32 +00:00
Matthias Clasen
fa966c6aa7 Fix #149547, Markus Lausser:
Thu Aug 12 23:52:12 2004  Matthias Clasen  <maclas@gmx.de>

	Fix #149547, Markus Lausser:

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate):
	* gtk/gtkcombobox.c (gtk_combo_box_size_request): Don't
	crash if size_request or size_allocate are called early.

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Protect
	against being allocated too small.
2004-08-13 04:00:29 +00:00
Matthias Clasen
3612aee585 Add hidden aliases for exported symbols which are used internally in order
Mon Aug  9 12:48:04 2004  Matthias Clasen  <maclas@gmx.de>

	Add hidden aliases for exported symbols which are
	used internally in order to get rid of many PLT
	entries.  (#145519, Arjan van de Ven)

	* gtk/Makefile.am: Add rules to generate gtk.def and
	from gtk.symbols, and make make check check the abi
	with abicheck.sh.
	(gtk_private_h_sources): Add gtkinternals.h
	(gtk_built_private_headers): Add gtkalias.h
	(gtk_extra_sources): Add gtk.symbols
	(EXTRA_DIST): Add makegtkalias.pl and abicheck.sh

	* gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
	The file can be processed by cpp to filter out certain
	subsets of symbols.

	* gtk/abicheck.sh: New file. Script to check the actually
	symbols exported from libgtk-x11.2.0.so against the symbols
	found in gtk.symbols.

	* gtk/makegtkalias.pl: New file. Perl script to generate the
	header containing the alias definitions for internally used
	exported symbols from a list of symbols.

	* gtk/gtkinternals.h: New file. An uninstalled header listing
	symbols which must be exported for some reason and do not appear
	in any other header.

	* gtk/*.c: Include gtkalias.h
2004-08-09 16:59:53 +00:00
Matthias Clasen
0c42eed2de Ref and sink the column. (gtk_combo_box_menu_destroy): Unref the column.
Sun Aug  8 23:36:55 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Ref
	and sink the column.
	(gtk_combo_box_menu_destroy): Unref the column.

Sun Aug  8 23:35:00 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkdnd.c (gtk_drag_source_add_text_targets):
	(gtk_drag_dest_add_text_targets): Don't leak a reference
	to the target list.
2004-08-09 03:39:06 +00:00
Matthias Clasen
b04a72a5d8 Don't stumble over separators which are not backed by model rows.
Sun Aug  8 22:52:26 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (find_menu_by_path): Don't stumble over
	separators which are not backed by model rows.
2004-08-09 02:53:31 +00:00
Matthias Clasen
0528aeae3a Oops. 2004-08-09 02:46:46 +00:00
Matthias Clasen
c1af2aa6b2 Don't leak the path.
Sun Aug  8 11:01:23 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_active): Don't leak
	the path.
2004-08-09 02:45:18 +00:00
Matthias Clasen
f82ca65b81 Use GtkTreeViewRowSeparatorFunc instead of GtkCellRendererSepText.
Sat Aug  7 18:19:03 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilechooserdefault.c (save_folder_combo_create):
	(shortcuts_list_create): Use GtkTreeViewRowSeparatorFunc
	instead of GtkCellRendererSepText.  (#147864)

	* gtk/gtkcellrendererseptext.[hc]: Removed.

	* gtk/Makefile.am: Remove gtkcellrendererseptext.[hc]

Sat Aug  7 18:15:15 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_row_deleted):
	(gtk_combo_box_menu_row_inserted):
	(gtk_combo_box_menu_row_changed): Correctly handle
	insertion and deletion of separators in menu mode.
2004-08-07 22:21:25 +00:00
Matthias Clasen
5829010c64 Remove accidentally committed debug code.
Tue Aug  3 14:29:49 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_fill): Remove
	accidentally committed debug code.
2004-08-03 18:30:53 +00:00
Matthias Clasen
2cd7feb3b9 Optimize for the case that row_column and col_column are unset. (#148868,
Tue Aug  3 01:19:12 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_relayout_item): Optimize
	for the case that row_column and col_column are unset.
	(#148868, Lorenzo Gil Sánchez)
2004-08-03 05:22:21 +00:00
Matthias Clasen
7d2758aa52 Rework the combo box to handle tree models. (#139582, Matt Walton)
2004-08-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c: Rework the combo box to handle
	tree models.  (#139582, Matt Walton)
2004-08-02 19:15:05 +00:00
Matthias Clasen
f56daaf167 *** empty log message *** 2004-07-30 22:55:28 +00:00
Matthias Clasen
1f93c4359c Change the api for separators to use a separator function instead of a
2004-07-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c: Change the api for separators to use a
	separator function instead of a boolean column.

	* tests/testcombo.c: Update to match the api change.
2004-07-30 20:55:17 +00:00
Matthias Clasen
6eca20f5c4 New function necessary to make GtkComboBox accessible. (#132847, Padraig
2004-07-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): New
	function necessary to make GtkComboBox accessible.  (#132847,
	Padraig O'Briain)
2004-07-27 16:37:37 +00:00
Matthias Clasen
9ccad0c92a Make the GtkComboBox in list mode scroll if the list is too large to fit
Mon Jul 26 00:38:27 2004  Matthias Clasen  <maclas@gmx.de>

	Make the GtkComboBox in list mode scroll if the list is too
	large to fit in the popup.  (#135543)

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add a
	scrolled window to the popup in list mode.
	(gtk_combo_box_list_position): Calculate the height of the
	popup so that it fits on the screen, set the scrollbar policy
	of the scrolled window appropriately.
	(gtk_combo_box_popup): Use the height calculated by
	gtk_combo_box_list_position().
	(gtk_combo_box_remeasure): Don't add unnecessary padding.
	(gtk_combo_box_size_request): But add the focus with here.
	(gtk_combo_box_list_setup): Connect to enter notify on the
	popup window to activate auto scrolling.
	(gtk_combo_box_list_enter_notify): Activate auto scrolling.
	(gtk_combo_box_list_button_pressed): Setup a timeout for
	auto scrolling.
	(gtk_combo_box_list_scroll_timeout): Timeout function for
	auto scrolling.
	(gtk_combo_box_list_auto_scroll): Scroll the list when the
	pointer leaves the window.
2004-07-26 04:50:07 +00:00
Matthias Clasen
8912c654ef Avoid compiler warnings. 2004-07-22 05:16:58 +00:00
Matthias Clasen
b23415ee8b Don't leak the list store. (#148135, Crispin Flowerday)
Wed Jul 21 22:54:33 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new_text):
	Don't leak the list store.  (#148135, Crispin Flowerday)
2004-07-22 03:00:48 +00:00
Matthias Clasen
3d484599d8 Don't leak the list store. (#148134, Crispin Flowerday)
* gtk/gtkcombobox.c (gtk_combo_box_new_text): Don't leak the
	list store.  (#148134, Crispin Flowerday)
2004-07-22 02:48:11 +00:00
Matthias Clasen
79ace2b389 Don't leak the menu. (#148110, Tommi Komulainen)
Wed Jul 21 22:35:47 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcellview.c (gtk_cell_view_finalize): Don't leak the
	menu.  (#148110, Tommi Komulainen)
2004-07-22 02:36:54 +00:00
Matthias Clasen
fe842a5496 Make GtkCellView public, since people seem to have uses for it, it is
2004-07-19  Matthias Clasen  <mclasen@redhat.com>

	Make GtkCellView public, since people seem to have uses for it,
	it is clean API and we were just conservative in not making it
	public initially. At the same time, get rid of GtkCellViewMenuItem,
	which doesn't have any function which can't be served by a
	GtkMenuItem with a GtkCellView child.

	* gtk/gtk.h: Include gtkcellview.h

	* gtk/Makefile.am (gtk_public_h_sources):

	* gtk/Makefile.am (gtk_private_h_sources):
	(gtk_c_sources): Remove gtkcellviewmenuitem.[hc]
	* gtk/gtkcombobox.c: Replace all uses of GtkCellViewMenuItem by
	GtkMenuItem with a GtkCellView child.

	* gtk/gtkcellviewmenuitem.[hc]: Removed.
2004-07-19 19:07:27 +00:00
Soeren Sandmann
1952300896 Create an empty target list if targets is NULL.
Sun Jul 18 15:28:24 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkdnd.c (gtk_drag_source_set, gtk_drag_dest_set): Create an
	empty target list if targets is NULL.

	* configure.in: Add check for X11/extensions/sync.h. (#147416,
	Morten Welinder)
2004-07-18 15:14:05 +00:00
Matthias Clasen
1d45cbd831 Make scrolling work if no item is selected. (gtk_cell_editable_key_press):
2004-07-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_scroll_event): Make
	scrolling work if no item is selected.
	(gtk_cell_editable_key_press): Don't eat space.
2004-07-16 21:13:21 +00:00
Matthias Clasen
c0af1c1aaa Add a combo box cell renderer. 2004-07-16 20:27:40 +00:00
Matthias Clasen
d8df361813 Don't iterate multiple times over some of the children.
2004-07-16  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_forall): Don't iterate
	multiple times over some of the children.
2004-07-16 14:33:21 +00:00
Matthias Clasen
20efb51b01 Ugh, another compile error. 2004-07-13 14:50:11 +00:00
Matthias Clasen
dcffb53f0a Don't crash if unrealized.
2004-07-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't
	crash if unrealized.
2004-07-13 13:54:13 +00:00
Matthias Clasen
4a6f874558 Forgotten file. 2004-07-12 16:15:55 +00:00
Matthias Clasen
1aa00e5215 Support separators in combo boxes and more generally in tree views
2004-07-07  Matthias Clasen  <mclasen@redhat.com>

	Support separators in combo boxes and more generally in tree
	views  (#135873):

	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c (gtk_combo_box_get_row_separator_column):
	* gtk/gtkcombobox.c (gtk_combo_box_set_row_separator_column):
	Add a ::row-separator-column property with getter and setter,
	which can indicate a boolean model column to determine which
	rows are separators.

	* gtk/gtkcombobox.c: Display separator rows as separator menu
	items in menu mode, and by using the new treeview separator
	functionality in list mode.

	* gtk/gtktreeview.h:
	* gtk/gtktreeview.c (gtk_tree_view_get_row_separator_func):
	* gtk/gtktreeview.c (gtk_tree_view_set_row_separator_func):
	Add a callback to determine whether a row is a separator.

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose):
	* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
	* gtk/gtktreeview.c (validate_row): Use the new callback
	to determine whether a row is a separator, and draw it
	as a separator then. Since separators should take up less
	vertical space than regular rows, this requires removing
	the redundant MAX(...,expander_size) calls which appear in
	many places. Instead, the MAX() is now only done in
	validate_row(), and only if the row is not a separator.
	To catch possible side effects of this intrusive change,
	I have left EXPANDER_MAX() calls in place of the MAX() calls
	which will emit a warning if something breaks. They should
	be removed before 2.6.

	* gtk/gtktreeselection.c (row_is_selectable): Don't let
	separator rows be selected.

	* tests/testcombo.c (create_blaat): Add a separator column.
2004-07-07 15:15:35 +00:00
Matthias Clasen
6a9e67331f Unset the displayed row when unsetting the model. (#138560, Christian
Fri Jul  2 23:34:33 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_unset_model): Unset the displayed
	row when unsetting the model.  (#138560, Christian Persch)
2004-07-03 03:37:44 +00:00
Matthias Clasen
e1a243138a Reflect the last change in the docs.
Sat Jun 26 00:04:36 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_set_model):
	* gtk/gtkcombobox.c (gtk_combo_box_set_model): Reflect the
	last change in the docs.
2004-06-26 04:05:25 +00:00
Matthias Clasen
57e15782ff Allow passing NULL to unset the model. (#137211, patch by Mariano
Fri Jun 25 23:35:42 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_set_model):
	* gtk/gtkcombobox.c (gtk_combo_box_set_model): Allow passing
	NULL to unset the model.  (#137211, patch by  Mariano Suárez-Alvarez)

Fri Jun 25 23:33:05 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Fix the
	placement policy for GtkComboBoxEntry to be: if it fits below,
	place below, if it fits above place above, else place in the
	larger space and scroll so that the scroll arrow appear at the
	far end.  (#144362, David A. Knight)
2004-06-26 03:39:35 +00:00
Matthias Clasen
3d8b7d14db Make GtkComboBox work without model. (#144198, Mariano Suárez-Alvarez)
Tue Jun 15 01:10:32 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: Make GtkComboBox work without model.
	(#144198, Mariano Suárez-Alvarez)
2004-06-15 05:12:27 +00:00
Matthias Clasen
8eade402cc Handle priv->model being NULL. (#143856, Mariano Suárez-Alvarez)
Mon Jun  7 23:07:40 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_remeasure): Handle
	priv->model being NULL.  (#143856, Mariano Suárez-Alvarez)
2004-06-08 03:14:58 +00:00
Matthias Clasen
4d33f2c956 Fix the al lowed values and default value for the ::active property.
Thu Jun  3 20:51:23 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init): Fix the al lowed
	values and default value for the ::active property.  (#143669,
	Olivier Andrieu)
2004-06-04 00:57:03 +00:00
Matthias Clasen
d5f3cb1409 Rename function parameters from index to index_ to prevent clash with BSD
Tue Jun  1 23:14:46 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktoolbar.h:
	* gtk/gtktoolbar.c:
	* gtk/gtkentrycompletion.h:
	* gtk/gtkentrycompletion.c:
	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c: Rename function parameters from
	index to index_ to prevent clash with BSD index().  (#143001)
2004-06-02 03:16:03 +00:00
Jonathan Blandford
d61e4f7440 only remove the signal if the box exists.
Thu May 27 00:07:47 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): only remove the
        signal if the box exists.
2004-05-27 04:08:26 +00:00
Matthias Clasen
310fd268e7 Support insensitive cells in tree views and combo boxes. 2004-05-27 03:31:17 +00:00
Michael Natterer
a2bd3c74be don't allocate the popup smaller than the combobox. Fixes bug #59660.
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* gtk/gtkcombobox.c (gtk_combo_box_popup)
	(gtk_combo_box_menu_button_press): don't allocate the popup
	smaller than the combobox. Fixes bug #59660.
2004-05-11 19:15:56 +00:00
Matthias Clasen
4c2dd05c96 Use GTK_SELECTION_BROWSE.
2004-05-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use
	GTK_SELECTION_BROWSE.

	* gtk/gtktreeview.c: Make hover selection work for
	GTK_SELECTION_BROWSE as well.
2004-05-11 13:44:09 +00:00
Matthias Clasen
8dbc511070 If we don't do the move-selected-item below pointer thingie, do the
2004-05-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): If we don't
	do the move-selected-item below pointer thingie, do the
	place-below-or-above one.
2004-05-10 18:17:47 +00:00
Matthias Clasen
b301315706 Use hover selection mode. (#127648, Dave Bordoley)
2004-05-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init):
	* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use hover selection
	mode.  (#127648, Dave Bordoley)

	* gtk/gtktreeview.h:
	* gtk/gtktreeview.c: Add a new property "hover_selection", which
	when TRUE makes the selection follow the mouse. Also add setter
	and getter for the fixed_height property.
2004-05-10 17:15:14 +00:00
Matthias Clasen
7ca922ac15 Make sure the menu pops up as wide as the combobox. (#59660, Havoc
2004-05-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_popup)
	(gtk_combo_box_menu_button_press): Make sure the menu pops up
	as wide as the combobox.  (#59660, Havoc Pennington)
2004-05-10 15:44:48 +00:00
Matthias Clasen
09052bc468 Support tearoffable combo boxes (in menu mode). Add a new property,
2004-05-10  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c: Support tearoffable combo boxes (in menu
	mode). Add a new property, add-tearoffs, for this.  (#135956)
2004-05-10 14:07:35 +00:00
Matthias Clasen
b971146da7 In list mode, accept the same mouse/wheel bindings on the cellview as on
Sun May  9 01:57:17 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_button_released):
	In list mode, accept the same mouse/wheel bindings on
	the cellview as on the button.  (#136967)
2004-05-09 06:01:57 +00:00
Hans Breuer
805abff3cf finally also create the correct mask for 'pseudo mime' icons
2004-05-08  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfilesystemwin32.c (extract_icon) : finally also
	create the correct mask for 'pseudo mime' icons

	* gdk/win32/gdkwindow-win32.c(show_window_internal) : also
	take focus_on_map into account

	* gtk/gtkselection.c : g_message() only with DEBUG_SELECTION

	* gtk/gtkactiongroup.c gtk/gtkcombobox.c :
	... must return a value

	* gdk/gdk.def gtk/gtk.def demos/gtk-demo/makefile.msc.in : updated
2004-05-08 16:25:15 +00:00
Matthias Clasen
ebfab36967 Reverse accidental commit. 2004-05-06 20:14:46 +00:00
Matthias Clasen
3d01ab5f5a Add missing getters for readwrite properies. (#135649)
Thu May  6 00:02:21 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_get_wrap_width):
	(gtk_combo_box_get_row_span_column):
	(gtk_combo_box_get_column_span_column): Add missing getters
	for readwrite properies. (#135649)
2004-05-06 04:06:35 +00:00
Matthias Clasen
56b202f461 Add gtk_combo_box_get_active_text() convenience function. (#136372,
Wed May  5 23:42:42 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c (gtk_combo_box_get_active_text):
	Add gtk_combo_box_get_active_text() convenience
	function. (#136372, Christian Neumeir, patch by Olivier Andrieu)
2004-05-06 03:49:15 +00:00
Matthias Clasen
a1fd4e4bac Make all style properties readonly.
2004-04-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c:
	* gtk/gtkwidget.c:
	Make all style properties readonly.
2004-04-14 21:34:29 +00:00
Matthias Clasen
b18a684f28 Make the arrow and separator regular children of an hbox inside the
2004-04-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c: Make the arrow and separator regular
	children of an hbox inside the button, and propagate state
	changes from the button to the cell view.  (part of the fix
	for #138650, should also fix #137535)

	* gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT
	state to gtk_cell_renderer_render() when prelighted. (part
	of the fix for #138650)

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
	Use PRELIGHT state when appropriate.  (part of the fix for
	#138650)
2004-04-14 20:26:26 +00:00
Matthias Clasen
5dc40ee3b4 Don't spit out warnings if called before the combo box is realized.
2004-04-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit
	out warnings if called before the combo box is
	realized.  (#139742, Philip Langdale)
2004-04-14 13:53:57 +00:00
Matthias Clasen
db6f9f3e56 Don't unref model if it is NULL. (#139770)
2004-04-12  Matthias Clasen  <mclasen@dhcp64-228.boston.redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref
	model if it is NULL. (#139770)
2004-04-12 20:06:52 +00:00
Hans Breuer
e8a4c8442d gtk/gtkcombobox.c : prototype cell_view_sync_cells() before first usage
2004-03-14  Hans Breuer  <hans@breuer.org>

	gtk/gtkcombobox.c : prototype cell_view_sync_cells() before
	first usage

	gtk/makefile.msc.in : updated 'gtk_public_h_sources'

	tests/makefile.msc : added testspinbutton
2004-03-14 16:02:33 +00:00
Matthias Clasen
74fd8a025d Pop down the list when an item is selected via the keyboard.
Sat Mar 13 21:37:44 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_key_press): Pop down the
	list when an item is selected via the keyboard.
2004-03-13 20:33:45 +00:00
Matthias Clasen
3186b9e76b Add a remove implemenatation which restores the cell_view when the custom
Sat Mar 13 01:38:55 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_remove): Add a remove
	implemenatation which restores the cell_view when the custom
	child is removed.  (#136555, Owen Taylor)
2004-03-13 00:36:27 +00:00
Matthias Clasen
83130a7a73 Place grid mode popups left aligned, not right aligned.
Wed Mar 10 01:21:05 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Place
	grid mode popups left aligned, not right aligned.
2004-03-10 00:20:19 +00:00
Owen Taylor
5ac8b12808 Don't call g_signal_handler_disonnect() if priv->model is NULL. (#136551,
Mon Mar  8 11:57:27 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't
        call g_signal_handler_disonnect() if priv->model is
        NULL. (#136551, Damon Chaplin)

        * gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
        Back out code to set the active item when the first
        item is added to the model; this causes problems for
        GtkComboBoxText. (#136535)

        * gtk/gtkcombobox.c (gtk_combo_box_menu_destroy)
        * gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
        * gtk/gtkcombobox.c (gtk_combo_box_list_setup):
        * gtk/gtkcombobox.c (gtk_combo_box_menu_setup):
        Remove calls to gtk_combo_box_unset_model.

        * gtk/gtkcombobox.c (gtk_combo_box_check_appearance):
        Clean up handling of wrap->width > 0.

        * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't
        switch list/menu mode here.

        * gtk/gtkcombobox.c (gtk_combo_box_set_model): Protect
        against the same model being set back.

        * gtk/gtkcombobox.c (gtk_combo_box_relayout): Call
        gtk_combo_box_menu_fill() rather than duplicating
        a large chunk of code.
2004-03-08 18:39:44 +00:00
Matthias Clasen
6d34fb26c3 Do a size_request on the button and cell_view_frame, otherwise their style
Sun Mar  7 02:38:00 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_size_request): Do a
	size_request on the button and cell_view_frame, otherwise
	their style will still be the default here in the initial
	size_request. (#136301, Mark McLoughlin)
2004-03-07 01:37:06 +00:00
Federico Mena Quintero
80581c3011 Fixes #136082 and #135265, patch by Morten Welinder.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

	Fixes #136082 and #135265, patch by Morten Welinder.

	* configure.in: Use AC_SYS_LARGEFILE.

	* */*.c: #include <config.h>
2004-03-06 03:38:59 +00:00
Matthias Clasen
1810dba338 Connect to key_press_event and handle Alt-Down/Alt-Up to show or hide the
Fri Mar  5 00:05:59 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_setup):
	* gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Connect to
	key_press_event and handle Alt-Down/Alt-Up to show or hide the
	list popup. Also handle Down/Up/PageDown/PageUp/Home/End and
	make them change the active item without popping up the list.
	These keybindings are inherited from GtkCombo.

Thu Mar  4 23:15:58 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position): Initially
	select the active item when using optionmenu-like positioning.
2004-03-04 23:35:31 +00:00
Matthias Clasen
f855ea2ded In list mode, set the background color of the cell view to the base color
Thu Mar  4 21:45:43 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: In list mode, set the background color
	of the cell view to the base color of the style, instead of
	hardwiring white. (#136158)
2004-03-04 20:43:41 +00:00
Matthias Clasen
19369fea75 Move the actual implementation into a new
Wed Mar  3 23:28:48 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_active): Move the actual
	implementation into a new gtk_combo_box_set_active_internal()
	function, which doesn't do the short-circuiting.
	* gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted): Use
	set_active_internal() here, since the active item may change here,
	although the index is unchanged.

Wed Mar  3 23:26:49 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position): Reintroduce the
	traditional option menu placement of the popup for regular combo
	boxes. Grids and editable combo boxes use the combo-like placement
	below the entry.  (#136021)
	* gtk/gtkcombobox.c (gtk_combo_box_menu_button_press):
	* gtk/gtkcombobox.c (gtk_combo_box_popup): Call gtk_menu_set_active()
	before popping up the menu, to make the placement work.
2004-03-03 22:30:36 +00:00
Owen Taylor
d0f6b48199 gtk/gtktreestore.c (gtk_tree_store_reorder) Fix up the interpretation of
Tue Mar  2 16:18:43 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktreestore.c (gtk_tree_store_reorder)
        * gtk/gtkliststore.c (gtk_list_store_reorder): Fix
        up the interpretation of new_order to match what
        it means elsewhere, document the meaning of new_order.

        * gtk/gtkcombobox.c (gtk_combo_box_model_rows_reordered):
        Fix interpretation of new_order.

        * tests/testcombochange.c (on_reorder): Fix interpretation
        of new_order.

        * tests/testcombochange.c (on_reorder): Fix hitting
        "reorder" with an empty list.
2004-03-02 21:34:19 +00:00
Owen Taylor
f05cb42db9 If the model was empty before, select the first inserted item.
Tue Mar  2 14:38:23 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
        If the model was empty before, select the first inserted
        item.

        * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted):
        Fix up the logic for the new row to select.

        * gtk/gtkcombobox.c (gtk_combo_box_class_init):
        Rename "appearance" property to "appears-as-list".

        * tests/testcombochange.c tests/Makefile.am: Test case
        for combos and dynamically changing models.
2004-03-02 20:42:14 +00:00
Owen Taylor
1d64b55539 Always connect to the changed signals on the model, update the active item
Tue Mar  2 11:45:50 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcombobox.c: Always connect to the changed
        signals on the model, update the active item as
        appropriate when rows are inserted/deleted/reordered,
        re-layout the menu on ::rows-reordered.

        * gtk/gtkcellview.c (gtk_cell_view_set_displayed_row):
        Allow %NULL for path to unset and leave no current
        path.
2004-03-02 18:56:10 +00:00
Matthias Clasen
de011a6d9c Position the popup above the sample if there is not enough room below.
Tue Mar  2 19:54:53 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_position): Position
	the popup above the sample if there is not enough room below.
	Part of #135543.

Tue Mar  2 19:53:36 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make the
	frame for the list mode etched in, to give the popup a slightly
	less flat appearance.

Tue Mar  2 17:55:31 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk.def: Add gtk_combo_box_entry_new_text().
2004-03-02 18:53:55 +00:00
Matthias Clasen
30ceef6d77 New function which calculates position and size for the popup in list
Sun Feb 29 02:34:35 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_position): New
	function which calculates position and size for the popup in
	list mode. Currently it only pushes the popup horizontally
	into the screen.
2004-02-29 01:33:01 +00:00
Matthias Clasen
569f248225 Implement the previous fix in a better way, small cleanups.
Sun Feb 29 01:10:09 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: Implement the previous fix in a better way,
	small cleanups.
2004-02-29 00:08:04 +00:00
Matthias Clasen
dabbac1151 Actually resize the popup window before popping up. (#135651)
Sat Feb 28 23:30:36 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_popup): Actually resize the
	popup window before popping up.  (#135651)

Sat Feb 28 23:29:35 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_class_init):
	* gtk/gtkcombobox.c (gtk_combo_box_init): Override the default
	handler for style_set in class_init instead of connecting to
	the signal in init. (noticed by Yosh).
2004-02-28 22:28:37 +00:00
Matthias Clasen
fe3e1c95fa Support switching back to non-gridded mode. (#135169)
Sat Feb 28 01:39:01 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Support
	switching back to non-gridded mode.  (#135169)

Fri Feb 27 22:29:46 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwidget.c (gtk_widget_can_activate_accel): Add "Since: 2.4".
2004-02-28 00:40:00 +00:00
Matthias Clasen
cc7c7d2263 Simplify, only create a new setup if appearance actually changed.
Fri Feb 27 21:42:28 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_relayout):
	* gtk/gtkcombobox.c (gtk_combo_box_style_set): Simplify, only
	create a new setup if appearance actually changed.
	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear):
	* gtk/gtkcombobox.c (gtk_combo_box_get_cell_info): Make
	these more robust.  (#127623, Damon Chaplin)
2004-02-27 20:41:14 +00:00
Manish Singh
496247e083 Add function declaration for gtk_combo_box_list_remove_grabs().
Thu Feb 26 17:38:40 2004  Manish Singh  <yosh@gimp.org>

        * gtk/gtkcombobox.c: Add function declaration for
        gtk_combo_box_list_remove_grabs().
2004-02-27 01:38:16 +00:00
Matthias Clasen
c4d2bb0a98 Classifiy Page Up/Down as cursor move, but not Home and End.
Fri Feb 27 02:33:21 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (keyval_is_cursor_move): Classifiy Page Up/Down as
	cursor move, but not Home and End.

	* gtk/gtkentry.c (gtk_entry_completion_key_press): Lets Page Up/Down
	jump to the ends of the list, not Home and End - since we're not
	scrolling yet, a "page" is always the complete list.  (#127430, Marco
	Pesenti Gritti)

Fri Feb 27 00:39:11 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
	* gtk/gtkcombobox.c (gtk_combo_box_menu_destroy): Don't let
	the priv pointers dangle.  (#127623, Damon Chaplin)
2004-02-27 01:34:11 +00:00
Matthias Clasen
061b9024ed Fixes for #135333, analysed by Damon Chaplin:
Thu Feb 26 23:39:07 2004  Matthias Clasen  <maclas@gmx.de>

	Fixes for #135333, analysed by Damon Chaplin:

	* gtk/gtkcombobox.c (gtk_combo_box_list_button_pressed): Don't
	grab here.
	* gtk/gtkcombobox.c (gtk_combo_box_popup): Do the grabs here,
	so that we don't forget to grab when the menu is popped via
	keynav.
	* gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Don't
	ungrab here.
	* gtk/gtkcombobox.c (gtk_combo_box_popdown): Do the ungrabs here.
2004-02-26 22:40:12 +00:00
Matthias Clasen
1637a9c55b New convenience API to construct simple text combos, implemented by Damon
Thu Feb 26 22:20:44 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcomboboxentry.h:
	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new_text): New
	convenience API to construct simple text combos, implemented by
	Damon Chaplin.

	* tests/testcombo.c: Use gtk_combo_box_entry_new_text.
2004-02-26 21:40:09 +00:00
Matthias Clasen
2b7b833e04 Fixes for #12804 and #134722, Damon Chaplin:
Thu Feb 26 21:52:58 2004  Matthias Clasen  <maclas@gmx.de>

	Fixes for #12804 and #134722, Damon Chaplin:

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end):
	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_start):
	Ref and sink the cell renderers here.

	* gtk/gtkcombobox.c (gtk_combo_box_finalize): Unref the cell
	renderers here, and free attributes and func_data.
2004-02-26 20:51:02 +00:00
Matthias Clasen
4e678022e5 Don't resize priv->cell_view if it is NULL. (#127804, Damon Chaplin)
Wed Feb 25 00:13:24 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed):
	* gtk/gtkcombobox.c (gtk_combo_box_list_row_changed):
	Don't resize priv->cell_view if it is NULL.  (#127804,
	Damon Chaplin)

Wed Feb 25 00:06:50 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: Add a comment about the different
	modi of this widget. Get rid of priv->hbox, and some other
	cleanups. Make sure that gtk_combo_box_unset_model() is
	always called before setting up a different mode.
2004-02-24 23:12:57 +00:00
Matthias Clasen
6ad1c89964 Add a destroy implementation in order to set priv->cell_view to NULL
Tue Feb 24 01:08:27 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: Add a destroy implementation in order to
	set priv->cell_view to NULL before finalize stumbles over the
	dangling pointer. This big array of pointers into the widget
	tree in GtkComboBoxPrivate is really fragile and should be
	cleaned up.
2004-02-24 00:07:15 +00:00
Matthias Clasen
4a9fac1773 Fix the allocation for the toggle button so that it actually shows up in
Mon Feb 23 02:26:15 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Fix the
	allocation for the toggle button so that it actually shows up
	in LTR list mode.

	* gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column):
	* gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column):
	* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add
	notification, and avoid excessive relayouting.
2004-02-23 01:23:27 +00:00
Matthias Clasen
f43b831398 Add notification, and avoid excessive relayouting.
Mon Feb 23 01:56:09 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column):
	* gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column):
	* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add
	notification, and avoid excessive relayouting.
2004-02-23 00:53:05 +00:00
Matthias Clasen
2cc8cfa0ea Split declaration and assignment of combo_box.
Mon Feb 16 00:04:46 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_*):
	Split declaration and assignment of combo_box.

	* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Remove a
	pointless cast
2004-02-15 23:05:48 +00:00
Matthias Clasen
0cd208cfee Remove arbitrary low upper limits on the xpad, ypad, width and height
Wed Feb 11 02:06:38 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Remove
	arbitrary low upper limits on the xpad, ypad, width and height
	properties.  (#129696, John Ellis)

Wed Feb 11 01:24:20 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes):
	Ugh. Don't try to free ints, even if they're stored in pointers.
	(#133997, Morten Welinder)
2004-02-11 01:09:25 +00:00
Manish Singh
4ac3998efb Add appropriate type casts for the gtk_window_set_screen() call.
Sun Feb  8 01:28:02 2004  Manish Singh  <yosh@gimp.org>

        * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add appropriate
        type casts for the gtk_window_set_screen() call.
2004-02-08 09:29:11 +00:00
Matthias Clasen
41e49106e3 Make popups come up on the same screen as the combo box. (#133544, Morten
Sun Feb  8 01:44:06 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make popups
	come up on the same screen as the combo box.  (#133544,
	Morten Welinder)
2004-02-08 00:42:59 +00:00
Matthias Clasen
738eeba8d6 Actually free the lists. Pointed out by Morten Welinder.
Fri Feb  6 23:08:29 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextbtree.c (_gtk_text_btree_check):
	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes):
	* gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes):
	Actually free the lists. Pointed out by Morten Welinder.
2004-02-06 22:25:01 +00:00
Matthias Clasen
3b15c8b232 Add a finalize function to plug a few memory leaks. (#133544, Morten
Fri Feb  6 00:45:16 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_finalize): Add a finalize
	function to plug a few memory leaks.  (#133544, Morten Welinder)
2004-02-05 23:45:21 +00:00
Matthias Clasen
5cc85a5a63 Support mnemonic_activate here as well.
Fri Feb  6 00:15:38 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_mnemonic_activate):
	Support mnemonic_activate here as well.

	* gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Focus
	the button, not the tree_view.
2004-02-05 23:14:37 +00:00
Matthias Clasen
ee6d7bb5a4 Add this function, to make mnemonic_activate work for combo boxes.
Thu Feb  5 23:48:19 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Add this
	function, to make mnemonic_activate work for combo boxes.
	(#133443, Paolo Borelli)
2004-02-05 22:46:22 +00:00
Matthias Clasen
593806e0de Fix the logic of the depth one check. (#133488, Christian Persch)
Thu Feb  5 21:36:43 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): Fix the logic
	of the depth one check.  (#133488, Christian Persch)
2004-02-05 20:35:57 +00:00
Matthias Clasen
07d4d314b6 The first part of the fix for #114351 (see also gdk-pixbuf/ChangeLog and
Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>

	The first part of the fix for #114351 (see also
	gdk-pixbuf/ChangeLog and po/ChangeLog):

	* gtk/gtkintl.h:
	* gdk-pixbuf/gdk-pixbuf-i18n.h:
	* gdk/gdkintl.h: Define P_() for property blurbs and nicks.

	* gdk/gdkdisplaymanager.c:
	* gdk-pixbuf/gdk-pixbuf.c:
	* modules/input/gtkimcontextxim.c:
	* gtk/*.c:  Mark property blurbs and nicks with P_().

	* po/Makefile.in.in: Add --keyword=P_ to the xgettext
	invocation, since property blurbs and nicks are
	now marked with P_().
2004-01-16 23:10:05 +00:00
Matthias Clasen
6a6455d7e3 Fix memory leaks caused by the failure to free the result of
Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (update_node):
	(update_smart_separators):
	(_gtk_menu_is_empty):
	(find_menu_position):
	* gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy):
	* gtk/gtkcombobox.c (gtk_combo_box_relayout_item):
	(gtk_combo_box_relayout): Fix memory leaks caused by the
	failure to free the result of gtk_container_get_children().
	(#127576, Yao Zhang)
2003-12-21 22:28:14 +00:00
Kristian Rietveld
2f4326e406 Fixes #108458.
Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes #108458.

	* gtk/gtkcelllayout.[ch]: added a reorder method.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
	(gtk_tree_view_column_cell_layout_reorder): implement reorder.

	* gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
	(gtk_cell_view_cell_layout_reorder): ditto.

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
	(gtk_combo_box_cell_layout_reorder): ditto.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
	(gtk_entry_completion_reorder): ditto.
2003-12-19 22:47:20 +00:00
Kristian Rietveld
375ccb28b3 Combo box flipping support.
Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>

	Combo box flipping support.

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position),
	(gtk_combo_box_size_allocate): support RTL flipping (#126518,
	patch from Matthias Clasen),
	(gtk_combo_box_popup): fix popup window alignment if there's a
	cell view frame visible (#126518, patch from Semion Chichelnitsky).

	* gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
	(#128348, patch from Semion Chichelnitsky).
2003-12-12 20:08:58 +00:00
Kristian Rietveld
6438147763 move function to a somewhat more logical place,
Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
	to a somewhat more logical place,
	(gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
2003-11-19 22:26:42 +00:00
Kristian Rietveld
e9154691d1 Fixes based on comments from Owen Taylor, #125264.
Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes based on comments from Owen Taylor, #125264.

	* gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
	variable,
	(gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
	a resize,
	(gtk_cell_view_get_size_of_row): new function,
	(gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
	(gtk_cell_view_set_values), (gtk_cell_view_set_model),
	(gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
	s/cellview/cell_view/ in the function definitions, so they match
	with the header file.

	* gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
	flag again (:, and use gtk_cell_view_get_size_of_row instead of
	the measurer, remove _set_size_request call,
	(gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
	instead of the measurer,
	(gtk_combo_box_style_set): queue a resize,
	(gtk_combo_box_size_request): update of _remeasure call,
	(gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
	(gtk_combo_box_cell_layout_pack_end),
	(gtk_combo_box_cell_layout_clear),
	(gtk_combo_box_set_model): get rid of the measurer,
	(gtk_combo_box_cell_layout_add_attribute),
	(gtk_combo_box_cell_layout_set_cell_data_func),
	(gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
	resize instead of calling _remeasure.
2003-11-18 19:02:30 +00:00
Matthias Clasen
0725ca9d22 Add mouse wheel support. (#126517)
Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
2003-11-17 22:24:57 +00:00
Kristian Rietveld
04c21b2c9b Temporary size requisition fix. Will fix it for real tonight.
Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>

	Temporary size requisition fix. Will fix it for real tonight.

	* gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
	(gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
	a good width for the child,
	(gtk_combo_box_cell_layout_add_attribute),
	(gtk_combo_box_set_cell_data_func),
	(gtk_combo_box_cell_layout_clear_attributes): update.
2003-11-17 12:10:06 +00:00
Kristian Rietveld
d777b5b46a Fixes #124373, Murray Cumming.
Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes #124373, Murray Cumming.

	* gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
	is no longer construct only,
	(gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
	(gtk_combo_box_menu_fill): new functions,
	(gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
	(gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
	(gtk_combo_box_list_destroy): updated,
	(gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
	functions,
	(gtk_combo_box_set_model): is now public, updated,
	(gtk_combo_box_get_model): small update.

	* gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
	text_column property is no longer construct only,
	(gtk_combo_box_entry_set_text_column): now public,
	(gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
	new/changed functions.

	* tests/testcombo.c: updated.
2003-11-16 23:20:15 +00:00
Kristian Rietveld
2e2b780f97 Fix licensing (I managed to put it under GPL licensing instead of
Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
	gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
	gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
	under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
	Sandmann).
2003-10-24 18:36:55 +00:00
Kristian Rietveld
3a5b5a0f78 Fix includes.
Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
	gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
	gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
2003-10-23 18:25:53 +00:00
Kristian Rietveld
8b34c308d0 mention in the docs that -1 is a valid value and what it means.
Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_get_active),
	(gtk_combo_box_set_active): mention in the docs that -1 is a valid
	value and what it means.

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
	item to -1 (default),
	(gtk_combo_box_entry_active_changed): do nothing when the index is
	< 0.
2003-10-15 20:18:01 +00:00
Jonathan Blandford
87a1e40eb8 New function to set the active row by iter.
Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
	to set the active row by iter.

	* gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
	to get the active row by iter.
2003-10-14 20:09:39 +00:00
Matthias Clasen
9119557bc6 Move GET_PRIVATE macros from header to implementation.
Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkalignment.[hc]:
	* gtk/gtkcombobox.[hc]:
	* gtk/gtkcomboboxentry.[hc]:
	* gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
	from header to implementation.
2003-10-11 23:12:20 +00:00
Kristian Rietveld
d75b1a1a0a for the custom child list mode, allocate the height allocation->height to
Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
	child list mode, allocate the height allocation->height to the
	button instead of the height requested by the button. (Tiny
	size allocation screwup noticed by Macro Pesenti Gritti).
2003-10-11 13:39:35 +00:00