mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-18 09:00:34 +00:00
gtk/gtktoolitem.c: use accessor functions to access GtkWidget
This commit is contained in:
parent
1f9eb57338
commit
5e2c943742
@ -318,7 +318,7 @@ static void
|
|||||||
gtk_tool_item_parent_set (GtkWidget *toolitem,
|
gtk_tool_item_parent_set (GtkWidget *toolitem,
|
||||||
GtkWidget *prev_parent)
|
GtkWidget *prev_parent)
|
||||||
{
|
{
|
||||||
if (GTK_WIDGET (toolitem)->parent != NULL)
|
if (gtk_widget_get_parent (GTK_WIDGET (toolitem)) != NULL)
|
||||||
gtk_tool_item_toolbar_reconfigured (GTK_TOOL_ITEM (toolitem));
|
gtk_tool_item_toolbar_reconfigured (GTK_TOOL_ITEM (toolitem));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -398,6 +398,7 @@ gtk_tool_item_property_notify (GObject *object,
|
|||||||
static void
|
static void
|
||||||
create_drag_window (GtkToolItem *toolitem)
|
create_drag_window (GtkToolItem *toolitem)
|
||||||
{
|
{
|
||||||
|
GtkAllocation allocation;
|
||||||
GtkWidget *widget;
|
GtkWidget *widget;
|
||||||
GdkWindowAttr attributes;
|
GdkWindowAttr attributes;
|
||||||
gint attributes_mask, border_width;
|
gint attributes_mask, border_width;
|
||||||
@ -405,13 +406,15 @@ create_drag_window (GtkToolItem *toolitem)
|
|||||||
g_return_if_fail (toolitem->priv->use_drag_window == TRUE);
|
g_return_if_fail (toolitem->priv->use_drag_window == TRUE);
|
||||||
|
|
||||||
widget = GTK_WIDGET (toolitem);
|
widget = GTK_WIDGET (toolitem);
|
||||||
|
|
||||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||||
|
gtk_widget_get_allocation (widget, &allocation);
|
||||||
|
|
||||||
attributes.window_type = GDK_WINDOW_CHILD;
|
attributes.window_type = GDK_WINDOW_CHILD;
|
||||||
attributes.x = widget->allocation.x + border_width;
|
attributes.x = allocation.x + border_width;
|
||||||
attributes.y = widget->allocation.y + border_width;
|
attributes.y = allocation.y + border_width;
|
||||||
attributes.width = widget->allocation.width - border_width * 2;
|
attributes.width = allocation.width - border_width * 2;
|
||||||
attributes.height = widget->allocation.height - border_width * 2;
|
attributes.height = allocation.height - border_width * 2;
|
||||||
attributes.wclass = GDK_INPUT_ONLY;
|
attributes.wclass = GDK_INPUT_ONLY;
|
||||||
attributes.event_mask = gtk_widget_get_events (widget);
|
attributes.event_mask = gtk_widget_get_events (widget);
|
||||||
attributes.event_mask |= (GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
|
attributes.event_mask |= (GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
|
||||||
@ -427,17 +430,19 @@ static void
|
|||||||
gtk_tool_item_realize (GtkWidget *widget)
|
gtk_tool_item_realize (GtkWidget *widget)
|
||||||
{
|
{
|
||||||
GtkToolItem *toolitem;
|
GtkToolItem *toolitem;
|
||||||
|
GdkWindow *window;
|
||||||
|
|
||||||
toolitem = GTK_TOOL_ITEM (widget);
|
toolitem = GTK_TOOL_ITEM (widget);
|
||||||
gtk_widget_set_realized (widget, TRUE);
|
gtk_widget_set_realized (widget, TRUE);
|
||||||
|
|
||||||
widget->window = gtk_widget_get_parent_window (widget);
|
window = gtk_widget_get_parent_window (widget);
|
||||||
g_object_ref (widget->window);
|
gtk_widget_set_window (widget, window);
|
||||||
|
g_object_ref (window);
|
||||||
|
|
||||||
if (toolitem->priv->use_drag_window)
|
if (toolitem->priv->use_drag_window)
|
||||||
create_drag_window(toolitem);
|
create_drag_window(toolitem);
|
||||||
|
|
||||||
widget->style = gtk_style_attach (widget->style, widget->window);
|
gtk_widget_style_attach (widget);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -517,17 +522,18 @@ gtk_tool_item_size_allocate (GtkWidget *widget,
|
|||||||
gint border_width;
|
gint border_width;
|
||||||
GtkWidget *child;
|
GtkWidget *child;
|
||||||
|
|
||||||
child = gtk_bin_get_child (GTK_BIN (widget));
|
gtk_widget_set_allocation (widget, allocation);
|
||||||
widget->allocation = *allocation;
|
|
||||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||||
|
|
||||||
if (toolitem->priv->drag_window)
|
if (toolitem->priv->drag_window)
|
||||||
gdk_window_move_resize (toolitem->priv->drag_window,
|
gdk_window_move_resize (toolitem->priv->drag_window,
|
||||||
widget->allocation.x + border_width,
|
allocation->x + border_width,
|
||||||
widget->allocation.y + border_width,
|
allocation->y + border_width,
|
||||||
widget->allocation.width - border_width * 2,
|
allocation->width - border_width * 2,
|
||||||
widget->allocation.height - border_width * 2);
|
allocation->height - border_width * 2);
|
||||||
|
|
||||||
|
child = gtk_bin_get_child (GTK_BIN (widget));
|
||||||
if (child && gtk_widget_get_visible (child))
|
if (child && gtk_widget_get_visible (child))
|
||||||
{
|
{
|
||||||
child_allocation.x = allocation->x + border_width;
|
child_allocation.x = allocation->x + border_width;
|
||||||
@ -694,7 +700,7 @@ gtk_tool_item_get_ellipsize_mode (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return PANGO_ELLIPSIZE_NONE;
|
return PANGO_ELLIPSIZE_NONE;
|
||||||
|
|
||||||
@ -721,7 +727,7 @@ gtk_tool_item_get_icon_size (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ICON_SIZE_LARGE_TOOLBAR);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ICON_SIZE_LARGE_TOOLBAR);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return GTK_ICON_SIZE_LARGE_TOOLBAR;
|
return GTK_ICON_SIZE_LARGE_TOOLBAR;
|
||||||
|
|
||||||
@ -748,7 +754,7 @@ gtk_tool_item_get_orientation (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return GTK_ORIENTATION_HORIZONTAL;
|
return GTK_ORIENTATION_HORIZONTAL;
|
||||||
|
|
||||||
@ -791,7 +797,7 @@ gtk_tool_item_get_toolbar_style (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_TOOLBAR_ICONS);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_TOOLBAR_ICONS);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return GTK_TOOLBAR_ICONS;
|
return GTK_TOOLBAR_ICONS;
|
||||||
|
|
||||||
@ -819,7 +825,7 @@ gtk_tool_item_get_relief_style (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_RELIEF_NONE);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_RELIEF_NONE);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return GTK_RELIEF_NONE;
|
return GTK_RELIEF_NONE;
|
||||||
|
|
||||||
@ -846,7 +852,7 @@ gtk_tool_item_get_text_alignment (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return 0.5;
|
return 0.5;
|
||||||
|
|
||||||
@ -873,7 +879,7 @@ gtk_tool_item_get_text_orientation (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), GTK_ORIENTATION_HORIZONTAL);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return GTK_ORIENTATION_HORIZONTAL;
|
return GTK_ORIENTATION_HORIZONTAL;
|
||||||
|
|
||||||
@ -898,7 +904,7 @@ gtk_tool_item_get_text_size_group (GtkToolItem *tool_item)
|
|||||||
|
|
||||||
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), NULL);
|
g_return_val_if_fail (GTK_IS_TOOL_ITEM (tool_item), NULL);
|
||||||
|
|
||||||
parent = GTK_WIDGET (tool_item)->parent;
|
parent = gtk_widget_get_parent (GTK_WIDGET (tool_item));
|
||||||
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
if (!parent || !GTK_IS_TOOL_SHELL (parent))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
@ -1325,14 +1331,16 @@ gtk_tool_item_get_proxy_menu_item (GtkToolItem *tool_item,
|
|||||||
void
|
void
|
||||||
gtk_tool_item_rebuild_menu (GtkToolItem *tool_item)
|
gtk_tool_item_rebuild_menu (GtkToolItem *tool_item)
|
||||||
{
|
{
|
||||||
|
GtkWidget *parent;
|
||||||
GtkWidget *widget;
|
GtkWidget *widget;
|
||||||
|
|
||||||
g_return_if_fail (GTK_IS_TOOL_ITEM (tool_item));
|
g_return_if_fail (GTK_IS_TOOL_ITEM (tool_item));
|
||||||
|
|
||||||
widget = GTK_WIDGET (tool_item);
|
widget = GTK_WIDGET (tool_item);
|
||||||
|
|
||||||
if (GTK_IS_TOOL_SHELL (widget->parent))
|
parent = gtk_widget_get_parent (widget);
|
||||||
gtk_tool_shell_rebuild_menu (GTK_TOOL_SHELL (widget->parent));
|
if (GTK_IS_TOOL_SHELL (parent))
|
||||||
|
gtk_tool_shell_rebuild_menu (GTK_TOOL_SHELL (parent));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user