g_free(td->title);
}
-static void set_osd_button(GtkTable *table, const gint rows, const gint cols, const gchar *key, const gchar *title, GtkWidget *template_view)
+static void set_osd_button(GtkGrid *grid, const gint rows, const gint cols, const gchar *key, const gchar *title, GtkWidget *template_view)
{
GtkWidget *new_button;
TagData *td;
g_signal_connect(G_OBJECT(new_button), "destroy",
G_CALLBACK(osd_btn_destroy_cb), new_button);
- gtk_table_attach_defaults(table, new_button, cols, cols+1, rows, rows+1);
+ gtk_grid_attach(grid, new_button, cols, rows, 1, 1);
}
pref_label_new(vbox, _("To include predefined tags in the template, click a button or drag-and-drop"));
- scrolled = gtk_scrolled_window_new(nullptr, nullptr);
- gtk_box_pack_start(GTK_BOX(vbox), scrolled, FALSE, FALSE, 0);
+ scrolled = gq_gtk_scrolled_window_new(nullptr, nullptr);
+ gq_gtk_box_pack_start(GTK_BOX(vbox), scrolled, FALSE, FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(scrolled), PREF_PAD_BORDER);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
viewport = gtk_viewport_new(nullptr, nullptr);
gtk_viewport_set_shadow_type(GTK_VIEWPORT(viewport), GTK_SHADOW_NONE);
- gtk_container_add(GTK_CONTAINER(scrolled), viewport);
+ gq_gtk_container_add(GTK_WIDGET(scrolled), viewport);
gtk_widget_show(viewport);
entries = (sizeof(predefined_tags) / sizeof(predefined_tags[0])) - 1;
max_rows = ceil(entries / max_cols);
- GtkTable *table;
- table = GTK_TABLE(gtk_table_new(max_rows, max_cols, FALSE));
- gtk_container_add(GTK_CONTAINER(viewport), GTK_WIDGET(table));
- gtk_widget_show(GTK_WIDGET(table));
+ GtkGrid *grid;
+ grid = GTK_GRID(gtk_grid_new());
+ gq_gtk_container_add(GTK_WIDGET(viewport), GTK_WIDGET(grid));
+ gtk_widget_show(GTK_WIDGET(grid));
for (rows = 0; rows < max_rows; rows++)
{
while (cols < max_cols && predefined_tags[i][0])
{
- set_osd_button(table, rows, cols, predefined_tags[i][0], predefined_tags[i][1], template_view);
+ set_osd_button(grid, rows, cols, predefined_tags[i][0], predefined_tags[i][1], template_view);
i = i + 1;
cols++;
}
{
GList *keywords;
GString *kwstr = nullptr;
- gchar *ret = nullptr;
g_assert(fd);
if (kwstr)
{
- ret = g_strdup(kwstr->str);
- g_string_free(kwstr, TRUE);
+ return g_string_free(kwstr, FALSE);
}
- return ret;
+ return nullptr;
}
gchar *image_osd_mkinfo(const gchar *str, FileData *fd, GHashTable *vars)
g_string_erase(osd_info, start-osd_info->str, end-start-1);
}
- g_strchomp(osd_info->str);
+ ret = g_string_free(osd_info, FALSE);
- ret = g_strdup(osd_info->str);
- g_string_free(osd_info, TRUE);
-
- return ret;
+ return g_strchomp(ret);
}
void osd_template_insert(GHashTable *vars, const gchar *keyword, const gchar *value, OsdTemplateFlags flags)