mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-10-06 05:22:40 +02:00
app: add "gint old_index" argument to GimpContainer::reorder()
This commit is contained in:
@@ -59,6 +59,7 @@ static void file_actions_last_opened_update (GimpContainer *container,
|
||||
static void file_actions_last_opened_reorder (GimpContainer *container,
|
||||
GimpImagefile *unused1,
|
||||
gint unused2,
|
||||
gint unused3,
|
||||
GimpActionGroup *group);
|
||||
static void file_actions_close_all_update (GimpContainer *images,
|
||||
GimpObject *unused,
|
||||
@@ -434,6 +435,7 @@ static void
|
||||
file_actions_last_opened_reorder (GimpContainer *container,
|
||||
GimpImagefile *unused1,
|
||||
gint unused2,
|
||||
gint unused3,
|
||||
GimpActionGroup *group)
|
||||
{
|
||||
file_actions_last_opened_update (container, unused1, group);
|
||||
|
@@ -59,7 +59,8 @@ static void windows_actions_display_remove (GimpContainer *conta
|
||||
GimpActionGroup *group);
|
||||
static void windows_actions_display_reorder (GimpContainer *container,
|
||||
GimpDisplay *display,
|
||||
gint position,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpActionGroup *group);
|
||||
static void windows_actions_image_notify (GimpDisplay *display,
|
||||
const GParamSpec *unused,
|
||||
@@ -336,6 +337,7 @@ windows_actions_display_remove (GimpContainer *container,
|
||||
static void
|
||||
windows_actions_display_reorder (GimpContainer *container,
|
||||
GimpDisplay *display,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpActionGroup *group)
|
||||
{
|
||||
|
@@ -108,6 +108,7 @@ static void gimp_container_real_remove (GimpContainer *container,
|
||||
GimpObject *object);
|
||||
static void gimp_container_real_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index);
|
||||
|
||||
static GType gimp_container_get_item_type (GListModel *list);
|
||||
@@ -172,9 +173,10 @@ gimp_container_class_init (GimpContainerClass *klass)
|
||||
G_SIGNAL_RUN_FIRST,
|
||||
G_STRUCT_OFFSET (GimpContainerClass, reorder),
|
||||
NULL, NULL,
|
||||
gimp_marshal_VOID__OBJECT_INT,
|
||||
G_TYPE_NONE, 2,
|
||||
gimp_marshal_VOID__OBJECT_INT_INT,
|
||||
G_TYPE_NONE, 3,
|
||||
GIMP_TYPE_OBJECT,
|
||||
G_TYPE_INT,
|
||||
G_TYPE_INT);
|
||||
|
||||
container_signals[FREEZE] =
|
||||
@@ -363,6 +365,7 @@ gimp_container_real_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_container_real_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index)
|
||||
{
|
||||
}
|
||||
@@ -834,7 +837,7 @@ gimp_container_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint new_index)
|
||||
{
|
||||
gint index;
|
||||
gint old_index;
|
||||
|
||||
g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE);
|
||||
g_return_val_if_fail (object != NULL, FALSE);
|
||||
@@ -848,19 +851,19 @@ gimp_container_reorder (GimpContainer *container,
|
||||
if (new_index == -1)
|
||||
new_index = container->priv->n_children - 1;
|
||||
|
||||
index = gimp_container_get_child_index (container, object);
|
||||
old_index = gimp_container_get_child_index (container, object);
|
||||
|
||||
if (index == -1)
|
||||
if (old_index == -1)
|
||||
{
|
||||
g_warning ("%s: container %p does not contain object %p",
|
||||
G_STRFUNC, container, object);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (index != new_index)
|
||||
if (old_index != new_index)
|
||||
{
|
||||
g_signal_emit (container, container_signals[REORDER], 0,
|
||||
object, new_index);
|
||||
object, old_index, new_index);
|
||||
|
||||
if (container->priv->freeze_count == 0 &&
|
||||
container->priv->suspend_items_changed == 0)
|
||||
@@ -868,9 +871,9 @@ gimp_container_reorder (GimpContainer *container,
|
||||
gint new_index = gimp_container_get_child_index (container, object);
|
||||
|
||||
g_list_model_items_changed (G_LIST_MODEL (container),
|
||||
MIN (index, new_index),
|
||||
ABS (index - new_index) + 1,
|
||||
ABS (index - new_index) + 1);
|
||||
MIN (old_index, new_index),
|
||||
ABS (old_index - new_index) + 1,
|
||||
ABS (old_index - new_index) + 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -56,6 +56,7 @@ struct _GimpContainerClass
|
||||
GimpObject *object);
|
||||
void (* reorder) (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index);
|
||||
void (* freeze) (GimpContainer *container);
|
||||
void (* thaw) (GimpContainer *container);
|
||||
|
@@ -173,6 +173,7 @@ static void gimp_drawable_filter_lock_alpha_changed (GimpLayer
|
||||
|
||||
static void gimp_drawable_filter_reorder (GimpFilterStack *stack,
|
||||
GimpDrawableFilter *reordered_filter,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpDrawableFilter *filter);
|
||||
|
||||
@@ -2015,6 +2016,7 @@ gimp_drawable_filter_lock_alpha_changed (GimpLayer *layer,
|
||||
static void
|
||||
gimp_drawable_filter_reorder (GimpFilterStack *stack,
|
||||
GimpDrawableFilter *reordered_filter,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpDrawableFilter *filter)
|
||||
{
|
||||
@@ -2032,6 +2034,8 @@ gimp_drawable_filter_reorder (GimpFilterStack *stack,
|
||||
* it's organized.
|
||||
*/
|
||||
GIMP_IS_DRAWABLE_FILTER (GIMP_LIST (stack)->queue->head->data))
|
||||
gimp_drawable_filter_sync_format (GIMP_LIST (stack)->queue->head->data);
|
||||
{
|
||||
gimp_drawable_filter_sync_format (GIMP_LIST (stack)->queue->head->data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -47,6 +47,7 @@ static void gimp_drawable_stack_remove (GimpContainer *container
|
||||
GimpObject *object);
|
||||
static void gimp_drawable_stack_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index);
|
||||
|
||||
static void gimp_drawable_stack_drawable_update (GimpItem *item,
|
||||
@@ -142,11 +143,13 @@ gimp_drawable_stack_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_drawable_stack_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index)
|
||||
{
|
||||
GimpDrawableStack *stack = GIMP_DRAWABLE_STACK (container);
|
||||
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object, new_index);
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object,
|
||||
old_index, new_index);
|
||||
|
||||
if (gimp_filter_get_active (GIMP_FILTER (object)))
|
||||
gimp_drawable_stack_drawable_active (GIMP_ITEM (object), stack);
|
||||
|
@@ -40,6 +40,7 @@ static void gimp_filter_stack_remove (GimpContainer *container,
|
||||
GimpObject *object);
|
||||
static void gimp_filter_stack_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index);
|
||||
|
||||
static void gimp_filter_stack_add_node (GimpFilterStack *stack,
|
||||
@@ -147,6 +148,7 @@ gimp_filter_stack_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_filter_stack_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index)
|
||||
{
|
||||
GimpFilterStack *stack = GIMP_FILTER_STACK (container);
|
||||
@@ -155,7 +157,8 @@ gimp_filter_stack_reorder (GimpContainer *container,
|
||||
if (stack->graph && gimp_filter_get_active (filter))
|
||||
gimp_filter_stack_remove_node (stack, filter);
|
||||
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object, new_index);
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object,
|
||||
old_index, new_index);
|
||||
|
||||
if (gimp_filter_get_active (filter))
|
||||
{
|
||||
|
@@ -39,6 +39,7 @@ static void gimp_layer_stack_remove (GimpContainer *container
|
||||
GimpObject *object);
|
||||
static void gimp_layer_stack_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index);
|
||||
|
||||
static void gimp_layer_stack_layer_active (GimpLayer *layer,
|
||||
@@ -130,6 +131,7 @@ gimp_layer_stack_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_layer_stack_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index)
|
||||
{
|
||||
GimpLayerStack *stack = GIMP_LAYER_STACK (container);
|
||||
@@ -142,7 +144,8 @@ gimp_layer_stack_reorder (GimpContainer *container,
|
||||
if (update_backdrop)
|
||||
index = gimp_container_get_child_index (container, object);
|
||||
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object, new_index);
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object,
|
||||
old_index, new_index);
|
||||
|
||||
if (update_backdrop)
|
||||
gimp_layer_stack_update_range (stack, index, new_index);
|
||||
|
@@ -61,6 +61,7 @@ static void gimp_list_remove (GimpContainer *conta
|
||||
GimpObject *object);
|
||||
static void gimp_list_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index);
|
||||
static void gimp_list_clear (GimpContainer *container);
|
||||
static gboolean gimp_list_have (GimpContainer *container,
|
||||
@@ -297,6 +298,7 @@ gimp_list_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_list_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index)
|
||||
{
|
||||
GimpList *list = GIMP_LIST (container);
|
||||
@@ -308,7 +310,8 @@ gimp_list_reorder (GimpContainer *container,
|
||||
else
|
||||
g_queue_push_nth (list->queue, object, new_index);
|
||||
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object, new_index);
|
||||
GIMP_CONTAINER_CLASS (parent_class)->reorder (container, object,
|
||||
old_index, new_index);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -50,6 +50,7 @@ VOID: INT, INT, BOOLEAN, BOOLEAN
|
||||
VOID: INT, OBJECT
|
||||
VOID: OBJECT, BOOLEAN
|
||||
VOID: OBJECT, INT
|
||||
VOID: OBJECT, INT, INT
|
||||
VOID: OBJECT, OBJECT
|
||||
VOID: OBJECT, POINTER
|
||||
VOID: OBJECT, STRING, STRING
|
||||
|
@@ -66,6 +66,7 @@ static void gimp_tree_proxy_container_remove (GimpContainer *container,
|
||||
GimpTreeProxy *tree_proxy);
|
||||
static void gimp_tree_proxy_container_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpTreeProxy *tree_proxy);
|
||||
static void gimp_tree_proxy_container_freeze (GimpContainer *container,
|
||||
@@ -213,6 +214,7 @@ gimp_tree_proxy_container_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_tree_proxy_container_reorder (GimpContainer *container,
|
||||
GimpObject *object,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpTreeProxy *tree_proxy)
|
||||
{
|
||||
|
@@ -99,6 +99,7 @@ static void gimp_tool_widget_group_children_remove (GimpContaine
|
||||
GimpToolWidgetGroup *group);
|
||||
static void gimp_tool_widget_group_children_reorder (GimpContainer *container,
|
||||
GimpToolWidget *child,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpToolWidgetGroup *group);
|
||||
|
||||
@@ -513,6 +514,7 @@ gimp_tool_widget_group_children_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_tool_widget_group_children_reorder (GimpContainer *container,
|
||||
GimpToolWidget *child,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpToolWidgetGroup *group)
|
||||
{
|
||||
|
@@ -57,6 +57,7 @@ static void windows_menu_display_remove (GimpContainer *con
|
||||
GimpUIManager *manager);
|
||||
static void windows_menu_display_reorder (GimpContainer *container,
|
||||
GimpDisplay *display,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpUIManager *manager);
|
||||
static void windows_menu_image_notify (GimpDisplay *display,
|
||||
@@ -175,6 +176,7 @@ windows_menu_display_remove (GimpContainer *container,
|
||||
static void
|
||||
windows_menu_display_reorder (GimpContainer *container,
|
||||
GimpDisplay *display,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpUIManager *manager)
|
||||
{
|
||||
|
@@ -56,6 +56,7 @@ static void gimp_container_view_remove (GimpContainerView *view,
|
||||
|
||||
static void gimp_container_view_reorder (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpContainer *container);
|
||||
|
||||
@@ -355,6 +356,7 @@ gimp_container_view_remove (GimpContainerView *view,
|
||||
static void
|
||||
gimp_container_view_reorder (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpContainer *container)
|
||||
{
|
||||
|
@@ -133,6 +133,7 @@ static void gimp_tool_button_tool_remove (GimpContainer *c
|
||||
GimpToolButton *tool_button);
|
||||
static void gimp_tool_button_tool_reorder (GimpContainer *container,
|
||||
GimpToolInfo *tool_info,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpToolButton *tool_button);
|
||||
|
||||
@@ -788,6 +789,7 @@ gimp_tool_button_tool_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_tool_button_tool_reorder (GimpContainer *container,
|
||||
GimpToolInfo *tool_info,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpToolButton *tool_button)
|
||||
{
|
||||
|
@@ -86,7 +86,8 @@ static void gimp_tool_palette_tool_remove (GimpContainer *containe
|
||||
GimpToolPalette *palette);
|
||||
static void gimp_tool_palette_tool_reorder (GimpContainer *container,
|
||||
GimpToolItem *tool_item,
|
||||
gint index,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpToolPalette *palette);
|
||||
|
||||
static void gimp_tool_palette_add_button (GimpToolPalette *palette,
|
||||
@@ -430,7 +431,8 @@ gimp_tool_palette_tool_remove (GimpContainer *container,
|
||||
static void
|
||||
gimp_tool_palette_tool_reorder (GimpContainer *container,
|
||||
GimpToolItem *tool_item,
|
||||
gint index,
|
||||
gint old_index,
|
||||
gint new_index,
|
||||
GimpToolPalette *palette)
|
||||
{
|
||||
GimpToolPalettePrivate *private = GET_PRIVATE (palette);
|
||||
@@ -440,9 +442,9 @@ gimp_tool_palette_tool_reorder (GimpContainer *container,
|
||||
|
||||
if (tool_button)
|
||||
{
|
||||
gtk_tool_item_group_set_item_position (
|
||||
GTK_TOOL_ITEM_GROUP (private->group),
|
||||
GTK_TOOL_ITEM (tool_button), index);
|
||||
gtk_tool_item_group_set_item_position
|
||||
(GTK_TOOL_ITEM_GROUP (private->group),
|
||||
GTK_TOOL_ITEM (tool_button), new_index);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user