393 Commits

Author SHA1 Message Date
Enrico Tröger
17657b71c9 Add backslash to the wordchars on Windows when using 'Open Selected File'.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3846 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-06-08 19:16:23 +00:00
Nick Treleaven
2edecade6b Make indenting with the Tabs indent type preserve spaces on the line,
so it works for the 'tab indents, space aligns' formatting style.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3802 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-05-18 15:17:48 +00:00
Enrico Tröger
6d1371eec2 Update the View->Fullscreen menu item when fullscreen state is changed externally (e.g. by the window manager).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3754 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-30 17:17:13 +00:00
Enrico Tröger
b5884be2fa Remember the active sidebar page between sessions.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3739 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-27 19:30:29 +00:00
Enrico Tröger
6ae141fac0 Replace our own GEANY_KEYS_MODIFIER_MASK by gtk_accelerator_get_default_mod_mask() which gives the same result.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3715 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-21 20:51:53 +00:00
Enrico Tröger
0a4256565c Prevent double execution of radio menu item "activate" or "toggled" signal handlers.
Move 'Set Encoding' callback function into encodings.c.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3712 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-17 15:30:01 +00:00
Enrico Tröger
a95a59a42f Remove all G_LIKELY macros inside g_return_if_fail() statements as this is redundant.
Remove many other G_LIKELY/G_UNLIKELY macros which doesn't make much sense to keep the code more readable.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3708 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-15 22:47:33 +00:00
Enrico Tröger
a9dc990049 Start using G_LIKELY/G_UNLIKELY macros to gain a little more performance when building the code with gcc.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3687 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-05 21:07:40 +00:00
Enrico Tröger
560af59610 Add an option to allow appending the toolbar to the main menu bar to save some vertical space.
Allow setting toolbar icon size to very small (menu icon size).

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3668 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-03-29 16:15:35 +00:00
Enrico Tröger
2bc9e3ae02 Re-set the quitting status after all documents have been closed on quitting.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3653 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-03-25 19:38:14 +00:00
Enrico Tröger
97a90efb8b Delay disk file checks when switching between documents a little bit to avoid fast, unintentional page switching in some cases.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3646 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-03-24 18:12:39 +00:00
Enrico Tröger
cff3f126ac Fix broken non-incremental search with the toolbar search entry when pressing Enter (closes #2638180).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3609 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-27 14:06:51 +00:00
Enrico Tröger
46a2d13b4d Move ui_set_search_entry_background() into ui_utils.c.
Change the background colour of the search entries in the Find and Replace dialogs according to the search results like in the toolbar search field.
Add images to the 'Replace' and 'Replace and Find' buttons in the Replace dialog.
Minor cleanups in search.c.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3605 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-27 14:05:50 +00:00
Enrico Tröger
59079283f2 Add 'Send Selection to Terminal' command to the Edit->Format menu (initial patch by David Gleich, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3601 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-25 23:28:01 +00:00
Enrico Tröger
c4897ee665 Use the document's real path when the VTE setting 'Follow the path of the current file' is used to prevent unnecessary directory changes when symlinks are used (reported by Dominic Hopf).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3532 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-01 18:03:19 +00:00
Enrico Tröger
5752ee9863 Rename utils_start_browser() in utils_open_browser() and add it to the plugin API.
Add plugin symbol plugin_help() which is called by Geany when the plugin should show its documentation (if any). This symbol is optional, plugins can omit it if not needed.
Add a Help button next to the Configure button in the plugin manager dialog to easily open a plugin's documentation if available.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3524 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-28 19:30:18 +00:00
Enrico Tröger
c636728975 Fix several compiler warnings and build errors (patch by Daniel Richard G., thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3460 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-11 18:29:39 +00:00
Enrico Tröger
39a6eb455e Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3446 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-04 18:30:42 +00:00
Nick Treleaven
077270c647 Remove geanyobject.h includes.
Use GObject instead of unused GeanyObject argument.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3439 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-03 13:03:42 +00:00
Nick Treleaven
9962e8abb8 Fix not switching to 2nd last used document when the last used
document has been closed (#1945162).
- Code changes:
Move geany_object extern to geany.h.
Remove CallbacksData struct.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3438 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-03 12:54:13 +00:00
Nick Treleaven
0cce7c8bf4 Remove unnecessary include.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3421 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-25 13:38:06 +00:00
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
Enrico Tröger
12846c0998 Remove dead code.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3400 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-18 19:22:36 +00:00
Enrico Tröger
428b93da88 Add new toolbar elements: Close All and Preferences.
The icon for Close All was kindly provided by Tyler Mulligan, thanks.
Remove GeanyStockItem and add ui_new_pixbuf_from_stock() as a replacement.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3354 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-09 20:31:38 +00:00
Enrico Tröger
7c6ff4d5bb Add Line number and Markers margin settings to the prefs dialog.
Add View->Editor submenu and group there the Line numbers, Markers margin, Show white space, Show line endings and Show indentation guides settings.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3340 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-07 19:12:08 +00:00
Enrico Tröger
7f3de8507f Fix pressing escape in the sidebar and toolbar focus the editor.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3338 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-07 19:11:13 +00:00
Enrico Tröger
ae9e166786 Remove on_go_to_line1_activate() and directly use on_go_to_line_activate() instead.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3334 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-06 17:48:36 +00:00
Enrico Tröger
b5c392d309 Add new stock icon GEANY_STOCK_SAVE_ALL.
Remove code to manually update the size of the 'Save All' toolbar icon and use the GEANY_STOCK_SAVE_ALL stock icon instead.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3329 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-06 11:45:48 +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
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
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
ffffc759b1 Remove now-unnecessary checks for geany_object != NULL.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3266 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-21 17:33:35 +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
Nick Treleaven
5f32d93886 Fix GLib warning when pressing Close File keybinding and no
documents are open.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3167 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-03 17:38:50 +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
15efd65343 Fix updating of the value of the toolbar Goto line spinbutton.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3154 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-25 18:56:38 +00:00
Enrico Tröger
d3ee6f48ca Add toolbar buttons for Cut, Copy, Paste and Delete (#2161750).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3147 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-23 20:55:55 +00:00
Enrico Tröger
c946d4ef91 Replace Goto line text entry field in the toolbar with a spin button.
Remove dialogs_show_goto_line(), use the more generic dialogs_show_input_numeric() instead.
Increase limit of the maximum line number from 99999 to 100000000.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3146 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-23 20:55:06 +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
Enrico Tröger
83d6c2e8e2 Fix using direct Scintilla access in document.c and callbacks.
Add wrapper functions instead.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3000 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-25 18:29:53 +00:00
Enrico Tröger
a032d6a660 Unify the API in editor.c, all public functions now take a GeanyEditor* object.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2998 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-25 18:28:37 +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
a01abd937d Cancel autocompletion on Undo/Redo (based on a patch by Jason Oster,
thanks; #2102715).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2957 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-17 12:12:49 +00:00
Enrico Tröger
9290e0bf65 Add '-' (dash) to the wordchars when using 'open selected filename'.
Please open a bug report if this will break any filenames.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2926 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-08 14:25:00 +00:00
Enrico Tröger
ab7a522ca9 Rename all toolbar widgets for consistent names.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2924 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-08 14:22:39 +00:00
Nick Treleaven
137325eb18 Don't disable 'Detect from file' indent type pref when 'Tabs and
Spaces' is selected.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2898 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-19 11:20:09 +00:00
Enrico Tröger
459ba625ed Move geany_debug() into log.c.
Use GLib log/print handlers to log messages/warnings into a string for later usage.
Add a debug messages window, accessible through the help menu to easily view debug messages/warnings.
This might replace the extra console window on Windows.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2876 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-11 18:16:35 +00:00
Nick Treleaven
309b853b57 Merge changes from the custom-tab-width branch (closes #1662173).
Thanks to Joerg Desch for explaining how it needs to work.
Note: this breaks the plugin API for indentation editor_prefs.
Add separate Width indent pref (as well as the Tab Width pref).
Add 'Tabs & Spaces' Indent Type radio option pref.
Add 'Tabs and Spaces' Document menu indent option.
Note: Tabs & Spaces cannot be detected (yet) when opening files;
default file templates still only use tabs.
Set 'Detect from file' indent type setting insensitive when Tabs &
Spaces is set.
Don't change per-document auto-indent setting after changing default
auto-indentation type.
- API changes:
Add GeanyIndentPrefs struct from some GeanyEditorPrefs fields.
Replace GeanyIndentPrefs::use_tabs with GeanyIndentType field 'type'.
Add editor_get_indent_prefs() to the API, which should be used to
get the right settings for a document/editor instead of reading
any struct fields. This could also support project/filetype
indentation prefs quite easily.
- Core code changes:
Move toggle_prefs to a function toggle_items_foreach(), which takes
a PREF_DISPLAY or PREF_UPDATE argument. This means the PrefEntry
array can contain runtime fields, so can read pointer contents.
Add pref_item_callbacks array of functions to call;
toggle_items_foreach(), spin_items_foreach(), radio_items_foreach(),
combo_items_foreach().
Update keyfile.c to use foreach-style functions for SettingEntry
arrays, like the new PrefEntry code in prefs.c.
Add get_indent_size_after_line() to replace get_indent() for
clarity, and to fix Tabs & Spaces auto-indentation > basic.
Remove opening-brace indent code from get_indent() as it's now in
get_brace_indent().
Change editor_close_block() to use sci_get_line_indentation() for
clarity.
Make editor_close_block() static.
Add editor_init().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2863 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-07 16:36:06 +00:00
Nick Treleaven
51badbd829 Set 'Detect from file' indent type setting insensitive when Tabs &
Spaces is set.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-tab-width@2859 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-07 11:49:06 +00:00
Nick Treleaven
d3fbdf278b Fix build; currently auto-indentation doesn't support inserting tabs
and spaces, only spaces. Also Tabs & Spaces cannot be detected yet
when opening files. Default file templates still only use tabs.
Add editor_get_indent_prefs() which should be used to get the right
settings for a document/editor instead of reading any default prefs.
This could also support project/filetype indentation prefs quite
easily.
Don't change per-document auto-indent setting after changing default
auto-indentation type.
Remove ui_radio_menu_item_*(), not good to use as they depended on
the order of widget creation, so don't work well with Glade. Use
RadioPrefEntry array instead.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-tab-width@2853 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-04 14:07:49 +00:00