13
0
Commit Graph

106 Commits

Author SHA1 Message Date
df29e57cb4 ActionManager::get_all_actions() no longer includes <Actions> in the paths it returns, part 1 2019-03-20 11:15:22 -07:00
758d0ca263 replace ::cast_dynamic() with relevant ActionManager::get_*_action() calls 2018-12-12 10:08:01 -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
4983eb565d Only update tooltips if there is an actual change -- #7268
Changing a tooltip resets the timeout. In one particular case,
while rolling, AudioClock::set() is calling set_tooltip() at a rate
faster than the tooltip timeout and prevents tooltip from showing at all
(even if there is no actual change to the tooltip text).
Alas, there is no trivial fix for this UI side and there may be other
such cases. A central check is more than practical.
2018-04-12 02:54:55 +02:00
f9e5e4360e Move more Gtkmm2ext widgets into libwidget 2017-07-17 21:06:04 +02:00
401eefec1c remove cruft (unused UI::ui_scale) 2017-05-05 14:00:30 +02:00
41216d200a Remove old modal get_color API. 2017-03-11 00:35:26 +01:00
3953879d4d add a timeout to flush_pending()
In some circumstances UI::flush_pending never returns, and all UI
interactive ends up being driven by
   while (gtk_events_pending()) { gtk_main_iteration(); }
This has various implications depending on the caller and usually results
in a crash at session-close or exit.
2016-07-25 14:13:52 +02:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
bc487bb4b0 replicate the remove-all-trailing whitespace commit(s) in master 2016-02-22 15:31:24 -05:00
949163f806 more changes to Bindings, Keyboard APIs 2016-02-22 15:31:24 -05:00
67e19c177f radically change Keyboard/Binding API design to disconnect Gtk::Action lookup from binding definition
We need this because we need binding information/objects before all
Actions have been defined.
2016-02-22 15:31:24 -05:00
914af0f0c8 move ui_scale static member from ARDOUR_UI to GtkUI 2016-02-22 15:31:22 -05:00
ee541036b4 fix window-title (separate application name, thread name) 2015-12-29 11:03:09 +01:00
0d9efc1148 redesign cross-thread registration/signalling system
This new design will work even when threads that need to receive
messages from RT threads are created *after* the RT threads. The
existing design would fail because the RT thread(s) would never
be known the later created threads, and so signals emitted by the
RT thread and causing call_slot() in the receiver would end up
being enqueued using a lock-protected list. The new design ensures
that communication always uses a lock-free FIFO instead
2015-12-28 10:14:17 -05:00
3d1dcacfd8 use correct source for application name when labelling a window 2015-12-12 11:12:10 -05:00
be6a43d4d3 use EventLoop::event_loop_name() 2015-12-12 11:12:10 -05:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
0274aafdb0 store all error/info/etc messages in a list inside Gtkmm2ext::UI, and provide a method to dump them all to a std::ostream 2015-06-29 16:27:03 -04:00
83babb8a52 automatic error log window popup be gone. 2015-03-14 18:28:36 +01:00
7152634104 set name of GUI event loop thread 2015-02-05 16:31:59 -05:00
6b3a8915f3 add abort() to non-reached code
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
36be1a3a9b plug some leaks 2014-06-15 13:24:41 +02:00
4347ceb173 fix for OSX 10.0/clang (missing symbol) by cth 2014-05-23 20:49:21 +02:00
b855e5f322 Merge remote-tracking branch 'remotes/origin/exportvis' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/wscript
	libs/ardour/ardour/audioregion.h
	libs/ardour/ardour/debug.h
	libs/ardour/ardour/directory_names.h
	libs/ardour/ardour/filesystem_paths.h
	libs/ardour/ardour/session_event.h
	libs/gtkmm2ext/gtkmm2ext/utils.h
	libs/panners/1in2out/wscript
	libs/panners/2in2out/wscript
	libs/panners/vbap/wscript
	libs/pbd/pbd/debug.h
	libs/pbd/pbd/file_utils.h
	libs/pbd/pbd/pathexpand.h
	libs/pbd/pbd/ringbuffer.h
	libs/pbd/pbd/ringbufferNPT.h
	libs/pbd/pbd/search_path.h
	libs/pbd/pbd/stacktrace.h
	libs/pbd/pbd/uuid.h
	libs/pbd/pbd/uuid_boost.h
	libs/surfaces/control_protocol/control_protocol/basic_ui.h
	libs/surfaces/control_protocol/control_protocol/control_protocol.h
2013-10-18 10:03:22 +01:00
2fab8182cc add -fvisibility=hidden to libgtkmm2ext, and make things work 2013-10-17 14:36:41 -04:00
2a6a16f980 merge with master, fixing conflicts in 3 wscript files 2013-10-09 14:00:42 -04:00
5265ceec51 change tortured GtkUI startup process into something just a little more sane, and remove "stopping" code since that belongs in a destructor 2013-10-07 20:27:04 -04:00
316b72eb0e 'libs/gtkmm2ext' - Main body of changes required for building with MSVC (mostly #includes and casting) 2013-08-26 17:45:18 +01:00
4adb2f97cc Use timeout source to process ui requests on windows
Using a timeout source to process ui events/requests is suboptimal
but it works for the moment. Have to use g_source functions as glibmm
functions are not thread safe AFAIK.

Behaviour should be exactly the same on unix.
2013-07-11 12:56:35 -04:00
7626cd68ac Hide UI request mechanism from inheriting classes 2013-07-11 12:52:46 -04:00
eacba74649 change presentation of shortcut in tooltips and fix include paths
git-svn-id: svn://localhost/ardour2/branches/3.0@13612 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-07 13:43:45 +00:00
3cd8138a41 convert from Glib:: to Glib::Threads for all thread-related API
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25 17:48:55 +00:00
37969d837e remove virtual inheritance of sigc::trackable by Receiver and AbstractUI<T>, done by changing Gtkmm2ext::UI to use composition (HAS-A) rather than inheritance (IS-A) for Receiver; use correct synchronization when starting up a BseUI event loop thread so that tests that start/stop quickly do not encounter a race condition
git-svn-id: svn://localhost/ardour2/branches/3.0@12264 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-14 17:07:53 +00:00
877c3f37c4 stop crash if an error message is generated before the style RC file is loaded
git-svn-id: svn://localhost/ardour2/branches/3.0@12248 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-10 22:45:56 +00:00
44cd222eb2 i18n-ization
git-svn-id: svn://localhost/ardour2/branches/3.0@12233 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-09 23:03:43 +00:00
Carl Hetherington
23973bae24 A few tweaks to make Ardour build in GCC -std=c++0x mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@11983 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-15 19:28:44 +00:00
ad1ec2bacc get that fix for accels in tooltips correct this time
git-svn-id: svn://localhost/ardour2/branches/3.0@10856 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02 03:40:56 +00:00
6a61ddb3af fix message about markup elements by changing accel strings from <Mod> to Mod-
git-svn-id: svn://localhost/ardour2/branches/3.0@10854 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02 01:58:32 +00:00
6a5a5b0340 commit to the "new" tooltip API, use set_tooltip_markup() rather than set_tooltip_text() to allow for more creative tooltips
git-svn-id: svn://localhost/ardour2/branches/3.0@10844 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-30 21:07:11 +00:00
0a71d52448 Fix key bindings in tooltips for ArdourButton buttons.
Sinced gtkmm2ext needs to get at the actions of widgets, I moved the
action to Gtkmm2ext::Activatable.  Not sure if the wisest thing to
do here would be to use Gtkmm::Activatable, but figured there's
a reason Paul didn't do so (the name set_related_action is from there
so presumably it's known about), so this is the simplest change
that allows access to the action in Gtkmm2ext.  The vfunc calling
stuff should probably move there as well...


git-svn-id: svn://localhost/ardour2/branches/3.0@10818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-24 05:36:31 +00:00
260c1c1a13 remove some potential HCI confusion for Gtkmm2ext::UI::popup_error() by using a standard MessageDialog (as noticed by thorwil)
git-svn-id: svn://localhost/ardour2/branches/3.0@9756 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-22 14:38:32 +00:00
aca373cc82 always make log/error window visible when a non-info message is posted
git-svn-id: svn://localhost/ardour2/branches/3.0@9279 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04 14:22:27 +00:00
Doug McLain
8d44c2b82a Update rc files to use unique rc variable names, update wscript to use the names, and re-enable theme switching
git-svn-id: svn://localhost/ardour2/branches/3.0@8861 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-15 18:02:50 +00:00
7a5b6a5031 patches from lincoln to speed up the regionlist and provide region removal (causes dangling shared ptrs to regions, fix to come
git-svn-id: svn://localhost/ardour2/branches/3.0@8845 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-14 21:49:43 +00:00
Doug McLain
b307462f4f Disable theme changing untill we figure out whats broken
git-svn-id: svn://localhost/ardour2/branches/3.0@8840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-14 04:44:52 +00:00
Doug McLain
d4dd6fbe63 Make light theme functional, add waf processing, and small change to UI::load_rcfile() that fixes a hang when switching between two rc files that are identical in style defs
git-svn-id: svn://localhost/ardour2/branches/3.0@8839 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-14 01:46:57 +00:00
94827dd755 forward port thread/abstract_ui changes from 2.X to 3.0
git-svn-id: svn://localhost/ardour2/branches/3.0@8751 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-07 18:21:50 +00:00