made the symbol list document-oriented, so it has not to be generated on every notebook switch page event
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@65 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
parent
90ca4650d0
commit
e7e279e24b
@ -198,9 +198,14 @@ gint document_create_new_sci(const gchar *filename)
|
||||
gtk_notebook_insert_page_menu(GTK_NOTEBOOK(app->notebook), GTK_WIDGET(sci), hbox, this.tabmenu_label, 0);
|
||||
gtk_notebook_set_current_page(GTK_NOTEBOOK(app->notebook), 0);
|
||||
iter = treeviews_openfiles_add(new_idx, title);
|
||||
|
||||
g_free(title);
|
||||
|
||||
this.tag_store = NULL;
|
||||
this.tag_tree = NULL;
|
||||
//this.tag_tree = gtk_tree_view_new();
|
||||
//gtk_widget_show(this.tag_tree);
|
||||
//treeviews_prepare_taglist(this.tag_tree, this.tag_store, new_idx);
|
||||
|
||||
// "the" SCI signal
|
||||
g_signal_connect((GtkWidget*) sci, "sci-notify", G_CALLBACK(on_editor_notification), GINT_TO_POINTER(new_idx));
|
||||
// signal for insert-key(works without too, but to update the right status bar)
|
||||
@ -216,7 +221,6 @@ gint document_create_new_sci(const gchar *filename)
|
||||
this.scid = sciid;
|
||||
this.file_name = (filename) ? g_strdup(filename) : NULL;
|
||||
this.sci = sci;
|
||||
//this.tab_button = but;
|
||||
this.encoding = NULL;
|
||||
this.tm_file = NULL;
|
||||
this.iter = iter;
|
||||
@ -228,7 +232,7 @@ gint document_create_new_sci(const gchar *filename)
|
||||
this.do_overwrite = FALSE;
|
||||
this.readonly = FALSE;
|
||||
doc_list[new_idx] = this;
|
||||
//has_tabs = TRUE;
|
||||
|
||||
return new_idx;
|
||||
}
|
||||
|
||||
@ -247,6 +251,11 @@ gboolean document_remove(gint page_num)
|
||||
}
|
||||
gtk_notebook_remove_page(GTK_NOTEBOOK(app->notebook), page_num);
|
||||
treeviews_openfiles_remove(doc_list[idx].iter);
|
||||
if (GTK_IS_WIDGET(doc_list[idx].tag_tree))
|
||||
{
|
||||
g_object_unref(doc_list[idx].tag_tree);
|
||||
gtk_widget_destroy(doc_list[idx].tag_tree);
|
||||
}
|
||||
msgwin_status_add(_("File %s closed."),
|
||||
(doc_list[idx].file_name) ? doc_list[idx].file_name : GEANY_STRING_UNTITLED);
|
||||
g_free(doc_list[idx].encoding);
|
||||
@ -258,7 +267,7 @@ gboolean document_remove(gint page_num)
|
||||
doc_list[idx].tm_file = NULL;
|
||||
if (gtk_notebook_get_n_pages(GTK_NOTEBOOK(app->notebook)) == 0)
|
||||
{
|
||||
utils_update_visible_tag_lists(-1);
|
||||
utils_update_tag_list(-1, FALSE);
|
||||
//on_notebook1_switch_page(GTK_NOTEBOOK(app->notebook), NULL, 0, NULL);
|
||||
utils_set_window_title(-1);
|
||||
utils_save_buttons_toggle(FALSE);
|
||||
@ -285,7 +294,7 @@ void document_new_file(filetype *ft)
|
||||
document_set_filetype(idx, (ft) ? ft : filetypes[GEANY_FILETYPES_ALL]);
|
||||
utils_set_window_title(idx);
|
||||
utils_build_show_hide(idx);
|
||||
//utils_update_visible_tag_lists(idx);
|
||||
//utils_update_tag_list(idx, FALSE);
|
||||
doc_list[idx].mtime = time(NULL);
|
||||
doc_list[idx].changed = FALSE;
|
||||
document_set_text_changed(idx);
|
||||
@ -442,7 +451,7 @@ void document_open_file(gint idx, const gchar *filename, gint pos, gboolean read
|
||||
filename, gtk_notebook_get_n_pages(GTK_NOTEBOOK(app->notebook)),
|
||||
(readonly) ? _(", read-only") : "");
|
||||
}
|
||||
//document_update_tag_list(idx);
|
||||
//utils_update_tag_list(idx, FALSE);
|
||||
document_set_text_changed(idx);
|
||||
|
||||
#ifdef GEANY_WIN32
|
||||
@ -748,13 +757,13 @@ void document_update_tag_list(gint idx)
|
||||
// parse the file after setting the filetype
|
||||
TM_SOURCE_FILE(doc_list[idx].tm_file)->lang = getNamedLanguage((doc_list[idx].file_type)->name);
|
||||
tm_source_file_update(doc_list[idx].tm_file, TRUE, FALSE, TRUE);
|
||||
utils_update_visible_tag_lists(idx);
|
||||
utils_update_tag_list(idx, TRUE);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (tm_source_file_update(doc_list[idx].tm_file, TRUE, FALSE, TRUE))
|
||||
{
|
||||
utils_update_visible_tag_lists(idx);
|
||||
utils_update_tag_list(idx, TRUE);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -81,6 +81,8 @@ typedef struct document
|
||||
ScintillaObject *sci;
|
||||
GtkWidget *tab_label;
|
||||
GtkWidget *tabmenu_label;
|
||||
GtkWidget *tag_tree;
|
||||
GtkTreeStore *tag_store;
|
||||
GtkTreeIter iter;
|
||||
gint scid;
|
||||
gboolean readonly;
|
||||
@ -103,6 +105,8 @@ typedef struct MyApp
|
||||
gint toolbar_icon_style;
|
||||
gint geometry[4];
|
||||
gboolean debug_mode;
|
||||
// represents the state at startup while opening session files
|
||||
gboolean opening_session_files;
|
||||
gboolean have_vte;
|
||||
gboolean ignore_global_tags;
|
||||
gboolean toolbar_visible;
|
||||
@ -184,6 +188,8 @@ typedef struct MyApp
|
||||
GtkWidget *find_dialog;
|
||||
GtkWidget *replace_dialog;
|
||||
GtkWidget *build_menu_item_link;
|
||||
GtkWidget *default_tag_tree;
|
||||
//GtkTreeStore *default_tag_store;
|
||||
const TMWorkspace *tm_workspace;
|
||||
GQueue *recent_queue;
|
||||
} MyApp;
|
||||
@ -227,7 +233,6 @@ enum
|
||||
RIGHT
|
||||
};
|
||||
|
||||
|
||||
// prototype from tagmanager/parse.h, used in document.c, ugly but it works
|
||||
extern langType getNamedLanguage(const char *const name);
|
||||
|
||||
|
||||
@ -28,47 +28,44 @@
|
||||
#include "treeviews.h"
|
||||
|
||||
|
||||
/* does some preparing things to the tag list widget */
|
||||
void treeviews_prepare_taglist(void)
|
||||
/* the following two functions are document-related, but I think they fit better here than in document.c*/
|
||||
void treeviews_prepare_taglist(GtkWidget *tree, GtkTreeStore *store)
|
||||
{
|
||||
GtkCellRenderer *renderer;
|
||||
GtkTreeViewColumn *column;
|
||||
GtkTreeSelection *select;
|
||||
tv.tree_taglist = lookup_widget(app->window, "treeview2");
|
||||
|
||||
tv.store_taglist = gtk_tree_store_new(1, G_TYPE_STRING);
|
||||
|
||||
renderer = gtk_cell_renderer_text_new();
|
||||
column = gtk_tree_view_column_new_with_attributes(_("Symbols"), renderer, "text", 0, NULL);
|
||||
gtk_tree_view_append_column(GTK_TREE_VIEW(tv.tree_taglist), column);
|
||||
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tv.tree_taglist), FALSE);
|
||||
gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);
|
||||
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tree), FALSE);
|
||||
|
||||
gtk_widget_modify_font(tv.tree_taglist, pango_font_description_from_string(app->tagbar_font));
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(tv.tree_taglist), GTK_TREE_MODEL(tv.store_taglist));
|
||||
gtk_widget_modify_font(tree, pango_font_description_from_string(app->tagbar_font));
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(tree), GTK_TREE_MODEL(store));
|
||||
|
||||
// selection handling
|
||||
select = gtk_tree_view_get_selection(GTK_TREE_VIEW(tv.tree_taglist));
|
||||
select = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree));
|
||||
gtk_tree_selection_set_mode(select, GTK_SELECTION_SINGLE);
|
||||
g_signal_connect(G_OBJECT(select), "changed", G_CALLBACK(on_taglist_tree_selection_changed), NULL);
|
||||
}
|
||||
|
||||
|
||||
void treeviews_init_tag_list(void)
|
||||
void treeviews_init_tag_list(gint idx)
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_function), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_function), 0, _("Function"), -1);
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_macro), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_macro), 0, _("Macro"), -1);
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_member), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_member), 0, _("Members"), -1);
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_variable), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_variable), 0, _("Variables"), -1);
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_namespace), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_namespace), 0, _("Namespace"), -1);
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_struct), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_struct), 0, _("Struct / Typedef"), -1);
|
||||
gtk_tree_store_append(tv.store_taglist, &(tv.tag_other), NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &(tv.tag_other), 0, _("Other"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_function), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_function), 0, _("Function"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_macro), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_macro), 0, _("Macro"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_member), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_member), 0, _("Members"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_variable), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_variable), 0, _("Variables"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_namespace), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_namespace), 0, _("Namespace"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_struct), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_struct), 0, _("Struct / Typedef"), -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &(tv.tag_other), NULL);
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &(tv.tag_other), 0, _("Other"), -1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -28,10 +28,9 @@
|
||||
|
||||
|
||||
typedef struct treeviews {
|
||||
//GtkListStore *store_taglist;
|
||||
GtkTreeStore *store_taglist;
|
||||
//GtkTreeStore *store_taglist;
|
||||
GtkListStore *store_openfiles;
|
||||
GtkWidget *tree_taglist;
|
||||
//GtkWidget *tree_taglist;
|
||||
GtkWidget *tree_openfiles;
|
||||
GtkWidget *popup_openfiles;
|
||||
GtkTreeIter tag_function;
|
||||
@ -47,11 +46,11 @@ treeviews tv;
|
||||
|
||||
|
||||
|
||||
void treeviews_prepare_taglist(void);
|
||||
void treeviews_prepare_taglist(GtkWidget *tree, GtkTreeStore *store);
|
||||
|
||||
gint treeviews_sort_tag_list(GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_data);
|
||||
|
||||
void treeviews_init_tag_list(void);
|
||||
void treeviews_init_tag_list(gint idx);
|
||||
|
||||
void treeviews_prepare_openfiles(void);
|
||||
|
||||
|
||||
109
src/utils.c
109
src/utils.c
@ -655,45 +655,59 @@ void utils_set_fullscreen(void)
|
||||
}
|
||||
|
||||
|
||||
void utils_update_visible_tag_lists(gint idx)
|
||||
void utils_update_tag_list(gint idx, gboolean update)
|
||||
{
|
||||
GList *tmp;
|
||||
const GList *tags;
|
||||
|
||||
if (gtk_bin_get_child(GTK_BIN(app->tagbar)))
|
||||
gtk_container_remove(GTK_CONTAINER(app->tagbar), gtk_bin_get_child(GTK_BIN(app->tagbar)));
|
||||
|
||||
if (app->default_tag_tree == NULL)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
GtkTreeStore *store = gtk_tree_store_new(1, G_TYPE_STRING);
|
||||
app->default_tag_tree = gtk_tree_view_new();
|
||||
treeviews_prepare_taglist(app->default_tag_tree, store);
|
||||
gtk_tree_store_append(store, &iter, NULL);
|
||||
gtk_tree_store_set(store, &iter, 0, _("No tags found"), -1);
|
||||
gtk_widget_show(app->default_tag_tree);
|
||||
g_object_ref((gpointer)app->default_tag_tree); // to hold it after removing
|
||||
}
|
||||
|
||||
// make all inactive, because there is no more tab left, or something strange occured
|
||||
if (idx == -1 && app->treeview_symbol_visible)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
gtk_tree_store_clear(tv.store_taglist);
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, _("No tags found"), -1);
|
||||
gtk_widget_set_sensitive(app->tagbar, FALSE);
|
||||
return;
|
||||
}
|
||||
|
||||
if (! doc_list[idx].file_type->has_tags)
|
||||
if (idx == -1 || ! app->treeview_symbol_visible || ! doc_list[idx].file_type->has_tags)
|
||||
{
|
||||
gtk_widget_set_sensitive(app->tagbar, FALSE);
|
||||
gtk_container_add(GTK_CONTAINER(app->tagbar), app->default_tag_tree);
|
||||
return;
|
||||
}
|
||||
//geany_debug("before %d", update);
|
||||
|
||||
// updating the tag list in the left tag window if visisble
|
||||
if (app->treeview_symbol_visible)
|
||||
if (update)
|
||||
{ // updating the tag list in the left tag window
|
||||
if (doc_list[idx].tag_tree == NULL)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
doc_list[idx].tag_store = gtk_tree_store_new(1, G_TYPE_STRING);
|
||||
doc_list[idx].tag_tree = gtk_tree_view_new();
|
||||
treeviews_prepare_taglist(doc_list[idx].tag_tree, doc_list[idx].tag_store);
|
||||
gtk_widget_show(doc_list[idx].tag_tree);
|
||||
g_object_ref((gpointer)doc_list[idx].tag_tree); // to hold it after removing
|
||||
}
|
||||
|
||||
tags = utils_get_tag_list(idx, tm_tag_max_t);
|
||||
gtk_tree_store_clear(tv.store_taglist);
|
||||
|
||||
if (doc_list[idx].tm_file && tags)
|
||||
if (doc_list[idx].tm_file != NULL && tags != NULL)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
GtkTreeModel *model;
|
||||
gtk_widget_set_sensitive(app->tagbar, TRUE);
|
||||
|
||||
gtk_tree_store_clear(doc_list[idx].tag_store);
|
||||
// unref the store to speed up the filling(from TreeView Tutorial)
|
||||
model = gtk_tree_view_get_model(GTK_TREE_VIEW(tv.tree_taglist));
|
||||
model = gtk_tree_view_get_model(GTK_TREE_VIEW(doc_list[idx].tag_tree));
|
||||
g_object_ref(model); // Make sure the model stays with us after the tree view unrefs it
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(tv.tree_taglist), NULL); // Detach model from view
|
||||
treeviews_init_tag_list();
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(doc_list[idx].tag_tree), NULL); // Detach model from view
|
||||
|
||||
treeviews_init_tag_list(idx);
|
||||
for (tmp = (GList*)tags; tmp; tmp = g_list_next(tmp))
|
||||
{
|
||||
switch (((GeanySymbol*)tmp->data)->type)
|
||||
@ -701,59 +715,70 @@ void utils_update_visible_tag_lists(gint idx)
|
||||
case tm_tag_prototype_t:
|
||||
case tm_tag_function_t:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_function));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_function));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
break;
|
||||
}
|
||||
case tm_tag_macro_t:
|
||||
case tm_tag_macro_with_arg_t:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_macro));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_macro));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
break;
|
||||
}
|
||||
case tm_tag_member_t:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_member));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_member));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
break;
|
||||
}
|
||||
case tm_tag_typedef_t:
|
||||
case tm_tag_struct_t:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_struct));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_struct));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
break;
|
||||
}
|
||||
case tm_tag_variable_t:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_variable));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_variable));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
break;
|
||||
}
|
||||
case tm_tag_namespace_t:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_namespace));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_namespace));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, &(tv.tag_other));
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
gtk_tree_store_append(doc_list[idx].tag_store, &iter, &(tv.tag_other));
|
||||
gtk_tree_store_set(doc_list[idx].tag_store, &iter, 0, ((GeanySymbol*)tmp->data)->str, -1);
|
||||
}
|
||||
}
|
||||
}
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(tv.tree_taglist), model); // Re-attach model to view
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(doc_list[idx].tag_tree), model); // Re-attach model to view
|
||||
g_object_unref(model);
|
||||
gtk_tree_view_expand_all(GTK_TREE_VIEW(doc_list[idx].tag_tree));
|
||||
|
||||
gtk_widget_set_sensitive(app->tagbar, TRUE);
|
||||
gtk_container_add(GTK_CONTAINER(app->tagbar), doc_list[idx].tag_tree);
|
||||
/// TODO why I have to do this here?
|
||||
g_object_ref((gpointer)doc_list[idx].tag_tree);
|
||||
}
|
||||
else
|
||||
{
|
||||
gtk_tree_store_append(tv.store_taglist, &iter, NULL);
|
||||
gtk_tree_store_set(tv.store_taglist, &iter, 0, _("No tags found"), -1);
|
||||
{ // tags == NULL
|
||||
gtk_widget_set_sensitive(app->tagbar, FALSE);
|
||||
gtk_container_add(GTK_CONTAINER(app->tagbar), app->default_tag_tree);
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // update == FALSE
|
||||
gtk_widget_set_sensitive(app->tagbar, TRUE);
|
||||
gtk_container_add(GTK_CONTAINER(app->tagbar), doc_list[idx].tag_tree);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -971,7 +996,7 @@ gboolean utils_check_disk_status(gint idx, const gboolean force)
|
||||
{
|
||||
if (force)
|
||||
{
|
||||
document_open_file(idx, NULL, 0, FALSE);
|
||||
document_open_file(idx, NULL, 0, doc_list[idx].readonly);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -982,7 +1007,7 @@ gboolean utils_check_disk_status(gint idx, const gboolean force)
|
||||
|
||||
if (dialogs_show_reload_warning(buff))
|
||||
{
|
||||
document_open_file(idx, NULL, 0, FALSE);
|
||||
document_open_file(idx, NULL, 0, doc_list[idx].readonly);
|
||||
doc_list[idx].last_check = t;
|
||||
}
|
||||
else
|
||||
|
||||
@ -85,7 +85,7 @@ void utils_set_fullscreen(void);
|
||||
|
||||
GtkFileFilter *utils_create_file_filter(filetype *ft);
|
||||
|
||||
void utils_update_visible_tag_lists(gint idx);
|
||||
void utils_update_tag_list(gint idx, gboolean update);
|
||||
|
||||
gchar *utils_convert_to_utf8(const gchar *buffer, gsize size, gchar **used_encoding);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user