Commit Graph

220 Commits

Author SHA1 Message Date
Javier Jardón
45257e31c7 Don't use GTK_WIDGET_*SET_FLAGS (wid, GTK_TOPLEVEL)
Introduce internal _gtk_widget_set_is_toplvel() for this

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=614510
2010-04-26 21:07:20 +02:00
Javier Jardón
560e426f16 Don't use GTK_WIDGET_*SET_FLAGS (wid, GTK_HAS_GRAB)
Introduce internal _gtk_widget_set_has_grab() for this

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=614513
2010-04-26 21:04:51 +02:00
Emmanuele Bassi
f04a720348 widget: Add send_focus_change()
Currently the only users of the GTK_HAS_FOCUS flag are setting it
before sending a focus change event. This is normally needed by
GtkWindow, but there are widgets that require controlling the focus
of widgets that are semantically their children even though they are
parented to another top-level. Case in point: the quick search entry
for GtkTreeView.

Over the years people have been hacking the focus change out of
gtkwindow.c and gtktreeview.c, thus leaking the direct access of the
GTK_HAS_FOCUS flag.

The simplest way to avoid that is to add a function that sends the
focus change event and controls the setting of the flag, thus removing
the need for external widgets to do the same.

https://bugzilla.gnome.org/show_bug.cgi?id=593671
2010-04-26 18:59:22 +01:00
Javier Jardón
2c043d33c2 Improve GTK_WIDGET_FLAGS() deprecation documentation
Also, use GTK_OBJECT_FLAGS() instead.
Note that some internal code still uses GTK_WIDGET_FLAGS().

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-12 06:46:34 +01: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
62a829dd30 Add version info about the deprecation of GTK_WIDGET_SENSITIVE
This completes the patch of
commit 64f526d34e
2010-03-03 23:05:40 +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
b4b95d07f8 Deprecate widget flag: GTK_WIDGET_PARENT_SENSITIVE
Use gtk_widget_get_sensitive() on the parent widget instead.

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 07:57:27 +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
f5bde06e82 Don't use GTK_WIDGET_NO_WINDOW in internal code anymore
Use gtk_widget_get_has_window() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 05:44:19 +01:00
Javier Jardón
a27d5a2c9e Deprecate widget flag: GTK_WIDGET_IS_SENSITIVE
Use gtk_widget_is_sensitive() instead

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-03-01 05:32:51 +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
Michael Natterer
347d406f80 Bug 548026 - No accessor for GtkWidget.requisition
Add gtk_widget_get_requisition().
2010-02-19 17:04:20 +01:00
Javier Jardón
c77678e037 Revert "Drop duplicate declarations"
The issue is already fixed in f9a3ce06cc

This reverts commit 6f566057e8.
2010-02-13 04:54:19 +01:00
Matthias Clasen
6f566057e8 Drop duplicate declarations 2010-02-12 18:55:42 -05:00
Christian Dywan
f9a3ce06cc Remove duplicate definitions of gtk_widget_set/get_realized/mapped 2010-02-12 18:10:17 +01:00
Matthias Clasen
e821eea4f0 Add some more goddamn accessors 2010-02-09 13:41:58 -05:00
Michael Natterer
9d4c8f38d8 Bug 608993 - Add gtk_widget_style_attach()
As replacement for:
widget->style = gtk_style_attach (widget->style, widget->window);
2010-02-04 16:43:54 +01:00
Javier Jardón
6b808a7389 Add gtk_widget_has_rc_style() accessor
Add gtk_widget_has_rc_style() as accessor for sealed
GTK_WIDGET_RC_STYLE widget flag.

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-01-19 00:20:52 +01:00
Javier Jardón
291aa854df [docs] Use the correct GTK-doc syntax to refer to GTK+ property 2010-01-12 20:19:40 +01:00
Javier Jardón
ccf17a828b [docs] Add missing "Deprecated: 2.x" to the api doc comments 2010-01-11 06:25:59 +01:00
Javier Jardón
56a893ca8c Deprecate widget flag: GTK_WIDGET_CAN_FOCUS
https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-01-07 10:05:08 +01:00
Javier Jardón
51e0dd9a82 Deprecate some widget flags
Deprecate the following:
GTK_WIDGET_APP_PAINTABLE
GTK_WIDGET_CAN_DEFAULT
GTK_WIDGET_DOUBLE_BUFFERED
GTK_WIDGET_HAS_DEFAULT
GTK_WIDGET_HAS_GRAB
GTK_WIDGET_RECEIVES_DEFAULT

https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-01-07 10:04:55 +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
Javier Jardón
0ef8f52567 Move documentation from templates to inline comments: GtkWidget
https://bugzilla.gnome.org/show_bug.cgi?id=597865
2009-11-28 02:59:06 +01:00
Javier Jardón
df9e1c3294 Substitute gtk_widget_ref/unref with g_object_ref/unref
Substitute the use of gtk_widget_ref/unref in documentation examples
and in internal gtk+ code

https://bugzilla.gnome.org/show_bug.cgi?id=598218
2009-10-14 03:30:57 +02:00
Michael Natterer
b81079d898 Bug 69872 - GTK_WIDGET_SET_FLAGS should be deprecated
Add gtk_widget_set_receives_default() and
gtk_widget_get_receives_default() as accessors for
GTK_RECEIVES_DEFAULT.
2009-09-04 14:50:35 +02:00
Michael Natterer
cc8927a589 Add gtk_widget_set_window()
New function as replacement for setting widget->window directly.
Should only be used in GtkWidget::realize().
2009-08-28 16:51:48 +02:00
Michael Natterer
0e52286d53 Bug 69872 - GTK_WIDGET_SET_FLAGS should be deprecated
Add gtk_widget_is_toplevel() for GTK_WIDGET_TOPLEVEL()
and gtk_widget_is_drawable() for GTK_WIDGET_DRAWABLE()
2009-08-28 16:27:26 +02:00
Cody Russell
a5f6b812be Add gtk_widget_set_allocation to gtkwidget.h and gtk.symbols 2009-08-13 11:22:57 -05:00
Michael Natterer
8296bf7035 Bug 69872 – GTK_WIDGET_SET_FLAGS should be deprecated
Add gtk_widget_has_grab() as replacement for GTK_WIDGET_HAS_GRAB().
2009-08-07 14:48:00 +02:00
Michael Natterer
eb0a5721d9 Bug 69872 – GTK_WIDGET_SET_FLAGS should be deprecated
Add gtk_widget_get_visible(). For symmetry reasons and for convenience
when a widget's visibility state is available as a boolean condition,
also add gtk_widget_set_visible() (which simply calls show()/hide()).
2009-08-07 08:53:32 +02:00
Michael Natterer
6007761549 Fix gtk_widget_get_allocation()
- add it to the header
- add the symbol to gtk.symbols
- fix coding style and check for allocation != NULL
2009-07-30 11:49:47 +02:00
Michael Natterer
40408e74dd Two more getters for flags plus one new property
More stuff based on patches from Christian Dywan:
- gtk_widget_get_app_paintable()
- gtk_widget_get_double_buffered()
- r/w property "double-buffered"
2009-07-17 21:51:47 +02:00
Michael Natterer
74ca4e2482 Add API for more widget flags
Add the following functions based on a patch from Christian Dywan:
- gtk_widget_set/get_can_focus()
- gtk_widget_set/get_can_default()
- gtk_widget_has_default()
2009-07-17 21:20:14 +02:00
Michael Natterer
2686930bfd Add gtk_widget_get_state() for accessing the sealed member "state" 2009-07-14 02:45:42 +02:00
Michael Natterer
8f60176229 Add API for some sealed widget flags
- gtk_widget_has_focus() for GTK_WIDGET_HAS_FOCUS()
- gtk_widget_get_sensitive() for GTK_WIDGET_SENSITIVE()
- gtk_widget_is_sensitive() for GTK_WIDGET_IS_SENSITIVE()
2009-07-14 02:12:40 +02:00
Tristan Van Berkom
515a0b61a1 Accelerators failed for submenus (GNOME bug 582025)
gtk/gtkmenuitem.c: Override custom_tag_finished() for "accelerator" and search
the correct toplevel GtkWindow to attach accelerators to menu items.

gtk/gtkwidget.[ch]: Added _gtk_widget_buildable_finish_accelerator() to allow
subclasses to specify a toplevel window to associate with when parsing <accelerator>
tags
2009-06-22 12:19:56 -04:00
Michael Natterer
839aeeafa8 removed this function because there is massive disagreement about how to
2008-09-02  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkwidget.c (gtk_widget_get_allocation): removed this
	function because there is massive disagreement about how to
	implement it. Needs some general discussion in the next
	development cycle about how our C api should evolve.

	* gtk/gtk.symbols: changed accordingly.


svn path=/trunk/; revision=21259
2008-09-02 16:06:02 +00:00
Michael Natterer
2faae9fd1d move the gtk_widget_get_parent() and gtk_widget_get_parent_window()
2008-08-29  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkwidget.h: move the gtk_widget_get_parent() and
	gtk_widget_get_parent_window() prototypes together with their
	respective setters.

	* gtk/gtkwidget.c: move gtk_widget_get_parent_window() together
	with its setter.


svn path=/trunk/; revision=21240
2008-08-29 16:21:09 +00:00
Cody Russell
4e3c97b3f2 Bug 56070 – Can't click button after setting it sensitive.
2008-07-31  Cody Russell  <bratsche@gnome.org>

        Bug 56070 – Can't click button after setting it sensitive.

        * gtk/gtkwidget.[ch] 
        * gtk/gtkwindow.c
        * gtk/gtkmain.c
        * gtk/gtkbutton.c
        * gtk/gtkprivate.h
        * gdk/gdkevents.h: Synthesize crossing events events where necessary.

        * gtk/tests/crossingevents.c: Add unit tests for crossing events.

        Big thanks to Ed Catmur, Matthias Clasen, and everyone else who
        has worked on and helped out with this.


svn path=/trunk/; revision=20924
2008-08-01 03:30:50 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Tim Janik
bf2323b1de Change docs and signature of gtk_widget_get_allocation
svn path=/trunk/; revision=20625
2008-06-20 11:10:14 +00:00
Tim Janik
886ffbe067 Fix gtk_widget_get_allocation
svn path=/trunk/; revision=20622
2008-06-20 11:09:56 +00:00
Tim Janik
10896d4874 Seal GtkWidget
svn path=/trunk/; revision=20620
2008-06-20 11:09:42 +00:00
Michael Natterer
2c5f8a5c2b whitespace cleanup: remove trailing whitespace and excess newlines and
2008-05-28  Michael Natterer  <mitch@imendio.com>

	* gtk/gtk*.h: whitespace cleanup: remove trailing whitespace and
	excess newlines and sprinkled some newlines where needed. Zero
	code or formatting changes included.


svn path=/trunk/; revision=20225
2008-05-28 15:35:43 +00:00