51 Commits

Author SHA1 Message Date
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
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
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
Nick Treleaven
601dfd69f7 Make msgwin_status_add() only log a message, not display it on the
status bar.
Make ui_set_statusbar() take a log argument for whether to record the
message in the Status window.
(Plugin API functions already do this).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1971 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-10-24 10:52:48 +00:00
Nick Treleaven
a76adc4354 Make Toggle Case use the current word if there's no selection.
Make Toggle Case keep an existing selection.
Rename ui_widgets.popup_items to popup_copy_items.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1876 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-12 16:01:23 +00:00
Enrico Tröger
d390522727 Remove convert to lower-/upper-case keybindings.
Add toggle case keybinding and change shortcut to Ctrl-Alt-U.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1860 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-09-07 19:01:55 +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
Nick Treleaven
2178c7c887 Rename ui_close_buttons_toggle() ui_document_buttons_update().
Move app->sensitive_buttons to ui_utils.c for easier maintenance,
rename to document_buttons.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1727 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-20 12:06:51 +00:00
Nick Treleaven
3ecd31d9fd Add ui_table_add_row() for easily adding widgets to a GtkTable, and
use it in project_new().
Group 'generic' functions related to GTK+ together at the top of
ui_utils.h.
Make sure G_GNUC_NULL_TERMINATED is defined in geany.h.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1702 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-07-13 15:54:16 +00:00
Nick Treleaven
9570443c7b Use open folder dialog for project base path instead of create folder
dialog (better for choosing existing directories, and can still
create new folders).
Add optional title parameter for open dialog with ui_path_box_new()
and ui_setup_open_button_callback().
Use Windows folder dialog in ui_path_box_open_clicked().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1526 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-05-11 16:34:18 +00:00
Enrico Tröger
0514bba3d3 Added keybinding to show and hide all additional widgets(statusbar, toolbar, sidebar and messages window).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1505 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-05-04 16:59:00 +00:00
Nick Treleaven
98f64da8f6 Add ui_path_box_new() for creating a path text entry with an open
button, which runs a file chooser to set the text entry.
Add ui_setup_open_button_callback() for setting up a button callback
that behaves like the open button in ui_path_box_new().
Use ui_path_box_new() in FIF dialog setup.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1485 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-04-29 12:03:25 +00:00
Nick Treleaven
b8491a2b7d Move ui_update_tag_list() to treeviews.c.
Make treeviews_prepare_taglist() static.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1249 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-02-05 16:17:44 +00:00
Enrico Tröger
7b61ad934d Updated copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1188 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-01-14 17:36:42 +00:00
Nick Treleaven
533d61fb68 Fix memory leaks when using GdkPixbuf, PangoFontDescription and some
strings.
Capitalize main window title.
Add ui_widget_modify_font_from_string().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1089 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-12-13 15:18:49 +00:00
Nick Treleaven
978de6fe6f Add Next Message and Next Error menu items.
Don't select the last build message on completing a build.
Change build_get_menu_items(-1) to return current build menu.
Add Copy popup menu item for Status and Messages windows.
Move on_message_treeview_clear_activate(),
on_compiler_treeview_copy_activate() to msgwindow.c.
Create the Recent files submenu item manually because Glade 2.10
removes empty menus.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1068 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-12-08 15:50:10 +00:00
Nick Treleaven
1edaaa3d6c Show read-only notebook tabs in green.
Add document_get_status() to get the tab colour for the document.
Use ui_update_tab_status() to update notebook tabs and open files
treeview items.
Avoid using GtkTreeIter struct as treeviews function arguments.
Remove unneeded arguments for treeviews_openfiles_add(),
notebook_new_tab().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1053 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-12-05 10:37:36 +00:00
Nick Treleaven
01988714b3 Make ui_set_statusbar() use printf-style arguments & assume the
message should not be overridden.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1032 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-11-25 16:33:38 +00:00
Nick Treleaven
373ec102e4 Add frame for VTE Preferences tab, update packing.
Replace ui_frame_new() with ui_frame_new_with_alignment().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@1026 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-11-24 11:11:06 +00:00
Nick Treleaven
49e2d3ed92 Add search history for Find in Files.
Add ui_combo_box_add_to_history() and use to prevent blocks of
duplicates (but not all duplicates) from search history combo boxes,
and limit history to 30 entries.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@999 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-11-15 15:57:23 +00:00
Nick Treleaven
bf7dae9c6a Add Find Previous, Find All in File/Session buttons to the Find
dialog.
Move Find Usage code from on_find_usage1_activate to search.c.
Add ui_button_new_with_image(), ui_hbutton_box_copy_layout().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@951 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-11-01 15:26:41 +00:00
Nick Treleaven
03eae9ebc4 Add separate Replace button, rename old button Replace & Find.
Add expander to group Replace All options for Replace dialog.
Use Replace All In Session button instead of checkbox.
Add border, update packing for all dialogs in search.c.
Add ui_dialog_vbox_new() for consistent dialog borders.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@914 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-10-22 14:56:05 +00:00
Nick Treleaven
e821acb863 Move build menu related functions and callbacks to build.c.
Renamed ui_update_build_menu -> build_menu_update.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@902 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-10-18 19:35:42 +00:00
Enrico Tröger
6f00febd3c Fixed crash when using "Make object" on new files(closes #1570818).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@866 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-10-04 19:14:57 +00:00
Nick Treleaven
b89abc8586 Add ui_frame_new().
Run set includes build dialogs modally, keeping the same filetype.
Updated set includes & arguments dialog layout.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@817 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-09-15 14:25:42 +00:00
Nick Treleaven
6c511f413d Move on_recent_file_activate, dialogs_create_recent_menu,
dialogs_create_build_menu_gen, dialogs_create_build_menu_tex to
ui_utils.c. Also make some functions static.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@807 ea778897-0a13-0410-b9d1-a72fbfd435f5
2006-09-09 14:36:15 +00:00