bookmark_list_set_no_defaults(sd->bookmarks, !folder_mode);
bookmark_list_set_editable(sd->bookmarks, folder_mode);
+ bookmark_list_set_only_directories(sd->bookmarks, folder_mode);
if (folder_mode)
{
gint no_defaults;
gint editable;
+ gint only_directories;
BookButtonData *active_button;
};
gchar *path = work->data;
gchar *buf;
+ work = work->next;
+
+ if (bm->only_directories && !isdir(path)) continue;
buf = bookmark_string(filename_from_path(path), path, NULL);
history_list_add_to_key(bm->key, buf, 0);
g_free(buf);
-
- work = work->next;
}
string_list_free(list);
bm->no_defaults = FALSE;
bm->editable = TRUE;
+ bm->only_directories = FALSE;
scrolled = gtk_scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled),
bm->editable = editable;
}
+void bookmark_list_set_only_directories(GtkWidget *list, gint only_directories)
+{
+ BookMarkData *bm;
+
+ bm = g_object_get_data(G_OBJECT(list), BOOKMARK_DATA_KEY);
+ if (!bm) return;
+
+ bm->only_directories = only_directories;
+}
+
void bookmark_list_add(GtkWidget *list, const gchar *name, const gchar *path)
{
BookMarkData *bm;
void bookmark_list_set_key(GtkWidget *list, const gchar *key);
void bookmark_list_set_no_defaults(GtkWidget *list, gint no_defaults);
void bookmark_list_set_editable(GtkWidget *list, gint editable);
+void bookmark_list_set_only_directories(GtkWidget *list, gint only_directories);
void bookmark_list_add(GtkWidget *list, const gchar *name, const gchar *path);
/* allows apps to set up the defaults */