126 Commits

Author SHA1 Message Date
Enrico Tröger
8db192a3fa Add a preference for choosing between GTK and native File Open/Save dialogs (only available on Windows).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4929 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-16 18:22:24 +00:00
Enrico Tröger
658b552f42 Add public, generic callback ui_editable_insert_text_callback() to restrict GtkEntry text inputs to +/- and numeric values only.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4892 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-09 15:48:29 +00:00
Enrico Tröger
e28ca32274 Add option 'System Default' for toolbar icon style and size to use the GTK default value.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4817 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-11 21:56:08 +00:00
Nick Treleaven
138cbaa02f Use 3rd person (gets not get) for API function brief descriptions.
Avoid using 'convenience function' in API brief descriptions.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4757 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-03-12 18:15:48 +00:00
Enrico Tröger
f72f6381df Add and use convenience function ui_is_keyval_enter_or_return() and add it to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4737 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-03-07 19:33:15 +00:00
Enrico Tröger
6afacd50b9 Make Space on the compiler and messages widgets not focus the editor widget while Enter does (patch by Can Koy, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4713 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-02-28 14:57:06 +00:00
Enrico Tröger
7ba4a81181 Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4518 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-01-01 22:55:18 +00:00
Enrico Tröger
6fdf1cdfb2 Add preferences for hiding single tabs from the messages window (no GUI preferences yet, still to be implemented).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4500 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-12-20 20:07:52 +00:00
Nick Treleaven
091bfac4ac Add sidebar position interface pref.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4357 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-23 16:18:05 +00:00
Nick Treleaven
39cdcac742 Make Split Window 'Show current document' button have a drop-down menu
to select the other documents.
Add new API function ui_menu_add_document_items().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4308 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-13 17:14:25 +00:00
Nick Treleaven
bc2b6829c5 Make ui_entry_add_clear_icon() take a GtkEntry, not GtkWidget.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4220 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-09-21 16:46:16 +00:00
Nick Treleaven
dcd66f09a0 Add & use ui_label_set_markup(), ui_label_new_bold().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4219 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-09-21 16:21:03 +00:00
Enrico Tröger
8d18b3c2fa Init stock items before creating the toolbar (closes #2809324).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3882 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-06-20 16:53:28 +00:00
Enrico Tröger
8b5b6287e1 Instantly reload (i.e. rebuild) the toolbar when ui_toolbar.xml is saved within Geany.
Refactor some related code.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3874 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-06-20 16:51:32 +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
Nick Treleaven
7e7b07e3b7 Sort Configuration Files menu.
Add ui_menu_sort_by_label().
Add foreach_list() macro.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3700 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-08 12:25:47 +00:00
Enrico Tröger
9a0c567918 Add "Recent Projects" menu to the Project menu (#2728630, patch by Elias Pschernig, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3684 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-05 14:14:29 +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
b2eeefc919 Add some missing @since tags to the API documentation of various functions.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3531 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-30 18:53:23 +00:00
Enrico Tröger
8ef5804bbe Add a hiden preference "allow_always_save" to make the Save buttons/menu items always sensitive and allow saving files even without changes.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3520 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-28 17:01:32 +00:00
Enrico Tröger
644a9cfbff Add a progressbar widget to the statusbar and use it to show progress when building with the Make commands, when printing and when using Find in Files.
Add progressbar convenience functions and ui_entry_add_clear_icon() to the plugin API.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3517 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-27 20:19:43 +00:00
Enrico Tröger
a20ee7d883 Add a clear icon to the toolbar search and goto text fields (will be available with GTK >= 2.16).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3516 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-27 19:31:45 +00:00
Nick Treleaven
f62363e6eb Use tree for Documents sidebar, grouped by path.
Remove Documents show full path pref.
Use enum for documents tree store column ids.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3488 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-19 13:12:45 +00:00
Enrico Tröger
204b62d000 Add 'Build' toolbar button with a submenu for Make actions.
Make use of ui_image_menu_item_new() for some menu items.
Remove tooltips from menu items.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3479 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-17 17:59:20 +00:00
Enrico Tröger
9d627214f1 Add GUI pref to invert all colours for syntax highlighting.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3468 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-14 19:19:08 +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
640053e598 Add ui_hookup_widget() macro to the API.
Make saving Stash string settings NULL-safe.
Move fif_extra_options search setting code to search.c.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3428 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-28 17:25:09 +00:00
Nick Treleaven
89fce6dd26 Add an interface pref for whether to hide additional widgets when
double-clicking on document notebook tabs (off by default).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3359 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-11 16:29:54 +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
73aa9138da Move stock image name macro and image enum to ui_utils.h.
Remove old, unused images.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3347 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-08 21:58:11 +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
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
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
Nick Treleaven
899dce26b6 Add 'Tools->Configuration Files' menu with items to open
filetype_extensions.conf and ignore.tags. These files are also
reloaded automatically when saved.
- Code changes:
Make app->configdir a realpath().
Add ui_add_config_file_menu_item().
Add utils_build_path(), similar to g_build_path() but (re)using a
fixed buffer, so the result is never freed.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3279 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-26 13:15:53 +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
9975737eff Add and use ui_combo_box_prepend_text_once() to add project's base_path to the Find in Files dialog even if another project was opened.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3237 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-16 17:53:55 +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
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
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
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
a569c69e33 Move widget array lookups from main.c to ui_utils.c.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2785 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-17 16:28:16 +00:00
Nick Treleaven
52985a7d5a Add Previous Message menu item.
Don't abbreviate Find Prev Selected.
Add ui_tree_view_find_previous().
Set Next Message menu item sensitivity when clicking on Search menu.
Thanks to Beau Barker (skip76) for an initial version of
ui_tree_view_find_previous() (see #1931125).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2725 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-25 17:38:31 +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
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
Nick Treleaven
bd92df27f5 Add support for custom file templates found at startup in the
~/.geany/templates/files directory. These are currently shown
underneath filetype templates in the New with Template menu.
Add ui_menu_item_get_text().
Make utils_string_replace_all() ignore empty haystacks.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2575 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-13 17:18:14 +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
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