mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-03 09:23:24 +00:00
app: all remaining select-item handlers replaced by select-items ones.
This commit is contained in:
parent
2a404cb41d
commit
8a46a72d7d
4 changed files with 89 additions and 58 deletions
|
@ -89,9 +89,9 @@ static void gimp_controller_list_row_activated (GtkTreeView *tv,
|
|||
GtkTreeViewColumn *column,
|
||||
GimpControllerList *list);
|
||||
|
||||
static void gimp_controller_list_select_item (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gpointer insert_data,
|
||||
static gboolean gimp_controller_list_select_items(GimpContainerView *view,
|
||||
GList *viewables,
|
||||
GList *paths,
|
||||
GimpControllerList *list);
|
||||
static void gimp_controller_list_activate_item (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
|
@ -282,8 +282,8 @@ gimp_controller_list_init (GimpControllerList *list)
|
|||
gtk_box_pack_start (GTK_BOX (list->hbox), list->dest, TRUE, TRUE, 0);
|
||||
gtk_widget_show (list->dest);
|
||||
|
||||
g_signal_connect_object (list->dest, "select-item",
|
||||
G_CALLBACK (gimp_controller_list_select_item),
|
||||
g_signal_connect_object (list->dest, "select-items",
|
||||
G_CALLBACK (gimp_controller_list_select_items),
|
||||
G_OBJECT (list), 0);
|
||||
g_signal_connect_object (list->dest, "activate-item",
|
||||
G_CALLBACK (gimp_controller_list_activate_item),
|
||||
|
@ -451,15 +451,17 @@ gimp_controller_list_row_activated (GtkTreeView *tv,
|
|||
gtk_button_clicked (GTK_BUTTON (list->add_button));
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_controller_list_select_item (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gpointer insert_data,
|
||||
GimpControllerList *list)
|
||||
static gboolean
|
||||
gimp_controller_list_select_items (GimpContainerView *view,
|
||||
GList *viewables,
|
||||
GList *paths,
|
||||
GimpControllerList *list)
|
||||
{
|
||||
gboolean selected;
|
||||
|
||||
list->dest_info = GIMP_CONTROLLER_INFO (viewable);
|
||||
g_return_val_if_fail (g_list_length (viewables) < 2, FALSE);
|
||||
|
||||
list->dest_info = viewables ? GIMP_CONTROLLER_INFO (viewables->data) : NULL;
|
||||
|
||||
selected = GIMP_IS_CONTROLLER_INFO (list->dest_info);
|
||||
|
||||
|
@ -482,6 +484,8 @@ gimp_controller_list_select_item (GimpContainerView *view,
|
|||
gtk_widget_set_sensitive (list->edit_button, selected);
|
||||
gtk_widget_set_sensitive (list->up_button, selected);
|
||||
gtk_widget_set_sensitive (list->down_button, selected);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
#include "gimpdevices.h"
|
||||
#include "gimpmessagebox.h"
|
||||
#include "gimpmessagedialog.h"
|
||||
#include "gimpviewrenderer.h"
|
||||
|
||||
#include "gimp-intl.h"
|
||||
|
||||
|
@ -96,10 +97,10 @@ static void gimp_device_editor_remove_device (GimpContainer *container,
|
|||
static void gimp_device_editor_device_changed (GimpDeviceInfo *info,
|
||||
GimpDeviceEditor *editor);
|
||||
|
||||
static void gimp_device_editor_select_device (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gpointer insert_data,
|
||||
GimpDeviceEditor *editor);
|
||||
static gboolean gimp_device_editor_select_device (GimpContainerView *view,
|
||||
GList *viewables,
|
||||
GList *paths,
|
||||
GimpDeviceEditor *editor);
|
||||
|
||||
static void gimp_device_editor_delete_clicked (GtkWidget *button,
|
||||
GimpDeviceEditor *editor);
|
||||
|
@ -149,7 +150,7 @@ gimp_device_editor_init (GimpDeviceEditor *editor)
|
|||
gtk_paned_pack1 (GTK_PANED (editor), private->treeview, TRUE, FALSE);
|
||||
gtk_widget_show (private->treeview);
|
||||
|
||||
g_signal_connect_object (private->treeview, "select-item",
|
||||
g_signal_connect_object (private->treeview, "select-items",
|
||||
G_CALLBACK (gimp_device_editor_select_device),
|
||||
G_OBJECT (editor), 0);
|
||||
|
||||
|
@ -431,48 +432,65 @@ gimp_device_editor_device_changed (GimpDeviceInfo *info,
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
static gboolean
|
||||
gimp_device_editor_select_device (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gpointer insert_data,
|
||||
GList *viewables,
|
||||
GList *paths,
|
||||
GimpDeviceEditor *editor)
|
||||
{
|
||||
GimpDeviceEditorPrivate *private = GIMP_DEVICE_EDITOR_GET_PRIVATE (editor);
|
||||
|
||||
if (viewable && insert_data)
|
||||
g_return_val_if_fail (g_list_length (viewables) < 2, FALSE);
|
||||
|
||||
if (viewables)
|
||||
{
|
||||
GimpContainerTreeView *treeview;
|
||||
GtkWidget *widget;
|
||||
GtkTreeIter iter;
|
||||
gboolean iter_valid;
|
||||
|
||||
treeview = GIMP_CONTAINER_TREE_VIEW (private->treeview);
|
||||
|
||||
gtk_tree_model_get (treeview->model, insert_data,
|
||||
GIMP_CONTAINER_TREE_STORE_COLUMN_USER_DATA, &widget,
|
||||
-1);
|
||||
|
||||
if (widget)
|
||||
for (iter_valid = gtk_tree_model_get_iter_first (treeview->model, &iter);
|
||||
iter_valid;
|
||||
iter_valid = gtk_tree_model_iter_next (treeview->model, &iter))
|
||||
{
|
||||
GimpDeviceInfo *info;
|
||||
gboolean delete_sensitive = FALSE;
|
||||
GimpViewRenderer *renderer;
|
||||
|
||||
gtk_stack_set_visible_child (GTK_STACK (private->stack), widget);
|
||||
gtk_tree_model_get (treeview->model, &iter,
|
||||
GIMP_CONTAINER_TREE_STORE_COLUMN_USER_DATA, &widget,
|
||||
GIMP_CONTAINER_TREE_STORE_COLUMN_RENDERER, &renderer,
|
||||
-1);
|
||||
if (renderer->viewable == viewables->data && widget)
|
||||
{
|
||||
GimpDeviceInfo *info;
|
||||
gboolean delete_sensitive = FALSE;
|
||||
|
||||
g_object_get (widget ,"info", &info, NULL);
|
||||
gtk_stack_set_visible_child (GTK_STACK (private->stack), widget);
|
||||
|
||||
gtk_label_set_text (GTK_LABEL (private->label),
|
||||
gimp_object_get_name (info));
|
||||
gtk_image_set_from_icon_name (GTK_IMAGE (private->image),
|
||||
gimp_viewable_get_icon_name (GIMP_VIEWABLE (info)),
|
||||
GTK_ICON_SIZE_BUTTON);
|
||||
g_object_get (widget ,"info", &info, NULL);
|
||||
|
||||
if (! gimp_device_info_get_device (info, NULL))
|
||||
delete_sensitive = TRUE;
|
||||
gtk_label_set_text (GTK_LABEL (private->label),
|
||||
gimp_object_get_name (info));
|
||||
gtk_image_set_from_icon_name (GTK_IMAGE (private->image),
|
||||
gimp_viewable_get_icon_name (GIMP_VIEWABLE (info)),
|
||||
GTK_ICON_SIZE_BUTTON);
|
||||
|
||||
gtk_widget_set_sensitive (private->delete_button, delete_sensitive);
|
||||
if (! gimp_device_info_get_device (info, NULL))
|
||||
delete_sensitive = TRUE;
|
||||
|
||||
g_object_unref (info);
|
||||
gtk_widget_set_sensitive (private->delete_button, delete_sensitive);
|
||||
|
||||
g_object_unref (info);
|
||||
g_object_unref (renderer);
|
||||
|
||||
break;
|
||||
}
|
||||
g_object_unref (renderer);
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -111,9 +111,10 @@ static gboolean
|
|||
gimp_settings_box_row_separator_func (GtkTreeModel *model,
|
||||
GtkTreeIter *iter,
|
||||
gpointer data);
|
||||
static void gimp_settings_box_setting_selected (GimpContainerView *view,
|
||||
GimpViewable *object,
|
||||
gpointer insert_data,
|
||||
static gboolean
|
||||
gimp_settings_box_setting_selected (GimpContainerView *view,
|
||||
GList *objects,
|
||||
GList *paths,
|
||||
GimpSettingsBox *box);
|
||||
static gboolean gimp_settings_box_menu_press (GtkWidget *widget,
|
||||
GdkEventButton *bevent,
|
||||
|
@ -298,7 +299,7 @@ gimp_settings_box_constructed (GObject *object)
|
|||
gimp_help_set_help_data (private->combo, _("Pick a preset from the list"),
|
||||
NULL);
|
||||
|
||||
g_signal_connect_after (private->combo, "select-item",
|
||||
g_signal_connect_after (private->combo, "select-items",
|
||||
G_CALLBACK (gimp_settings_box_setting_selected),
|
||||
box);
|
||||
|
||||
|
@ -546,15 +547,19 @@ gimp_settings_box_row_separator_func (GtkTreeModel *model,
|
|||
return name == NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
static gboolean
|
||||
gimp_settings_box_setting_selected (GimpContainerView *view,
|
||||
GimpViewable *object,
|
||||
gpointer insert_data,
|
||||
GList *objects,
|
||||
GList *paths,
|
||||
GimpSettingsBox *box)
|
||||
{
|
||||
if (object)
|
||||
g_return_val_if_fail (g_list_length (objects) < 2, FALSE);
|
||||
|
||||
if (objects)
|
||||
g_signal_emit (box, settings_box_signals[SELECTED], 0,
|
||||
object);
|
||||
objects->data);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
|
|
@ -89,9 +89,9 @@ static gboolean
|
|||
gimp_settings_editor_row_separator_func (GtkTreeModel *model,
|
||||
GtkTreeIter *iter,
|
||||
gpointer data);
|
||||
static void gimp_settings_editor_select_item (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gpointer insert_data,
|
||||
static gboolean gimp_settings_editor_select_items (GimpContainerView *view,
|
||||
GList *viewables,
|
||||
GList *paths,
|
||||
GimpSettingsEditor *editor);
|
||||
static void gimp_settings_editor_import_clicked (GtkWidget *widget,
|
||||
GimpSettingsEditor *editor);
|
||||
|
@ -178,8 +178,8 @@ gimp_settings_editor_constructed (GObject *object)
|
|||
gimp_settings_editor_row_separator_func,
|
||||
private->view, NULL);
|
||||
|
||||
g_signal_connect (tree_view, "select-item",
|
||||
G_CALLBACK (gimp_settings_editor_select_item),
|
||||
g_signal_connect (tree_view, "select-items",
|
||||
G_CALLBACK (gimp_settings_editor_select_items),
|
||||
editor);
|
||||
|
||||
gimp_container_tree_view_connect_name_edited (tree_view,
|
||||
|
@ -298,22 +298,26 @@ gimp_settings_editor_row_separator_func (GtkTreeModel *model,
|
|||
return name == NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_settings_editor_select_item (GimpContainerView *view,
|
||||
GimpViewable *viewable,
|
||||
gpointer insert_data,
|
||||
GimpSettingsEditor *editor)
|
||||
static gboolean
|
||||
gimp_settings_editor_select_items (GimpContainerView *view,
|
||||
GList *viewables,
|
||||
GList *paths,
|
||||
GimpSettingsEditor *editor)
|
||||
{
|
||||
GimpSettingsEditorPrivate *private = GET_PRIVATE (editor);
|
||||
gboolean sensitive;
|
||||
|
||||
private->selected_setting = G_OBJECT (viewable);
|
||||
g_return_val_if_fail (g_list_length (viewables) < 2, FALSE);
|
||||
|
||||
private->selected_setting = viewables ? G_OBJECT (viewables->data) : NULL;
|
||||
|
||||
sensitive = (private->selected_setting != NULL &&
|
||||
gimp_object_get_name (private->selected_setting));
|
||||
|
||||
gtk_widget_set_sensitive (private->export_button, sensitive);
|
||||
gtk_widget_set_sensitive (private->delete_button, sensitive);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue