13
0
Commit Graph

1078 Commits

Author SHA1 Message Date
c3ab63a2ea
Allow for per-widget image-surface backing
This is an intermediate commit, before replacing image surfaces with
cairo pattern groups.

The eventual goal is to reduce flickering and/or use
CPU + bitblt for specific widgets instead of cairo
graphics-cards accel.

This also removes excessive calls to getenv() for every rendering
operation.
2019-12-27 19:34:56 +01:00
6f4e838a58 add a signal to Gtkmm2ext::Keyboard to allow (possible) handling of close-current-dialog 2019-11-06 16:25:30 -07:00
3cae11936f Highlight the currently selected item in ArdourDropdown & co 2019-10-31 14:38:26 +01:00
016db85fa1 Workaround a GTKMenu bug in ArdourDropdown & co. 2019-10-31 14:21:57 +01:00
07458155a2 Work around an initialization bug of GTK menus 2019-10-31 11:34:36 +01:00
eaba4fa593 Update |offset| instead of changing the formula
So that the test to see if it fits also takes the new offset into
account.
2019-10-31 10:42:37 +01:00
fb9203998b Align vertical centers of widget and active menuitem 2019-10-31 10:29:43 +01:00
7d48b20652 Fix a thinko in x position of menu popups
This has lasted without being noticed because menus that big are not
common.
2019-10-31 10:29:43 +01:00
5e4d641488
NO-OP: whitespace 2019-10-31 00:22:26 +01:00
98db30efb1
Declare helper function static (don't export) 2019-10-31 00:22:12 +01:00
3a16b89219 Try harder to put the active item under the mouse (ArdourDropdown) 2019-10-30 23:56:36 +01:00
dd29e9b0e9 remove unnecessary template methods (replicated in libs/gtkmm2ext/doi.h 2019-10-10 16:52:00 -06:00
5ec5bc4523 goodbye USE_TRACKS_CODE_FEATURES and is_tracks_build 2019-09-25 12:16:13 -06:00
e0d5c1426c
NO-OP: fix some Wimplicit-fallthrough
gcc can recognize various regexps in comments. Since C++17 provides
[[fallthrough]], using /* fallthrough */ consistently seems
appropriate until we switch to C++17.

see also https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
2019-09-18 17:37:54 +02:00
cec5ce8f45
Update canvas/UI lib GPL boilerplate and (C) from git log 2019-08-03 15:53:17 +02:00
e76e18af96
Use exit-status macros for compatibility 2/3 2019-07-04 22:21:35 +02:00
2fcd19581a Add/remove source(s) in our MSVC project (gtkmm2ext) 2019-04-21 19:21:17 +01:00
Johannes Mueller
822f55f4af Provide ActionModel::build_custom_action_combo() for Control Protcols
to consolidate code that's identical in several control protocols.
2019-04-20 22:12:52 +02:00
Johannes Mueller
de876acc8b Provide a function to fill a Gtk::ComboBox with all available actions 2019-04-20 15:25:32 +02:00
Johannes Mueller
b141d17274 Provide an API to get all available actions by one singleton class
The singleton ActionModel provides a Gtk::Treestore of all actions known to
ardour.

To be used for example by surface control editors to implement action bindings.
2019-04-20 15:25:32 +02:00
2a8bda01b1
NO-OP: whitespace 2019-04-11 02:32:45 +02:00
01024e2b4c
Add API to render a reflection
This is to be used sparingly because the pattern is dynamically
created every time. Mainly for the benefit of some Mixbus
widgets -- compared to ArdourButton::convex_pattern
2019-04-11 02:06:32 +02:00
df29e57cb4 ActionManager::get_all_actions() no longer includes <Actions> in the paths it returns, part 1 2019-03-20 11:15:22 -07:00
ed97a290db make ::ardour_action_name() private to Bindings, because nothing else uses it and it semi-exposes the <Actions> nonsense 2019-03-20 11:12:06 -07:00
957393c435 Compiler fix for 201110. 2019-03-19 11:24:26 -05:00
21110444c1 use a new unhandled (thus far) exception rather than ::abort() when an action is undefined 2019-03-19 08:29:30 -07:00
4d695eaf51
Work-around crash when printing bindings
(ardour -b or Keyboard-Shortcuts > Print Bindings)
see also https://github.com/Ardour/ardour/pull/447
2019-03-09 21:59:16 +01:00
7ea51298da
NO-OP: whitespace 2019-02-28 23:57:44 +01:00
fc7dc6a214
Abort when Action cast failed
Previously the action-manager only called ::abort() when
an action could no be found. This add a further restriction
that the expected class must match.
2019-02-28 23:57:32 +01:00
c83ba53399
Remove ancient, unmaintained xcode project files 2019-02-28 18:12:44 +01:00
e5ae620c0b adjust debug/trace output for key bindings 2019-01-13 12:00:31 -06:00
f974ff594a additional API to make it nicer to get an existing action group 2019-01-13 11:59:18 -06:00
58db958839
Fix crash for external windows
eg. LV2 externalUI windows are not managed by ardour; Ardour cannot
intercept mapped() or delete_event() signals and hence also not
create a visibility-tracker.

First call to WindowProxy::toggle() creates the window, and the 2nd call
crashed since 6ca8ec5141, due to missing vistracker.

e.g. externalUI plugin windows, the processor-box uses WindowProxy
for all plugin-UIs incl. externalUIs.
2018-12-20 19:41:57 +01:00
758d0ca263 replace ::cast_dynamic() with relevant ActionManager::get_*_action() calls 2018-12-12 10:08:01 -05:00
e1b7a43139 add ActionManager::get_actions() to fetch all actions created in ActionGroups with a given "owner" value 2018-12-11 05:05:09 -05:00
1de181479f add basic concept of an "owner" for an action group, to allow later grouping 2018-12-10 18:40:31 -05:00
ab61c6837f add ActionManager::set_sensitive() for Gtk::ActionGroup 2018-12-10 18:40:00 -05:00
d1d8fd197d change ActionManager::find_action() back to ActionManager::get_action()
This avoids dozens or hundreds of unnecessary changes in gtk2_ardour code
2018-12-10 08:34:01 -05:00
ad002d0de0 consolidate ActionMap and ActionManager APIs into a single namespace 2018-12-10 08:34:01 -05:00
39c253c590 provide (Static)ActionMapOwner::action_map() 2018-12-10 08:34:00 -05:00
9004a0df7a
Properly keep track of Window Visibility, action state
This fixes inconsistent WM::Proxy state when a window is destroyed
Specifically "session-options-editor" when the session is unloaded;
previously "toggle-session-options-editor" was never unset.
2018-12-08 22:38:03 +01:00
dd4c788d3e add syntactic sugar for fetching toggle and radio actions 2018-12-06 22:12:34 -05:00
eb48c14ec4 some ActionMap infrastructure to start removing ActionManager 2018-12-05 17:33:05 -05:00
4d7e9d5706 add new variant of ActionMap::find_action()
This is more useful when replacing ActionManager::get_action
2018-12-05 17:33:05 -05:00
fc24b9f0b7
Fix uninitialized variable 2018-11-29 02:10:08 +01:00
a22a501537
NO-OP: whitespace 2018-11-29 02:07:29 +01:00
7c3fd2fe79 Glib throws a const FileError exception 2018-10-26 13:40:03 +02:00
8ed33f1bc7 remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead 2018-10-14 22:06:11 -04:00
b27a8169d2 Ignore small (or negative) radii.
Some calls use e.g. (corner_radius - 1.5). With small radii or boxy
layout the radius can become negative.
2018-10-09 19:31:01 +02:00
b32b9ceb58 Constant radian/degree factor 2018-10-09 19:31:01 +02:00