Paul Davis
29b69b0ab4
various fixes for saving bindings state
2016-02-22 15:31:24 -05:00
Paul Davis
f028a6bffb
fix memory lifetime management issue
2016-02-22 15:31:24 -05:00
Paul Davis
36023db8aa
change/extend/rework Bindings API to allow replacement and provide stub/hook/call to save bindings
2016-02-22 15:31:23 -05:00
Paul Davis
04a9ce757c
initial compilable version of saving key bindings with "new" scheme
2016-02-22 15:31:23 -05:00
Paul Davis
00933950b7
small rationalization of naming and code for managing plugin GUI visibility
2016-02-22 15:31:23 -05:00
Paul Davis
e13322e7f5
bindings: prevent double registration and double signal connection, and provide get_all_actions() methods
2016-02-22 15:31:23 -05:00
Paul Davis
d0fc12bd22
remove all action-registering API from Gtkmm2ext::ActionManager
2016-02-22 15:31:23 -05:00
Paul Davis
0f17508e6c
changes to Bindings and Keyboard API to support (mostly) GTK-free keyboard bindings
2016-02-22 15:31:23 -05:00
Paul Davis
077bb13e94
extend API for tabbable visibility management
2016-02-22 15:31:23 -05:00
Paul Davis
d4664434f7
set "close-button" data on Tabbable contents.
...
I tried doing this in the constructor and got a segfault for reasons I don't understand
but probably should
2016-02-22 15:31:23 -05:00
Paul Davis
5e0337a4a3
convert CairoIcon into a NO_WINDOW widget that just draws into its parent widget
2016-02-22 15:31:23 -05:00
Paul Davis
a48684c692
if _need_bg is set to false in a CairoWidget, then don't actually draw the background
2016-02-22 15:31:23 -05:00
Paul Davis
b6c4ae46d0
clean up tabbable state maintainance; drop Gtk::Button unintentionally used for close cross image
2016-02-22 15:31:23 -05:00
Paul Davis
d6f3a006d2
scale CairoIcon by Gtkmm2ext::UI::ui_scale
2016-02-22 15:31:23 -05:00
Paul Davis
b48c7c0180
revert to thin lines for close cross icon
2016-02-22 15:31:23 -05:00
Paul Davis
914af0f0c8
move ui_scale static member from ARDOUR_UI to GtkUI
2016-02-22 15:31:22 -05:00
Paul Davis
0819efe27c
remove unused lines
2016-02-22 15:31:22 -05:00
Paul Davis
90845af8fa
hopefully get dynamic tabbable menu state right this time
2016-02-22 15:31:22 -05:00
Paul Davis
e2dfc10698
thicken up lines of close cross icon
2016-02-22 15:31:22 -05:00
Paul Davis
1c41f75488
provide a sigc::signal to track display state changes for a Tabbable
2016-02-22 15:31:22 -05:00
Paul Davis
308f6ed828
changes to get show/hide/attach/detach working
2016-02-22 15:31:22 -05:00
Paul Davis
fd938d95bf
change/extend Tabbable API to allow for show/hide/attach/detach
2016-02-22 15:31:22 -05:00
Paul Davis
8e14496919
use new CairoIcon to add a tab-close "button" to tabs
2016-02-22 15:31:22 -05:00
Paul Davis
e026adf4a9
second part of: add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
2016-02-22 15:31:22 -05:00
Paul Davis
c06c2c29db
add new CairoWidget-derived class that does nothing but shown an ArdourIcon.
...
Somewhat necessary by placement of ArdourButton class in directory heirarchy. But these are also
much simpler
2016-02-22 15:31:22 -05:00
Paul Davis
434ef34229
add tab-closing buttons to tabs.
...
Images are non-scalable, too big and ugly. Next commit ...
2016-02-22 15:31:22 -05:00
Paul Davis
347ba94bcd
add ::make_visible() to Tabbable class
2016-02-22 15:31:22 -05:00
Paul Davis
436706c8d4
remove debug output
2016-02-22 15:31:22 -05:00
Paul Davis
e46b518319
classes derived from WindowProxy are responsible for their own window creation in ::set_state().
...
Fixes a crash reported by A.Prokoudine when opening a session with visible plugin GUIs
2016-02-22 15:31:22 -05:00
Paul Davis
37fce09a18
widespread changes to get the new (oldArdour binding scheme to be used for keyboard accelerators
2016-02-22 15:31:22 -05:00
Paul Davis
d84f655495
add suggestive tooltips for tabs; remove position argument for Tabbable since it isn't really usable
2016-02-22 15:31:21 -05:00
Paul Davis
552e995297
save/restore tabbable state
2016-02-22 15:31:21 -05:00
Paul Davis
9f0ea99fac
better way to switch to a tab
2016-02-22 15:31:21 -05:00
Paul Davis
03b354a99e
make tabs reorderable
2016-02-22 15:31:21 -05:00
Paul Davis
a5150d500d
when tearing off a tab, make the window be the same size as the allocation of the tab
2016-02-22 15:31:21 -05:00
Paul Davis
9010262bed
first compilable version of tabbable design.
...
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
2016-02-22 15:31:21 -05:00
Paul Davis
85eee3b09d
compilable version of WindowProxy
2016-02-22 15:31:21 -05:00
Paul Davis
a29f76c1c4
initial versions of Tabbable object
2016-02-22 15:31:21 -05:00
Paul Davis
df05e97288
first version of Gtkmm2ext::WindowProxy
2016-02-22 15:31:21 -05:00
André Nusser
1afbdaff58
Fix compilation warnings. (libs part)
2016-02-22 15:11:02 -05:00
Paul Davis
86d27a736c
better system for managing kbd focus after cmd-w closing a dialog.
...
Key, Button and Focus In events in the editor+mixer windows cause the respective window to be noted
as the window to which focus should return after a dialog is closed with cmd/ctrl-w
2016-02-22 14:03:55 -05:00
Paul Davis
60c4b30b7e
manually revert most of previous commit related to dialog/main window focus management
2016-02-22 13:55:31 -05:00
Paul Davis
3a08ac5e1f
os x: an initial attempt at fixing loss of keyboard focus after cmd-w to close dialog
2016-02-22 11:49:17 -05:00
Paul Davis
344cf05540
OS X: fix the handling of SUPER,HYPER,META (see code comment for more)
2016-02-21 10:48:35 -05:00
Paul Davis
c92e822332
remove HYPER,SUPER,META modifier masks from Keyboard::RelevantModifierMask so that modifier_state_equals() works on OS X
...
GTK on OS X adds META when Command is pressed even though it also uses MOD2 to indicate COMMAND. So Cmd-w was actually META-MOD2-w and modifier_state_equals(MOD2)
would fail. This should have nothing but good side effects
2016-02-18 09:44:50 -05:00
Paul Davis
dd7649a409
add a static utility function (should really be in utils.cc and public) to show modifier state in english; use said function
2016-02-18 09:43:03 -05:00
Robin Gareus
4a9ffee486
Allow partial CairoWidget exposure
2016-02-12 22:57:46 +01:00
John Emmas
3f43e5cd04
Remove no longer needed 'prolooks' source(s) from our MSVC projects (gtkmm2ext & gtk2_ardour)
2016-02-12 12:31:22 +00:00
Paul Davis
e6b06597b7
remove all traces of "prolooks" and related classes
2016-02-11 13:03:24 -05:00
Tim Mayberry
85b4acc916
Change CairoWidget::get_active() to be const
2016-02-11 12:15:07 +10:00