summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2010-02-09 13:40:58 -0500
committerMatthias Clasen <mclasen@redhat.com>2010-02-09 13:41:58 -0500
commite821eea4f017cc7ae7689daed0c3a56859268c80 (patch)
tree05941691acb6319e5114761c69e231f43b7d2435
parent893408352d89a04fe70d4b160a6010a0e00072a4 (diff)
downloadgtk+-e821eea4f017cc7ae7689daed0c3a56859268c80.tar.gz
Add some more goddamn accessors
-rw-r--r--docs/reference/gtk/gtk-sections.txt4
-rw-r--r--gtk/gtk.symbols4
-rw-r--r--gtk/gtkwidget.c94
-rw-r--r--gtk/gtkwidget.h12
4 files changed, 114 insertions, 0 deletions
diff --git a/docs/reference/gtk/gtk-sections.txt b/docs/reference/gtk/gtk-sections.txt
index 7a19709fe9..d79c5a8308 100644
--- a/docs/reference/gtk/gtk-sections.txt
+++ b/docs/reference/gtk/gtk-sections.txt
@@ -5749,6 +5749,10 @@ gtk_widget_is_toplevel
gtk_widget_set_window
gtk_widget_set_receives_default
gtk_widget_get_receives_default
+gtk_widget_set_realized
+gtk_widget_get_realized
+gtk_widget_set_mapped
+gtk_widget_set_mapped
<SUBSECTION>
gtk_requisition_copy
diff --git a/gtk/gtk.symbols b/gtk/gtk.symbols
index 9fafefb71a..d6aa08907d 100644
--- a/gtk/gtk.symbols
+++ b/gtk/gtk.symbols
@@ -5247,6 +5247,10 @@ gtk_widget_set_can_default
gtk_widget_get_can_default
gtk_widget_set_can_focus
gtk_widget_get_can_focus
+gtk_widget_set_realized
+gtk_widget_get_realized
+gtk_widget_set_mapped
+gtk_widget_get_mapped
#endif
#endif
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 027cfeb5a8..98a58df152 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -5951,6 +5951,100 @@ gtk_widget_is_drawable (GtkWidget *widget)
}
/**
+ * gtk_widget_get_realized:
+ * @widget: a #GtkWidget
+ *
+ * Determines whether @widget is realized.
+ *
+ * Return value: %TRUE if @widget is realized, %FALSE otherwise
+ *
+ * Since: 2.20
+ **/
+gboolean
+gtk_widget_get_realized (GtkWidget *widget)
+{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
+
+ return (GTK_WIDGET_FLAGS (widget) & GTK_REALIZED) != 0;
+}
+
+/**
+ * gtk_widget_set_realized:
+ * @widget: a #GtkWidget
+ * @realized: %TRUE to mark the widget as realized
+ *
+ * Marks the widget as being realized.
+ *
+ * This function should only ever be called in a derived widget's
+ * "realize" or "unrealize" implementation.
+ *
+ * Since: 2.20
+ */
+void
+gtk_widget_set_realized (GtkWidget *widget,
+ gboolean realized)
+{
+ g_return_if_fail (GTK_IS_WIDGET (widget));
+
+ realized = realized != FALSE;
+
+ if (realized != gtk_widget_get_realized (widget))
+ {
+ if (realized)
+ GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED);
+ else
+ GTK_WIDGET_UNSET_FLAGS (widget, GTK_REALIZED);
+ }
+}
+
+/**
+ * gtk_widget_get_mapped:
+ * @widget: a #GtkWidget
+ *
+ * Whether the widget is mapped.
+ *
+ * Return value: %TRUE if the widget is mapped, %FALSE otherwise.
+ *
+ * Since: 2.20
+ */
+gboolean
+gtk_widget_get_mapped (GtkWidget *widget)
+{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
+ return (GTK_WIDGET_FLAGS (widget) & GTK_MAPPED) != 0;
+}
+
+/**
+ * gtk_widget_set_mapped:
+ * @widget: a #GtkWidget
+ * @mapped: %TRUE to mark the widget as mapped
+ *
+ * Marks the widget as being realized.
+ *
+ * This function should only ever be called in a derived widget's
+ * "map" or "unmap" implementation.
+ *
+ * Since: 2.20
+ */
+void
+gtk_widget_set_mapped (GtkWidget *widget,
+ gboolean mapped)
+{
+ g_return_if_fail (GTK_IS_WIDGET (widget));
+
+ mapped = mapped != FALSE;
+
+ if (mapped != gtk_widget_get_mapped (widget))
+ {
+ if (mapped)
+ GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED);
+ else
+ GTK_WIDGET_UNSET_FLAGS (widget, GTK_MAPPED);
+ }
+}
+
+/**
* gtk_widget_set_app_paintable:
* @widget: a #GtkWidget
* @app_paintable: %TRUE if the application will paint on the widget
diff --git a/gtk/gtkwidget.h b/gtk/gtkwidget.h
index f33484ba68..2490d8b596 100644
--- a/gtk/gtkwidget.h
+++ b/gtk/gtkwidget.h
@@ -874,6 +874,12 @@ void gtk_widget_child_notify (GtkWidget *widget,
const gchar *child_property);
void gtk_widget_thaw_child_notify (GtkWidget *widget);
+void gtk_widget_set_realized (GtkWidget *widget,
+ gboolean realized);
+gboolean gtk_widget_get_realized (GtkWidget *widget);
+void gtk_widget_set_mapped (GtkWidget *widget,
+ gboolean mapped);
+gboolean gtk_widget_get_mapped (GtkWidget *widget);
void gtk_widget_set_can_focus (GtkWidget *widget,
gboolean can_focus);
gboolean gtk_widget_get_can_focus (GtkWidget *widget);
@@ -916,6 +922,12 @@ gboolean gtk_widget_get_has_window (GtkWidget *widget);
gboolean gtk_widget_is_toplevel (GtkWidget *widget);
gboolean gtk_widget_is_drawable (GtkWidget *widget);
+void gtk_widget_set_realized (GtkWidget *widget,
+ gboolean realized);
+gboolean gtk_widget_get_realized (GtkWidget *widget);
+void gtk_widget_set_mapped (GtkWidget *widget,
+ gboolean mapped);
+gboolean gtk_widget_get_mapped (GtkWidget *widget);
void gtk_widget_set_app_paintable (GtkWidget *widget,
gboolean app_paintable);