GParamSpec *pspec)
{
GtkWidget *widget = GTK_WIDGET (object);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
switch (prop_id)
{
break;
case PROP_CSS_NAME:
if (g_value_get_string (value) != NULL)
- gtk_css_node_set_name (widget->priv->cssnode, g_intern_string (g_value_get_string (value)));
+ gtk_css_node_set_name (priv->cssnode, g_intern_string (g_value_get_string (value)));
else
- gtk_css_node_set_name (widget->priv->cssnode, GTK_WIDGET_GET_CLASS (widget)->priv->css_name);
+ gtk_css_node_set_name (priv->cssnode, GTK_WIDGET_GET_CLASS (widget)->priv->css_name);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
gtk_widget_child_notify (GtkWidget *widget,
const gchar *child_property)
{
- if (widget->priv->parent == NULL)
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ if (priv->parent == NULL)
return;
- gtk_container_child_notify (GTK_CONTAINER (widget->priv->parent), widget, child_property);
+ gtk_container_child_notify (GTK_CONTAINER (priv->parent), widget, child_property);
}
/**
gtk_widget_unset_state_flags (widget, GTK_STATE_FLAG_BACKDROP);
if (priv->context)
gtk_style_context_set_parent (priv->context, NULL);
- gtk_css_node_set_parent (widget->priv->cssnode, NULL);
+ gtk_css_node_set_parent (priv->cssnode, NULL);
_gtk_widget_update_parent_muxer (widget);
void
gtk_widget_destroy (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if (!widget->priv->in_destruction)
+ if (!priv->in_destruction)
g_object_run_dispose (G_OBJECT (widget));
}
void
gtk_widget_show (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
if (!_gtk_widget_get_visible (widget))
/* see comment in set_parent() for why this should and can be
* conditional
*/
- if (widget->priv->need_compute_expand ||
- widget->priv->computed_hexpand ||
- widget->priv->computed_vexpand)
+ if (priv->need_compute_expand ||
+ priv->computed_hexpand ||
+ priv->computed_vexpand)
gtk_widget_queue_compute_expand (parent);
}
- gtk_css_node_set_visible (widget->priv->cssnode, TRUE);
+ gtk_css_node_set_visible (priv->cssnode, TRUE);
g_signal_emit (widget, widget_signals[SHOW], 0);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_VISIBLE]);
void
gtk_widget_hide (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
if (_gtk_widget_get_visible (widget))
_gtk_window_unset_focus_and_default (GTK_WINDOW (toplevel), widget);
/* a parent may now be expand=FALSE since we're hidden. */
- if (widget->priv->need_compute_expand ||
- widget->priv->computed_hexpand ||
- widget->priv->computed_vexpand)
+ if (priv->need_compute_expand ||
+ priv->computed_hexpand ||
+ priv->computed_vexpand)
{
gtk_widget_queue_compute_expand (widget);
}
- gtk_css_node_set_visible (widget->priv->cssnode, FALSE);
+ gtk_css_node_set_visible (priv->cssnode, FALSE);
g_signal_emit (widget, widget_signals[HIDE], 0);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_VISIBLE]);
static void
gtk_widget_real_hide (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
if (_gtk_widget_get_visible (widget))
{
- widget->priv->visible = FALSE;
+ priv->visible = FALSE;
if (_gtk_widget_get_mapped (widget))
gtk_widget_unmap (widget);
gboolean
gtk_widget_has_tick_callback (GtkWidget *widget)
{
- return widget->priv->tick_callbacks != NULL;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->tick_callbacks != NULL;
}
static void
GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
g_return_if_fail (GTK_IS_WIDGET (widget));
- g_return_if_fail (widget->priv->anchored ||
- GTK_IS_INVISIBLE (widget));
+ g_return_if_fail (priv->anchored || GTK_IS_INVISIBLE (widget));
if (!_gtk_widget_get_realized (widget))
{
void
gtk_widget_unrealize (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
g_object_ref (widget);
if (_gtk_widget_get_realized (widget))
{
- if (widget->priv->mapped)
+ if (priv->mapped)
gtk_widget_unmap (widget);
g_signal_emit (widget, widget_signals[UNREALIZE], 0);
- g_assert (!widget->priv->mapped);
- g_assert (!widget->priv->realized);
+ g_assert (!priv->mapped);
+ g_assert (!priv->realized);
}
gtk_widget_pop_verify_invariants (widget);
static inline gboolean
gtk_widget_get_resize_needed (GtkWidget *widget)
{
- return widget->priv->resize_needed;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->resize_needed;
}
/*
static void
gtk_widget_queue_resize_internal (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GSList *groups, *l, *widgets;
if (gtk_widget_get_resize_needed (widget))
return;
- widget->priv->resize_needed = TRUE;
+ priv->resize_needed = TRUE;
gtk_widget_set_alloc_needed (widget);
groups = _gtk_widget_get_sizegroups (widget);
GdkFrameClock*
gtk_widget_get_frame_clock (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- if (widget->priv->realized)
+ if (priv->realized)
{
/* We use gtk_widget_get_toplevel() here to make it explicit that
* the frame clock is a property of the toplevel that a widget
gtk_widget_adjust_baseline_allocation (GtkWidget *widget,
gint *baseline)
{
- *baseline -= widget->priv->margin.top;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ *baseline -= priv->margin.top;
}
static gboolean
static void
gtk_widget_real_style_updated (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkCssStyleChange *change = NULL;
gtk_widget_update_alpha (widget);
- if (widget->priv->context)
- change = gtk_style_context_get_change (widget->priv->context);
+ if (priv->context)
+ change = gtk_style_context_get_change (priv->context);
if (change)
{
if (has_text && gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_TEXT))
gtk_widget_update_pango_context (widget);
- if (widget->priv->anchored)
+ if (priv->anchored)
{
if (gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_SIZE) ||
(has_text && gtk_css_style_change_affects (change, GTK_CSS_AFFECTS_TEXT_SIZE)))
{
gtk_widget_update_pango_context (widget);
- if (widget->priv->anchored)
+ if (priv->anchored)
gtk_widget_queue_resize (widget);
}
}
gtk_widget_set_can_focus (GtkWidget *widget,
gboolean can_focus)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if (widget->priv->can_focus != can_focus)
+ if (priv->can_focus != can_focus)
{
- widget->priv->can_focus = can_focus;
+ priv->can_focus = can_focus;
gtk_widget_queue_resize (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_CAN_FOCUS]);
gboolean
gtk_widget_get_can_focus (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->can_focus;
+ return priv->can_focus;
}
/**
gboolean
gtk_widget_has_focus (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->has_focus;
+ return priv->has_focus;
}
/**
gboolean
gtk_widget_has_visible_focus (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
gboolean draw_focus;
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- if (widget->priv->has_focus)
+ if (priv->has_focus)
{
GtkWidget *toplevel;
gboolean
gtk_widget_get_focus_on_click (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->focus_on_click;
+ return priv->focus_on_click;
}
gtk_widget_set_can_default (GtkWidget *widget,
gboolean can_default)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if (widget->priv->can_default != can_default)
+ if (priv->can_default != can_default)
{
- widget->priv->can_default = can_default;
+ priv->can_default = can_default;
gtk_widget_queue_resize (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_CAN_DEFAULT]);
gboolean
gtk_widget_get_can_default (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->can_default;
+ return priv->can_default;
}
/**
gboolean
gtk_widget_has_default (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->has_default;
+ return priv->has_default;
}
void
_gtk_widget_set_has_default (GtkWidget *widget,
gboolean has_default)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkStyleContext *context;
- widget->priv->has_default = has_default;
+ priv->has_default = has_default;
context = _gtk_widget_get_style_context (widget);
gtk_widget_set_receives_default (GtkWidget *widget,
gboolean receives_default)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if (widget->priv->receives_default != receives_default)
+ if (priv->receives_default != receives_default)
{
- widget->priv->receives_default = receives_default;
+ priv->receives_default = receives_default;
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_RECEIVES_DEFAULT]);
}
gboolean
gtk_widget_get_receives_default (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->receives_default;
+ return priv->receives_default;
}
/**
gboolean
gtk_widget_has_grab (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->has_grab;
+ return priv->has_grab;
}
void
_gtk_widget_set_has_grab (GtkWidget *widget,
gboolean has_grab)
{
- widget->priv->has_grab = has_grab;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->has_grab = has_grab;
}
/**
GtkStateFlags flags,
gboolean clear)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
#define ALLOWED_FLAGS (~(GTK_STATE_FLAG_DIR_LTR | GTK_STATE_FLAG_DIR_RTL))
g_return_if_fail (GTK_IS_WIDGET (widget));
- if ((!clear && (widget->priv->state_flags & flags) == flags) ||
- (clear && widget->priv->state_flags == flags))
+ if ((!clear && (priv->state_flags & flags) == flags) ||
+ (clear && priv->state_flags == flags))
return;
if (clear)
gtk_widget_unset_state_flags (GtkWidget *widget,
GtkStateFlags flags)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if ((widget->priv->state_flags & flags) == 0)
+ if ((priv->state_flags & flags) == 0)
return;
gtk_widget_update_state_flags (widget, 0, flags);
GtkStateFlags
gtk_widget_get_state_flags (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->state_flags;
+ return priv->state_flags;
}
/**
gboolean
gtk_widget_get_visible (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->visible;
+ return priv->visible;
}
/**
gtk_widget_set_has_surface (GtkWidget *widget,
gboolean has_surface)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- widget->priv->no_surface = !has_surface;
- widget->priv->no_surface_set = TRUE;
+ priv->no_surface = !has_surface;
+ priv->no_surface_set = TRUE;
/* GdkSurface has a min size of 1×1 */
- widget->priv->allocation.width = 1;
- widget->priv->allocation.height = 1;
+ priv->allocation.width = 1;
+ priv->allocation.height = 1;
}
/**
gboolean
gtk_widget_get_has_surface (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return ! widget->priv->no_surface;
+ return !priv->no_surface;
}
/**
gboolean
gtk_widget_is_toplevel (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->toplevel;
+ return priv->toplevel;
}
void
_gtk_widget_set_is_toplevel (GtkWidget *widget,
gboolean is_toplevel)
{
- widget->priv->toplevel = is_toplevel;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->toplevel = is_toplevel;
}
/**
gboolean
gtk_widget_get_realized (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->realized;
+ return priv->realized;
}
/**
gboolean
gtk_widget_get_mapped (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->mapped;
+ return priv->mapped;
}
/**
gboolean
gtk_widget_get_sensitive (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->sensitive;
+ return priv->sensitive;
}
/**
gboolean
gtk_widget_is_sensitive (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return !(widget->priv->state_flags & GTK_STATE_FLAG_INSENSITIVE);
+ return !(priv->state_flags & GTK_STATE_FLAG_INSENSITIVE);
}
GtkWidget *parent,
GtkWidget *previous_sibling)
{
- GtkStateFlags parent_flags;
GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+ GtkStateFlags parent_flags;
GtkWidget *prev_parent;
GtkStateData data;
data.flags_to_unset = 0;
gtk_widget_propagate_state (widget, &data);
- if (gtk_css_node_get_parent (widget->priv->cssnode) == NULL)
+ if (gtk_css_node_get_parent (priv->cssnode) == NULL)
{
gtk_css_node_insert_after (parent->priv->cssnode,
priv->cssnode,
GtkWidget *
gtk_widget_get_parent (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->parent;
+ return priv->parent;
}
static void
{
if (old_display != new_display)
{
- GtkWidgetPrivate *priv = widget->priv;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
if (old_display)
{
static void
reset_style_recurse (GtkWidget *widget, gpointer user_data)
{
- gtk_css_node_invalidate (widget->priv->cssnode, GTK_CSS_CHANGE_ANY);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ gtk_css_node_invalidate (priv->cssnode, GTK_CSS_CHANGE_ANY);
gtk_widget_forall (widget, reset_style_recurse, user_data);
}
void
gtk_widget_reset_style (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
reset_style_recurse (widget, NULL);
- g_list_foreach (widget->priv->attached_windows,
+ g_list_foreach (priv->attached_windows,
(GFunc) reset_style_recurse, NULL);
}
static void
gtk_widget_push_verify_invariants (GtkWidget *widget)
{
- widget->priv->verifying_invariants_count += 1;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->verifying_invariants_count += 1;
}
static void
static void
gtk_widget_pop_verify_invariants (GtkWidget *widget)
{
- g_assert (widget->priv->verifying_invariants_count > 0);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
- widget->priv->verifying_invariants_count -= 1;
+ g_assert (priv->verifying_invariants_count > 0);
- if (widget->priv->verifying_invariants_count == 0)
+ priv->verifying_invariants_count -= 1;
+
+ if (priv->verifying_invariants_count == 0)
{
GtkWidget *child;
gtk_widget_verify_invariants (widget);
static PangoFontMap *
gtk_widget_get_effective_font_map (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
PangoFontMap *font_map;
font_map = PANGO_FONT_MAP (g_object_get_qdata (G_OBJECT (widget), quark_font_map));
if (font_map)
return font_map;
- else if (widget->priv->parent)
- return gtk_widget_get_effective_font_map (widget->priv->parent);
+ else if (priv->parent)
+ return gtk_widget_get_effective_font_map (priv->parent);
else
return pango_cairo_font_map_get_default ();
}
gboolean
gtk_widget_get_child_visible (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->child_visible;
+ return priv->child_visible;
}
void
gboolean
gtk_widget_has_size_request (GtkWidget *widget)
{
- return !(widget->priv->width == -1 && widget->priv->height == -1);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return !(priv->width == -1 && priv->height == -1);
}
/**
* Returns: (transfer none): the topmost ancestor of @widget, or @widget itself
* if there’s no ancestor.
**/
-GtkWidget*
+GtkWidget *
gtk_widget_get_toplevel (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- while (widget->priv->parent)
- widget = widget->priv->parent;
+ while (priv->parent)
+ {
+ widget = priv->parent;
+ priv = gtk_widget_get_instance_private (widget);
+ }
return widget;
}
gtk_widget_set_direction (GtkWidget *widget,
GtkTextDirection dir)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkTextDirection old_dir;
g_return_if_fail (GTK_IS_WIDGET (widget));
old_dir = _gtk_widget_get_direction (widget);
- widget->priv->direction = dir;
+ priv->direction = dir;
if (old_dir != _gtk_widget_get_direction (widget))
gtk_widget_emit_direction_changed (widget, old_dir);
GtkTextDirection
gtk_widget_get_direction (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), GTK_TEXT_DIR_LTR);
- if (widget->priv->direction == GTK_TEXT_DIR_NONE)
+ if (priv->direction == GTK_TEXT_DIR_NONE)
return gtk_default_direction;
else
- return widget->priv->direction;
+ return priv->direction;
}
static void
gtk_widget_set_default_direction_recurse (GtkWidget *widget,
GtkTextDirection old_dir)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkWidget *child;
g_object_ref (widget);
- if (widget->priv->direction == GTK_TEXT_DIR_NONE)
+ if (priv->direction == GTK_TEXT_DIR_NONE)
gtk_widget_emit_direction_changed (widget, old_dir);
for (child = _gtk_widget_get_first_child (widget);
gtk_widget_constructed (GObject *object)
{
GtkWidget *widget = GTK_WIDGET (object);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkWidgetPath *path;
/* As strange as it may seem, this may happen on object construction.
G_OBJECT_CLASS (gtk_widget_parent_class)->constructed (object);
- if (!widget->priv->no_surface_set)
+ if (!priv->no_surface_set)
{
g_warning ("%s does not call gtk_widget_set_has_surface() in its init function", G_OBJECT_TYPE_NAME (widget));
}
{
GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
- g_assert (!widget->priv->mapped);
+ g_assert (!priv->mapped);
/* We must do unrealize child widget BEFORE container widget.
* gdk_surface_destroy() destroys specified xwindow and its sub-xwindows.
AtkObject *
_gtk_widget_peek_accessible (GtkWidget *widget)
{
- return widget->priv->accessible;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->accessible;
}
/**
gtk_widget_compute_expand (GtkWidget *widget,
GtkOrientation orientation)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
/* We never make a widget expand if not even showing. */
gtk_widget_update_computed_expand (widget);
if (orientation == GTK_ORIENTATION_HORIZONTAL)
- return widget->priv->computed_hexpand;
+ return priv->computed_hexpand;
else
- return widget->priv->computed_vexpand;
+ return priv->computed_vexpand;
}
static void
gboolean
gtk_widget_get_hexpand (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->hexpand;
+ return priv->hexpand;
}
/**
gboolean
gtk_widget_get_hexpand_set (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->hexpand_set;
+ return priv->hexpand_set;
}
/**
gboolean
gtk_widget_get_vexpand (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->vexpand;
+ return priv->vexpand;
}
/**
gboolean
gtk_widget_get_vexpand_set (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->vexpand_set;
+ return priv->vexpand_set;
}
/**
GtkAlign
gtk_widget_get_halign (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkAlign align;
g_return_val_if_fail (GTK_IS_WIDGET (widget), GTK_ALIGN_FILL);
- align = widget->priv->halign;
+ align = priv->halign;
if (align == GTK_ALIGN_BASELINE)
return GTK_ALIGN_FILL;
return align;
gtk_widget_set_halign (GtkWidget *widget,
GtkAlign align)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if (widget->priv->halign == align)
+ if (priv->halign == align)
return;
- widget->priv->halign = align;
+ priv->halign = align;
gtk_widget_queue_allocate (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_HALIGN]);
}
GtkAlign
gtk_widget_get_valign (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), GTK_ALIGN_FILL);
- return widget->priv->valign;
+ return priv->valign;
}
/**
gtk_widget_set_valign (GtkWidget *widget,
GtkAlign align)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
- if (widget->priv->valign == align)
+ if (priv->valign == align)
return;
- widget->priv->valign = align;
+ priv->valign = align;
gtk_widget_queue_allocate (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_VALIGN]);
}
gint
gtk_widget_get_margin_start (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->margin.left;
+ return priv->margin.left;
}
/**
gtk_widget_set_margin_start (GtkWidget *widget,
gint margin)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (margin <= G_MAXINT16);
/* We always save margin-start as .left */
- if (widget->priv->margin.left == margin)
+ if (priv->margin.left == margin)
return;
- widget->priv->margin.left = margin;
+ priv->margin.left = margin;
gtk_widget_queue_resize (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_MARGIN_START]);
}
gint
gtk_widget_get_margin_end (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->margin.right;
+ return priv->margin.right;
}
/**
gtk_widget_set_margin_end (GtkWidget *widget,
gint margin)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (margin <= G_MAXINT16);
/* We always set margin-end as .right */
- if (widget->priv->margin.right == margin)
+ if (priv->margin.right == margin)
return;
- widget->priv->margin.right = margin;
+ priv->margin.right = margin;
gtk_widget_queue_resize (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_MARGIN_END]);
}
gint
gtk_widget_get_margin_top (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->margin.top;
+ return priv->margin.top;
}
/**
gtk_widget_set_margin_top (GtkWidget *widget,
gint margin)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (margin <= G_MAXINT16);
- if (widget->priv->margin.top == margin)
+ if (priv->margin.top == margin)
return;
- widget->priv->margin.top = margin;
+ priv->margin.top = margin;
gtk_widget_queue_resize (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_MARGIN_TOP]);
}
gint
gtk_widget_get_margin_bottom (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->margin.bottom;
+ return priv->margin.bottom;
}
/**
gtk_widget_set_margin_bottom (GtkWidget *widget,
gint margin)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (margin <= G_MAXINT16);
- if (widget->priv->margin.bottom == margin)
+ if (priv->margin.bottom == margin)
return;
- widget->priv->margin.bottom = margin;
+ priv->margin.bottom = margin;
gtk_widget_queue_resize (widget);
g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_MARGIN_BOTTOM]);
}
gboolean
gtk_widget_get_has_tooltip (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->has_tooltip;
+ return priv->has_tooltip;
}
/**
int
gtk_widget_get_allocated_width (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->allocation.width;
+ return priv->allocation.width;
}
/**
int
gtk_widget_get_allocated_height (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->allocation.height;
+ return priv->allocation.height;
}
/**
int
gtk_widget_get_allocated_baseline (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- return widget->priv->allocated_baseline;
+ return priv->allocated_baseline;
}
/**
GdkSurface*
gtk_widget_get_surface (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->surface;
+ return priv->surface;
}
/**
gboolean
gtk_widget_get_support_multidevice (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- return widget->priv->multidevice;
+ return priv->multidevice;
}
/**
gdouble
gtk_widget_get_opacity (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0.0);
- return widget->priv->user_alpha / 255.0;
+ return priv->user_alpha / 255.0;
}
/**
gtk_widget_send_focus_change (GtkWidget *widget,
GdkEvent *event)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
gboolean res;
g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
g_object_ref (widget);
- widget->priv->has_focus = event->focus_change.in;
+ priv->has_focus = event->focus_change.in;
res = gtk_widget_event (widget, event);
gboolean
gtk_widget_in_destruction (GtkWidget *widget)
{
- return widget->priv->in_destruction;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->in_destruction;
}
gboolean
_gtk_widget_get_anchored (GtkWidget *widget)
{
- return widget->priv->anchored;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->anchored;
}
void
_gtk_widget_set_anchored (GtkWidget *widget,
gboolean anchored)
{
- widget->priv->anchored = anchored;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->anchored = anchored;
}
gboolean
_gtk_widget_get_shadowed (GtkWidget *widget)
{
- return widget->priv->shadowed;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->shadowed;
}
void
_gtk_widget_set_shadowed (GtkWidget *widget,
gboolean shadowed)
{
- widget->priv->shadowed = shadowed;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->shadowed = shadowed;
}
gboolean
_gtk_widget_get_alloc_needed (GtkWidget *widget)
{
- return widget->priv->alloc_needed;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->alloc_needed;
}
static void
_gtk_widget_add_sizegroup (GtkWidget *widget,
gpointer group)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GSList *groups;
groups = g_object_get_qdata (G_OBJECT (widget), quark_size_groups);
groups = g_slist_prepend (groups, group);
g_object_set_qdata (G_OBJECT (widget), quark_size_groups, groups);
- widget->priv->have_size_groups = TRUE;
+ priv->have_size_groups = TRUE;
}
void
_gtk_widget_remove_sizegroup (GtkWidget *widget,
gpointer group)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GSList *groups;
groups = g_object_get_qdata (G_OBJECT (widget), quark_size_groups);
groups = g_slist_remove (groups, group);
g_object_set_qdata (G_OBJECT (widget), quark_size_groups, groups);
- widget->priv->have_size_groups = groups != NULL;
+ priv->have_size_groups = groups != NULL;
}
GSList *
_gtk_widget_add_attached_window (GtkWidget *widget,
GtkWindow *window)
{
- widget->priv->attached_windows = g_list_prepend (widget->priv->attached_windows, window);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->attached_windows = g_list_prepend (priv->attached_windows, window);
}
void
_gtk_widget_remove_attached_window (GtkWidget *widget,
GtkWindow *window)
{
- widget->priv->attached_windows = g_list_remove (widget->priv->attached_windows, window);
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->attached_windows = g_list_remove (priv->attached_windows, window);
}
/**
gtk_widget_path_append_for_widget (GtkWidgetPath *path,
GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
const GQuark *classes;
guint n_classes, i;
gint pos;
g_return_val_if_fail (path != NULL, 0);
g_return_val_if_fail (GTK_IS_WIDGET (widget), 0);
- pos = gtk_widget_path_append_type (path, gtk_css_node_get_widget_type (widget->priv->cssnode));
- gtk_widget_path_iter_set_object_name (path, pos, gtk_css_node_get_name (widget->priv->cssnode));
+ pos = gtk_widget_path_append_type (path, gtk_css_node_get_widget_type (priv->cssnode));
+ gtk_widget_path_iter_set_object_name (path, pos, gtk_css_node_get_name (priv->cssnode));
- if (widget->priv->name)
- gtk_widget_path_iter_set_name (path, pos, widget->priv->name);
+ if (priv->name)
+ gtk_widget_path_iter_set_name (path, pos, priv->name);
- gtk_widget_path_iter_set_state (path, pos, widget->priv->state_flags);
+ gtk_widget_path_iter_set_state (path, pos, priv->state_flags);
- classes = gtk_css_node_list_classes (widget->priv->cssnode, &n_classes);
+ classes = gtk_css_node_list_classes (priv->cssnode, &n_classes);
for (i = n_classes; i-- > 0;)
gtk_widget_path_iter_add_qclass (path, pos, classes[i]);
GtkCssNode *
gtk_widget_get_css_node (GtkWidget *widget)
{
- return widget->priv->cssnode;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->cssnode;
}
GtkStyleContext *
_gtk_widget_peek_style_context (GtkWidget *widget)
{
- return widget->priv->context;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->context;
}
GtkWidget *
gtk_widget_get_first_child (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->first_child;
+ return priv->first_child;
}
/**
GtkWidget *
gtk_widget_get_last_child (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->last_child;
+ return priv->last_child;
}
/**
GtkWidget *
gtk_widget_get_next_sibling (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->next_sibling;
+ return priv->next_sibling;
}
/**
GtkWidget *
gtk_widget_get_prev_sibling (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->prev_sibling;
+ return priv->prev_sibling;
}
/**
gtk_widget_set_cursor (GtkWidget *widget,
GdkCursor *cursor)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GtkWidget *toplevel;
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (cursor == NULL || GDK_IS_CURSOR (cursor));
- if (!g_set_object (&widget->priv->cursor, cursor))
+ if (!g_set_object (&priv->cursor, cursor))
return;
toplevel = gtk_widget_get_toplevel (widget);
GdkCursor *
gtk_widget_get_cursor (GtkWidget *widget)
{
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
- return widget->priv->cursor;
+ return priv->cursor;
}
void
gtk_widget_set_pass_through (GtkWidget *widget,
gboolean pass_through)
{
- widget->priv->pass_through = !!pass_through;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ priv->pass_through = !!pass_through;
}
gboolean
gtk_widget_get_pass_through (GtkWidget *widget)
{
- return widget->priv->pass_through;
+ GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+
+ return priv->pass_through;
}
/**