193 Commits

Author SHA1 Message Date
Enrico Tröger
45c62d7e3b Fix slightly wrong preprocessor checks.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2636 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-03 16:30:54 +00:00
Nick Treleaven
be0d9e8ea7 Note: this breaks the plugin API.
Replace doc_array with documents_array, a pointer array. This is
necessary to avoid breaking the ABI every time a field is added to
GeanyDocument.
Remove deprecated pluginmacros.h documents macro, to avoid a
conflict.
Replace doc_list[] macro with documents[] macro, which returns a
GeanyDocument pointer.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2624 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-29 17:00:54 +00:00
Nick Treleaven
398efbd373 Note: this commit breaks the plugin API.
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
2008-05-22 14:41:28 +00:00
Enrico Tröger
629fc70a35 Allow loading projects from command line (closes #1961083).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2598 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-18 16:27:08 +00:00
Nick Treleaven
3a12da9daf Note: this commit breaks the plugin API (but is necessary so that in
future the ABI can stay stable when adding preferences).
Split up prefs into interface_prefs, toolbar_prefs, file_prefs,
search_prefs, tool_prefs, template_prefs, and add these to the
plugin API.
Move suppress_search_dialogs and search_use_current_word to
search_prefs, and rename accordingly.
Rename switch_msgwin_pages pref to switch_to_status.
Remove toolbar_ prefix for toolbar_prefs items.
Remove tool_ prefix for tool_prefs items.
Remove template_ prefix for template_prefs items.
Add Geany prefix for EditorPrefs.
Add Geany prefix for SearchPrefs.
Initialize search_prefs to zero in main.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2591 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-16 12:08:39 +00:00
Enrico Tröger
beb68832b3 Move several editing related functions from document.c to editor.c.
Fix two compiler warnings about non-literal format strings.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2588 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-15 13:43:29 +00:00
Nick Treleaven
f700baa906 Rename old uses of line breaking -> line wrapping. This includes the
keyfile pref, so any users with this enabled will have to reset it.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2563 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-09 14:17:25 +00:00
Nick Treleaven
67316db4c5 Remove GEANY_MAX_FILE_TYPES and replace most uses of it with
filetypes_array->len.
Highlighting and templates now use GEANY_MAX_BUILT_IN_FILETYPES.
Move print_filetypes() out of parse_command_line_options();


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-filetypes@2553 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-07 11:34:38 +00:00
Nick Treleaven
7bffaa3b17 Refactor open_session_file() from configuration_open_files().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-filetypes@2541 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-29 11:30:19 +00:00
Nick Treleaven
baa27abbe9 Remove active_plugins from GeanyApp.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2492 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-16 15:44:29 +00:00
Nick Treleaven
730fc1a35c Refactor handle_cl_filename() from open_cl_files().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2489 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-16 11:41:36 +00:00
Enrico Tröger
9024500f92 Add document_new_file_if_non_open() to open new documents if no other documents are open.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2453 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-08 14:07:17 +00:00
Enrico Tröger
57fa3d0f16 Use configure's --docdir option when installing and using the documentation.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2378 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-21 14:28:26 +00:00
Nick Treleaven
e57535bb8d Load keybindings keyfile after plugins have loaded at startup, so
their shortcuts are also loaded. Still to do: loading individual
plugin keybindings after startup.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2321 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-10 13:54:47 +00:00
Enrico Tröger
b7bfb2743a Replace all C++-style comments with usual C-like multi-line comments.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2287 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-27 13:17:29 +00:00
Enrico Tröger
85f73129c0 Apply patch from Daniel Richard G. to fix to fix several compiler warnings, C89 violations and minor code problems (thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2267 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-20 11:24:23 +00:00
Enrico Tröger
753e2936d8 Apply patch from Daniel Richard G. to add support for +NNN command line arguments and for recognising filename:line:column: format on the command line (thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2262 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-16 11:21:24 +00:00
Enrico Tröger
fe728b7c88 Allow start of Geany with given files on the command line but whithout a writable temporary directory and without a writable configuration directory.
Improve filename of created symlink to the socket file.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2251 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-12 12:04:55 +00:00
Nick Treleaven
28ee2d71f0 Close any project before closing all documents so the project
session files are saved.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2190 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-25 13:14:38 +00:00
Enrico Tröger
a377002f4e Rename ui_treeviews_show_hide() in ui_sidebar_show_hide().
Don't hide sidebar when symbol and document lists are hidden but other notebook tabs are still there.	 


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2186 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-23 14:12:08 +00:00
Enrico Tröger
e3201062c6 Update copyright information and change format of email addresses in source files.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2150 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-06 18:11:57 +00:00
Enrico Tröger
8849ed8819 Create Geany's configuration directory in user's appdata path instead of the default home directory (closes #1856305).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2138 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-30 20:57:34 +00:00
Enrico Tröger
347c1da00c Add debug console window when debug mode is enabled to get any text messages on Windows.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2137 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-30 15:54:00 +00:00
Enrico Tröger
2ca754ab0f Enable parsing command line options without a valid X display.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2129 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-23 17:06:11 +00:00
Enrico Tröger
3fef2dcc58 Prefix autotools macros with GEANY to avoid problems with already defined symbols on Windows.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2117 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-19 15:37:10 +00:00
Enrico Tröger
ee5ea6b728 Apply patch Jeff Pohlmeyer to handle unknown command line options better (thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2116 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-19 13:49:59 +00:00
Enrico Tröger
1d57381819 Add note about using autotools macros like DATADIR.
Add --print-prefix command line option to output installation paths.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2111 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-18 17:03:39 +00:00
Enrico Tröger
fc6c31a242 Add binary relocation support.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2100 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-12 20:04:45 +00:00
Enrico Tröger
80532b616d Store more document-related settings session-based in the configuration file(including the file encoding).
Detect in-file specified file encoding by scanning the file using regular expressions.	    


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2093 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-07 14:13:05 +00:00
Nick Treleaven
d1534b9c1d Remove unused config_dir argument for tm_get_workspace().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2079 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-30 17:34:01 +00:00
Enrico Tröger
5e6b3d5165 Remove ununsed function project_save().
Fix typo in plugin API at utils_mkdir().
Add document_get_n_idx() to the plugin API.
Fix display of plugin separator in the Tools menu when only plugins without menu item are loaded.
Add three new signals: project_open, project_save, project_close.
On Shutdown close the project before plugins are unloaded to let plugins work on the last project closed event.			


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2065 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-21 18:54:12 +00:00
Enrico Tröger
2b07283739 Add plugin manager dialog to select plugins to load at startup and to call a plugin configure dialog.
Add configure symbol for plugins which is called by Geany when a configure dialog for the plugin is requested, optionally.
Add author field to plugin info struct.
Add sample configure dialog to the demo plugin.
Fix cleanup code in filebrowser plugin to remove it completely when unloaded.			


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2060 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-20 18:15:46 +00:00
Enrico Tröger
26f6490c41 Apply patch from Bo Lorentsen to improve support for project session files (thank you).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2057 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-18 18:24:23 +00:00
Enrico Tröger
fff66178da Add native GTK printing support.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2050 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-17 14:04:27 +00:00
Enrico Tröger
4b43e762d0 Rename "Contruct autocompletion" to "Snippets".
Allow changing height of the symbol completion list even if automatic symbol is disabled, it still can be forced by keybinding.	 


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2044 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-12 09:27:43 +00:00
Enrico Tröger
836c368d50 Apply patch from Bo Lorentsen to add support for project session files (thank you).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2043 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-11 19:06:41 +00:00
Enrico Tröger
d04c3f594f Don't compile plugin command line option when plugin support is disabled.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2041 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-11 09:09:47 +00:00
Enrico Tröger
7cc8825ef1 Fix crashes on Windows when configuration directory could not be created. Fix problems when configuration directory path contains special characters.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2015 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-04 15:48:14 +00:00
Nick Treleaven
046d5ef796 Fix bug with using the default extension, not the user set one, if
'New with template' is used before any documents of the same filetype
are open.
Load filetype keyfiles from filetypes_load_config(), not from
styleset_foo_init().
Add highlighting_init_styles(), highlighting_set_styles(),
simplifying a lot of styleset function code.
Remove filetype::style_func_ptr field.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2011 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-02 17:44:05 +00:00
Enrico Tröger
991a6c7811 Create tagmanager status file in configuration directory, not in a guessed temporary directory to ensure having write access. Fix crashes if status file can't be written.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2000 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-01 11:49:29 +00:00
Nick Treleaven
601dfd69f7 Make msgwin_status_add() only log a message, not display it on the
status bar.
Make ui_set_statusbar() take a log argument for whether to record the
message in the Status window.
(Plugin API functions already do this).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1971 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-24 10:52:48 +00:00
Enrico Tröger
960a535798 Fix scrolling bugs when searching text and the cursor is outside of the current visible area.
Unfold search result.
Also print version of Geany together with GTK/GLib version information.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1923 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-01 12:22:44 +00:00
Nick Treleaven
b5e4604562 Add --no-preprocessing, -P option when generating tags files to
disable preprocessing of C/C++ source files.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1917 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-28 11:48:55 +00:00
Nick Treleaven
a76adc4354 Make Toggle Case use the current word if there's no selection.
Make Toggle Case keep an existing selection.
Rename ui_widgets.popup_items to popup_copy_items.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1876 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-12 16:01:23 +00:00
Nick Treleaven
274058eb7a Neaten up the plugin API:
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
2007-09-11 15:21:11 +00:00
Enrico Tröger
8917ec0717 Forgot to commit these changes in r1860. Sorry.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1862 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-09 16:09:28 +00:00
Nick Treleaven
1887a20df4 Add text argument for document_new_file(), so that it's independent
from filetype templates.
Make File->New create a blank document, rather than using the None
filetype template.
Add None option for the 'New with Template' menu commands.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1848 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-03 16:09:53 +00:00
Enrico Tröger
501c01aeb4 Remove useless callback wrapper function.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1832 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-28 10:50:18 +00:00
Nick Treleaven
b401b698ea Move file-related fields from EditorPrefs -> GeanyPrefs.
Rename line_breaking -> line_wrapping for EditorPrefs and document.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1823 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-24 16:20:33 +00:00
Nick Treleaven
ef1399e000 Rename MyApp -> GeanyApp.
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
2007-08-23 11:34:06 +00:00