416 Commits

Author SHA1 Message Date
Enrico Tröger
6bc86c4462 Replace gtk_widget_(un)ref() with g_object(un)ref(), patch by Colomban Wendling, thanks.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3143 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-22 15:36:45 +00:00
Enrico Tröger
a47d72432c Include "support.h" for I18N support instead of <glib/gi18n.h> to get strings translated with GLib 2.18+.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3112 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-18 10:54:49 +00:00
Nick Treleaven
1096ec427c Fix mixed indentation (prevents vcdiff.c being detected as T/S).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3096 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-15 12:24:48 +00:00
Nick Treleaven
51d28d688d Use ui_add_document_sensitive().
Use PLUGIN_VERSION_CHECK(GEANY_API_VERSION) for internal plugins,
except the Demo plugin (as an example).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3085 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-14 17:03:44 +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
5b772ef629 InstantSave: when opening new files from template, use the template's filetype, otherwise fall back to configured default filetype.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3072 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-12 17:51:56 +00:00
Nick Treleaven
76708ae327 Fix only updating filename label after saving the relevant document.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3059 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-08 11:38:40 +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
Nick Treleaven
c430b7e57a Add filename label.
Fix Gtk warning when resplitting.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3055 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 17:31:17 +00:00
Nick Treleaven
8c2a6ed157 Refactor with set_editor().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3054 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 17:12:33 +00:00
Nick Treleaven
73c73a6bcf Fix segfault when clicking on split window after the original
document has been closed and the view has been refreshed to another
document.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3053 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 15:19:37 +00:00
Nick Treleaven
c47a0d8ab2 Use EditWindow structure instead of separate global variables.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3052 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 14:50:54 +00:00
Nick Treleaven
21b5fb03f2 Fix file header info.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3050 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 12:03:45 +00:00
Nick Treleaven
7d3adcea45 Add toolbar with Refresh button to sync to the current document, and
an Unsplit button (reuses existing string).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3049 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-07 12:00:29 +00:00
Nick Treleaven
ff85d28238 Fix wrong editor scrollbar mouse cursor and broken middle-click
paste after splitting or unsplitting (fixes #2142186).
Note: this is a workaround for an issue with Scintilla where the
widget (or its parents) can't be removed or reparented to a
non-visible widget.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3044 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-06 16:13:35 +00:00
Nick Treleaven
a9f071e3f5 Remove trailing whitespace.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3043 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-06 15:48:42 +00:00
Enrico Tröger
75d46bff7e Merge InstantSave, AutoSave and BackupCopy plugins into the plugin 'Save Actions'.
Add a section for documentation of internal plugins in the documentation.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3035 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-02 13:37:35 +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
Nick Treleaven
e6c807c25b Use SCI_STYLEGET(FONT|SIZE) instead of parsing editor_font.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2947 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-15 16:53:31 +00:00
Nick Treleaven
a0493aa678 Make menu document-sensitive.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2941 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-12 14:12:15 +00:00
Nick Treleaven
0d9f0ea3df Set pane splitter halfway.
Copy cursor position from original editor.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2939 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-11 16:26:34 +00:00
Nick Treleaven
0bf9414532 Unsplit when the source document is closed.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2937 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-11 15:06:14 +00:00
Nick Treleaven
906ec0e73b Move menu items to a submenu.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2935 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-10 14:49:16 +00:00
Nick Treleaven
850a558f9c Add Unsplit command.
Clean up menus and split window when unloading plugin.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/split-window-plugin@2934 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-10 14:29:16 +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
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