f1e6cc50b0
Revert "libs: debug output for faderport/editor mixer strip sync"
...
This reverts commit 6fb91b1ac2
.
2017-02-25 19:56:51 +01:00
6fb91b1ac2
libs: debug output for faderport/editor mixer strip sync
2017-02-24 23:10:03 +01:00
9d8829f5bf
Remove direct calls to set solo_control()
...
Changing solo-state needs to be done in rt-context to atomically
propagate solo/mute.
set_control() queues a rt-event, later Session::rt_set_control() calls
Session::update_route_solo_state() to propagate solo/mute.
2017-02-17 03:58:51 +01:00
e75c713e5e
make the leftmost mixer stripable API at least work as advertised
2017-02-01 11:57:37 +01:00
0f4530af0d
add new API to ControlProtocol to allow GUI to specify left-most mixer strip
...
Subject To Change. Mileage May Vary. Offer Not Good In All Territories.
2017-02-01 11:46:42 +01:00
220fbbe0d8
fix another action name in BasicUI after Editor=>Control migration
2017-01-28 18:51:03 +01:00
e92c169275
fix action names in BasicUI after Editor=>Control migration
2017-01-28 18:51:03 +01:00
6dbe3a1e3b
post-rebase fixes
2016-09-27 14:59:30 -05:00
d7a16786fc
change API for BasicUI::goto_start() to use optional roll-after arg
2016-09-27 14:59:29 -05:00
ac9b5f872d
add method (taken from GTK GUI) to goto_nth_marker() to BasicUI
2016-09-27 14:59:29 -05:00
0e5ac13a04
use new shared cancel_all_solo() in Mackie code
2016-09-27 14:59:29 -05:00
40dd604dbc
add correct implementation for cancel all solo to BasicUI
2016-09-27 14:59:29 -05:00
0ff233d234
Update our MSVC project files to generate the most recent Ardour session file format (ver 5) rather than the older v3 format
2016-08-30 07:15:00 +01:00
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
77a8da9010
set ControlProtocol::_first_selected_stripable at the right time only
2016-07-06 20:58:33 -04:00
cf9706974c
a few post-rebase cleanups
2016-07-06 14:03:24 -04:00
2047ee527c
restore/extend/simplify ControlProtocol API to allow tracking of selection
2016-07-06 13:39:10 -04:00
eed3ea5047
remove a bunch of code that will no longer be used
2016-07-06 13:38:13 -04:00
291aec468f
use session stripable selection API
...
and remove old ControlProtocol signals to talk to GUI etc.
2016-07-04 12:45:53 -04:00
3eaa6c0389
remove certain ControlProtocol signals related to stripable selection
...
includes change to Mackie support so that strips listen for PropertyChange
on the stripables they represent, no global selection change used anymore.
2016-06-10 13:57:18 -04:00
f03f2e5c3f
use new record safe control in surface support
2016-05-31 15:30:45 -04:00
08f01085de
remove now-redundant control protocol route-selection signals
2016-05-31 15:30:43 -04:00
c438ba2b6e
remove no-longer-used TrackSelectionChanged signal from ControlProtocol
2016-05-31 15:30:43 -04:00
dd57a83793
add Stripable analogs for Route signals and methods in ControlProtocol
...
These will go away once all surfaces have migrated to Stripables
2016-05-31 15:30:42 -04:00
e0ff70cf86
first vaguely working version using PresentationInfo
...
remote control ID and "order keys" have been removed.
2016-05-31 15:30:42 -04:00
653ae4acd6
universal change in the design of the way Route/Track controls are designed and used. The controls now own their own state, rather than proxy for state in their owners.
...
Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
2016-05-31 15:30:40 -04:00
aee283f056
use redesigned Route and VCA object architecture/API
2016-05-31 15:30:39 -04:00
nick_m
34c9ac9dd7
Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt()
2016-05-27 23:38:17 +10:00
b0200b23f2
Accommodate the fact that 'msvc_resources.rc.in' got moved to a new path
2016-05-21 10:33:18 +01:00
ae7cc64377
copy-n-paste the ARDOUR_UI toggle-roll code into BasicUI (for Faderport and others)
2016-05-09 08:17:23 -04:00
8b52b69810
make BasicUI (for control surfaces) loop toggle work like the GUI
2016-04-30 10:54:40 -04:00
40aa4cfe06
Modify our MSVC projects to build liblua as a DLL rather than a static lib
2016-04-04 16:40:20 +01:00
ba78359129
prepare for update to waf 1.8
...
uselib is no longer implicit (inherited by .use). This is still incomplete,
some uselibs for non-linux variants may be missing.
bld.is_defined("HAVE_XXX") also no longer works and will have to be
changed (I think to bld.env["HAVE_XXX"]) in countless places.
2016-02-28 21:16:44 +01:00
d3634c5779
Accommodate 'lua' search paths in various projects where they're needed
...
(i.e. so that MSVC can find header files from lua).
2016-02-27 16:29:55 +00:00
ff2c3dbc81
control surfaces: fix BaseUI method for disabling record enable
2016-02-02 09:03:41 -05:00
3332633d19
Editing from a control surface must have the ability to ignore mouse location.
...
Add mark_in and mark_out actions that explicitly use the playhead as the edit location.
2016-01-28 13:46:33 -06:00
2005891d40
use route gain control, not amp->gain()
2016-01-25 11:48:43 -05:00
9e5b7db89f
first compiling, mostly working version of group controls changes
2016-01-22 11:58:31 -05:00
79f0a92818
Add a link library that's now needed when building ardour_cp
...
Now needs 'Timecode::BBT_Time' (from Ardour's 'timecode' lib).
2016-01-22 12:28:01 +00:00
a7141e1fc3
Transport_play should not jump back.
...
Typical use of transport controls is to ffwd and rewind, then "play".
This doesn't work well if the Play command always resets to starting position.
2016-01-19 14:00:51 -06:00
5493e20c84
Add all_tracks_rec actions
2016-01-19 14:00:03 -06:00
c5b93e2a01
track scrolling and zooming
2016-01-18 18:24:14 +01:00
27d82af077
add some horz and vert zoom actions; remove some whitespace from the code of the ui-actions, so they are easier to see and maintain
2016-01-18 18:24:14 +01:00
16623b1cb3
add more remote transport toggles for touchOSC: midi_panic, toggle_roll, stop_forget, set_X_range, quick snapshots. also add boilerplate for monitor controls, but those are not implemented yet
2016-01-18 18:24:14 +01:00
36e1ff48bc
implement mark_in, mark_out, toggle_click
2016-01-18 18:24:14 +01:00
f0d9295dd6
implement remover_marker, jump_by_bars, and jump_by_seconds
2016-01-18 18:24:14 +01:00
64c9198d60
add group disposition argument to Route::set_gain() and use it in various UIs
...
Executive decisions were necessary in a couple of places about the correct group disposition
behaviour, notably faderport and OSC surfaces
2016-01-18 12:11:09 -05:00
55094b7237
move Amp::GainControl out into its own source module and out of Amp
2016-01-18 12:11:08 -05: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
2e3721ecf4
add goto_zero() function for BasicUI
2015-11-24 23:40:54 -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
2ea5962af2
rationalize save/restore of control surface "feedback" property
2015-06-24 13:46:07 -04:00
801af5df9e
Add the new (UINTSDEFINED) preprocessor directive to all out MSVC projects (just to be on the safe side)
2015-06-09 13:18:42 +01:00
ce259edbcd
professionalize peak-meters
...
The peak meter needs to withstand various test-signals
without visual jitter (in particular 1kHz sine) regardless
of settings (period-size, sample-rate, custom fall-off).
This needs to be done in sync (and not by a random non-rt
‘smoothing’ thread).
On the downside this voids the ‘visual smoothing’ particularly
with large buffersizes - but then again exactly this “always
fall-off no matter what [the next real data will be]” is the
problem.
One the upside, there’s one less high-frequency (100Hz) thread
(Yay!) PS. it probably never worked on windows, anyway.
Only peak-meters are affected by his change.
K-meters, IEC I/II and VU were never visually smoothed.
2015-05-02 03:46:49 +02:00
d00ab0221a
allow to set/change loop-range via OSC
2015-04-12 23:40:35 +02:00
8a93a87db0
remove lib versioning for internal plugins
...
Those objects do not have a versioned API by themselves.
This fixes issues with duplicate deployment (OSX, Linux bundles: cp) and
ardour listing control-surfaces multiple times (file index plugin dir).
2015-02-16 17:32:56 +01:00
973d40e3ac
Add support for USE_CAIRO_IMAGE_SURFACE when building with MSVC
...
(new preprocessor directive - greatly improves CPU loading)
2014-10-29 17:36:30 +00:00
65715dd298
Make sure all our VC projects agree that the product is called 'Mixbus3' (as opposed to just 'Mixbus')
...
It'd be nice if we could use 'ARDOUR::config_dir_name' for this purpose (or perhaps 'PROGRAM_VERSION'). However, neither is implemented widely enough at present to make this practical. Keep an eye on them though, as possible future strategies.
2014-08-28 07:57:20 +01:00
45afed5e9a
Modify our VC project files to work with msvc32-fixup.pl
2014-08-04 09:02:17 +01:00
928881b24a
Update vcproj files for changed LILV config define.
2014-07-15 15:50:12 -04:00
1b989a93c2
remove redundant os.path.join() calls when specifying install path as bld.env['LIBDIR']
2014-04-28 21:18:02 -04:00
058986f77b
finish unfinished work at basing all install paths on the program name
2014-04-28 21:11:08 -04:00
8a4fdbf023
final eradication of jack header files from anything except the JACK backend
2014-04-11 02:52:28 -04:00
077a194430
Add the main VC project files for building Ardour3 with Microsoft Visual Studio
...
Note that there's no 'VS Solution' file at present and some targets haven't been built yet (e.g. 'fst')
2014-04-08 09:49:35 +01:00
e6c3cece64
remove recently added conflation of mingw64 and msvc with respect to symbol export
2014-03-02 14:59:08 -05:00
19395ac258
when mingw is mingw64, it appears that we need to use __declspec() and not __attribute__((visibility)) for export control
2014-03-01 15:16:39 -05:00
79b7fb82f3
try to get export/visibility and build conditionals right for surfaces/, once more
2014-01-25 13:57:28 -05:00
5062a00c7d
move -fvisibility=hidden to the top of the source tree, and remove its internal use; use libtimecode as a shared lib again
2014-01-12 15:40:47 -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
897fbdc652
Small patch to see if Ben's build problem gets fixed
2014-01-05 15:08:38 +00:00
b0e4f81eb3
merge exportvis branch into cairocanvas, to reduce the number of "floating" branches.
...
Still need to add API export/visibility macros for the canvas library.
2013-12-27 14:29:06 -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
b0a10da783
clean up aspects of ControlProtocol API
2013-12-21 15:31:28 -05:00
8a005319b8
clean up aspects of ControlProtocol API
2013-12-21 15:31:28 -05:00
3a885d6177
Only use __declspec(dllimport/dllexport) for MSVC compiler
...
Use the gcc visibility attributes when building with the MinGW compiler(gcc).
GCC also supports the __declspec syntax but it will not compile at the moment
until the issues(which may not even be exactly the same issues as with MSVC)
are resolved.
2013-12-05 21:11:18 +10:00
f85c67501c
reverse the visibility.h files assumptions that we don't build shared libs by default
...
This avoids having to define define LIBFOO_DLL=1 all over the place. If we ever go with static libs we will
need to define LIBFOO_STATIC=1 but hopefully in some central location like the top level wscript.
Oh, and I also dropped support for gcc older than version 4.x because ardour will already not build
on such an old version.
2013-10-18 11:50:44 -04:00
683496c501
use libltc and libtimecode as static libs, and upgrade to waf 1.7
...
This is slightly awkward. It is important that we only link once to the static lib. Doing this at executable link time did not
work, possibly because waf insisted on putting the two static libraries at the front of the link list. So instead libardour
is now the point where linkage to these libraries occurs (and nowhere else). This should never be changed unless the change
just moves the linkage point to another location.
Also fix a bug with the libardour version tha was picked up by waf 1.7
2013-10-18 11:11:59 -04: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
5b2a5d77b8
add -fvisibility=hidden to libardour_cp (control protocol)
2013-10-17 15:09:28 -04:00
61c1956ef9
add -fvisibility=hidden to evoral, and make things work
2013-10-17 15:02:20 -04:00
5896d773e4
add export control to control protocol library
2013-10-17 13:15:24 -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
1e7ca12f16
Use correct define when building ControlProtocol to export symbols
2013-09-06 14:32:01 +10:00
5c8306f148
'libs/surfaces' - Add an additional visibility specifier (ARDOURCP_API as well as ARDOURSURFACE_API)
2013-09-04 15:54:35 +01:00
a435e6357f
use visibility macros to control visibility in control surface DLL/DSO's
2013-09-03 08:33:51 -04:00
aaea166135
initial commit of hand merging, plus getting "ancient" waf script to work correctly
2013-04-04 00:32:52 -04:00
16ce39c230
initial, prototype modifications to permit compilation of local libraries as static libs. required a "fix" to libs/pbd/debug.cc to even get the program up and running, and still does not work due to issues with boost::shared_ptr::enable_shared_from_this. controlled by configure-time --internal-{static,shared}-libs, set to shared by default (as has been the case for years)
2013-03-20 17:18:55 -04:00
4ecb07aaee
fix up Location::first_location_(after|before) to do the right thing when marks + ranges are interleaved (functions renamed)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 13:19:16 +00:00
27a1cf2cf7
Compile cleanly with clang.
...
To compile Ardour with LLVM/clang, do the usual thing but set the CXX and CC
environment variables, e.g.:
CC=/usr/bin/clang CXX=/usr/bin/clang++ ./waf configure build
git-svn-id: svn://localhost/ardour2/branches/3.0@12418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 02:54:10 +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
edad92a944
control surfaces: make it possible to keep display of current GUI/selection state as we bank through tracks/bussses. note careful use of weak_ptr<Route> to avoid messing with Route lifetimes. this scheme may change
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12115 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-28 01:43:38 +00:00
ae2e8c6765
MCP: ctrl-select toggle selections status, analogous to GUI op
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 22:10:32 +00:00
cafbc632fb
MCP: more sensible version of previous commit, and better behaviour for play button after ffwd or rewind
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12101 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 21:57:47 +00:00
ec97b8e58d
MCP: lots of good stuff - recenable bug fixed, cursor keys for vertical scroll work, loop button lights/unlightspan pots don't adjust if there is no panner, etc.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12093 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-26 03:46:18 +00:00
4bfdcc18bd
ControlProtocol doesn't actually need any record of an event loop and doesn't need to connect to any signals itself
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12063 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23 10:54:34 +00:00
82c867bf2a
MCP: a fistful of improvements. probably best to just try it and see what it broken. KNOWN: pressing vpots without a bank/channel shift will crash ardour
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12053 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-22 02:15:24 +00:00
8f7fa7d93b
MCP: timeout display of value when altering with fader or pot; range ops on strip buttons should work; select logic may be broken
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-13 16:11:55 +00:00
62620122a9
propagate GUI track selection to control protocols; make MCP update when GUI track selection changes
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-12 14:34:03 +00:00
96d4ba88d1
MCP: more tracing for rewind; change play LED illumination rule
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11919 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-11 20:48:51 +00:00