13
0
Commit Graph

679 Commits

Author SHA1 Message Date
nick_m
7d188c8a1e Remove the use of Window::set_keep_above() throughout startup.
This has been tested, but needs testing on more platforms (check for
obscured windows/dialogs.
Also use WIN_POS_CENTER in the "ask about loading session" dialog.
2015-03-15 03:06:39 +11:00
b58c1df07d check for old configuration files and copy if user requests it.
A restart is required. There is a circular dependency between the config files and the GUI, and this restart breaks it
2015-03-12 17:45:42 -05:00
nick_m
c9d10158f6 Metadata windows are no longer transient windows.
Comment out input and output IOSelectorWindows being set to KEEP_ABOVE
in the route ui (just in case there is a good reason for it).
2015-03-12 04:06:20 +11:00
nick_m
73d2d44652 Add route dialog is never a transient window.
Fixes a hack where it's transient parent was used to give an order hint
(for the order key of any new tracks).
This commit adds a new combobox "insert_at" to let the user tell us
where they want new tracks to go.
2015-03-12 03:46:11 +11:00
2d20bcab4a dramatically reduce ShuttleControl CPU usage 2015-03-10 10:53:56 +01:00
59f12bd31a fix ‘pure virtual’ crash at exit.
Finally tracked down.
AudioEngine::instance()->Halted.connect_same_thread() .. call_slot().
Since the calling thread has (eg JACK) has no event loop: crash

__cxa_pure_virtual + 18
PBD::EventLoop::invalidate_request(void*) + 61 (event_loop.cc:71)
sigc::trackable::notify_callbacks() + 63
BaseUI::~BaseUI() + 173 (base_ui.cc:64)
AbstractUI<Gtkmm2ext::UIRequest>::~AbstractUI() + 137 (abstract_ui.h:59)
Gtkmm2ext::UI::~UI() + 279 (gtk_ui.cc:131)
ARDOUR_UI::~ARDOUR_UI() + 3556
ARDOUR_UI::~ARDOUR_UI() + 21
ARDOUR_UI::~ARDOUR_UI() + 25
main + 2396  

at event_loop.cc:71
    Glib::Threads::Mutex::Lock lm (ir->event_loop->slot_invalidation_mutex());
print *ir->event_loop
    (PBD::EventLoop) $1 = {}

see  http://pastebin.com/zvWJbqwf for a call_slot call on OSX/Coreaudio.
2015-03-09 03:04:27 +01:00
c90400364a prepare saving video-export settings.
* migrate dialog from Editor to UI.
* make it a WM proxied window
* prepare applying state after construction..
2015-02-28 02:36:58 +01:00
bc7b5844a9 fix printf format-security warning.
warning: format string is not a string literal (potentially insecure) [-Wformat-security]
2015-01-27 14:04:19 +01:00
b9464fc4db remove unnecessary commented-out line.
Session is marked as in-deletion during deletion itself
2015-01-26 11:58:43 -05:00
208a2a1926 rename ARDOUR_UI::idle_load() to ARDOUR_UI::load_from_application_api() to correctly indicate function 2015-01-26 10:39:14 -05:00
78ec211733 fix incorrect logic when loading session via NextStep document API 2015-01-25 12:53:48 -05:00
0b5ceaca4e add handler for, and connect to, Session::SaveSessionRequested 2015-01-24 19:17:13 -05:00
49047e4dc9 consistent display of period-size. 2015-01-17 22:42:20 +01:00
56d48a927a Alow tabbing between fields in metadata editor. 2015-01-07 20:56:39 -05:00
59a15a1f57 Fix Session file filter so session files are displayed in file browser
This small mistake slipped in with 78d0b2
2015-01-06 14:02:31 +07:00
78d0b2eebb un-hardcode "*.ardour" file filters 2015-01-05 18:36:43 +01:00
02a7bbce76 Fix for Clock updates 2015-01-02 22:07:50 +07:00
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
bec521c6a7 proper default setup and fallbacks for video on windows 2014-12-24 01:36:46 +01:00
1f0fbea628 reorder members and constructors to ensure null pointers for ARDOUR_UI::{editor,mixer} 2014-12-22 19:48:30 -05:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
0d771999ac expand help menu with various useful entries.
From Georg Kraus. Addresses #5783, and was github pull request #67. Manually applied via .diff because of merge mechanics issues
2014-12-18 11:09:10 -05:00
f6e88ead01 move theme manager into preferences window 2014-12-15 12:32:41 -05:00
1e0c1751a5 more DEBUG::Butler output, formatting corrections, and a warning on cerr if capture/playback buffers are too full/empty 2014-12-09 16:36:52 -05:00
9ac551abab another metric ton of color work 2014-12-08 22:02:38 -05:00
8f4ab08e20 revert UIConfiguration back to a normal member of ARDOUR_UI 2014-12-07 13:12:48 -05:00
e9768e934f move creation of UIConfiguration object to precede creation of ArdourUI.
This is pretty kludgy but we need the UIConfiguration object (or any color management object) to be the first to connect to
the ColorsChanged signal.

Might be better to make the UIConfiguration object a delegate for the ThemeManager.
2014-11-26 18:22:22 +02:00
fcd7ec92d4 With printf() / snprintf() etc "%f" actually requests a double, not a float
Let's pass the correct type, since we can't rely on these functions to do intelligent conversion
2014-11-26 09:57:14 +00:00
ad739cd018 add some assert() messages.
as hints clang static analyzer "Called C++ object pointer is null"
2014-11-17 03:49:19 +01:00
47f4005dbc fix logic (and possible segfault if !editor) 2014-11-17 03:28:33 +01:00
533b545295 add popup message and error log for AU crash reports 2014-11-12 13:35:15 +01:00
c0a28fca09 add win IRC channel 2014-10-28 02:40:04 +01:00
baea04713f combine short periodic timeout functions for windows.
Fixes excessive CPU usage (spinlock instead of sleep/WaitForSingleObject)

MS Windows has a scheduler time-slice of 15ms.
Ardour has two fast timeout functions: The FPS timeout (20-60Hz, clock
video-monitor) and a fast-screen-update (25Hz, meters etc).
They are loosely coupled (async) and scheduled from the main application
thread (gtk main).

Since they're async, gtk schedules them as needed. Even though the actual
period of the separate timeouts is larger. The effective period between
all timeout callbacks is <15ms and the main application thread never idles.
2014-10-25 19:21:15 +02:00
730e09ce65 another round of compiler warning fixes 2014-10-23 05:31:40 +02:00
c6a3d6bc48 small round of compiler warning fixes 2014-10-23 03:43:04 +02:00
aa7fdf82a0 windows: allow loading session with absolute path 2014-10-22 15:22:55 +02:00
8b98125ad3 fix various loop-initiation faults 2014-09-15 12:44:45 -05:00
01974b5769 API flush static cairo pattern cache
(should probably be cleaned regularly
e.g. meterbridge resize)
2014-09-11 19:30:33 +02:00
5dd5bb7830 make valgrind output a bit more readable. 2014-09-11 03:04:12 +02:00
eb8ae5053f minimize rebuild after reconfigure:
Don't add VERSIONSTRING to the c-flags of
gtk2_ardour, use a dedicated file instead.
2014-09-06 21:18:08 +02:00
3a75fab244 speed up session load (display updates) 2014-09-06 12:52:29 +02:00
dfbc9da79a update clocks and video-frames at FPS 2014-08-30 20:57:27 +02:00
16443f44a2 add an idle callback at FPS 2014-08-30 20:57:22 +02:00
e7a15027e8 refactor flat_buttons into cairowidget, and add a canvas-like convenience function for setting cairo color with a Gtk::Color 2014-08-27 10:55:01 -05:00
74f313dd6b Rationalize ArdourButton and lots of associated theming issues.
ArdourButtons now have a "pushed" animation.
The gradient is now implemented in the button, rather than providing 2 colors in the theme, which was burdensome.
Lots of code cleanup in ArdourButton.  Removed several unnecessary flags.
Refactor more stuff into route_ui.
2014-08-22 11:51:20 -05:00
b128271f29 consistently use mixed-case labels 2014-08-01 14:31:18 -05:00
74ec58c12e Add a couple of function calls so that Ardour will perform some basic cleanup when the user exits
Up until now we were relying on various d'tors to do this cleanup for us. However, because we were calling 'exit()' (to terminate the program) those d'tors were never getting called. We should probably review the use of exit() as a termination strategy.
2014-07-15 13:19:33 +01:00
15fa465013 add comment/doxygen doc 2014-07-10 08:14:41 -04:00
9f4a00fa89 add mixbus profile which removes the tearoffs 2014-07-09 15:12:05 -05:00
ec0b7cc1da add new TRX-only function for unusual global-record-enable semantics 2014-07-09 12:07:05 -04:00