*-------------------------------------------------------------------
*/
-typedef struct _ExifWin ExifWin;
-struct _ExifWin
+struct ExifWin
{
GtkWidget *window;
GtkWidget *vbox;
list = history_list_get_by_key("exif_extras");
while (list)
{
- if (strcmp(name, (gchar *)(list->data)) == 0) return TRUE;
+ if (strcmp(name, static_cast<gchar *>(list->data)) == 0) return TRUE;
list = list->next;
}
tag = g_strdup_printf("0x%04x", exif_item_get_tag_id(item));
tag_name = exif_item_get_tag_name(item);
format = exif_item_get_format_name(item, TRUE);
- text = exif_item_get_data_as_text(item);
+ text = exif_item_get_data_as_text(item, exif);
utf8_text = utf8_validate_or_convert(text);
g_free(text);
elements = g_strdup_printf("%d", exif_item_get_elements(item));
{
ExifWin *ew;
- ew = g_object_get_data(G_OBJECT(window), "advanced_exif_data");
+ ew = static_cast<ExifWin *>(g_object_get_data(G_OBJECT(window), "advanced_exif_data"));
if (!ew) return;
/* store this, advanced view toggle needs to reload data */
}
static GtkTargetEntry advanced_exif_drag_types[] = {
- { "text/plain", 0, TARGET_TEXT_PLAIN }
+ { const_cast<gchar *>("text/plain"), 0, TARGET_TEXT_PLAIN }
};
static gint n_exif_drag_types = 1;
-static void advanced_exif_dnd_get(GtkWidget *listview, GdkDragContext *UNUSED(context),
- GtkSelectionData *selection_data, guint UNUSED(info),
- guint UNUSED(time), gpointer UNUSED(data))
+static void advanced_exif_dnd_get(GtkWidget *listview, GdkDragContext *,
+ GtkSelectionData *selection_data,
+ guint, guint, gpointer)
{
- //ExifWin *ew = static_cast<//ExifWin *>(data);
GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview));
GtkTreeIter iter;
- if (gtk_tree_selection_get_selected(sel, NULL, &iter))
+ if (gtk_tree_selection_get_selected(sel, nullptr, &iter))
{
GtkTreeModel *store = gtk_tree_view_get_model(GTK_TREE_VIEW(listview));
gchar *key;
gtk_tree_model_get(store, &iter, EXIF_ADVCOL_NAME, &key, -1);
gtk_selection_data_set_text(selection_data, key, -1);
- //printf("%s\n",key);
g_free(key);
}
}
-static void advanced_exif_dnd_begin(GtkWidget *listview, GdkDragContext *context, gpointer UNUSED(data))
+static void advanced_exif_dnd_begin(GtkWidget *listview, GdkDragContext *context, gpointer)
{
- //ExifWin *ew = static_cast<//ExifWin *>(data);
GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview));
GtkTreeIter iter;
- if (gtk_tree_selection_get_selected(sel, NULL, &iter))
+ if (gtk_tree_selection_get_selected(sel, nullptr, &iter))
{
GtkTreeModel *store = gtk_tree_view_get_model(GTK_TREE_VIEW(listview));
gchar *key;
static void advanced_exif_window_get_geometry(ExifWin *ew)
{
GdkWindow *window;
- LayoutWindow *lw = NULL;
+ LayoutWindow *lw = nullptr;
layout_valid(&lw);
advanced_exif_window_get_geometry(ew);
file_data_unref(ew->fd);
- gtk_widget_destroy(ew->window);
+ gq_gtk_widget_destroy(ew->window);
g_free(ew);
}
-static gboolean advanced_exif_delete_cb(GtkWidget *UNUSED(widget), GdkEvent *UNUSED(event), gpointer data)
+static gboolean advanced_exif_delete_cb(GtkWidget *, GdkEvent *, gpointer data)
{
- ExifWin *ew = static_cast<ExifWin *>(data);
+ auto ew = static_cast<ExifWin *>(data);
if (!ew) return FALSE;
return ret;
}
-static gboolean advanced_exif_mouseclick(GtkWidget *UNUSED(widget),
- GdkEventButton *UNUSED(bevent), gpointer data)
+#ifdef HAVE_GTK4
+static gboolean advanced_exif_mouseclick(GtkWidget *, GdkEventButton *, gpointer data)
{
- ExifWin *ew = static_cast<ExifWin *>(data);
+/* @FIXME GTK4 stub */
+ return TRUE;
+}
+#else
+static gboolean advanced_exif_mouseclick(GtkWidget *, GdkEventButton *, gpointer data)
+{
+ auto ew = static_cast<ExifWin *>(data);
GtkTreePath *path;
GtkTreeViewColumn *column;
GtkTreeIter iter;
gtk_tree_model_get_iter(store, &iter, path);
cols = gtk_tree_view_get_columns(GTK_TREE_VIEW(ew->listview));
- col_num = g_list_index(cols, (gpointer)column);
+ col_num = g_list_index(cols, column);
gtk_tree_model_get(store, &iter, display_order[col_num], &value, -1);
clipboard = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
return TRUE;
}
+#endif
-static gboolean advanced_exif_keypress(GtkWidget *UNUSED(widget), GdkEventKey *event, gpointer data)
+static gboolean advanced_exif_keypress(GtkWidget *, GdkEventKey *event, gpointer data)
{
- ExifWin *ew = static_cast<ExifWin *>(data);
+ auto ew = static_cast<ExifWin *>(data);
gboolean stop_signal = FALSE;
if (event->state & GDK_CONTROL_MASK)
}
return stop_signal;
-} // static gboolean advanced_exif_...
+}
-static gboolean search_function_cb(GtkTreeModel *model, gint column, const gchar *key, GtkTreeIter *iter, gpointer UNUSED(data))
+static gboolean search_function_cb(GtkTreeModel *model, gint column, const gchar *key, GtkTreeIter *iter, gpointer)
{
gboolean ret = TRUE;
gchar *field_contents;
ew = g_new0(ExifWin, 1);
- ew->window = window_new(GTK_WINDOW_TOPLEVEL, "view", NULL, NULL, _("Metadata"));
+ ew->window = window_new("view", nullptr, nullptr, _("Metadata"));
DEBUG_NAME(ew->window);
geometry.min_width = 900;
geometry.min_height = 600;
- gtk_window_set_geometry_hints(GTK_WINDOW(ew->window), NULL, &geometry, GDK_HINT_MIN_SIZE);
+ gtk_window_set_geometry_hints(GTK_WINDOW(ew->window), nullptr, &geometry, GDK_HINT_MIN_SIZE);
gtk_window_set_resizable(GTK_WINDOW(ew->window), TRUE);
gtk_window_resize(GTK_WINDOW(ew->window), lw->options.advanced_exif_window.w, lw->options.advanced_exif_window.h);
if (lw->options.advanced_exif_window.x != 0 && lw->options.advanced_exif_window.y != 0)
{
- gtk_window_move(GTK_WINDOW(ew->window), lw->options.advanced_exif_window.x, lw->options.advanced_exif_window.y);
+ gq_gtk_window_move(GTK_WINDOW(ew->window), lw->options.advanced_exif_window.x, lw->options.advanced_exif_window.y);
}
g_object_set_data(G_OBJECT(ew->window), "advanced_exif_data", ew);
g_signal_connect(G_OBJECT(ew->window), "delete_event", G_CALLBACK(advanced_exif_delete_cb), ew);
ew->vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
- gtk_container_add(GTK_CONTAINER(ew->window), ew->vbox);
+ gq_gtk_container_add(GTK_WIDGET(ew->window), ew->vbox);
gtk_widget_show(ew->vbox);
box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
gtk_label_set_xalign(GTK_LABEL(ew->label_file_name), 0.5);
gtk_label_set_yalign(GTK_LABEL(ew->label_file_name), 0.5);
- gtk_box_pack_start(GTK_BOX(box), ew->label_file_name, TRUE, TRUE, 0);
+ gq_gtk_box_pack_start(GTK_BOX(box), ew->label_file_name, TRUE, TRUE, 0);
gtk_widget_show(ew->label_file_name);
- gtk_box_pack_start(GTK_BOX(ew->vbox), box, FALSE, FALSE, 0);
+ gq_gtk_box_pack_start(GTK_BOX(ew->vbox), box, FALSE, FALSE, 0);
gtk_widget_show(box);
sortable = GTK_TREE_SORTABLE(store);
for (n = EXIF_ADVCOL_DESCRIPTION; n <= EXIF_ADVCOL_ELEMENTS; n++)
gtk_tree_sortable_set_sort_func(sortable, n, advanced_exif_sort_cb,
- GINT_TO_POINTER(n), NULL);
+ GINT_TO_POINTER(n), nullptr);
/* set initial sort order */
gtk_tree_sortable_set_sort_column_id(sortable, EXIF_ADVCOL_NAME, GTK_SORT_ASCENDING);
ew->listview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(store));
g_object_unref(store);
- gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(ew->listview), TRUE);
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(ew->listview), TRUE);
advanced_exif_add_column(ew->listview, _("Description"), EXIF_ADVCOL_DESCRIPTION, FALSE);
gtk_tree_view_set_enable_search(GTK_TREE_VIEW(ew->listview), TRUE);
gtk_tree_view_set_search_column(GTK_TREE_VIEW(ew->listview), EXIF_ADVCOL_DESCRIPTION);
- gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(ew->listview), search_function_cb, ew, NULL);
+ gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(ew->listview), search_function_cb, ew, nullptr);
gtk_drag_source_set(ew->listview,
- GDK_BUTTON1_MASK | GDK_BUTTON2_MASK,
+ static_cast<GdkModifierType>(GDK_BUTTON1_MASK | GDK_BUTTON2_MASK),
advanced_exif_drag_types, n_exif_drag_types,
- GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK);
+ static_cast<GdkDragAction>(GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK));
g_signal_connect(G_OBJECT(ew->listview), "drag_data_get",
G_CALLBACK(advanced_exif_dnd_get), ew);
g_signal_connect(G_OBJECT(ew->listview), "button_release_event",
G_CALLBACK(advanced_exif_mouseclick), ew);
- ew->scrolled = gtk_scrolled_window_new(NULL, NULL);
- gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(ew->scrolled), GTK_SHADOW_IN);
+ ew->scrolled = gq_gtk_scrolled_window_new(nullptr, nullptr);
+ gq_gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(ew->scrolled), GTK_SHADOW_IN);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(ew->scrolled),
GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
- gtk_box_pack_start(GTK_BOX(ew->vbox), ew->scrolled, TRUE, TRUE, 0);
- gtk_container_add(GTK_CONTAINER(ew->scrolled), ew->listview);
+ gq_gtk_box_pack_start(GTK_BOX(ew->vbox), ew->scrolled, TRUE, TRUE, 0);
+ gq_gtk_container_add(GTK_WIDGET(ew->scrolled), ew->listview);
gtk_widget_show(ew->listview);
gtk_widget_show(ew->scrolled);