13
0
Commit Graph

938 Commits

Author SHA1 Message Date
6ade16b38d Workaround to allow loading large sessions.
During session-load, ardour calls Route::SoloControllable::set_value() 
which calls Session::set_solo()  which in turn sends a session-rt event.

Along with other rt-events (locations,..) the current solo logic limits
Ardour to only load sessions with about >= 200 tracks.

now bumped to a few thousand tracks.. until a proper solution comes along.
2015-09-06 22:36:09 +02:00
2309bb2a7f Don't keep gtk-file-chooser around.
This fixes some odd-crashes in the gtk main-thread after loading a new
session in gtk_file_system_model_sort().
2015-09-06 18:15:13 +02:00
1c9bb7de66 display session create/open failure errors. 2015-09-05 15:45:59 +02:00
041b31d7c6 fix locate to wallclock fix for PM (>= 2^31 samples) 2015-08-15 00:15:55 +02:00
a9163e9208 save-as: default to current session name.
this allows to easily add suffixes or otherwise tweak
the current session-name.
2015-08-14 02:32:08 +02:00
8132a31606 don't resize plugin-scan-report window, use sensitivity. 2015-08-03 15:54:55 +02:00
a7508a9cf0 When printing an XML related error, guard against NULL pointers getting passed to our error stream 2015-07-23 17:55:14 +01:00
775a400007 amend a3c21ae, video-server localhost -> 127.0.0.1 2015-07-22 12:45:24 +02:00
edce75973c offer to scan for plugins at first start. 2015-07-16 21:11:22 +02:00
be14d600c9 windows announcements file name 2015-07-11 23:39:22 +02:00
c3edce9a26 if a session cannot be loaded, dump the error stack to stderr 2015-06-29 16:28:04 -04:00
b822a77193 handle libXML errors via our own error handling methods 2015-06-29 16:27:49 -04:00
5c8e239f95 Revert "start work on auto return target dropdown rather than button"
This reverts commit d1cbb3fb0e36b068dbf516d21891c998266f22a2.
2015-06-29 14:18:16 -04:00
b531c878b0 Revert "properly track, update, maintain and set auto return state"
This reverts commit 07d0539526239d895f22123d88411c0d4ee773a4.
2015-06-29 14:18:16 -04:00
745a235b9d properly track, update, maintain and set auto return state
Conflicts:
	gtk2_ardour/ardour_ui_options.cc
2015-06-29 14:18:13 -04:00
eb791b7302 start work on auto return target dropdown rather than button
Conflicts:
	gtk2_ardour/ardour_ui.cc
2015-06-29 14:18:13 -04:00
YPozdnyakov
4465fb62f3 [Summary]: add keybindings Cmd-h (hide application) for mac
Conflicts:
	gtk2_ardour/ardour_ui.cc
	gtk2_ardour/ardour_ui.h
	gtk2_ardour/ardour_ui_ed.cc
2015-06-29 14:16:43 -04:00
db2fc7e6c7 initialize uninitialized var - possible fix for #6400 2015-06-29 20:03:36 +02:00
59dc0881fb remove left-over debugging code 2015-06-10 22:04:20 -04:00
9edd8d4b3b no Save-As progress dialog if we're not copying media 2015-06-10 18:48:12 -04:00
173b007779 rearrange and redesign UIConfiguration/ARDOUR_UI APIs to allow correct initialization.
We need to be able to set an environment variable *before* gtk_init() is called, but also to
load the color theme right after gtk_init() and before the rest of the GUI is created.
2015-05-28 12:46:43 -04:00
4c92de0159 extend save-as dialog to allow crude but functional save-as-to-empty-session 2015-05-07 22:36:32 -04:00
9e489c20da further preparations for NSM (#6265) 2015-05-04 19:08:48 +02:00
fb3d1a6f24 x-run counter reset & typo 2015-04-29 15:47:51 +02:00
6e335ca5d9 add xrun counter to status-bar (currently no reset) 2015-04-29 03:10:27 +02:00
c7a766866e prefer initialization to assignment for ARDOUR_UI 2015-04-22 16:09:08 -04:00
e47a22a118 make save-as dialog be persistent, to retain settings across save-as 2015-04-22 16:09:08 -04:00
8d85afd294 add central API to calculate UI scaling 2015-04-22 21:40:43 +02:00
eafb66d001 update some calls to use new get_preferred_edit_position; needs testing 2015-04-21 10:22:28 -05:00
91fac4c96d merge fix for tempo branch 2015-04-21 08:35:20 -05:00
ab4b4934b9 Merge branch 'master' into saveas 2015-04-21 00:19:29 -04:00
67411281ad use save as dialog in ArdourUI 2015-04-20 17:49:41 -04:00
a5c6919e9a towards fixing #6265 2015-04-20 21:39:25 +02:00
ced4378d09 Merge branch 'master' into saveas
Conflicts:
	gtk2_ardour/ardour.menus.in
	libs/ardour/session_state.cc
2015-04-20 15:10:41 -04:00
d45620d636 now that there is only 1 effective selection, adjust add-new-track-or-bus option for after/before selection 2015-04-13 22:24:10 -04:00
2fb0a078d9 cleanup, tweak, reorganize gone-silent dialog 2015-04-05 15:13:05 -04:00
c2deeaa96e show dialog when audioengine becomes silent 2015-04-05 14:02:47 -04:00
f1147a30a7 fix hard-coded version in config copy dialog; use yes/no buttons, and default to yes 2015-04-03 11:35:37 -04:00
4a44f90218 remove hard-coded program name 2015-04-02 21:40:40 -04:00
f3b9816bb6 wording tweak.
Sorry translators.
2015-04-02 19:13:38 -04:00
Valeriy Kamyshniy
21193c6fca [Summary] Adding option to avoid sorting the routs in Session::foreach method. Now ARDOUR_UI::every_second do not spend time for unnecessary sorting when calling update_disk_space().
[Reviewed] Paul Davis
[Required review] YPozdnyakov, GZharun
2015-04-02 16:32:41 -04:00
nick_m
35f69656e8 Window focus handling fixes.
Many windows were not getting key events.
Use magic focus infrastructure (built for widgets) to deliver key events
via window focus in/out.
2015-04-02 02:41:49 +11:00
fa57422ee2 remove linux specific menu reference (sorry translators) 2015-03-31 04:16:24 +02:00
4188fed0ee don’t apply selection to new sessions
<Selection> should not be saved in
global preferences, but there is no single point
for catching that.
2015-03-29 18:30:48 +02:00
53ac99a26a rework check for old configuration files
check early on (before announcement-check, bundle-
env and ARDOUR_UI ctor have a chance to create the
new config dir)
2015-03-23 18:31:55 +01:00
ec86ca2a4d replace LinkButton
make link work on OSX and Windows:
Gtk-WARNING **: Unable to show ‘…’: Operation not supported
2015-03-23 00:23:06 +01:00
bf43019eed change the error-log button to toggle the log window 2015-03-17 02:05:02 +01:00
c3d76155a9 fix typo 2015-03-16 17:07:26 -05:00
3a1071e5e9 use tri-state text-less LED for error-log button. 2015-03-16 19:04:36 +01:00
d57546dea2 add a warning when using a free/demo version 2015-03-16 13:03:33 -05:00
nick_m
135e865302 Add route dialog order hint changes.
Add an option to insert new routes at the top of the list ("First").
Reorder/rename the entries in the dialog.
Session's _order_hint is now the signed int it always wanted to be.
2015-03-16 04:01:30 +11:00
0544a4039b note to self. 2015-03-14 22:59:07 +01:00
83babb8a52 automatic error log window popup be gone. 2015-03-14 18:28:36 +01:00
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
760e00b028 Remove useless parameters from MainClock constructor
Remove (always false) duration & is_transient and (always true) editable,
with_info & follows_playhead parameters from MainClock constructor, and just
pass the requisite true & false values along to the AudioClock constructor
instead.
2015-03-09 19:17:52 +00: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
24e8e865a6 Ignore playhead when finding delta from edit position for main clocks
Pass 'ignore_playhead == true' to Editor::get_preferred_edit_position()
when calculating offset of the primary and secondary main clocks if 'delta
to edit cursor' is selected, so that if the edit point is playhead, the
selected marker (if any) or mouse position will be used as the delta origin
instead.
2015-02-12 18:06:16 +00:00
1973243a98 Separate out creation of xrun markers from Editor::mouse_add_new_marker()
Remove the is_xrun parameter from Editor::mouse_add_new_marker(), and just
create the marker directly in ARDOUR_UI::create_xrun_marker(), so that xrun
markers don't become automatically selected when they appear.
2015-02-12 18:06:16 +00: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
4a72145d1d unfinished save-as dialog, to serve as example/guide/framework for full implementation 2015-01-14 17:54:26 -05:00
08d56360d6 first working version of save-as 2015-01-12 12:57:05 -05:00
2866514c09 add initial code/stubs, actions, menu items for save as 2015-01-11 12:15:46 -05: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
b64634e32e move location of menus file loading and call ActionManager::enable_accelerators() to get all actions setup for binding options 2014-07-04 07:49:26 -04:00
555a5d6348 lots of keybinding changes. added a new action to allow removing markers at the playhead location. numpad now allows you to access marks higher than 9. to locate to a marker, use the numpad decimal to start and end the operation - for example press .19. to locate to marker 19. also added alternate bindings for redo, delete, and several other alternates that will be needed in subsequent commits. tab is not working, using either Tab or nabla in the binding.in file 2014-07-03 17:50:14 -05:00
043b76569d fix the naming and behavior of always-play-range to match the button, which is follow-edits. when you select a range, the playhead should jump to the start of the range and begin to play the selection. BUT (unlike previous implementation) if the user wants to relocate the playhead, then that should be allowed. The user should always remain in charge of the playhead location. NOTE: your previous config setting will be invalidated. You must re-save a session to overwrite with the new config variable 2014-07-03 12:56:33 -05:00
c52cb37bf2 suspend route redisplay for (rec-en, solo, mute and monitor) batch changes 2014-06-29 02:52:56 +02:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
0e96d84079 Change PBD::PathScanner API to return results by value to avoid inadvertent memory leaks 2014-06-17 21:13:05 +10:00
12cf9d5be8 fix pathscanner / stl_vector related memory leaks 2014-06-15 13:24:39 +02:00
7b64448dbb simply future debugging of exit at start. 2014-06-14 16:25:18 +02:00
be7da2e952 Fix opening of recent sessions with mismatched directory & file names
When populating the list of recent sessions, and there's only one session
file in the session folder, don't assume that the base name of the session
file is the same as the name of the session directory.

Allows loading sessions that were created with trailing spaces in their
names from the recent sessions list, and also helps in the case that the
session file (or directory) was renamed.

There are actually two implementations of the 'recent sessions' chooser:
this applies to both. I suppose a useful project one of these days
would be to unify the two...
2014-06-12 23:20:06 +01:00
e8d3c16187 remove unused variable 2014-05-19 14:00:36 -04:00
1ea6321ad5 update GUI while waiting for video server to respond 2014-04-20 02:51:27 +02:00
3131ab8bbd new transport option, "loop-is-mode" which optionally changes the role of the "play loop" button.
If enabled, then the button simply changes the behaviour of the "play" button rather than actually starting playback. If disabled
transport behaviour should be unchanged from before.
2014-04-17 09:47:06 -04:00
15c5d12321 clean up 6cc2812f2e (interim vst fixes) 2014-04-14 15:10:28 +02:00
unknown
6cc2812f2e interim vst fixes 2014-04-11 14:23:29 -05:00
32fc7a81c5 clean up use of JACK name in messages 2014-04-10 10:21:47 -04:00
62e66b05dc set Profile TRX element at startup 2014-04-10 05:58:49 -04:00
543099afba rework SystemExec - use vfork wrapper (and lots of related stuff) 2014-03-13 16:58:07 +01:00
ba0ae4818a [VST] scan timeout display and per plugin timeout override. 2014-03-09 20:32:52 +01:00
da73b0f670 prepare configurable VST scan timeout 2014-03-09 20:32:52 +01:00
2067d52f10 remove splash message/window at shutdown - it is just irritating and unnecessary (or ought to be) 2014-02-28 16:36:43 -05:00
b8e4c44637 display policy of plugin-scan progress popup-window
Only show scan-progress when discovering new plugins
(discovery can be cancelled) and optionally also show
it during 'scanning index only'
(with insensitive cancel button)
2014-02-28 00:05:47 +01:00
5d99a664f0 don't waste time and effort deleting GUI components in ~ARDOUR_UI - the OS takes care of all that stuff 2014-02-26 18:52:14 -05:00
d8329d855d implement plugin-scan cancel-button sensitivity 2014-02-25 14:57:59 +01:00
6471c94254 hook-up GUI idle handler 2014-02-25 14:57:58 +01:00
70209ba493 update plugin scan dialog gtk hack 2014-02-25 14:57:57 +01:00
59cc85b821 plugin scan progress-display & preferences 2014-02-24 03:53:53 +01:00
dfdf9a35f1 resolve gtk + VST threading issues
while (gtk_events_pending()) gtk_main_iteration(); never returns
as long as there's a idle call registered somewhere (and it's not
called from an idle callback itself)
2014-02-22 03:11:48 +01:00
1d39cf7543 move SystemExec to libpbd 2014-02-19 03:38:43 +01:00
8f930477be Merge branch 'master' into cairocanvas 2014-02-11 22:50:52 -05:00
b75fb503fb list action-names as part of --bindings 2014-02-11 05:52:39 +01:00
0bab9d2822 fix crash at exit with '-b', '--bindings' option 2014-02-11 05:52:07 +01:00
a0abf608d6 replace a few creeping instances of the string "Ardour" with PROGRAM_NAME 2014-02-10 10:53:01 -05:00
2ba58dfe65 Merge branch 'master' into cairocanvas 2014-01-29 16:08:52 -05:00
41001ae702 prevent a strange crash while iterating over tracks (now, and maybe in the future) 2014-01-27 20:36:09 -05:00
7000afdc66 fix merge conflict with master 2014-01-23 13:41:20 -05:00
acc2fa2c7f one less Conditional jump or move depends on uninitialised value(s) 2014-01-20 13:32:57 +01:00
658bb3ccd4 finished merge of cairocanvas with windows and windows+cc branches 2014-01-10 17:11:10 -05:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
84f55440a3 fix redrawing of canvas with an optimized build
Best guess right now is that optimization does something bad when ceil() is called twice on a very large dbl-precision number,
which results in a zero (empty) redraw area. Without the removal of the redundant ceil & floor functions, no expose events
would be delivered to the canvas in an optimized build during drags (and maybe more).
2013-12-23 15:35:49 -05:00
dc7878760d vtl: do not lock audio [to video] when extracting audio-only. 2013-12-23 10:28:32 +01:00
59da788793 Merge branch 'master' into cairocanvas 2013-12-05 17:50:28 -05:00
2ba2a50dec Merge branch 'master' into windows 2013-12-04 11:50:36 -05:00
ce7bfb489c change "cpu" in cpu load backend functions 2013-12-04 11:48:31 -05:00
69df7763a1 switch from using Sleep/usleep to Glib::usleep() (and remember that we need to make Glib::usleep() actually work on windows one day) 2013-12-03 10:24:34 -05:00
efff843f05 Merge branch 'master' into windows 2013-11-26 10:25:55 -05:00
08371ae2cf resolve merge with master (?) 2013-11-26 10:24:51 -05:00
fa22520fd2 Merge branch 'master' into cairocanvas 2013-11-25 09:26:35 -05:00
c1e8da2e60 Distinguish Save-as and Snapshot dialog window 2013-11-19 15:51:27 +01:00
ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
nick_m
f2300164d7 Fix thinko in setting order hint. 2013-10-29 02:04:26 +11:00
5eaafaa3af further fixes for NSM-based startup
Most, move initialization of Audio/MIDI setup window before NSM initialization, to make sure it is available if/when needed
2013-10-27 20:48:48 -04:00
632f5d5231 add error checking and return from attempted NSM-based initialization 2013-10-27 20:32:56 -04:00
nick_m
e80d66c908 Use add_route_dialog's transient_for() window to determine track selection for order_hint. 2013-10-26 02:37:45 +11:00
nick_m
be69bf15dd New routes are placed after highest selected route. 2013-10-24 01:27:13 +11:00
d135c4dc3a fix merge conflicts with master 2013-10-23 08:47:57 -04:00
664e715a00 merge from master 2013-10-22 15:29:44 -04:00
28525d7b69 Forward declare NSM_Client class in ardour_ui.h
nsm.h pulls in winsock2.h and with the mingw build and it causes endless
warnings from the compiler
2013-10-21 10:10:40 +10:00
b540d0e4bc Fix check button handling in Memory Warning Dialog 2013-10-21 10:10:40 +10:00
53bf1a65e8 Fix two minor memory leaks in pending state dialog 2013-10-21 10:10:40 +10:00
58eaab0e42 fix compilation 2013-10-20 09:04:27 -04:00
e5888d3983 merge with master and fix 2 conflicts 2013-10-16 22:06:56 -04:00
fb313fb174 Merge branch 'master' into windows 2013-10-16 21:57:17 -04:00
75b933eadb Merge remote-tracking branch 'remotes/origin/master' into windows+cc 2013-10-16 15:55:59 +01:00
fa03eee79e make the startup -> session dialog flow more sensible for brand new users 2013-10-15 12:37:13 -04:00
69a8fc43e2 Merge branch 'master' into windows 2013-10-15 11:17:12 -04:00
e466ce40ad Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/ardour_ui.cc
2013-10-14 19:31:22 +01:00
8a4a86eff4 'gtk2_ardour' - Harmonize '__WIN32__', 'OS_WIN32' etc, etc. Use 'PLATFORM_WINDOWS' instead 2013-10-14 17:05:42 +01:00
be8d06f848 post a dialog about a session being opened in read-only mode (if it happens) 2013-10-12 11:58:22 -04:00
b688dc802f remove erroneous ` in string 2013-10-12 09:59:33 -04:00
57262331c1 don't use a possibly non-existent window as a transient parent when showing a dialog about engine failure 2013-10-11 15:58:51 -04:00
fa71d82dda Merge branch 'windows' into windows+cc 2013-10-11 18:23:53 +01:00
a38c0efbe7 minor tweaks to audio/MIDI setup window 2013-10-10 21:07:17 -04:00
c4b20f1a20 nicely handle the (should-never-happen) case of no audio/MIDI backends being detected 2013-10-10 11:24:16 -04:00
2a6a16f980 merge with master, fixing conflicts in 3 wscript files 2013-10-09 14:00:42 -04:00
19ba3b8de7 fix some issues with window flow when session loading fails; shrink "New Session" button in session setup dialog 2013-10-08 12:18:27 -04:00
5d85b5257e use new GtkUI design in ARDOUR_UI 2013-10-07 20:27:54 -04:00
d74255343e fix up some aspects of loading from a cmdline session name 2013-10-06 16:32:02 -04:00
300b484cf6 Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/ardour_ui.cc
	gtk2_ardour/ardour_ui.h
	gtk2_ardour/ardour_ui_options.cc
2013-10-06 11:56:03 +01:00
a19afc5903 'gtk2_ardour' - Specify 'Glib::usleep' where needed (global ::usleep is not available for MSVC) 2013-10-03 09:34:52 +01:00
8bf59e88e5 'gtk2_ardour' - Use 'floor / floorf' instead of 'trunc / truncf' 2013-10-03 09:32:08 +01:00
bb062f2b90 'gtk2_ardour' - Use 'GStatBuf' instead of 'struct stat' 2013-10-03 09:27:40 +01:00
2c9644320f tighten up layout of session dialog; make button say cancel or quit in difference scenarios 2013-09-23 23:13:07 -04:00
b362ff220c major rearrangement of startup/session loading code
first-time user code remains in ArdourStartup
session selection/setup moved to SessionDialog
many other cleanups, logic improvements, and so forth to the overall session loading process.
Not 100% finished yet.
2013-09-23 14:41:52 -04:00
f1aa5839c0 use WindowManager/WMProxy to correctly manage the audio/MIDI setup window 2013-09-22 19:22:56 -04:00
19bb2b33a8 Merge remote-tracking branch 'remotes/origin/cairocanvas' into windows
Conflicts (hopefully resolved):
	gtk2_ardour/marker.cc
	gtk2_ardour/midi_region_view.h
	gtk2_ardour/region_gain_line.h
	gtk2_ardour/utils.cc
	gtk2_ardour/video_image_frame.cc
	gtk2_ardour/wscript
	libs/backends/jack/wscript
2013-09-21 09:17:25 +01:00
960a47330a switch from JACK_Slave to Engine_Slave 2013-09-19 17:34:23 -04:00
57d24608e7 show a different audio/MIDI option screen if JACK is already running. try to fix problem with using AudioBackend::<property-value>() functions before anything has been set. 2013-09-19 15:03:20 -04:00
20fa19e69e more excision of "JACK" from labels, menu items, etc.
NOTE: users will lose the sample rate/latency display in the status bar display. Not yet sure what to do about this
2013-09-17 22:25:21 -04:00
fd23ebd088 Merge branch 'master' into cairocanvas 2013-09-17 21:23:30 -04:00
302b08c059 Merge branch 'master' into windows 2013-09-17 21:22:56 -04:00
c698ada035 change return type on {disconnect_from,reconnect_to}_engine() and make public so that we can use these when doing intentional disconnects without popping up the "HALTED" dialog 2013-09-17 21:07:14 -04:00
5e0e41e068 Merge branch 'master' into cairocanvas 2013-09-16 22:11:50 -04:00
fb45fdc052 fix conflicts and merge with master 2013-09-16 22:11:06 -04:00
c8b32e2f8b minor fixups for audio/MIDI setup spin buttons (now editable, as they should be) 2013-09-16 22:03:59 -04:00
7a30e63eaa fix merge conflicts with master 2013-09-14 16:42:40 -04:00
4861eca974 Merge branch 'master' into windows 2013-09-13 11:55:56 -04:00
ccc81f05be remove some debug output messages 2013-09-12 17:25:01 -04:00
7c88670680 lots of changes to auto-start (and stop) the backend for latency measurements, and continuing work on the session construction/engine configuration flow 2013-09-12 16:28:51 -04:00
bb826f4bee incomplete merge of master into windows (requires upcoming changes to master to be complete) 2013-09-12 11:28:50 -04:00
209e4bdcae many changes relating to session construction and audioengine interaction
every session member is now initialized using C++ constructor syntax

session construction reordered to clarify the split(s) between work
where the engine is not relevant and work where is it is. this
split is still not 100% obvious, but is enormously clearer than
previously.

if engine/backend are not running as session is created, and the SR
of the sample rate is known, attempt to force backend to that value.
2013-09-10 15:41:19 -04:00
56465fda10 move engine dialog from a widget to an actual dialog; emit Session::AudioEngineSetupRequired when loading a session if it is necessary 2013-09-09 15:17:42 -04:00
bc1cc154dc always save/keep audio/MIDI setup states so that they are available for use *after* instances where JACK was already running 2013-09-05 14:21:25 -04:00
8060198f75 change names of actions groups that include "jack" 2013-09-04 12:49:52 -04:00
ee1b49f87e fix merge conflicts from master 2013-08-24 12:18:06 -04:00
e6521bb043 Merge branch 'master' into cairocanvas 2013-08-14 13:11:34 -04:00
6bcdf4f0f1 fix merge issues with master 2013-08-14 13:10:59 -04:00
de4b24b162 Move initialization of libardour from ARDOUR_UI class into main() 2013-08-13 20:15:47 +10:00
d51eba1162 Change ARDOUR::init return type to bool type for success/failure 2013-08-13 20:15:47 +10:00
da74519911 fix display of latency 2013-08-09 11:23:15 -04:00
ab39a09b86 temporarily ignore AudioEngine::Halted when GUI asks to disconnect from JACK, to avoid warning dialog 2013-08-08 22:28:31 -04:00
d90e2b4221 rationalize (a bit) engine start/stop/restart so that it is possible to start up, disconnect from JACK and then reconnect 2013-08-08 16:31:08 -04:00
4c60dd983c vtl: import audio at video-offset, forget offset on "Remove Video" 2013-08-08 15:26:41 -04:00
9ff32d1b52 make master-meter in toolbar optional 2013-08-08 15:26:41 -04:00
d17c3207b8 add a peak reset button to the editor meter
see http://tracker.ardour.org/view.php?id=5601
2013-08-08 15:26:19 -04:00
8f1499664d add [master] meter to the toolbar
http://tracker.ardour.org/view.php?id=5601
2013-08-08 15:24:50 -04:00
5ccd13ea78 Wrap calls to add_shortcut_folder() in try { ... } block.
Gtk::FileChooserButton::add_shortcut_folder() throws a Glib::Error
exception if the folder being added already has a shortcut, causing the
'New session' dialogue to appear empty when choosing 'New...' from the
Session menu. This happens if Ardour's default session folder is
set to a location that has a standard shortcut in the Gtk file chooser,
e.g. the user's home directory, desktop, &c.

Catch the exception in ArdourStartup::setup_new_session_page(), so that the
'New session' dialogue appears as expected, and likewise in
ARDOUR_UI::open_session() to avoid a similar problem there.

Fixes #5591.
2013-08-08 15:23:11 -04:00
35fe6dfa08 NOOP - prevent headaches and remove cruft
Every "point zero one" seconds is only 25 Hz in ardour..
2013-08-08 15:23:08 -04:00
584eeed66a change wording in audio status when disconnected from engine 2013-08-07 22:24:30 -04:00
1ab61b8564 major redesign of MIDI port heirarchy and management (part 2) 2013-08-07 22:22:11 -04:00
616f2a0370 fix conflicts after merge with master 2013-08-05 14:22:32 -04:00
a66e3859e1 can now start JACK based on config dialog 2013-08-05 12:51:51 -04:00
7218bd91de start work on the changes to EngineControl (dialog) to integrate with new backend design, and add "requires-driver" concept to AudioBackend to handle JACK specifically 2013-08-04 14:03:19 -04:00
68fc5bbf6c vtl: import audio at video-offset, forget offset on "Remove Video" 2013-08-04 17:23:58 +02:00
efc46f1553 make master-meter in toolbar optional 2013-08-04 00:06:29 +02:00
c2e7c32c53 add tim's jack_utils code to rationalize setup of JACK config 2013-08-03 16:37:10 -04:00
1c4d00e8b7 audioengine branch can now load and run at least one test session.
currently hard-coded to deal only with the situation where JACK is already running
2013-08-03 11:57:56 -04:00
c06a3a6201 add a peak reset button to the editor meter
see http://tracker.ardour.org/view.php?id=5601
2013-08-03 13:59:22 +02:00
df59a000b7 start code reorganization needed to deal with backend choices. compiles, links and runs as far as the startup screen now 2013-08-01 18:49:40 -04:00
6a436fd826 fix merge conflict from master 2013-07-31 20:11:15 -04:00
fbfa0acebe remove compile errors (still will not link and JACKPortEngine is not close to done) 2013-07-30 23:26:46 -04:00
5e0c6af406 jack_audiobackend.cc finally compiles 2013-07-30 17:48:57 -04:00
b70057f576 add [master] meter to the toolbar
http://tracker.ardour.org/view.php?id=5601
2013-07-24 22:04:46 +02:00
3d95822716 more miscellaneous changes for audioengine, all of this is still far from actually compiling 2013-07-24 08:36:04 -04:00
bf408d60c8 Wrap calls to add_shortcut_folder() in try { ... } block.
Gtk::FileChooserButton::add_shortcut_folder() throws a Glib::Error
exception if the folder being added already has a shortcut, causing the
'New session' dialogue to appear empty when choosing 'New...' from the
Session menu. This happens if Ardour's default session folder is
set to a location that has a standard shortcut in the Gtk file chooser,
e.g. the user's home directory, desktop, &c.

Catch the exception in ArdourStartup::setup_new_session_page(), so that the
'New session' dialogue appears as expected, and likewise in
ARDOUR_UI::open_session() to avoid a similar problem there.

Fixes #5591.
2013-07-19 12:10:41 +01:00
0444c40053 Use file modes supported by mingw compiler on Windows 2013-07-17 16:45:00 +10:00
c92e1a0742 Use g_lstat instead of lstat for portability 2013-07-17 16:41:48 +10:00
43f7813b24 Fix portability of Session::source_search_path 2013-07-15 08:05:37 -04:00
0aac62e013 Merge branch 'master' into windows 2013-07-14 08:27:22 -04:00
5cafb98983 Work around badly chosen argument name in giomm/dbusmessage.h
interface is defined in windows/mingw headers. hopefully this will
be fixed in giomm at some point and this crap can be removed
2013-07-11 15:29:28 -04:00
167e8bbc2f Include pbd/localtime_r.h for mingw build 2013-07-11 15:23:12 -04:00
029c530203 Disable checking for memory locking support on windows
not sure if this is needed on windows, can implement later in PBD
2013-07-11 15:18:31 -04:00