140 Commits

Author SHA1 Message Date
Enrico Tröger
9e25c43487 Move implementation of lookup_widget() into ui_lookup_widget().
Change uses of lookup_widget() to ui_lookup_widget().
Remove now unneeded support.c.
Use GLib gettext macros in support.h instead of own ones.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3402 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-18 21:21:53 +00:00
Nick Treleaven
46389fb650 On quitting, sort list of active plugins by plugin name.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3398 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-18 17:28:11 +00:00
Enrico Tröger
5d97590d21 Fix plugin toolbar icon placement. Now they are always inserted before the Quit button if it is the last toolbar element or at the end otherwise.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3361 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-11 16:51:46 +00:00
Enrico Tröger
8ed9710f48 Rewrite of the whole toolbar code. Now it is based on GtkActions and all elements can be added/removed/reordered using a simple XML file.
Add GeanyMenubuttonAction and GeanyEntryAction as GtkAction subclasses to have menu buttons and text entries in the toolbar.
Change the Goto line toolbar item back to a plain text entry again.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3328 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-06 11:10:06 +00:00
Nick Treleaven
921f010ffc Rename msgwin_compiler_add -> msgwin_compiler_add_string.
Rename msgwin_msg_add -> msgwin_msg_add_string.
Rename msgwin_compiler_add_fmt -> msgwin_compiler_add.
Rename msgwin_msg_add_fmt -> msgwin_msg_add.
This fixes 2 geanyfunctions.h macros, and is more consistent with
msgwin_status_add().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3326 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-05 17:30:06 +00:00
Nick Treleaven
b2f966dca9 Add GeanyFunctions::p_msgwin to fix the prefix for generated macros.
Deprecate GeanyFunctions::p_msgwindow.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3323 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-05 16:29:32 +00:00
Nick Treleaven
7994128e38 Rename sci_cmd() to sci_send_command() to match the plugin API and
fix the generated macro name.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3322 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-05 12:34:20 +00:00
Nick Treleaven
2d015b6fb2 Allow generating macros for functions with digits in the name.
Don't generate dummyprefix_scintilla_send_message and lookup_widget
macros.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3312 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-04 13:55:11 +00:00
Nick Treleaven
5763dfbe2d Add document_index(), filetypes_index() array accessor functions to
the plugin API.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3310 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-03 18:03:54 +00:00
Nick Treleaven
80b936037e Add scintilla_send_message() to the API with its own prefix, so
the geanyfunctions.h macro works.
Deprecate p_sci->send_message().
Add scintilla_new() to the plugin API.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3309 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-03 13:36:45 +00:00
Nick Treleaven
f813a6a7e4 Add ui_lookup_widget() to plugin API (so genapi.py has a suitable
prefix).
Mark SupportFuncs as deprecated.
Add description comment for geanyfunctions.h.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3307 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-02 18:33:41 +00:00
Enrico Tröger
160e5e8491 Attempt to make utils_get_date_time() UTF-8 safe and add it to the plugin API.
Fix misnamed str_casecmp() function in the plugin API, sorry.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3267 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-21 17:40:04 +00:00
Nick Treleaven
e6fa252184 Create geany_object in main.c so core functions can use it even
when plugins are disabled.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3265 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-21 17:27:16 +00:00
Nick Treleaven
dc8227ad94 Add function ui_image_menu_item_new() to the plugin API, to easily
create a menu item with a stock image and a custom label.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3261 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-21 13:34:58 +00:00
Enrico Tröger
81ffd05aa1 dd ui_widget_set_tooltip_text() as a convenience function to easily set tooltips for widgets. It uses gtk_widget_set_tooltip_text() on GTK >= 2.12 otherwise the old tooltips API.Use ui_widget_set_tooltip_text().
Use ui_widget_set_tooltip_text() in the plugins.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3250 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-18 20:14:42 +00:00
Enrico Tröger
18095fca79 Note: this breaks the plugin API for Editor and Scintilla functions.
Rename all functions in editor.c and sciwrappers.c which are related to indicators for more consistency.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3238 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-16 17:54:28 +00:00
Enrico Tröger
d7caf0f9c0 Follow XDG Base Directory specification and use $XDG_CONFIG_HOME/geany (most often this is ~/.config/geany) as default configuration directory (closes #2166229).
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
2008-11-13 14:37:47 +00:00
Enrico Tröger
d1b5ace11c Replace uses of g_strcasecmp() with our own implementation, utils_str_casecmp().
Add utils_str_casecmp() to the plugin API.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3210 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-11 19:18:51 +00:00
Nick Treleaven
12e29d7ebd Make Version Diff plugin set the indent type for diffs based on the
current file's indent type.
Add editor_set_indent_type() to the API.
Note: uses editor.h plugindata.h include.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3194 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-08 13:32:55 +00:00
Enrico Tröger
0324ed71f6 Add *_full variants of editor indicator functions to the plugin API for more control over indicators.
Add/Update some API docs.
Make the 'Mark' button for Find highlight the results with rounded boxes instead of marking the whole line.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3155 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-25 18:57:00 +00:00
Enrico Tröger
1c46db7dd6 Add main_locale_init() to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3153 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-25 18:56:27 +00:00
Enrico Tröger
242f50ebd9 Fix deprecated usage of g_win32_get_package_installation_directory(), pass NULL as package name.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3151 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-25 18:56:04 +00:00
Nick Treleaven
e72e7c337a Fix showing desensitive widgets if no documents are open when a
plugin is first loaded.
Remove plugins_update_document_sensitive().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3095 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-15 12:19:24 +00:00
Nick Treleaven
65768ef184 Show the tools menu separator if there are any items below it.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3094 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-15 11:59:32 +00:00
Nick Treleaven
c343d904b2 Add ui_add_document_sensitive() to the plugin API.
Deprecate plugin_fields, PluginFlags - use
ui_add_document_sensitive() instead.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3084 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-14 14:49:41 +00:00
Nick Treleaven
8eab24c159 Use geany_debug() instead of g_warning() when a plugin has
unresolved symbols.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3077 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-13 15:52:32 +00:00
Nick Treleaven
6133c0b5d6 Tidy up plugin cleanup code.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3076 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-13 15:40:12 +00:00
Nick Treleaven
d8d727752e - API changes:
Replace p_ui->get_toolbar_insert_position() with
p_plugin->add_toolbar_item(), which also adds a separator when the
first item is added.
Add 'GeanyPlugin *geany_plugin' plugin symbol, partly to replace
plugin_info (now deprecated), mainly to identify a plugin and hold
private implementation fields for plugin utility functions.
(plugin_info will be removed after the 0.15 release.)
- Code changes:
Add ui_auto_separator_add_ref() to hide separator-like widgets when
their visible group elements are hidden or destroyed.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3074 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-13 12:38:32 +00:00
Enrico Tröger
9aa5ba41c7 Plug some memory leaks due to some missing g_object_unref's.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3056 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 18:51:50 +00:00
Enrico Tröger
bab0991c36 Rename the new indicator functions and add documentation comment.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2973 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-18 13:27:10 +00:00
Nick Treleaven
2b4fe97620 Use wrap label for the first label in the plugin manager dialog.
Use scrolled window for plugin details text area to avoid resizing
dialog components if a plugin has a long description.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2969 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-18 11:41:27 +00:00
Enrico Tröger
a6ce9b8a6d Replace the usage of the old Scintilla indicator API by the new modern API and remove old hacks (patch by Jason Oster, thanks).
Add new sci_indic_clear() function to the plugin API.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2966 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-17 18:05:27 +00:00
Enrico Tröger
ab3c9a4f3d API changes:
Rename sci_can_copy() into sci_has_selection().
Rename sci_find_bracematch() into sci_find_matching_brace().

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2964 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-17 18:02:55 +00:00
Nick Treleaven
34f54710dd Merge split-window-plugin branch.
Add Split Window plugin (should work OK for viewing and basic text
editing; most other features are not implemented yet).
Add editor_create_widget() to the API.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2954 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-16 16:06:47 +00:00
Nick Treleaven
186e366348 Add editor_create_widget() to the API; remove editor_create(),
editor_destroy().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2950 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-16 15:21:46 +00:00
Enrico Tröger
b747234117 Add ui_get_toolbar_insert_position() for plugins to get a position to insert new toolbar items.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2930 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-08 14:28:59 +00:00
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
16d8dad107 Rename api_version GEANY_API_VERSION.
Rename abi_version GEANY_ABI_VERSION.
Use enums for each of these so they can be used to initialize a
global variable, and add dox.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2888 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-14 15:50:40 +00:00
Nick Treleaven
a134c529c2 Rename KeyCallback GeanyKeyCallback.
Rename KeyBinding GeanyKeyBinding.
Rename KeyBindingGroup GeanyKeyGroup.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2869 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-08 18:05:53 +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
a6eac00cc1 Add editor_get_indent_prefs() to the API.
Make editor_get_indent_prefs() return default prefs if editor is
NULL.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-tab-width@2861 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-07 15:30:52 +00:00
Nick Treleaven
5f18cee90f Add dox for FiletypeFuncs and some of GeanyFiletype.
Rename filetypes_detect_from_file() to
filetypes_detect_from_document().
Rename filetypes_detect_from_filename() to
filetypes_detect_from_file() because it also detects shebang lines.
Remove function prototype comments for filetypes.h (see filetypes.c
or API dox instead).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2805 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-23 14:44:27 +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
8f38a69121 Move code to reload configuration files into utils_reload_configuration() and add it to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2794 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-20 18:07:53 +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
71d5e59566 Prevent warning when trying to load an active plugin at startup that
doesn't exist on disk any more.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2781 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-15 17:16:28 +00:00
Nick Treleaven
70df7f6388 Add document_close() to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2742 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-02 13:40:06 +00:00
Enrico Tröger
d3439f8a17 Use document pointer instead of an index to the documents array everywhere in the core code.
Pass a document pointer to the callbacks of all "document-*" signals.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2692 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-15 13:35:48 +00:00
Enrico Tröger
1baa9d3159 Remove temporary navqueues_ and msgwins_ functions and adjust depending code.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2689 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-12 20:45: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