292 Commits

Author SHA1 Message Date
Nick Treleaven
9f8f2c7b28 Add Split Window plugin (work-in-progress).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2906 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-26 15:58:07 +00:00
Nick Treleaven
c0ee8ae6e6 Fix using correct hard tab width for HTML export, not just LaTeX.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2873 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-11 16:44:19 +00:00
Nick Treleaven
b74eb47577 Add sci_get_tab_width() to the API, and use it to get the correct
display tab width in the Export plugin.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2866 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-08 14:46:31 +00:00
Nick Treleaven
ec1e9de8dc Fix using editor_get_indent_prefs().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-tab-width@2862 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-07 15:32:56 +00:00
Nick Treleaven
4faeb8f46f Move utils_reload_configuration() to main.c.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2803 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-23 11:46:02 +00:00
Enrico Tröger
617cdee77c Encourage single header includes as it is necessary with GTK 2.14+.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2790 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-18 13:56:56 +00:00
Enrico Tröger
8d67117d47 Rename "delete_event" to "delete-event".
Remove some unnecessary GObject casts in g_signal_connect() calls.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2788 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-18 13:40:48 +00:00
Nick Treleaven
43484b8a51 Show '..' item when the current folder is empty (fixes #2015121).
Replace is_top_level_directory() code by checking g_path_skip_root().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2780 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-15 14:50:06 +00:00
Nick Treleaven
000e8fcc9b Merge the editor-struct branch:
Note: this breaks the plugin API for editor-related document fields
and functions.
Split new GeanyEditor struct type from GeanyDocument fields sci,
line_wrapping, auto_indent, scroll_percent, use_tabs, line_breaking.
GeanyEditor::document allows access back to document fields.
Add GeanyDocument::editor field; this is only valid when the
document is valid, and NULL otherwise. This means any checks for
doc->editor->scintilla != NULL will segfault for invalid
documents - check against doc->is_valid or doc->editor != NULL
instead.
Change plugin API EditorFuncs to use GeanyEditor pointers.
Make editor_set_font() take a pango-style font string, and use a
GeanyEditor pointer.
Use GeanyEditor* instead of GeanyDocument* in editor.c (most global
editor functions still need conversion though, but this may be done
gradually or as required).
Move utils_get_current_function() to symbols.c.
Move utils_replace_filename() to document.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2779 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-15 14:29:41 +00:00
Nick Treleaven
7db4bfe493 Rename GeanyEditor::scintilla to GeanyEditor::sci.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/editor-struct@2776 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-14 11:13:54 +00:00
Enrico Tröger
4ef9af9c6f Fix some formatting issues.
Add 'static' keyword to generated finalize() function in GTK classes.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2772 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-12 11:46:59 +00:00
Nick Treleaven
e204cc44fb Remove deprecated struct field macros (this fixes building Geany
when GEANY_DISABLE_DEPRECATED is not set, fixes #2014586).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2767 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-10 14:12:09 +00:00
Nick Treleaven
4837030ca1 Fix compilation.
Move utils_get_current_function() to symbols.c.
Move utils_replace_filename() to document.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/editor-struct@2766 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-08 16:30:37 +00:00
Nick Treleaven
8dcfb7e336 Update for doc->editor->scintilla.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/editor-struct@2764 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-08 11:26:09 +00:00
Nick Treleaven
18ced215d1 Remove deprecated macros and typedefs (except DOC_IDX_*), as some of
them are likely to cause naming conflicts and all plugins will need
updating since 0.14 anyway.
Add geany macro that simply expands to geany_data.
Deprecate app, main_widgets, prefs, project macros, as the geany
macro can be used instead.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2761 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-07 16:16:18 +00:00
Enrico Tröger
1e8d82f46a Note: this breaks the plugin API for msgwin and navqueue functions.
Make NavQueueFuncs and MsgWinFuncs use a GeanyDocument* instead of an integer index.
Adjust plugins to work with these changes.            


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2688 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-12 20:09:57 +00:00
Enrico Tröger
5739654633 Windows changes: Install plugins into lib/ not into plugins/. Don't link against libiconv when compiling against GLib 2.14 and above (it's statically linked into GLib). Install Geany's message catalogs into share/locale rather than lib/locale as GTK does since 2.12.2.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2673 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-09 19:29:54 +00:00
Enrico Tröger
3a5345c3d4 Fix diff output when files were manually added with 'git add' in GIT repositories (patch by Yura Siamashka).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2654 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-06 14:53:40 +00:00
Nick Treleaven
4d3ba6e7a2 Fix using wrong encoding for document filename when doing a
directory diff.
Replace find_by_filename() with p_document->find_by_filename() (now
it does the same job).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2638 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-03 17:26:22 +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
Enrico Tröger
4198167584 Add again all GTK libraries to linker flags for each plugin.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2623 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-28 16:09:16 +00:00
Nick Treleaven
e00f73bc5d Note: this breaks the plugin API.
Remove plugin symbol configure().
Add plugin symbol plugin_configure() which is used to tell Geany a
widget to pack into the plugin preferences dialog, and connect a
response callback for when the dialog receives a user decision.
This allows Geany to in future implement a common preferences dialog
for all plugins, without breaking the plugin API/ABI.
Add Apply button for plugin preference dialogs (to indicate plugins
should handle the apply response as well as OK, as a multiple plugin
configuration dialog would want an apply button).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2621 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-28 13:05:09 +00:00
Nick Treleaven
d5af5049b3 Use plugin_init() in comments.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2620 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-27 17:03:43 +00:00
Nick Treleaven
a87b2e57b9 Fix plugins to compile with GEANY_DISABLE_DEPRECATED.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2617 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-26 17:24:11 +00:00
Nick Treleaven
8c1c59eecf Deprecate PLUGIN_INFO() in favour of PLUGIN_SET_INFO().
Remove plugin symbol info(), which is replaced by plugin_set_info()
and a new symbol plugin_info. This is so the PluginInfo struct is
zero'd first by Geany, so plugins are still ABI compatible if we
want to add any more fields in the future.
Fail to load a plugin if plugin_info->name is not set.
Remove now unused string.h include from plugindata.h.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2612 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-23 17:08:58 +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
133793e8db Specify the necessary libraries of each plugin to link against.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2607 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-21 16:53:40 +00:00
Nick Treleaven
45ba1bfbac Add API documentation for pluginmacros.h.
Make Doxygen define GEANY_DISABLE_DEPRECATED.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2603 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-19 15:21:31 +00:00
Nick Treleaven
380cec5a69 Add deprecated p_encoding alias for p_encodings.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2601 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-19 12:52:38 +00:00
Nick Treleaven
d99a4ea675 Note: this breaks the plugin API.
Split GeanyFunctions out of GeanyData so data pointers can be
appended before the function pointer structs without breaking the
ABI.
Rename GeanyFunctions fields with a p_ prefix to avoid name
conflicts.
Add new plugin symbol geany_functions.
Nearly all plugins will now need to declare the following:
'GeanyFunctions *geany_functions;', which is now used by
pluginmacros.h.
Add doxygen examples for geany_data and geany_functions.
Move deprecated document and filetype typedefs to src/plugindata.h,
as plugins aren't required to use pluginmacros.h.
Initialize geany_data by copying a stack struct so the compiler can
check for any missing field initializers.
Rename plugin macro p_encoding to p_encodings to follow the core
function encodings_ prefix.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2599 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-19 12:35:35 +00:00
Enrico Tröger
1e9784d18f Define p_editor in the right way, oops.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2597 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-18 16:08:26 +00:00
Enrico Tröger
311b82ebb2 Rename document struct to GeanyDocument.
Rename filetype struct to GeanyFiletype.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2594 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-16 14:17:54 +00:00
Nick Treleaven
a6ba330b1d Make right clicking on items not lose the current selection, like
the standard GtkFileChooser.
Add separator before the Clear filter toolbar button.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2592 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-16 12:16:03 +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
c3c4bc008d Make p_editor macro also available if GEANY_DISABLE_DEPRECATED is not defined.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2590 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-15 16:19:00 +00:00
Enrico Tröger
b2cddc87a0 Move indicator functions from document.c into editor.c.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2587 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-14 17:58:56 +00:00
Enrico Tröger
f04e0c3955 Change an error message to be more clear about the error.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2582 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-14 15:50:11 +00:00
Nick Treleaven
a5df9640c9 Add filetypes_array macro to allow use of filetypes[ft_id].
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-filetypes@2555 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-07 12:22:46 +00:00
Nick Treleaven
5340f2b9c8 Remove filetypes array from API.
Replace filetypes_get_from_uid() with filetypes_lookup_by_name().
Use a hash table for filetypes, but keep the old filetypes array
available for now.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-filetypes@2538 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-28 14:41:09 +00:00
Enrico Tröger
75e749ceb5 Add file filter text entry (patch by Robert McGinley, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2518 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-22 15:14:30 +00:00
Enrico Tröger
1cf8daa1dc Fix typo.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2516 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-22 14:53:20 +00:00
Enrico Tröger
c87a82adec Make use of ngettext() for strings with plural forms.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2515 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-22 14:44:45 +00:00
Enrico Tröger
d9690cbe77 Add navqueue_goto_line() to plugin API.
Make navqueue_goto_line() store document filename instead of tagmanager filename (patch by Yura Siamashka, thanks).
This makes it also possible to add navigation history items for files without a tagmanager filename.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2496 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-17 17:48:12 +00:00
Enrico Tröger
2652667577 Add DEBUG flag to all Windows makefiles to make it possible to build with debug symbols and without optimizations also on Windows (using make DEBUG=1).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2487 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-15 15:11:05 +00:00
Enrico Tröger
2f2cee58cb Avoid linking plugins against GTK libraries which seems unnecessary.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2461 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-09 16:21:59 +00:00
Nick Treleaven
958cb93eac Add configurable keybindings for focusing the Path Entry and File
List.
Refactor load_settings() from init().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2444 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-03 16:06:41 +00:00
Nick Treleaven
9dd3382343 Add missing mnemonics (except for 3 popup menu items, ran out of
letters).
Capitalize some menu items.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2430 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-31 13:09:56 +00:00
Nick Treleaven
ddb7fa0753 Rename VCDiff plugin Version Diff.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2417 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-27 13:09:20 +00:00
Enrico Tröger
898c0602de Fix two memory leaks and prevent showing two dialog boxes with the same error message.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2415 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-26 17:52:27 +00:00
Nick Treleaven
07d37be882 Rename VERSION_CHECK PLUGIN_VERSION_CHECK, but keep a deprecated
alias so outside plugins still compile.
Update our plugins to use this.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2411 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-26 17:10:18 +00:00