Add stash.[hc] for reading/writing GKeyFile settings and (later)
synchronizing widgets with C variables. Currently this only
supports boolean and integer settings.
Replace keyfile.c SettingEntry code with new stash code.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3285 ea778897-0a13-0410-b9d1-a72fbfd435f5
filetype_extensions.conf and ignore.tags. These files are also
reloaded automatically when saved.
- Code changes:
Make app->configdir a realpath().
Add ui_add_config_file_menu_item().
Add utils_build_path(), similar to g_build_path() but (re)using a
fixed buffer, so the result is never freed.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3279 ea778897-0a13-0410-b9d1-a72fbfd435f5
The previous configuration will be moved to the new location if the new directory doesn't exist yet.
Move utils_make_settings_dir() into main.c.
Remove win32_get_appdata_folder() because g_get_user_config_dir() does the same.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3219 ea778897-0a13-0410-b9d1-a72fbfd435f5
Split widget fields out of GeanyApp into GeanyMainWidgets, so other
data items can be added without breaking the plugin ABI.
Add GeanyData::main_widgets, and macro.
Rename treeview_notebook sidebar_notebook in GeanyMainWidgets.
Move tools_menu from GeanyData to GeanyMainWidgets.
Move statusbar out of GeanyApp (shouldn't be used directly).
Move ignore_callback out of GeanyApp.
Rename sci_goto_line() argument unfold, like sci_goto_pos().
Make utils_goto_file_pos(), utils_goto_line(),
utils_switch_document() into static functions (they are UI-related,
so shouldn't be in utils.c).
Move utils_goto_pos() to editor.c, add mark argument.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2609 ea778897-0a13-0410-b9d1-a72fbfd435f5
This is the first step, it is far away from being complete.
Add make target "api-doc" to generate the reference documentation.
Add documentation comments to a few functions.
Move basic plugin documentation from plugindata.h to doc/plugins.dox.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2263 ea778897-0a13-0410-b9d1-a72fbfd435f5
Improve checks for write permission of files and directories.
Don't overwrite maybe existing project files when trying to create new project and checking for project file's write permission (thanks to Yura Siamashka for reporting and his patch).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2151 ea778897-0a13-0410-b9d1-a72fbfd435f5
path pref) when the current file has no filename.
Split up widget setup code for dialogs_show_open_file(),
dialogs_show_save_as().
Add initial_dir argument for win32_show_file_dialog().
Add utils_get_default_dir_utf8().
Rename utils_get_current_file_dir() to
utils_get_current_file_dir_utf8().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2122 ea778897-0a13-0410-b9d1-a72fbfd435f5
Make document_open_file() now wrap document_open_file_full(),
without the idx for reloading or pos arguments.
Replace str_replace() with string_replace_all() in the plugin API.
Add utils_string_replace_all(), taking a GString argument.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1868 ea778897-0a13-0410-b9d1-a72fbfd435f5
Move most GeanyApp fields into:
GeanyPrefs for (most) Preferences dialog fields;
UIPrefs for non-Prefs dialog visual settings;
UIWidgets for less commonly used widgets such as menuitems and
dialogs;
GeanyStatus for various states the application can be in.
Move some GeanyApp fields into EditorPrefs (and one into each of
CommandLineOptions and SidebarTreeviews).
Add plugin API prefs field.
Move disabling build widgets on Windows to build_init().
Make build callbacks static.
Add treeviews_init() to prepare popup menus and open files treeview.
Replace treeviews_find_node() with treeviews_select_openfiles_item().
Make utils_isbrace() and utils_is_opening_brace() take an
'include_angles' argument (to separate from editor_prefs).
Make 'Goto matching brace' keybinding include <> angle brackets.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1815 ea778897-0a13-0410-b9d1-a72fbfd435f5
Query default icon theme only once to improve startup speed.
Store the line number separately in the tree store.
Remove utils_get_local_tag().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1731 ea778897-0a13-0410-b9d1-a72fbfd435f5
use it in project_new().
Group 'generic' functions related to GTK+ together at the top of
ui_utils.h.
Make sure G_GNUC_NULL_TERMINATED is defined in geany.h.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1702 ea778897-0a13-0410-b9d1-a72fbfd435f5
path if necessary.
Prevent warnings when setting open dialog directory to a path whose
parent directory doesn't exist.
Add create_parent_dirs argument for utils_mkdir().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1382 ea778897-0a13-0410-b9d1-a72fbfd435f5
Fixed mem leak in sci_cb_auto_forif().
Moved free_pointers() to utils.c.
Applied patch from Jeff Pohlmeyer to add an option for using spaces or tabulators when inserting some whitespace.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1186 ea778897-0a13-0410-b9d1-a72fbfd435f5
Prevent invalid memory read in utils_scan_unicode_bom() when text
length is < 4.
Move utils_scan_unicode_bom(), utils_is_unicode_charset() to
encodings.c.
Read the BOM length in handle_bom().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1167 ea778897-0a13-0410-b9d1-a72fbfd435f5