DEBUG_NAME() function for use with GTKInspector
authorColin Clark <colin.clark@cclark.uk>
Thu, 14 Feb 2019 12:05:04 +0000 (12:05 +0000)
committerColin Clark <colin.clark@cclark.uk>
Thu, 14 Feb 2019 12:05:04 +0000 (12:05 +0000)
This debug function can be used with GTKInspector to provide a visual
indication of where a widget is declared.

This is a documentation facility to aid developers new to the project.

Sample call:
GTK_DEBUG=interactive src/geeqie

22 files changed:
CODING
src/advanced_exif.c
src/bar.c
src/bar_gps.c
src/bar_sort.c
src/collect.c
src/debug.h
src/desktop_file.c
src/dupe.c
src/fullscreen.c
src/image.c
src/img-view.c
src/layout.c
src/layout_image.c
src/layout_util.c
src/logwindow.c
src/pan-view/pan-view.c
src/preferences.c
src/search.c
src/ui_help.c
src/ui_pathsel.c
src/ui_utildlg.c

diff --git a/CODING b/CODING
index 2b443df..bf8592e 100644 (file)
--- a/CODING
+++ b/CODING
@@ -9,6 +9,15 @@ log_printf()
 If the first word of the message is "error" or "warning" (case insensitive)
 the message will be color-coded appropriately.
 
+
+GTKInspector:
+
+DEBUG_NAME(widget)
+For use with the GTKInspector to provide a visual indication of where objects are declared.
+
+Sample command line call:
+GTK_DEBUG=interactive src/geeqie
+
 --------------------------------------------------------------------------------
 
 GPL header, in every file, like this:
index aa7797d..c551752 100644 (file)
@@ -382,6 +382,7 @@ GtkWidget *advanced_exif_new(void)
        ew = g_new0(ExifWin, 1);
 
        ew->window = window_new(GTK_WINDOW_TOPLEVEL, "view", NULL, NULL, _("Metadata"));
+       DEBUG_NAME(ew->window);
 
        geometry.min_width = 900;
        geometry.min_height = 600;
index 2e43042..d04e620 100644 (file)
--- a/src/bar.c
+++ b/src/bar.c
@@ -589,6 +589,7 @@ void bar_add(GtkWidget *bar, GtkWidget *pane)
        pd->bar = bar;
 
        expander = gtk_expander_new(NULL);
+       DEBUG_NAME(expander);
        if (pd && pd->title)
                {
                gtk_expander_set_label_widget(GTK_EXPANDER(expander), pd->title);
@@ -686,6 +687,7 @@ GtkWidget *bar_new(LayoutWindow *lw)
        bd->lw = lw;
 
        bd->widget = gtk_vbox_new(FALSE, PREF_PAD_GAP);
+       DEBUG_NAME(bd->widget);
        g_object_set_data(G_OBJECT(bd->widget), "bar_data", bd);
        g_signal_connect(G_OBJECT(bd->widget), "destroy",
                         G_CALLBACK(bar_destroy), bd);
@@ -699,6 +701,7 @@ GtkWidget *bar_new(LayoutWindow *lw)
        gtk_widget_set_size_request(bd->widget, bd->width, -1);
 
        box = gtk_hbox_new(FALSE, 0);
+       DEBUG_NAME(box);
 
        bd->label_file_name = gtk_label_new("");
        gtk_label_set_ellipsize(GTK_LABEL(bd->label_file_name), PANGO_ELLIPSIZE_END);
@@ -711,6 +714,7 @@ GtkWidget *bar_new(LayoutWindow *lw)
        gtk_widget_show(box);
 
        scrolled = gtk_scrolled_window_new(NULL, NULL);
+       DEBUG_NAME(scrolled);
        gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
                GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
        gtk_box_pack_start(GTK_BOX(bd->widget), scrolled, TRUE, TRUE, 0);
@@ -722,6 +726,7 @@ GtkWidget *bar_new(LayoutWindow *lw)
        gtk_viewport_set_shadow_type(GTK_VIEWPORT(gtk_bin_get_child(GTK_BIN(scrolled))), GTK_SHADOW_NONE);
 
        add_box = gtk_vbox_new(FALSE, 0);
+       DEBUG_NAME(add_box);
        gtk_box_pack_end(GTK_BOX(bd->widget), add_box, FALSE, FALSE, 0);
        tbar = pref_toolbar_new(add_box, GTK_TOOLBAR_ICONS);
        bd->add_button = pref_toolbar_button(tbar, GTK_STOCK_ADD, NULL, FALSE,
index 9a10387..6c6191d 100644 (file)
@@ -934,6 +934,7 @@ GtkWidget *bar_pane_gps_new(const gchar *id, const gchar *title, const gchar *ma
        pgd->height = height;
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
 
        gpswidget = gtk_champlain_embed_new();
index c420b41..01dd430 100644 (file)
@@ -644,6 +644,7 @@ static GtkWidget *bar_sort_new(LayoutWindow *lw, SortActionType action,
        sd->undo_collection = NULL;
 
        sd->vbox = gtk_vbox_new(FALSE, PREF_PAD_GAP);
+       DEBUG_NAME(sd->vbox);
        g_object_set_data(G_OBJECT(sd->vbox), "bar_sort_data", sd);
        g_signal_connect(G_OBJECT(sd->vbox), "destroy",
                         G_CALLBACK(bar_sort_destroy), sd);
@@ -664,6 +665,7 @@ static GtkWidget *bar_sort_new(LayoutWindow *lw, SortActionType action,
                         G_CALLBACK(bar_sort_mode_cb), sd);
 
        sd->folder_group = pref_box_new(sd->vbox, FALSE, GTK_ORIENTATION_VERTICAL, 0);
+       DEBUG_NAME(sd->folder_group);
 
        buttongrp = pref_radiobutton_new(sd->folder_group, NULL,
                                         _("Copy"), (sd->action == BAR_SORT_COPY),
@@ -715,10 +717,12 @@ static GtkWidget *bar_sort_new(LayoutWindow *lw, SortActionType action,
                             G_CALLBACK(bar_sort_set_selection_selected_cb), sd);
 
        sd->bookmarks = bookmark_list_new(SORT_KEY_FOLDERS, bar_sort_bookmark_select, sd);
+       DEBUG_NAME(sd->bookmarks);
        gtk_box_pack_start(GTK_BOX(sd->vbox), sd->bookmarks, TRUE, TRUE, 0);
        gtk_widget_show(sd->bookmarks);
 
        tbar = pref_toolbar_new(sd->vbox, GTK_TOOLBAR_ICONS);
+       DEBUG_NAME(tbar);
 
        sd->add_button = pref_toolbar_button(tbar, GTK_STOCK_ADD, NULL, FALSE,
                                             _("Add Bookmark"),
index dd3bb0a..851a853 100644 (file)
@@ -1316,6 +1316,7 @@ CollectWindow *collection_window_new(const gchar *path)
        cw->cd = collection_new(path);
 
        cw->window = window_new(GTK_WINDOW_TOPLEVEL, "collection", PIXBUF_INLINE_ICON_BOOK, NULL, NULL);
+       DEBUG_NAME(cw->window);
 
        geometry.min_width = DEFAULT_MINIMAL_WINDOW_SIZE;
        geometry.min_height = DEFAULT_MINIMAL_WINDOW_SIZE;
@@ -1362,6 +1363,7 @@ CollectWindow *collection_window_new(const gchar *path)
        gtk_widget_show(cw->status_box);
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
        gtk_box_pack_start(GTK_BOX(cw->status_box), frame, TRUE, TRUE, 0);
        gtk_widget_show(frame);
index 678a487..c221ce0 100644 (file)
@@ -61,6 +61,18 @@ void init_exec_time(void);
                                        } \
                                } while (0)
 
+/**
+ * @brief For use with the GTKInspector (>GTK 3.14)
+ *
+ * To simplify finding where objects are declared
+ * Sample command line call:
+ * GTK_DEBUG=interactive src/geeqie
+ */
+#define DEBUG_NAME(widget) do \
+                               { \
+                               gtk_widget_set_name(GTK_WIDGET(widget), g_strdup_printf("%s:%d", __FILE__, __LINE__, NULL)); \
+                               } while(0)
+
 #else /* DEBUG */
 
 #define get_regexp() (0)
@@ -74,6 +86,8 @@ void init_exec_time(void);
 
 #define DEBUG_N(n, ...)  do { } while(0)
 
+#define DEBUG_NAME(widget) do { } while(0)
+
 #endif /* DEBUG */
 
 #define DEBUG_0(...) DEBUG_N(0, __VA_ARGS__)
index 471ab5e..4142666 100644 (file)
@@ -189,6 +189,7 @@ static void editor_window_new(const gchar *src_path, const gchar *desktop_name)
 
 
        ew->window = window_new(GTK_WINDOW_TOPLEVEL, "Desktop", PIXBUF_INLINE_ICON_CONFIG, NULL, _("Desktop file"));
+       DEBUG_NAME(ew->window);
        gtk_window_set_type_hint(GTK_WINDOW(ew->window), GDK_WINDOW_TYPE_HINT_DIALOG);
 
        g_signal_connect(G_OBJECT(ew->window), "delete_event",
@@ -546,6 +547,7 @@ static void editor_list_window_create(void)
        editor_list_window = ewl = g_new0(EditorListWindow, 1);
 
        ewl->window = window_new(GTK_WINDOW_TOPLEVEL, "editors", PIXBUF_INLINE_ICON_CONFIG, NULL, _("Plugins"));
+       DEBUG_NAME(ewl->window);
        gtk_window_set_type_hint(GTK_WINDOW(ewl->window), GDK_WINDOW_TYPE_HINT_DIALOG);
        g_signal_connect(G_OBJECT(ewl->window), "delete_event",
                         G_CALLBACK(editor_list_window_delete), NULL);
index dffd07c..23f9c32 100644 (file)
@@ -3278,6 +3278,7 @@ DupeWindow *dupe_window_new()
        if (options->duplicates_match == DUPE_MATCH_NAME_CI) dw->match_mask = DUPE_MATCH_NAME_CI;
 
        dw->window = window_new(GTK_WINDOW_TOPLEVEL, "dupe", NULL, NULL, _("Find duplicates"));
+       DEBUG_NAME(dw->window);
 
        geometry.min_width = DEFAULT_MINIMAL_WINDOW_SIZE;
        geometry.min_height = DEFAULT_MINIMAL_WINDOW_SIZE;
@@ -3408,6 +3409,7 @@ DupeWindow *dupe_window_new()
        gtk_widget_show(status_box);
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
        gtk_box_pack_start(GTK_BOX(status_box), frame, TRUE, TRUE, 0);
        gtk_widget_show(frame);
index ef6f35b..958bad2 100644 (file)
@@ -240,6 +240,7 @@ FullScreenData *fullscreen_start(GtkWidget *window, ImageWindow *imd,
                                      &screen, &fs->same_region);
 
        fs->window = window_new(GTK_WINDOW_TOPLEVEL, "fullscreen", NULL, NULL, _("Full screen"));
+       DEBUG_NAME(fs->window);
 
        g_signal_connect(G_OBJECT(fs->window), "delete_event",
                         G_CALLBACK(fullscreen_delete_cb), fs);
@@ -655,6 +656,7 @@ GtkWidget *fullscreen_prefs_selection_new(const gchar *text, gint *screen_value,
        if (!screen_value) return NULL;
 
        vbox = gtk_vbox_new(FALSE, PREF_PAD_GAP);
+       DEBUG_NAME(vbox);
        hbox = pref_box_new(vbox, FALSE, GTK_ORIENTATION_HORIZONTAL, PREF_PAD_SPACE);
        if (text) pref_label_new(hbox, text);
 
index e66227c..57670ab 100644 (file)
@@ -2098,6 +2098,7 @@ void image_set_frame(ImageWindow *imd, gboolean frame)
        if (frame)
                {
                imd->frame = gtk_frame_new(NULL);
+               DEBUG_NAME(imd->frame);
                g_object_ref(imd->pr);
                if (imd->has_frame != -1) gtk_container_remove(GTK_CONTAINER(imd->widget), imd->pr);
                gtk_container_add(GTK_CONTAINER(imd->frame), imd->pr);
@@ -2152,10 +2153,12 @@ ImageWindow *image_new(gboolean frame)
        imd->orientation = 1;
 
        imd->pr = GTK_WIDGET(pixbuf_renderer_new());
+       DEBUG_NAME(imd->pr);
 
        image_options_set(imd);
 
        imd->widget = gtk_vbox_new(0, 0);
+       DEBUG_NAME(imd->widget);
 
        image_set_frame(imd, frame);
 
index 17989b3..f57ef39 100644 (file)
@@ -834,6 +834,7 @@ static ViewWindow *real_view_window_new(FileData *fd, GList *list, CollectionDat
        vw = g_new0(ViewWindow, 1);
 
        vw->window = window_new(GTK_WINDOW_TOPLEVEL, "view", PIXBUF_INLINE_ICON_VIEW, NULL, NULL);
+       DEBUG_NAME(vw->window);
 
        geometry.min_width = DEFAULT_MINIMAL_WINDOW_SIZE;
        geometry.min_height = DEFAULT_MINIMAL_WINDOW_SIZE;
index 9f4ec0b..dc9352a 100644 (file)
@@ -316,12 +316,14 @@ static GtkWidget *layout_tool_setup(LayoutWindow *lw)
        box = gtk_vbox_new(FALSE, 0);
 
        menu_tool_bar = layout_actions_menu_tool_bar(lw);
+       DEBUG_NAME(menu_tool_bar);
        gtk_widget_show(menu_tool_bar);
        gtk_box_pack_start(GTK_BOX(lw->main_box), lw->menu_tool_bar, FALSE, FALSE, 0);
        if (lw->options.toolbar_hidden) gtk_widget_hide(lw->toolbar[TOOLBAR_MAIN]);
 
        tabcomp = tab_completion_new_with_history(&lw->path_entry, NULL, "path_list", -1,
                                                  layout_path_entry_cb, lw);
+       DEBUG_NAME(tabcomp);
        tab_completion_add_tab_func(lw->path_entry, layout_path_entry_tab_cb, lw);
        tab_completion_add_append_func(lw->path_entry, layout_path_entry_tab_append_cb, lw);
        gtk_box_pack_start(GTK_BOX(box), tabcomp, FALSE, FALSE, 0);
@@ -338,6 +340,7 @@ static GtkWidget *layout_tool_setup(LayoutWindow *lw)
 #endif
 
        box_folders = GTK_WIDGET(gtk_hpaned_new());
+       DEBUG_NAME(box_folders);
        gtk_box_pack_start(GTK_BOX(box), box_folders, TRUE, TRUE, 0);
 
        lw->vd = vd_new(lw->options.dir_view_type, lw->dir_fd);
@@ -345,10 +348,12 @@ static GtkWidget *layout_tool_setup(LayoutWindow *lw)
        vd_set_select_func(lw->vd, layout_vd_select_cb, lw);
 
        lw->dir_view = lw->vd->widget;
+       DEBUG_NAME(lw->dir_view);
        gtk_paned_add2(GTK_PANED(box_folders), lw->dir_view);
        gtk_widget_show(lw->dir_view);
 
        scd = shortcuts_new_default(lw);
+       DEBUG_NAME(scd);
        gtk_paned_add1(GTK_PANED(box_folders), scd);
        gtk_paned_set_position(GTK_PANED(box_folders), lw->options.folder_window.vdivider_pos);
 
@@ -445,6 +450,7 @@ static GtkWidget *layout_sort_button(LayoutWindow *lw)
        GtkWidget *button;
 
        button = gtk_button_new_with_label(sort_type_get_text(lw->sort_method));
+       DEBUG_NAME(button);
        g_signal_connect(G_OBJECT(button), "clicked",
                         G_CALLBACK(layout_sort_button_press_cb), lw);
        gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
@@ -541,6 +547,7 @@ static GtkWidget *layout_zoom_button(LayoutWindow *lw, GtkWidget *box, gint size
 
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        if (size) gtk_widget_set_size_request(frame, size, -1);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
 
@@ -735,6 +742,7 @@ static GtkWidget *layout_status_label(gchar *text, GtkWidget *box, gboolean star
        GtkWidget *frame;
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        if (size) gtk_widget_set_size_request(frame, size, -1);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
        if (start)
@@ -765,10 +773,12 @@ static void layout_status_setup(LayoutWindow *lw, GtkWidget *box, gboolean small
        if (small_format)
                {
                lw->info_box = gtk_vbox_new(FALSE, 0);
+               DEBUG_NAME(lw->info_box);
                }
        else
                {
                lw->info_box = gtk_hbox_new(FALSE, 0);
+               DEBUG_NAME(lw->info_box);
                }
        gtk_box_pack_end(GTK_BOX(box), lw->info_box, FALSE, FALSE, 0);
        gtk_widget_show(lw->info_box);
@@ -776,6 +786,7 @@ static void layout_status_setup(LayoutWindow *lw, GtkWidget *box, gboolean small
        if (small_format)
                {
                hbox = gtk_hbox_new(FALSE, 0);
+               DEBUG_NAME(hbox);
                gtk_box_pack_start(GTK_BOX(lw->info_box), hbox, FALSE, FALSE, 0);
                gtk_widget_show(hbox);
                }
@@ -784,6 +795,7 @@ static void layout_status_setup(LayoutWindow *lw, GtkWidget *box, gboolean small
                hbox = lw->info_box;
                }
        lw->info_progress_bar = gtk_progress_bar_new();
+       DEBUG_NAME(lw->info_progress_bar);
        gtk_widget_set_size_request(lw->info_progress_bar, PROGRESS_WIDTH, -1);
 #if GTK_CHECK_VERSION(3,0,0)
        gtk_progress_bar_set_text(GTK_PROGRESS_BAR(lw->info_progress_bar), "");
@@ -798,19 +810,23 @@ static void layout_status_setup(LayoutWindow *lw, GtkWidget *box, gboolean small
        gtk_widget_show(lw->info_sort);
 
        lw->info_status = layout_status_label(NULL, lw->info_box, TRUE, 0, (!small_format));
+       DEBUG_NAME(lw->info_status);
        gtk_widget_set_tooltip_text(GTK_WIDGET(lw->info_status), _("Folder contents (files selected)"));
 
        if (small_format)
                {
                hbox = gtk_hbox_new(FALSE, 0);
+               DEBUG_NAME(hbox);
                gtk_box_pack_start(GTK_BOX(lw->info_box), hbox, FALSE, FALSE, 0);
                gtk_widget_show(hbox);
                }
        lw->info_details = layout_status_label(NULL, hbox, TRUE, 0, TRUE);
+       DEBUG_NAME(lw->info_details);
        gtk_widget_set_tooltip_text(GTK_WIDGET(lw->info_details), _("(Image dimensions) Image size"));
        toolbar = layout_actions_toolbar(lw, TOOLBAR_STATUS);
 
        toolbar_frame = gtk_frame_new(NULL);
+       DEBUG_NAME(toolbar_frame);
        gtk_frame_set_shadow_type(GTK_FRAME(toolbar_frame), GTK_SHADOW_IN);
        gtk_container_add(GTK_CONTAINER(toolbar_frame), toolbar);
        gtk_widget_show(toolbar_frame);
@@ -823,10 +839,12 @@ static void layout_status_setup(LayoutWindow *lw, GtkWidget *box, gboolean small
        if (small_format)
                {
                hbox = gtk_hbox_new(FALSE, 0);
+               DEBUG_NAME(hbox);
                gtk_box_pack_start(GTK_BOX(lw->info_box), hbox, FALSE, FALSE, 0);
                gtk_widget_show(hbox);
                }
        lw->info_pixel = layout_status_label(NULL, hbox, FALSE, 0, small_format); /* expand only in small format */
+       DEBUG_NAME(lw->info_pixel);
        gtk_widget_set_tooltip_text(GTK_WIDGET(lw->info_pixel), _("[Pixel x,y coord]: (Pixel R,G,B value)"));
        if (!lw->options.show_info_pixel) gtk_widget_hide(gtk_widget_get_parent(lw->info_pixel));
 }
@@ -1491,6 +1509,7 @@ static void layout_tools_setup(LayoutWindow *lw, GtkWidget *tools, GtkWidget *fi
                GdkWindowHints hints;
 
                lw->tools = window_new(GTK_WINDOW_TOPLEVEL, "tools", PIXBUF_INLINE_ICON_TOOLS, NULL, _("Tools"));
+               DEBUG_NAME(lw->tools);
                g_signal_connect(G_OBJECT(lw->tools), "delete_event",
                                 G_CALLBACK(layout_tools_delete_cb), lw);
                layout_keyboard_init(lw, lw->tools);
@@ -1528,6 +1547,7 @@ static void layout_tools_setup(LayoutWindow *lw, GtkWidget *tools, GtkWidget *fi
        layout_actions_add_window(lw, lw->tools);
 
        vbox = gtk_vbox_new(FALSE, 0);
+       DEBUG_NAME(vbox);
        gtk_container_add(GTK_CONTAINER(lw->tools), vbox);
        gtk_box_pack_start(GTK_BOX(vbox), GTK_WIDGET(lw->menu_tool_bar), FALSE, FALSE, 0);
        gtk_widget_show(vbox);
@@ -1537,10 +1557,12 @@ static void layout_tools_setup(LayoutWindow *lw, GtkWidget *tools, GtkWidget *fi
        if (vertical)
                {
                lw->tools_pane = gtk_vpaned_new();
+               DEBUG_NAME(lw->tools_pane);
                }
        else
                {
                lw->tools_pane = gtk_hpaned_new();
+               DEBUG_NAME(lw->tools_pane);
                }
        gtk_box_pack_start(GTK_BOX(vbox), lw->tools_pane, TRUE, TRUE, 0);
        gtk_widget_show(lw->tools_pane);
@@ -1679,6 +1701,7 @@ static void layout_grid_setup(LayoutWindow *lw)
        layout_actions_setup(lw);
 
        lw->group_box = gtk_vbox_new(FALSE, 0);
+       DEBUG_NAME(lw->group_box);
        gtk_box_pack_end(GTK_BOX(lw->main_box), lw->group_box, TRUE, TRUE, 0);
        gtk_widget_show(lw->group_box);
 
@@ -1688,16 +1711,20 @@ static void layout_grid_setup(LayoutWindow *lw)
                {
                layout_split_change(lw, lw->split_mode); /* this re-creates image frame for the new configuration */
                image_sb = lw->utility_box;
+               DEBUG_NAME(image_sb);
                }
        else
                {
                GtkWidget *image; /* image or split images together */
                image = layout_image_setup_split(lw, lw->split_mode);
                image_sb = layout_bars_prepare(lw, image);
+               DEBUG_NAME(image_sb);
                }
 
        tools = layout_tools_new(lw);
+       DEBUG_NAME(tools);
        files = layout_list_new(lw);
+       DEBUG_NAME(files);
 
 
        if (lw->options.tools_float || lw->options.tools_hidden)
@@ -1724,8 +1751,10 @@ static void layout_grid_setup(LayoutWindow *lw)
        layout_grid_compute(lw, image_sb, tools, files, &w1, &w2, &w3);
 
        v = lw->v_pane = gtk_vpaned_new();
+       DEBUG_NAME(v);
 
        h = lw->h_pane = gtk_hpaned_new();
+       DEBUG_NAME(h);
 
        if (!layout_location_vertical(priority_location))
                {
@@ -2121,6 +2150,7 @@ void layout_show_config_window(LayoutWindow *lw)
        copy_layout_options(&lc->options, &lw->options);
 
        lc->configwindow = window_new(GTK_WINDOW_TOPLEVEL, "Layout", PIXBUF_INLINE_ICON_CONFIG, NULL, _("Window options and layout"));
+       DEBUG_NAME(lc->configwindow);
        gtk_window_set_type_hint(GTK_WINDOW(lc->configwindow), GDK_WINDOW_TYPE_HINT_DIALOG);
 
        g_signal_connect(G_OBJECT(lc->configwindow), "delete_event",
@@ -2131,6 +2161,7 @@ void layout_show_config_window(LayoutWindow *lw)
        gtk_container_set_border_width(GTK_CONTAINER(lc->configwindow), PREF_PAD_BORDER);
 
        win_vbox = gtk_vbox_new(FALSE, PREF_PAD_SPACE);
+       DEBUG_NAME(win_vbox);
        gtk_container_add(GTK_CONTAINER(lc->configwindow), win_vbox);
        gtk_widget_show(win_vbox);
 
@@ -2179,8 +2210,10 @@ void layout_show_config_window(LayoutWindow *lw)
                }
 
        frame = pref_frame_new(win_vbox, TRUE, NULL, GTK_ORIENTATION_VERTICAL, PREF_PAD_GAP);
+       DEBUG_NAME(frame);
 
        vbox = gtk_vbox_new(FALSE, PREF_PAD_SPACE);
+       DEBUG_NAME(vbox);
        gtk_container_add(GTK_CONTAINER(frame), vbox);
        gtk_widget_show(vbox);
 
@@ -2219,6 +2252,7 @@ void layout_show_config_window(LayoutWindow *lw)
        group = pref_group_new(vbox, FALSE, _("Layout"), GTK_ORIENTATION_VERTICAL);
 
        lc->layout_widget = layout_config_new();
+       DEBUG_NAME(lc->layout_widget);
        layout_config_set(lc->layout_widget, lw->options.style, lw->options.order);
        gtk_box_pack_start(GTK_BOX(group), lc->layout_widget, TRUE, TRUE, 0);
 
@@ -2388,6 +2422,7 @@ LayoutWindow *layout_new_with_geometry(FileData *dir_fd, LayoutOptions *lop,
        /* window */
 
        lw->window = window_new(GTK_WINDOW_TOPLEVEL, GQ_APPNAME_LC, NULL, NULL, NULL);
+       DEBUG_NAME(lw->window);
        gtk_window_set_resizable(GTK_WINDOW(lw->window), TRUE);
        gtk_container_set_border_width(GTK_CONTAINER(lw->window), 0);
 
@@ -2434,6 +2469,7 @@ LayoutWindow *layout_new_with_geometry(FileData *dir_fd, LayoutOptions *lop,
 #endif
 
        lw->main_box = gtk_vbox_new(FALSE, 0);
+       DEBUG_NAME(lw->main_box);
        gtk_container_add(GTK_CONTAINER(lw->window), lw->main_box);
        gtk_widget_show(lw->main_box);
 
index c18bf23..570f77b 100644 (file)
@@ -2182,9 +2182,15 @@ GtkWidget *layout_image_setup_split_hv(LayoutWindow *lw, gboolean horizontal)
 
        /* horizontal split means vpaned and vice versa */
        if (horizontal)
+               {
                paned = gtk_vpaned_new();
+               DEBUG_NAME(paned);
+               }
        else
+               {
                paned = gtk_hpaned_new();
+               DEBUG_NAME(paned);
+               }
 
        gtk_paned_pack1(GTK_PANED(paned), lw->split_images[0]->widget, TRUE, TRUE);
        gtk_paned_pack2(GTK_PANED(paned), lw->split_images[1]->widget, TRUE, TRUE);
@@ -2210,8 +2216,11 @@ GtkWidget *layout_image_setup_split_quad(LayoutWindow *lw)
        layout_image_setup_split_common(lw, 4);
 
        hpaned = gtk_hpaned_new();
+       DEBUG_NAME(hpaned);
        vpaned1 = gtk_vpaned_new();
+       DEBUG_NAME(vpaned1);
        vpaned2 = gtk_vpaned_new();
+       DEBUG_NAME(vpaned2);
 
        gtk_paned_pack1(GTK_PANED(vpaned1), lw->split_images[0]->widget, TRUE, TRUE);
        gtk_paned_pack2(GTK_PANED(vpaned1), lw->split_images[2]->widget, TRUE, TRUE);
index f5e03af..5fd058c 100644 (file)
@@ -2779,7 +2779,9 @@ GtkWidget *layout_actions_menu_tool_bar(LayoutWindow *lw)
        if (lw->menu_tool_bar) return lw->menu_tool_bar;
 
        menu_bar = layout_actions_menu_bar(lw);
+       DEBUG_NAME(menu_bar);
        toolbar = layout_actions_toolbar(lw, TOOLBAR_MAIN);
+       DEBUG_NAME(toolbar);
        lw->menu_tool_bar = gtk_vbox_new(FALSE, 0);
 
        gtk_box_pack_start(GTK_BOX(lw->menu_tool_bar), menu_bar, FALSE, FALSE, 0);
@@ -3267,6 +3269,7 @@ static void layout_bar_set_default(LayoutWindow *lw)
        if (!lw->utility_box) return;
 
        bar = bar_new(lw);
+       DEBUG_NAME(bar);
 
        layout_bar_set(lw, bar);
 
@@ -3472,6 +3475,7 @@ GtkWidget *layout_bars_prepare(LayoutWindow *lw, GtkWidget *image)
        if (lw->utility_box) return lw->utility_box;
        lw->utility_box = gtk_hbox_new(FALSE, PREF_PAD_GAP);
        lw->utility_paned = gtk_hpaned_new();
+       DEBUG_NAME(lw->utility_paned);
        gtk_box_pack_start(GTK_BOX(lw->utility_box), lw->utility_paned, TRUE, TRUE, 0);
 
        gtk_paned_pack1(GTK_PANED(lw->utility_paned), image, TRUE, FALSE);
index a3208e7..e805ae3 100644 (file)
@@ -140,6 +140,7 @@ static LogWindow *log_window_create(LayoutWindow *lw)
        logwin = g_new0(LogWindow, 1);
 
        window = window_new(GTK_WINDOW_TOPLEVEL, "log", NULL, NULL, _("Log"));
+       DEBUG_NAME(window);
        win_vbox = gtk_vbox_new(FALSE, PREF_PAD_SPACE);
        gtk_container_add(GTK_CONTAINER(window), win_vbox);
        gtk_widget_show(win_vbox);
index 020603d..3833070 100644 (file)
@@ -1809,6 +1809,7 @@ static void pan_window_new_real(FileData *dir_fd)
        pw->idle_id = 0;
 
        pw->window = window_new(GTK_WINDOW_TOPLEVEL, "panview", NULL, NULL, _("Pan View"));
+       DEBUG_NAME(pw->window);
 
        geometry.min_width = DEFAULT_MINIMAL_WINDOW_SIZE;
        geometry.min_height = DEFAULT_MINIMAL_WINDOW_SIZE;
@@ -1818,6 +1819,7 @@ static void pan_window_new_real(FileData *dir_fd)
        gtk_container_set_border_width(GTK_CONTAINER(pw->window), 0);
 
        vbox = gtk_vbox_new(FALSE, 0);
+       DEBUG_NAME(vbox);
        gtk_container_add(GTK_CONTAINER(pw->window), vbox);
        gtk_widget_show(vbox);
 
@@ -1909,6 +1911,7 @@ static void pan_window_new_real(FileData *dir_fd)
        box = pref_box_new(vbox, FALSE, GTK_ORIENTATION_HORIZONTAL, 0);
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
        gtk_widget_set_size_request(frame, ZOOM_LABEL_WIDTH, -1);
        gtk_box_pack_start(GTK_BOX(box), frame, TRUE, TRUE, 0);
@@ -1922,6 +1925,7 @@ static void pan_window_new_real(FileData *dir_fd)
        pw->label_message = pref_label_new(hbox, "");
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
        gtk_widget_set_size_request(frame, ZOOM_LABEL_WIDTH, -1);
        gtk_box_pack_end(GTK_BOX(box), frame, FALSE, FALSE, 0);
index 5376f08..ee67d90 100644 (file)
@@ -3305,6 +3305,7 @@ static void config_window_create(void)
        if (!c_options) c_options = init_options(NULL);
 
        configwindow = window_new(GTK_WINDOW_TOPLEVEL, "preferences", PIXBUF_INLINE_ICON_CONFIG, NULL, _("Preferences"));
+       DEBUG_NAME(configwindow);
        gtk_window_set_type_hint(GTK_WINDOW(configwindow), GDK_WINDOW_TYPE_HINT_DIALOG);
        g_signal_connect(G_OBJECT(configwindow), "delete_event",
                         G_CALLBACK(config_window_delete), NULL);
index 196c7bb..575b557 100644 (file)
@@ -3147,6 +3147,7 @@ void search_new(FileData *dir_fd, FileData *example_file)
                }
 
        sd->window = window_new(GTK_WINDOW_TOPLEVEL, "search", NULL, NULL, _("Image search"));
+       DEBUG_NAME(sd->window);
 
        gtk_window_set_resizable(GTK_WINDOW(sd->window), TRUE);
 
@@ -3473,6 +3474,7 @@ void search_new(FileData *dir_fd, FileData *example_file)
                                              G_CALLBACK(search_thumb_toggle_cb), sd);
 
        frame = gtk_frame_new(NULL);
+       DEBUG_NAME(frame);
        gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
        gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, PREF_PAD_SPACE);
        gtk_widget_show(frame);
index 296f698..0d09e08 100644 (file)
@@ -207,6 +207,7 @@ GtkWidget *help_window_new(const gchar *title,
        /* window */
 
        window = window_new(GTK_WINDOW_TOPLEVEL, subclass, NULL, NULL, title);
+       DEBUG_NAME(window);
        gtk_window_set_resizable(GTK_WINDOW(window), TRUE);
        gtk_window_set_default_size(GTK_WINDOW(window), HELP_WINDOW_WIDTH, HELP_WINDOW_HEIGHT);
 
index 73568cd..22144c4 100644 (file)
@@ -1068,6 +1068,7 @@ GtkWidget *path_selection_new_with_files(GtkWidget *entry, const gchar *path,
        if (filter)
                {
                paned = gtk_hpaned_new();
+               DEBUG_NAME(paned);
                gtk_table_attach(GTK_TABLE(table), paned, 0, 3, 1, 2,
                                 GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
                gtk_widget_show(paned);
index 601d307..7659d12 100644 (file)
@@ -402,6 +402,7 @@ static void generic_dialog_setup(GenericDialog *gd,
        gd->cancel_cb = cancel_cb;
 
        gd->dialog = window_new(GTK_WINDOW_TOPLEVEL, role, NULL, NULL, title);
+       DEBUG_NAME(gd->dialog);
        gtk_window_set_type_hint(GTK_WINDOW(gd->dialog), GDK_WINDOW_TYPE_HINT_DIALOG);
 
        if (options->save_dialog_window_positions)