Compare commits
63 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 586ac41c68 | |||
| 988e4f1134 | |||
| f03c304a25 | |||
| 87bb81887a | |||
| 5a80b1fb2d | |||
| f38a3c0d74 | |||
| 1a8c032dde | |||
| c6cb5eebdc | |||
| b2cc6279b2 | |||
| 525bd57c67 | |||
| e462f7957d | |||
| b525a47ad0 | |||
| ff2660ed80 | |||
| 2216cbd9a3 | |||
| 25509380c4 | |||
| fdafb0ec30 | |||
| 49268a750f | |||
| 616ad664f4 | |||
| eb70ceb551 | |||
| 64319ec227 | |||
| f9939a13f8 | |||
| 8e3cea214e | |||
| ba79bbcc65 | |||
| c79c73161c | |||
| 66d7626930 | |||
| 79101f3588 | |||
| ec4ce57e87 | |||
| c68c0e5a1c | |||
| 8a013f6c3e | |||
| 299a997aea | |||
| 2c9989c5d1 | |||
| 28ae6fd0be | |||
| 85346c0d99 | |||
| 3fc06dd8bb | |||
| 1e865a99c1 | |||
| 8792f8092e | |||
| 3352e4b955 | |||
| e5f16d59fc | |||
| 627ce4c77d | |||
| 7d9460fc57 | |||
| 7eedd893f0 | |||
| cae66dbe90 | |||
| 99ae34dbb4 | |||
| 6bd907a60a | |||
| bfe2935455 | |||
| 5f16b8c044 | |||
| 34c0a31975 | |||
| fdeaab7124 | |||
| 0703eeab08 | |||
| f73596a9b2 | |||
| 0b6393d572 | |||
| 6e715f77ef | |||
| 08f5202516 | |||
| 04b7b41b75 | |||
| e6dcb53237 | |||
| 0725e54524 | |||
| 6c20020be6 | |||
| 56f5382343 | |||
| 585772c32e | |||
| 05c629ffe9 | |||
| 69ff1d8a93 | |||
| 27ab4f7937 | |||
| 278d1063c7 |
+659
-2300
File diff suppressed because it is too large
Load Diff
@@ -194,17 +194,13 @@ struct _GtkFileChooserDefault
|
||||
GtkWidget *search_entry;
|
||||
GtkSearchEngine *search_engine;
|
||||
GtkQuery *search_query;
|
||||
GtkListStore *search_model;
|
||||
GtkTreeModelFilter *search_model_filter;
|
||||
GtkTreeModelSort *search_model_sort;
|
||||
GtkFileSystemModel *search_model;
|
||||
|
||||
/* OPERATION_MODE_RECENT */
|
||||
GtkWidget *recent_hbox;
|
||||
GtkRecentManager *recent_manager;
|
||||
GtkListStore *recent_model;
|
||||
GtkFileSystemModel *recent_model;
|
||||
guint load_recent_id;
|
||||
GtkTreeModelFilter *recent_model_filter;
|
||||
GtkTreeModelSort *recent_model_sort;
|
||||
|
||||
GtkWidget *filter_combo_hbox;
|
||||
GtkWidget *filter_combo;
|
||||
@@ -232,14 +228,11 @@ struct _GtkFileChooserDefault
|
||||
*/
|
||||
GtkTreeModel *shortcuts_combo_filter_model;
|
||||
|
||||
GtkTreeModelSort *sort_model;
|
||||
|
||||
/* Handles */
|
||||
GSList *loading_shortcuts;
|
||||
GSList *reload_icon_cancellables;
|
||||
GCancellable *file_list_drag_data_received_cancellable;
|
||||
GCancellable *update_current_folder_cancellable;
|
||||
GCancellable *show_and_select_files_cancellable;
|
||||
GCancellable *should_respond_get_info_cancellable;
|
||||
GCancellable *file_exists_get_info_cancellable;
|
||||
GCancellable *update_from_entry_cancellable;
|
||||
@@ -316,63 +309,6 @@ struct _GtkFileChooserDefault
|
||||
};
|
||||
|
||||
|
||||
/* GtkFileSystemModel private */
|
||||
|
||||
typedef struct _FileModelNode FileModelNode;
|
||||
|
||||
struct _GtkFileSystemModel
|
||||
{
|
||||
GObject parent_instance;
|
||||
|
||||
GtkFileSystem *file_system;
|
||||
gchar *attributes;
|
||||
FileModelNode *roots;
|
||||
GtkFolder *root_folder;
|
||||
GFile *root_file;
|
||||
|
||||
GtkFileSystemModelFilter filter_func;
|
||||
gpointer filter_data;
|
||||
|
||||
GSList *idle_clears;
|
||||
GSource *idle_clear_source;
|
||||
|
||||
gushort max_depth;
|
||||
|
||||
GSList *pending_cancellables;
|
||||
|
||||
guint show_hidden : 1;
|
||||
guint show_folders : 1;
|
||||
guint show_files : 1;
|
||||
guint folders_only : 1;
|
||||
guint has_editable : 1;
|
||||
};
|
||||
|
||||
struct _FileModelNode
|
||||
{
|
||||
GFile *file;
|
||||
FileModelNode *next;
|
||||
|
||||
GFileInfo *info;
|
||||
GtkFolder *folder;
|
||||
|
||||
FileModelNode *children;
|
||||
FileModelNode *parent;
|
||||
GtkFileSystemModel *model;
|
||||
|
||||
guint ref_count;
|
||||
guint n_referenced_children;
|
||||
|
||||
gushort depth;
|
||||
|
||||
guint has_dummy : 1;
|
||||
guint is_dummy : 1;
|
||||
guint is_visible : 1;
|
||||
guint loaded : 1;
|
||||
guint idle_clear : 1;
|
||||
guint load_pending : 1;
|
||||
};
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GTK_FILE_CHOOSER_PRIVATE_H__ */
|
||||
|
||||
+1636
-1610
File diff suppressed because it is too large
Load Diff
+42
-29
@@ -21,7 +21,8 @@
|
||||
#ifndef __GTK_FILE_SYSTEM_MODEL_H__
|
||||
#define __GTK_FILE_SYSTEM_MODEL_H__
|
||||
|
||||
#include "gtkfilesystem.h"
|
||||
#include <gio/gio.h>
|
||||
#include <gtk/gtkfilefilter.h>
|
||||
#include <gtk/gtktreemodel.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
@@ -34,46 +35,58 @@ typedef struct _GtkFileSystemModel GtkFileSystemModel;
|
||||
|
||||
GType _gtk_file_system_model_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum {
|
||||
GTK_FILE_SYSTEM_MODEL_INFO,
|
||||
GTK_FILE_SYSTEM_MODEL_DISPLAY_NAME,
|
||||
GTK_FILE_SYSTEM_MODEL_N_COLUMNS
|
||||
} GtkFileSystemModelColumns;
|
||||
typedef gboolean (*GtkFileSystemModelGetValue) (GtkFileSystemModel *model,
|
||||
GFile *file,
|
||||
GFileInfo *info,
|
||||
int column,
|
||||
GValue *value,
|
||||
gpointer user_data);
|
||||
|
||||
GtkFileSystemModel *_gtk_file_system_model_new (GtkFileSystem *file_system,
|
||||
GFile *root_file,
|
||||
gint max_depth,
|
||||
const gchar *attributes,
|
||||
GError **error);
|
||||
GtkFileSystemModel *_gtk_file_system_model_new (GtkFileSystemModelGetValue get_func,
|
||||
gpointer get_data,
|
||||
guint n_columns,
|
||||
...);
|
||||
GtkFileSystemModel *_gtk_file_system_model_new_for_directory(GFile * dir,
|
||||
const gchar * attributes,
|
||||
GtkFileSystemModelGetValue get_func,
|
||||
gpointer get_data,
|
||||
guint n_columns,
|
||||
...);
|
||||
GCancellable * _gtk_file_system_model_get_cancellable (GtkFileSystemModel *model);
|
||||
gboolean _gtk_file_system_model_iter_is_visible (GtkFileSystemModel *model,
|
||||
GtkTreeIter *iter);
|
||||
GFileInfo * _gtk_file_system_model_get_info (GtkFileSystemModel *model,
|
||||
GtkTreeIter *iter);
|
||||
gboolean _gtk_file_system_model_get_iter_for_file(GtkFileSystemModel *model,
|
||||
GtkTreeIter *iter,
|
||||
GFile *file);
|
||||
GFile * _gtk_file_system_model_get_file (GtkFileSystemModel *model,
|
||||
GtkTreeIter *iter);
|
||||
const GValue * _gtk_file_system_model_get_value (GtkFileSystemModel *model,
|
||||
GtkTreeIter * iter,
|
||||
int column);
|
||||
|
||||
void _gtk_file_system_model_add_and_query_file (GtkFileSystemModel *model,
|
||||
GFile *file,
|
||||
const char *attributes);
|
||||
void _gtk_file_system_model_update_file (GtkFileSystemModel *model,
|
||||
GFile *file,
|
||||
GFileInfo *info,
|
||||
gboolean requires_resort);
|
||||
|
||||
void _gtk_file_system_model_set_show_hidden (GtkFileSystemModel *model,
|
||||
gboolean show_hidden);
|
||||
void _gtk_file_system_model_set_show_folders (GtkFileSystemModel *model,
|
||||
gboolean show_folders);
|
||||
void _gtk_file_system_model_set_show_files (GtkFileSystemModel *model,
|
||||
gboolean show_files);
|
||||
void _gtk_file_system_model_freeze_updates (GtkFileSystemModel *model);
|
||||
void _gtk_file_system_model_thaw_updates (GtkFileSystemModel *model);
|
||||
void _gtk_file_system_model_clear_cache (GtkFileSystemModel *model,
|
||||
int column);
|
||||
|
||||
typedef gboolean (*GtkFileSystemModelFilter) (GtkFileSystemModel *model,
|
||||
GFile *file,
|
||||
GFileInfo *info,
|
||||
gpointer user_data);
|
||||
|
||||
void _gtk_file_system_model_set_filter (GtkFileSystemModel *model,
|
||||
GtkFileSystemModelFilter filter,
|
||||
gpointer user_data);
|
||||
|
||||
typedef void (*GtkFileSystemModelPathFunc) (GtkFileSystemModel *model,
|
||||
GtkTreePath *path,
|
||||
GtkTreeIter *iter,
|
||||
gpointer user_data);
|
||||
|
||||
void _gtk_file_system_model_path_do (GtkFileSystemModel *model,
|
||||
GFile *file,
|
||||
GtkFileSystemModelPathFunc func,
|
||||
gpointer user_data);
|
||||
void _gtk_file_system_model_set_filter (GtkFileSystemModel *model,
|
||||
GtkFileFilter *filter);
|
||||
|
||||
void _gtk_file_system_model_add_editable (GtkFileSystemModel *model,
|
||||
GtkTreeIter *iter);
|
||||
|
||||
Reference in New Issue
Block a user