SF.net SVN: geany: [1822] trunk
ntrel at users.sourceforge.net
ntrel at xxxxx
Fri Aug 24 15:44:08 UTC 2007
Revision: 1822
http://geany.svn.sourceforge.net/geany/?rev=1822&view=rev
Author: ntrel
Date: 2007-08-24 08:44:07 -0700 (Fri, 24 Aug 2007)
Log Message:
-----------
Refactor configuration_save() to group new struct settings together.
Move 'Enable plugin support' keyfile pref to the 'geany' group.
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/keyfile.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2007-08-24 12:06:59 UTC (rev 1821)
+++ trunk/ChangeLog 2007-08-24 15:44:07 UTC (rev 1822)
@@ -8,6 +8,9 @@
Fix wrong brace formatting.
* src/about.c, src/callbacks.c, src/keyfile.c, src/editor.c:
Fix wrong // comment spacing.
+ * src/keyfile.c:
+ Refactor configuration_save() to group new struct settings together.
+ Move 'Enable plugin support' keyfile pref to the 'geany' group.
2007-08-23 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
Modified: trunk/src/keyfile.c
===================================================================
--- trunk/src/keyfile.c 2007-08-24 12:06:59 UTC (rev 1821)
+++ trunk/src/keyfile.c 2007-08-24 15:44:07 UTC (rev 1822)
@@ -139,44 +139,36 @@
}
-void configuration_save()
+static void save_dialog_prefs(GKeyFile *config)
{
- GKeyFile *config = g_key_file_new();
- gchar *configfile = g_strconcat(app->configdir, G_DIR_SEPARATOR_S, "geany.conf", NULL);
- gchar *data;
- GtkTextBuffer *buffer;
- GtkTextIter start, end;
+ // general
+ g_key_file_set_boolean(config, PACKAGE, "pref_main_load_session", prefs.load_session);
+ g_key_file_set_boolean(config, PACKAGE, "load_plugins", prefs.load_plugins);
+ g_key_file_set_boolean(config, PACKAGE, "pref_main_save_winpos", prefs.save_winpos);
+ g_key_file_set_boolean(config, PACKAGE, "pref_main_confirm_exit", prefs.confirm_exit);
+ g_key_file_set_boolean(config, PACKAGE, "pref_main_suppress_search_dialogs", prefs.suppress_search_dialogs);
+ g_key_file_set_boolean(config, PACKAGE, "pref_main_suppress_status_messages", prefs.suppress_status_messages);
+ g_key_file_set_boolean(config, PACKAGE, "beep_on_errors", prefs.beep_on_errors);
+ g_key_file_set_boolean(config, PACKAGE, "auto_focus", prefs.auto_focus);
+ g_key_file_set_string(config, PACKAGE, "default_open_path", prefs.default_open_path);
- g_key_file_load_from_file(config, configfile, G_KEY_FILE_NONE, NULL);
-
- // gets the text from the scribble textview
- buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(lookup_widget(app->window, "textview_scribble")));
- gtk_text_buffer_get_bounds(buffer, &start, &end);
- scribble_text = gtk_text_buffer_get_text(buffer, &start, &end, FALSE);
-
- // store basic settings
- if (prefs.save_winpos)
- {
- g_key_file_set_integer(config, PACKAGE, "treeview_position",
- gtk_paned_get_position(GTK_PANED(lookup_widget(app->window, "hpaned1"))));
- g_key_file_set_integer(config, PACKAGE, "msgwindow_position",
- gtk_paned_get_position(GTK_PANED(lookup_widget(app->window, "vpaned1"))));
- }
-
- g_key_file_set_integer(config, PACKAGE, "mru_length", prefs.mru_length);
- g_key_file_set_integer(config, PACKAGE, "long_line_type", editor_prefs.long_line_type);
+ // interface
g_key_file_set_integer(config, PACKAGE, "tab_pos_editor", prefs.tab_pos_editor);
g_key_file_set_integer(config, PACKAGE, "tab_pos_msgwin", prefs.tab_pos_msgwin);
g_key_file_set_integer(config, PACKAGE, "tab_pos_sidebar", prefs.tab_pos_sidebar);
+ g_key_file_set_boolean(config, PACKAGE, "sidebar_symbol_visible", prefs.sidebar_symbol_visible);
+ g_key_file_set_boolean(config, PACKAGE, "sidebar_openfiles_visible", prefs.sidebar_openfiles_visible);
+ g_key_file_set_boolean(config, PACKAGE, "show_notebook_tabs", prefs.show_notebook_tabs);
+ g_key_file_set_boolean(config, PACKAGE, "switch_msgwin_pages", prefs.switch_msgwin_pages);
+ g_key_file_set_string(config, PACKAGE, "editor_font", prefs.editor_font);
+ g_key_file_set_string(config, PACKAGE, "tagbar_font", prefs.tagbar_font);
+ g_key_file_set_string(config, PACKAGE, "msgwin_font", prefs.msgwin_font);
+
+ /* editor_prefs */
+ g_key_file_set_integer(config, PACKAGE, "long_line_type", editor_prefs.long_line_type);
g_key_file_set_integer(config, PACKAGE, "autocompletion_max_height", editor_prefs.autocompletion_max_height);
g_key_file_set_integer(config, PACKAGE, "long_line_column", editor_prefs.long_line_column);
g_key_file_set_string(config, PACKAGE, "long_line_color", editor_prefs.long_line_color);
- g_key_file_set_boolean(config, PACKAGE, "beep_on_errors", prefs.beep_on_errors);
- g_key_file_set_boolean(config, PACKAGE, "sidebar_symbol_visible", prefs.sidebar_symbol_visible);
- g_key_file_set_boolean(config, PACKAGE, "sidebar_openfiles_visible", prefs.sidebar_openfiles_visible);
- g_key_file_set_boolean(config, PACKAGE, "sidebar_visible", ui_prefs.sidebar_visible);
- g_key_file_set_boolean(config, PACKAGE, "statusbar_visible", prefs.statusbar_visible);
- g_key_file_set_boolean(config, PACKAGE, "msgwindow_visible", ui_prefs.msgwindow_visible);
g_key_file_set_boolean(config, PACKAGE, "use_folding", editor_prefs.folding);
g_key_file_set_boolean(config, PACKAGE, "unfold_all_children", editor_prefs.unfold_all_children);
g_key_file_set_boolean(config, PACKAGE, "show_editor_scrollbars", editor_prefs.show_scrollbars);
@@ -189,15 +181,57 @@
g_key_file_set_boolean(config, PACKAGE, "show_linenumber_margin", editor_prefs.show_linenumber_margin);
g_key_file_set_boolean(config, PACKAGE, "line_breaking", editor_prefs.line_breaking);
g_key_file_set_boolean(config, PACKAGE, "show_line_endings", editor_prefs.show_line_endings);
- g_key_file_set_boolean(config, PACKAGE, "fullscreen", ui_prefs.fullscreen);
- g_key_file_set_boolean(config, PACKAGE, "tab_order_ltr", prefs.tab_order_ltr);
- g_key_file_set_boolean(config, PACKAGE, "show_notebook_tabs", prefs.show_notebook_tabs);
g_key_file_set_boolean(config, PACKAGE, "brace_match_ltgt", editor_prefs.brace_match_ltgt);
- g_key_file_set_boolean(config, PACKAGE, "switch_msgwin_pages", prefs.switch_msgwin_pages);
- g_key_file_set_boolean(config, PACKAGE, "auto_focus", prefs.auto_focus);
g_key_file_set_boolean(config, PACKAGE, "auto_close_xml_tags", editor_prefs.auto_close_xml_tags);
g_key_file_set_boolean(config, PACKAGE, "auto_complete_constructs", editor_prefs.auto_complete_constructs);
g_key_file_set_boolean(config, PACKAGE, "auto_complete_symbols", editor_prefs.auto_complete_symbols);
+ g_key_file_set_integer(config, PACKAGE, "pref_editor_tab_width", editor_prefs.tab_width);
+ g_key_file_set_boolean(config, PACKAGE, "pref_editor_use_tabs", editor_prefs.use_tabs);
+ g_key_file_set_boolean(config, PACKAGE, "pref_editor_new_line", editor_prefs.new_line);
+ g_key_file_set_boolean(config, PACKAGE, "pref_editor_replace_tabs", editor_prefs.replace_tabs);
+ g_key_file_set_boolean(config, PACKAGE, "pref_editor_trail_space", editor_prefs.trail_space);
+ g_key_file_set_boolean(config, PACKAGE, "pref_editor_disable_dnd", editor_prefs.disable_dnd);
+ g_key_file_set_boolean(config, PACKAGE, "pref_editor_smart_home_key", editor_prefs.smart_home_key);
+ g_key_file_set_string(config, PACKAGE, "pref_editor_default_new_encoding", encodings[editor_prefs.default_new_encoding].charset);
+ if (editor_prefs.default_open_encoding == -1)
+ g_key_file_set_string(config, PACKAGE, "pref_editor_default_open_encoding", "none");
+ else
+ g_key_file_set_string(config, PACKAGE, "pref_editor_default_open_encoding", encodings[editor_prefs.default_open_encoding].charset);
+
+ // files
+ g_key_file_set_boolean(config, PACKAGE, "tab_order_ltr", prefs.tab_order_ltr);
+ g_key_file_set_integer(config, PACKAGE, "mru_length", prefs.mru_length);
+
+ // toolbar
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show", prefs.toolbar_visible);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_search", prefs.toolbar_show_search);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_goto", prefs.toolbar_show_goto);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_zoom", prefs.toolbar_show_zoom);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_undo", prefs.toolbar_show_undo);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_navigation", prefs.toolbar_show_navigation);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_compile", prefs.toolbar_show_compile);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_colour", prefs.toolbar_show_colour);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_fileops", prefs.toolbar_show_fileops);
+ g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_quit", prefs.toolbar_show_quit);
+ g_key_file_set_integer(config, PACKAGE, "pref_toolbar_icon_style", prefs.toolbar_icon_style);
+ g_key_file_set_integer(config, PACKAGE, "pref_toolbar_icon_size", prefs.toolbar_icon_size);
+
+ // templates
+ g_key_file_set_string(config, PACKAGE, "pref_template_developer", prefs.template_developer);
+ g_key_file_set_string(config, PACKAGE, "pref_template_company", prefs.template_company);
+ g_key_file_set_string(config, PACKAGE, "pref_template_mail", prefs.template_mail);
+ g_key_file_set_string(config, PACKAGE, "pref_template_initial", prefs.template_initial);
+ g_key_file_set_string(config, PACKAGE, "pref_template_version", prefs.template_version);
+
+ // tools settings
+ g_key_file_set_string(config, "tools", "make_cmd", prefs.tools_make_cmd ? prefs.tools_make_cmd : "");
+ g_key_file_set_string(config, "tools", "term_cmd", prefs.tools_term_cmd ? prefs.tools_term_cmd : "");
+ g_key_file_set_string(config, "tools", "browser_cmd", prefs.tools_browser_cmd ? prefs.tools_browser_cmd : "");
+ g_key_file_set_string(config, "tools", "print_cmd", prefs.tools_print_cmd ? prefs.tools_print_cmd : "");
+ g_key_file_set_string(config, "tools", "grep_cmd", prefs.tools_grep_cmd ? prefs.tools_grep_cmd : "");
+ g_key_file_set_string(config, PACKAGE, "context_action_cmd", prefs.context_action_cmd);
+
+ // VTE
#ifdef HAVE_VTE
g_key_file_set_boolean(config, "VTE", "load_vte", vte_info.load_vte);
if (vte_info.load_vte && vc != NULL)
@@ -224,19 +258,36 @@
g_key_file_set_string(config, "VTE", "last_dir", vte_info.dir);
}
#endif
- g_key_file_set_string(config, PACKAGE, "default_open_path", prefs.default_open_path);
- g_key_file_set_string(config, PACKAGE, "custom_date_format", ui_prefs.custom_date_format);
- g_key_file_set_string(config, PACKAGE, "context_action_cmd", prefs.context_action_cmd);
- if (ui_prefs.custom_commands != NULL)
+}
+
+
+static void save_ui_prefs(GKeyFile *config)
+{
+ g_key_file_set_boolean(config, PACKAGE, "sidebar_visible", ui_prefs.sidebar_visible);
+ g_key_file_set_boolean(config, PACKAGE, "statusbar_visible", prefs.statusbar_visible);
+ g_key_file_set_boolean(config, PACKAGE, "msgwindow_visible", ui_prefs.msgwindow_visible);
+ g_key_file_set_boolean(config, PACKAGE, "fullscreen", ui_prefs.fullscreen);
+
+ // get the text from the scribble textview
{
- g_key_file_set_string_list(config, PACKAGE, "custom_commands",
- (const gchar**) ui_prefs.custom_commands, g_strv_length(ui_prefs.custom_commands));
+ GtkTextBuffer *buffer;
+ GtkTextIter start, end;
+
+ buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(lookup_widget(app->window, "textview_scribble")));
+ gtk_text_buffer_get_bounds(buffer, &start, &end);
+ scribble_text = gtk_text_buffer_get_text(buffer, &start, &end, FALSE);
+ g_key_file_set_string(config, PACKAGE, "scribble_text", scribble_text);
+ g_free(scribble_text);
}
- g_key_file_set_string(config, PACKAGE, "editor_font", prefs.editor_font);
- g_key_file_set_string(config, PACKAGE, "tagbar_font", prefs.tagbar_font);
- g_key_file_set_string(config, PACKAGE, "msgwin_font", prefs.msgwin_font);
- g_key_file_set_string(config, PACKAGE, "scribble_text", scribble_text);
+ if (prefs.save_winpos)
+ {
+ g_key_file_set_integer(config, PACKAGE, "treeview_position",
+ gtk_paned_get_position(GTK_PANED(lookup_widget(app->window, "hpaned1"))));
+ g_key_file_set_integer(config, PACKAGE, "msgwindow_position",
+ gtk_paned_get_position(GTK_PANED(lookup_widget(app->window, "vpaned1"))));
+ }
+
if (prefs.save_winpos && ! ui_prefs.fullscreen)
{
gtk_window_get_position(GTK_WINDOW(app->window), &ui_prefs.geometry[0], &ui_prefs.geometry[1]);
@@ -248,54 +299,29 @@
g_key_file_set_integer_list(config, PACKAGE, "geometry", ui_prefs.geometry, 5);
}
- g_key_file_set_integer(config, PACKAGE, "pref_editor_tab_width", editor_prefs.tab_width);
- g_key_file_set_boolean(config, PACKAGE, "pref_editor_use_tabs", editor_prefs.use_tabs);
- g_key_file_set_boolean(config, PACKAGE, "pref_main_confirm_exit", prefs.confirm_exit);
- g_key_file_set_boolean(config, PACKAGE, "pref_main_suppress_search_dialogs", prefs.suppress_search_dialogs);
- g_key_file_set_boolean(config, PACKAGE, "pref_main_suppress_status_messages", prefs.suppress_status_messages);
- g_key_file_set_boolean(config, PACKAGE, "pref_main_load_session", prefs.load_session);
- g_key_file_set_boolean(config, PACKAGE, "pref_main_save_winpos", prefs.save_winpos);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show", prefs.toolbar_visible);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_search", prefs.toolbar_show_search);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_goto", prefs.toolbar_show_goto);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_zoom", prefs.toolbar_show_zoom);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_undo", prefs.toolbar_show_undo);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_navigation", prefs.toolbar_show_navigation);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_compile", prefs.toolbar_show_compile);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_colour", prefs.toolbar_show_colour);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_fileops", prefs.toolbar_show_fileops);
- g_key_file_set_boolean(config, PACKAGE, "pref_toolbar_show_quit", prefs.toolbar_show_quit);
- g_key_file_set_integer(config, PACKAGE, "pref_toolbar_icon_style", prefs.toolbar_icon_style);
- g_key_file_set_integer(config, PACKAGE, "pref_toolbar_icon_size", prefs.toolbar_icon_size);
- g_key_file_set_boolean(config, PACKAGE, "pref_editor_new_line", editor_prefs.new_line);
- g_key_file_set_boolean(config, PACKAGE, "pref_editor_replace_tabs", editor_prefs.replace_tabs);
- g_key_file_set_boolean(config, PACKAGE, "pref_editor_trail_space", editor_prefs.trail_space);
- g_key_file_set_boolean(config, PACKAGE, "pref_editor_disable_dnd", editor_prefs.disable_dnd);
- g_key_file_set_boolean(config, PACKAGE, "pref_editor_smart_home_key", editor_prefs.smart_home_key);
- g_key_file_set_string(config, PACKAGE, "pref_editor_default_new_encoding", encodings[editor_prefs.default_new_encoding].charset);
- if (editor_prefs.default_open_encoding == -1)
- g_key_file_set_string(config, PACKAGE, "pref_editor_default_open_encoding", "none");
- else
- g_key_file_set_string(config, PACKAGE, "pref_editor_default_open_encoding", encodings[editor_prefs.default_open_encoding].charset);
- g_key_file_set_string(config, PACKAGE, "pref_template_developer", prefs.template_developer);
- g_key_file_set_string(config, PACKAGE, "pref_template_company", prefs.template_company);
- g_key_file_set_string(config, PACKAGE, "pref_template_mail", prefs.template_mail);
- g_key_file_set_string(config, PACKAGE, "pref_template_initial", prefs.template_initial);
- g_key_file_set_string(config, PACKAGE, "pref_template_version", prefs.template_version);
- // store tools settings
- g_key_file_set_string(config, "tools", "make_cmd", prefs.tools_make_cmd ? prefs.tools_make_cmd : "");
- g_key_file_set_string(config, "tools", "term_cmd", prefs.tools_term_cmd ? prefs.tools_term_cmd : "");
- g_key_file_set_string(config, "tools", "browser_cmd", prefs.tools_browser_cmd ? prefs.tools_browser_cmd : "");
- g_key_file_set_string(config, "tools", "print_cmd", prefs.tools_print_cmd ? prefs.tools_print_cmd : "");
- g_key_file_set_string(config, "tools", "grep_cmd", prefs.tools_grep_cmd ? prefs.tools_grep_cmd : "");
+ g_key_file_set_string(config, PACKAGE, "custom_date_format", ui_prefs.custom_date_format);
+ if (ui_prefs.custom_commands != NULL)
+ {
+ g_key_file_set_string_list(config, PACKAGE, "custom_commands",
+ (const gchar**) ui_prefs.custom_commands, g_strv_length(ui_prefs.custom_commands));
+ }
// search
g_key_file_set_string(config, "search", "fif_extra_options", search_prefs.fif_extra_options ? search_prefs.fif_extra_options : "");
+}
- // startup
- g_key_file_set_boolean(config, "startup", "load_plugins", prefs.load_plugins);
+void configuration_save()
+{
+ GKeyFile *config = g_key_file_new();
+ gchar *configfile = g_strconcat(app->configdir, G_DIR_SEPARATOR_S, "geany.conf", NULL);
+ gchar *data;
+
+ g_key_file_load_from_file(config, configfile, G_KEY_FILE_NONE, NULL);
+
+ save_dialog_prefs(config);
+ save_ui_prefs(config);
project_save_prefs(config); // save project filename, etc.
save_recent_files(config);
save_session_files(config);
@@ -307,7 +333,6 @@
g_key_file_free(config);
g_free(configfile);
- g_free(scribble_text);
}
@@ -484,6 +509,7 @@
prefs.suppress_search_dialogs = utils_get_setting_boolean(config, PACKAGE, "pref_main_suppress_search_dialogs", FALSE);
prefs.suppress_status_messages = utils_get_setting_boolean(config, PACKAGE, "pref_main_suppress_status_messages", FALSE);
prefs.load_session = utils_get_setting_boolean(config, PACKAGE, "pref_main_load_session", TRUE);
+ prefs.load_plugins = utils_get_setting_boolean(config, PACKAGE, "load_plugins", TRUE);
prefs.save_winpos = utils_get_setting_boolean(config, PACKAGE, "pref_main_save_winpos", TRUE);
prefs.toolbar_show_search = utils_get_setting_boolean(config, PACKAGE, "pref_toolbar_show_search", TRUE);
prefs.toolbar_show_goto = utils_get_setting_boolean(config, PACKAGE, "pref_toolbar_show_goto", TRUE);
@@ -579,9 +605,6 @@
// search
search_prefs.fif_extra_options = utils_get_setting_string(config, "search", "fif_extra_options", "");
- // startup
- prefs.load_plugins = utils_get_setting_boolean(config, "startup", "load_plugins", TRUE);
-
project_load_prefs(config);
load_file_lists(config);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list