22 Commits

Author SHA1 Message Date
Enrico Tröger
73557807a8 Remove get_zoom from plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1867 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-10 18:25:03 +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
Nick Treleaven
8e12775cb6 Clear PluginInfo fields in PLUGIN_INFO macro for future extensions.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1828 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-27 16:29:28 +00:00
Enrico Tröger
edc0ceaad6 Add version to plugin info fields and two other fields for future use.
Add option to show/hide the small crosses on each file tab (closes #1757680).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1826 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-25 14:16:52 +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
52e8b9f27d Apply patch from blackdog to add "document-activate" plugin signal,
which is sent when switching notebook pages (thanks).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1816 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-23 15:22:13 +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
Enrico Tröger
704940dcdf New plugin: Export as HTML and LaTeX.
Add some functions to the plugin API needed by the Export plugin.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1811 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-19 17:40:19 +00:00
Nick Treleaven
2fa7ce5794 Apply patch from Jeff Pohlmeyer to add document_remove() to the
plugin API (thanks).
Add document_open_files() to plugin API.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1798 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-15 11:52:06 +00:00
Nick Treleaven
d8d971ea9f Apply patch from blackdog to add document_save_file() to the plugin
API (thanks).
Add document_open_file() to plugin API.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1796 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-14 16:29:03 +00:00
Nick Treleaven
15cec02d07 Add plugin symbol geany_callbacks (see plugindata.h for details).
Add GeanyObject type with "document-new", "document-open",
"document-save" signals.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1785 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-10 16:11:17 +00:00
Nick Treleaven
a19e05fa81 Tidy up struct typedefs.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1784 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-10 11:45:20 +00:00
Nick Treleaven
70cd941345 Add filetypes, editor_prefs fields to plugin API.
Wrap scintilla_send_message(), sci_cmd(), lookup_widget().
Apply patch from Jeff Pohlmeyer to add more common scintilla wrappers
to the plugin API (thanks).
Increment plugin ABI version.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1768 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-08-03 15:05:53 +00:00
Nick Treleaven
2a15ed3dd0 Add GeanyData* geany_data symbol for plugins so they don't have to
keep a copy of the init() argument.
Rename PluginData GeanyData (but use a typedef for backward
compatibility).
Update plugins to use newer API symbols.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1749 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-27 10:37:22 +00:00
Nick Treleaven
75a08ac4a3 Don't destroy plugin_fields->menu_item automatically - plugin_fields
should be owned by the plugin, so the plugin is responsible for
destroying it, and any other memory it allocated.
Print a warning message in debug mode if a plugin has no cleanup()
function.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1743 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-25 11:59:34 +00:00
Nick Treleaven
1fb834b19a Increment plugin API version for Jeff's patch.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1738 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-24 11:46:03 +00:00
Nick Treleaven
aa54953cfe Apply patch from Jeff Pohlmeyer to add plugin functions for getting
a file list and modifying scintilla text selections (thanks).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1737 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-24 11:43:46 +00:00
Nick Treleaven
109a7aee67 Convert 'Insert Special HTML Characters' tool into a plugin;
keybinding support will be added later.
Add plugin functions for inserting text into the current document.
Add plugin support for disabling a menu item when no documents are
open.
Destroy plugin_fields->menu_item on unloading if set by a plugin.
Use G_MODULE_BIND_LOCAL for plugins to prevent symbol shadowing by
other modules, and to help detect unresolved symbols at loading time.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1734 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-23 15:41:08 +00:00
Nick Treleaven
5ec03cdc0a Make Class Builder 'Create Class' dialog use Glade-style frames and
remove some unnecessary border width.
Add ui->dialog_vbox_new() and ui->frame_new_with_alignment()
functions to the plugin API.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1701 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-13 14:54:11 +00:00
Nick Treleaven
451c5b0e7e Make Class Builder into a plugin.
Add some function pointers to the plugin API (for the class builder).
Don't use G_MODULE_BIND_LAZY when loading plugins otherwise we can
potentially get unresolved symbols at runtime, causing a segfault.
Capitalize 2 menu item labels.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1659 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-04 11:32:33 +00:00
Nick Treleaven
a549a99c33 Move plugin name and description into a separate struct, which is set
by calling the PLUGIN_INFO() macro - this can be read before the
plugin is initialized.
Added more comments for plugin authors.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1645 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-06-27 15:56:42 +00:00
Nick Treleaven
6e53eacc70 Added very basic plugin support - any plugins found in
/lib/geany are loaded at startup. Windows support will be
added later.
Added Demo plugin (currently installed by default), which adds an
item in the Tools menu.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1643 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-06-26 16:17:16 +00:00