135 Commits

Author SHA1 Message Date
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
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
Enrico Tröger
ccd2186f6a Add preferences for year, date and datetime format of the corresponding template wildcards to make them more flexible.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2775 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-13 11:51:00 +00:00
Nick Treleaven
7c71457fb1 Fix building editor.c, using GeanyEditor* instead of GeanyDocument*
(most global editor functions still need conversion though).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/editor-struct@2765 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-08 13:53:08 +00:00
Nick Treleaven
a2cd1c4916 Move 2 search prefs to new Search tab of Preferences dialog.
Add new search pref: 'Use the current file's directory for Find in
Files' (#1930435).
Add PrefEntry struct which is used for an array containing widget
names to lookup; currently only used for 3 search-related
GtkToggleButton prefs.
Add SettingEntry struct which is used for an array containing keyfile
key and group information; currently only used for 3 search-related
gboolean settings.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2724 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-25 11:56:58 +00:00
Nick Treleaven
56e77de794 Bring back GeanyDocument::is_valid field as it is clearer and more
descriptive than using doc->index != -1.
Add deprecated macros DOC_IDX_VALID and DOC_IDX in plugindata.h,
which can make porting outside plugins easier; of course, it is
better to rewrite the code to use document pointers.
Use is_valid instead of the DOC_VALID macro when iterating over
documents_array, as there are never NULL pointers in it.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2704 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-18 14:18:26 +00:00
Enrico Tröger
57b3fb52b0 Fix wrong and add missing checks.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2697 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-16 18:31:59 +00:00
Enrico Tröger
d03f72122a Get rid of GeanyDocument::is_valid, use the index value instead.
Remove DOC_IDX_* macros.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2693 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-15 15:24:44 +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
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
Frank Lanitz
dd03f5e708 Little update of a string
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2658 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-07 11:42:31 +00:00
Nick Treleaven
37e0d1f3f1 Move GeanyDocument GUI elements and saved_encoding to private
Document struct which inherits from GeanyDocument. This is to hide
implementation fields from the plugin API, so that we can change
them if necessary.
Add DOCUMENT() macro to convert a GeanyDocument* to a Document*.
Also move UNDO_*, FileEncoding to documentprivate.h.
Move undo_action struct to document.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2631 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-02 15:31:59 +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
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
Enrico Tröger
392d1f863f Add preferences for default end of line characters for new files (closes #1895362) and to disable the automatic continuation of multi-line comments in C-like languages.
Enable multi-line continuation also for CSS files.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2580 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-14 15:36:27 +00:00
Enrico Tröger
79df8d0c8d Use gtk_window_present() instead of gtk_widget_show() for Open File and Preferences dialog.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2569 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-10 08:32:30 +00:00
Nick Treleaven
d131023fe7 Add basic Line Breaking option in the Document menu. Line breaking
only works when typing characters past the line breaking column
number.
Add 'Line breaking column' editor pref.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2562 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-09 12:13:29 +00:00
Nick Treleaven
af67ff3cd5 Make disk check timeout configurable in the prefs dialog Files tab.
Make a value of zero disable disk checks.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2520 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-23 16:53:40 +00:00
Enrico Tröger
e7598d0839 Fix wrong usage of gtk_file_chooser_get_filename() in callback of Open File dialogs in the preferences dialog.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2513 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-22 13:15:54 +00:00
Enrico Tröger
99a3d8e3c3 Add preference for not using the current word under the cursor when opening Find dialogs.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2389 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-23 16:29:43 +00:00
Nick Treleaven
38f2f67bda Fix clearing a shortcut when overriding it in Prefs dialog.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2300 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-03 17:05:00 +00:00
Nick Treleaven
41dc0112cd Fix segfault when setting custom keybindings in Prefs dialog.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2299 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-03 16:53:12 +00:00
Nick Treleaven
ee26ac9254 Change keybindings code to use keybinding groups, each with a
separate enum set, which will make the plugin ABI more stable,
and lay the groundwork for plugin keybindings support.
Note: this breaks the plugin API.
Disable setting menu accelerators (temporary).
Disable Keyboard Shortcuts dialog (temporary).
Disable snippets completion (temporary).
Disable focus commands in the VTE (temporary).
Make Tags group use separate cb_func_tags callback.
Rename keybindings_cmd() to keybindings_send_command().
Add keybindings_lookup_item().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2297 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-29 19:30:28 +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
6532339f1a Use a modifiers mask to ignore unwanted modifiers(caps lock, num lock) when handling key presses (maybe fixes #1891276).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2253 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-12 15:49:54 +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
26cf56ffc0 Fix wrong placement of descriptive texts in Templates and Tools tabs in the preferences dialog.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2185 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-23 13:36:53 +00:00
Enrico Tröger
5a1b51bc84 Add option for project session files support.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2176 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-16 16:30:34 +00:00
Nick Treleaven
f2ab079305 Add 'Override Geany keybindings' VTE prefs dialog option (replaces
hidden pref), and make it off by default.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2158 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-10 17:11:19 +00:00
Enrico Tröger
2ff8416767 Add GeanyWrapLabel (subclass of GtkLabel) to wrap text at any width.
Use GeanyWrapLabel in preferences dialog and plugin manager dialog to save a lot of space and improve layout of descriptive texts.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2152 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-09 13:24:36 +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
0d92c102b5 Use project's base dir and run command when running commands in the VTE.
Add VTE preference to skip the generated run script. when running commands in the VTE.
Make vte_cwd() accept also paths not only filenames.	       


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2105 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-17 16:58:26 +00:00
Enrico Tröger
47c7c69214 Add Move document first/last keybindings (patch by Catalin Marinas, thank you).
Add toolbar items to increase/decrease indentation (closes #1850697).	     


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2104 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-16 16:54:47 +00:00
Enrico Tröger
de8caa6055 Remove obsolete SVNdiff plugin, use the VC Diff plugin.
Add option for amount of characters to trigger symbol completion.
Add document_find_by_filename to the plugin API.		


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2084 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-01 17:53:36 +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
Nick Treleaven
feba4143ef Separate keybindings tree setup code from prefs_init_dialog(); use
enum for tree model columns.
Ask the user whether to override an existing keybinding when setting
a combination that is already in use.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2036 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-08 15:58:11 +00:00
Nick Treleaven
fbb8fb5f54 Enable build support on Windows.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2003 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-01 12:54:38 +00:00
Enrico Tröger
89b9682145 Fix minor compiler warning about shadowed variable.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1959 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-18 18:19:17 +00:00
Nick Treleaven
5f688c6294 Apply patch from Catalin Marinas to add a 'newline strips trailing
spaces' pref (thanks).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1956 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-18 11:52:47 +00:00
Nick Treleaven
a2589f87fa Add Indent Type option in the Document menu.
Add 'Detect from file' Editor indentation pref.
Show TAB or SP for current document's indent type.
Minor editing of Document menu and editor Indentation prefs group.
Use GString for statusbar statistics.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1953 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-17 12:27:07 +00:00
Enrico Tröger
1d9c244ad1 Add menu accelerators to the symbol and open files list popup menus.
Add option to display full path name in the open files list.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1941 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-13 09:28:26 +00:00
Nick Treleaven
84225249e6 Fix segfault when manually editing a keybinding and selecting another
item.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1928 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-03 11:21:08 +00:00
Nick Treleaven
34605af386 Replace 'Use tabs...' preference checkbox with Tabs, Spaces radio
buttons (should be a bit clearer).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1858 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-07 15:52:31 +00:00
Enrico Tröger
db5f98e725 Store the index of a keybinding in the treeview store to fix problems getting the correct index when editing a cell of the treeview.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1855 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-05 19:40:46 +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