110 Commits

Author SHA1 Message Date
Colomban Wendling
64a47b9cb6 Allow to switch message window orientation to place it on the right 2012-10-01 21:38:56 +02:00
Colomban Wendling
1c2c455b1d Update copyright information 2012-06-18 01:15:04 +02:00
Colomban Wendling
c04fd65a8f Add support for user-defined labels for custom commands
This allows the user to define a label to be displayed in the menu in
place of the command to be run.  This can be very useful if e.g. a
custom command is too complex to be easily read in the menu, or if two
custom commands are so similar could be confounded.
2012-05-14 22:22:29 +02:00
Matthew Brush
51dc2e9baf Support plugins written in C++
Rename use of C++ `template` keyword in plugin API function argument
and add `G_BEGIN_DECLS` and `G_END_DECLS` to public header files to
make them easier to include in C++ code. TagManager and Scintilla
headers already have these `extern "C"` blocks so they shouldn't
require any modifications.

The Autotools build system already adds in a `dummy.cxx` to hint
Automake into C++ linking to support Scintilla, which is quite
convenient for dynamically loading of C++ plugins at run-time into
the otherwise C-only program. The other build systems seem to also
use the correct linking.
2012-03-30 23:35:10 -07:00
Colomban Wendling
9130b84d86 Add ui_builder_get_object()
This is used to get any object built from the UI file, not widgets only.
2012-01-20 19:14:31 +01:00
Nick Treleaven
eb04c514ba Add API function ui_lookup_stock_label()
Using this can avoid adding i18n strings unnecessarily.
2012-01-08 17:37:58 +00:00
Matthew Brush
0a16ec7520 Merge branch 'master' into gtkbuilder
Conflicts:
	src/interface.c
	src/vte.c
2011-11-06 23:44:24 -08:00
Colomban Wendling
b55a30c2bf Build recent data for GTK ourselves
This prevents GTK of trying to fetch the necessary information like
MIME-type itself, which leads to a significant speedup (> 30%), as
well as using the real MIME-type we use rather than the GIO-guessed
one.
2011-11-04 00:11:21 +01:00
Matthew Brush
72e856947e Rework GtkBuilder code to behave more like old Glade 2 code
* Put back ui_hookup_widget and ui_lookup_widget functions
* Put back lookup_widget code in stash.c
* Emulate old create_*() functions from interface.[ch].
* Hookup all the GtkBuilder widget's to their top widgets like Glade 2
  generated code would've done.
* Misc changes to accomodate the above.
2011-10-19 00:44:35 -07:00
Matthew Brush
b8c5be4d11 Add note to ui_hookup_widget() doc comments. 2011-10-10 15:21:05 -07:00
Matthew Brush
af093c2ddf Remove interface.c/h files and put code into ui_utils.c/h. 2011-10-10 15:20:15 -07:00
Matthew Brush
7c9430884f Cleanup code, comments and refactor a bit. 2011-10-10 13:17:55 -07:00
Matthew Brush
c39ad3e29d Update ui_lookup_widget() and ui_hookup_widget() to use new interface.c/h code. 2011-10-10 13:15:23 -07:00
Colomban Wendling
d06e9f4575 Remove $Id$ and $Date$ SVN keywords 2011-10-09 22:57:35 +02:00
Colomban Wendling
24583dc507 Focus the editor upon double click on the message and compiler windows
Also improve the code a bit by using a boolean to know whether to focus
the editor rather than always pass the key value and check it against
enter-or-return in the callee side.

Patch by Dimitar Zhekov, thanks!

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5887 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-08-13 20:44:39 +00:00
Colomban Wendling
c8a71b258e Add missing documentation for GeanyInterfacePrefs and GeanyToolPrefs
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5875 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-07-31 13:35:43 +00:00
Colomban Wendling
f856ac782d Always destroy open and save dialog after use
Create and destroy the file open/save dialogs on each call rather than
keeping the same dialog around.  This avoids letting GTK monitor the
displayed directory for changes, thus probably reducing overhead and
works around GTK monitoring bugs.

This refactors the code a bit now it works a little differently.

Also fixes a bug that made dialogs_show_save_as() wrongly return the
first user response rather than the one that is actually used to make
the decision.  It happened for example when the user first selected an
non-writable location, or was asked whether to override a file and
answered "no".

Closes/references:
https://sourceforge.net/tracker/?func=detail&aid=3311687&group_id=153444&atid=787793
https://sourceforge.net/tracker/?func=detail&aid=3311258&group_id=153444&atid=787791
https://sourceforge.net/tracker/?func=detail&aid=3304273&group_id=153444&atid=787791
https://sourceforge.net/tracker/?func=detail&aid=3201050&group_id=153444&atid=787791
https://sourceforge.net/tracker/?func=detail&aid=3163742&group_id=153444&atid=787791
https://sourceforge.net/tracker/?func=detail&aid=3153120&group_id=153444&atid=787791
https://sourceforge.net/tracker/?func=detail&aid=2985896&group_id=153444&atid=787791
https://bugs.launchpad.net/ubuntu/+source/geany/+bug/754577

Dialog state restoration based on a patch by Matthew Brush, thanks.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5837 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-06-10 22:13:29 +00:00
Enrico Tröger
5141f14007 Add ui_focus_current_document() and document_grab_focus().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5828 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-06-02 21:15:37 +00:00
Enrico Tröger
66c8b7faee Add ui_menu_add_document_items_sorted() and document_sort_by_display_name() to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5705 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-04-10 17:03:41 +00:00
Colomban Wendling
4ac3ccbd37 Make Shift-Enter in search dialog and toolbar search entries search backwards
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5621 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-24 16:51:02 +00:00
Enrico Tröger
6ac2623208 Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5528 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-19 19:39:09 +00:00
Nick Treleaven
e0702ea2b2 Add filetype mimetype field (patch by Colomban Wendling, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5329 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-26 16:02:30 +00:00
Nick Treleaven
2473ab6862 Revert X11 workspace socket support as it needs more work; moved
to workspace-sockets branch.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5292 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-07 14:10:32 +00:00
Nick Treleaven
3fe15d0ebb Add hidden pref new_document_after_close for whether to open a new
document automatically, off by default.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5257 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-23 16:24:43 +00:00
Nick Treleaven
cb44ff626c Explain owner parameter of ui_hookup_widget() better.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5251 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-22 15:25:37 +00:00
Nick Treleaven
8b6bcf6d68 Add main_widgets.project_menu to API (patch by Jiří Techet, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5236 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-16 15:18:56 +00:00
Nick Treleaven
4c3ab61c3f Use a separate socket per workspace on X (patch by Erik de Castro
Lopo, thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5232 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-15 17:04:23 +00:00
Nick Treleaven
7e8c863298 Add GeanyMainWidgets::message_window_notebook for plugins to append
a new notebook page (#3061342).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5204 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-08 12:36:01 +00:00
Nick Treleaven
4da9f9dbc4 Remove return value for ui_label_set_markup() as it probably shouldn't be used for macros.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5155 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-08-12 17:21:24 +00:00
Enrico Tröger
af8f5fc921 Make ui_label_new_bold() a function.
Escape the name of the current document for markup when using
document name for menu items (closes #3038844).

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5116 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-08-05 21:13:47 +00:00
Nick Treleaven
ae4d82b7f1 Use Stash to save statusbar_template setting, instead of the
load/save-settings signal.
Add ui_init_prefs().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5101 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-07-09 17:15:16 +00:00
Nick Treleaven
2b771854ae Add ui_finalize(), free string (patch by Dimitar Zhekov, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5097 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-07-08 16:59:11 +00:00
Nick Treleaven
c41b55d692 Add ui_combo_box_add_to_history() to API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5048 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-06-18 12:20:15 +00:00
Enrico Tröger
f8040a0e89 Add hidden preference to disable automatic scrolling in the Compiler tab (closes #3004714).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4946 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-22 19:40:12 +00:00
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