Use the GtkComboBoxText API and the GtkComboBoxEntry replacement API
and map those to the old equivalents if not available.
This changes the type exposed by ui_combo_box_add_to_history() from
GtkComboBoxEntry to either GtkComboBox (under GTK2) or GtkComboBoxText
(under GTK3). This should not be too much of an issue since
GtkComboBoxEntry and GtkComboBoxtext are subclasses of GtkComboBox,
but this will still emit warnings when when the calling code passes
a GtkComboBoxEntry pointer to ui_combo_box_add_to_history().
However, this requires the calling code to use the same mapping as we
do (GtkComboBoxText = GtkComboBox on GTK2, even on 2.24), or things
will blow and it'll be hard to understand why. This wouldn't be an
issue if the calling code includes our gtkcompat.h header everywhere
it deals with combo boxes, which will be the case if it includes the
Geany headers everywhere but probably won't otherwise. Oh dear.
A possible kind of workaround may be for ui_combo_box_add_to_history()
to do type-checking on its argument and use the actually correct API
for that type.
We explicitly use GModule's .pc since 7b2f0fe, and it provides the
appropriate flag: we don't need to add it ourselves anymore. Moreover,
since this flag is not needed (nor available) on all platforms (e.g.
Windows or MacOS X), it is safer to let GModule deal with adding it
anyway.
Split ctags and tagmanager sources, as follows:
tagmanager/ctags: the parsers, more or less upstream CTags;
tagmanager/mio: local MIO library copy;
tagmanager/src: actual tagmanager sources.
sciwrappers.h, build.h. (This helps to get compiler warnings for uses
of functions not in the API).
Warning: any plugins that include these headers should remove them.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4366 ea778897-0a13-0410-b9d1-a72fbfd435f5
Preferences dialog options. For new projects, these default to the
editor indent prefs.
- Plugins:
For compatibility with this change, use editor_get_indent_prefs().
- Code changes:
The Project Properties dialog is now created by Glade, but (for
now) the existing options are added manually.
Add GeanyProjectPrivate project field.
Add stash_group_set_use_defaults().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3423 ea778897-0a13-0410-b9d1-a72fbfd435f5
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
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
avoid having to type the function pointer names manually.
E.g. plugin_add_toolbar_item(...) is expanded to
p_plugin->add_toolbar_item(...).
Note: For now, building on Windows or with Waf needs genapi.py to be
run manually when adding plugin API functions.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3305 ea778897-0a13-0410-b9d1-a72fbfd435f5
Add stash.[hc] for reading/writing GKeyFile settings and (later)
synchronizing widgets with C variables. Currently this only
supports boolean and integer settings.
Replace keyfile.c SettingEntry code with new stash code.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3285 ea778897-0a13-0410-b9d1-a72fbfd435f5
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
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