Commit graph

860 commits

Author SHA1 Message Date
Carl Hetherington
1a1edc9ca1 Make a new action "escape", bound to the Escape key, and make it
abort a drag (if one is in progress) or clear the selection.
Fix breaking of drags in a few cases; some still to do.


git-svn-id: svn://localhost/ardour2/branches/3.0@6467 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-08 01:28:15 +00:00
Carl Hetherington
04bb3de7a5 Fix segfault on startup caused by previous patch.
git-svn-id: svn://localhost/ardour2/branches/3.0@6463 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-06 02:07:00 +00:00
Carl Hetherington
8418f8cea6 Clean up the idle_visual_changer a bit, fixing a bug where the playhead would jump around when zooming a lot with playhead zoom focus.
git-svn-id: svn://localhost/ardour2/branches/3.0@6462 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-06 01:37:38 +00:00
Carl Hetherington
f5acf93672 First cut of some Pro-tools inspired editing features; linked play/play range
and linked object/range modes.


git-svn-id: svn://localhost/ardour2/branches/3.0@6431 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-01 22:11:15 +00:00
Carl Hetherington
cba3ca64b3 Some HIG and wording improvements to the right-click region context menu. Closes #2968.
git-svn-id: svn://localhost/ardour2/branches/3.0@6407 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 03:20:23 +00:00
Paul Davis
b6f4cdaea2 rationalize destruction pathway (some more); tidy-ify some ImageFrame code
git-svn-id: svn://localhost/ardour2/branches/3.0@6398 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-25 21:06:52 +00:00
Carl Hetherington
24c0654fd5 Prevent a crash in the situation where:
1. session teardown starts
 2. editor responds by removing and destroying all TimeAxisViews
 3. session then asks all routes to drop refs
 4. the editor is called by each route's drop refs handler to remove the associated TimeAxisView
 5. that TimeAxisView has already been destroyed in (2)


git-svn-id: svn://localhost/ardour2/branches/3.0@6392 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-23 00:33:03 +00:00
Paul Davis
c83389b8ec cleanup up cleanup at session destruction; clarify the meaning of 3 signals (DropReferences & Destroyed in libardour ; CatchDeletion in the GTK UI); clarify ownership of objects (session no longer pays attention to DropReferences for objects that it is considered to own, such as routes, sources, etc); fix up MIDI parsing and a couple of other places by correcting syntax for return of values from a boost::signals2::signal (possible danger elsewhere to be checked)
git-svn-id: svn://localhost/ardour2/branches/3.0@6389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 20:21:43 +00:00
Carl Hetherington
e8e63d8eac Fix show/hide of editor summary.
git-svn-id: svn://localhost/ardour2/branches/3.0@6385 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 01:13:06 +00:00
Carl Hetherington
ca602cf216 Refactor and clean up some confusion in dragging code.
git-svn-id: svn://localhost/ardour2/branches/3.0@6384 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 01:12:41 +00:00
Paul Davis
f450df300c fully implement and deploy explicit x-thread signal connection syntax (testing comes next)
git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21 18:23:07 +00:00
Paul Davis
738387f9a4 remove a couple of boost::signals2 trouble spots; fix some --strict compile time warnings
git-svn-id: svn://localhost/ardour2/branches/3.0@6378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-20 16:50:41 +00:00
Paul Davis
aae367b63c use new syntax for connecting to backend signals that enforces explicit connection scope, plus a few other related matters
git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19 20:26:31 +00:00
Paul Davis
67460c2af4 fix deadlock in protocol manager startup; fix some other ::set_session() SNAFUs; remove last boost::signals2::connection member from libardour
git-svn-id: svn://localhost/ardour2/branches/3.0@6375 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 23:36:52 +00:00
Paul Davis
f6fdd8dcbf switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
Carl Hetherington
04c7158a41 Remove confusing track / group members in TimeSelection struct; time selection
applies to the selected tracks.  Some tinkering with how tracks are selected
during time selections.


git-svn-id: svn://localhost/ardour2/branches/3.0@6360 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-13 21:27:19 +00:00
Carl Hetherington
034db5fb1c Apply Select property of route groups at the Selection object level. Accordingly
simplify code related to selecting tracks.  Add a TrackViewList object rather than
"abusing" TrackSelection in lots of places.


git-svn-id: svn://localhost/ardour2/branches/3.0@6358 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-13 19:09:52 +00:00
Paul Davis
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
Paul Davis
64dc5427e4 make all use of bind/mem_fun be explicitly sigc::
git-svn-id: svn://localhost/ardour2/branches/3.0@6354 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:29:48 +00:00
Paul Davis
29a8238e4d second part of: fix up scrolling of pixfaders by making them grab keyboard magic focus when the mouse pointer is within them
git-svn-id: svn://localhost/ardour2/branches/3.0@6345 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 23:02:04 +00:00
Paul Davis
61cade6d59 drastic, deep and wide changes to make RouteGroup use boost::shared_ptr<Route> and boost::shared_ptr<RouteList> to better fit into emerging framework for "RT operations" ; torben's changes to MTC slaving code (sorry for bundling)
git-svn-id: svn://localhost/ardour2/branches/3.0@6334 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 03:25:32 +00:00
Taybin Rutkin
3fdcba1859 Merged revisions 6293,6296-6306,6308 via svnmerge from
svn+ssh://ardoursvn@subversion.ardour.org/ardour2/branches/build_fixes

........
  r6293 | trutkin | 2009-12-05 08:49:37 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  fix if-statement in build script
........
  r6296 | trutkin | 2009-12-05 09:30:19 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  rearrange GTKOSX and darwin dependencies
  
  - moved some GTKOSX include paths to generic darwin
  - made GTKOSX dependent on being on darwin anyways
........
  r6297 | trutkin | 2009-12-05 09:35:09 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  move coreaudio and audiounit handling to darwin section
........
  r6298 | trutkin | 2009-12-05 09:53:40 -0500 (Sat, 05 Dec 2009) | 3 lines
  
  use True/False instead of 1/0
  fix another if-statement where it should be an elif-statement
........
  r6299 | trutkin | 2009-12-05 14:11:09 -0500 (Sat, 05 Dec 2009) | 10 lines
  
  fixes to get libardour building
  
  - can't cast away volatile, so copy _transport_frame before emitting it.
  - const_reverse_iterator::operator!=() isn't defined in this version of gcc.
  - removed annoying HERE WE ARE CAAudioFile.h #warning.
  - removed unnecessary include of sndfile.h in session.h.
  - we don't want to set -march=i686 on the mac, so indent this if-statement so
    it's only run on linux.
  - DEBUG_STR() fails in the NDEBUG case, so wrap its use in an #ifndef NDEBUG
........
  r6300 | trutkin | 2009-12-05 15:48:29 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  remove old scons-style CXXFLAGS_FOO in favor of just CXXFLAGS
........
  r6301 | trutkin | 2009-12-05 16:01:10 -0500 (Sat, 05 Dec 2009) | 8 lines
  
  clean up configure flags
  
  - removed useless --aubio and --syslibs flags.  The syslibs value is ignored 
    as we don't bring our own libraries with us anymoreand we use aubio 
    automatically if it's available
  - added ways to turn off fpu_optimization and NLS
  - fixed compiling on the mac without fpu_optimization
........
  r6302 | trutkin | 2009-12-05 18:12:46 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  go back to prior uselib method for COREAUDIO, AUDIOUNIT, and GTKOSX
  
  - fixed compile of CoreAudioSource
  - re-did inclusion of coremidi_midiport.cc to depend on COREAUDIO presence
........
  r6303 | trutkin | 2009-12-05 18:59:02 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  fixed compiler warnings about classes with virtual member functions, but no virtual destructor.
  
  - Changed Metering to not use foo() = 0; to indicate it shouldn't be instantiated, but
    private: Metering(), which is more idiomatic.
........
  r6304 | trutkin | 2009-12-05 19:25:41 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  TOP_MENUBAR isn't used when building ardour.menus.  Removed.
........
  r6305 | trutkin | 2009-12-05 19:46:11 -0500 (Sat, 05 Dec 2009) | 5 lines
  
  fix some AudioUnit compile errors
  
  - update AudioUnit to use ChanCount
  - fix some namespacing issues in audio_unit.h
........
  r6306 | trutkin | 2009-12-05 20:08:48 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  make --extra-warn useful
........
  r6308 | trutkin | 2009-12-05 22:59:42 -0500 (Sat, 05 Dec 2009) | 10 lines
  
  fix compiling/linking with --coreaudio
  
  - rearrange ardour_ui.h header in editor.cc to avoid conflict
  - midi++ depends on OSX as well as COREAUDIO
  - fixed including frameworks
  - tweaked --extra-warn again.  it's kinda redundent with --strict
  - improved indentation in wscript
  - use #ifdef HAVE_COREMIDI, not #if HAVE_COREMIDI.  #if isn't interchangable
    with #ifdef and won't work if HAVE_COREMIDI is defined with no value.
........


git-svn-id: svn://localhost/ardour2/branches/3.0@6310 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 04:35:48 +00:00
Carl Hetherington
abd80d0f64 Clean up and comment PortMatrix event handling a bit.
Fix problems with attempts to access Session after it has been
destroyed.


git-svn-id: svn://localhost/ardour2/branches/3.0@6290 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-05 03:04:54 +00:00
Paul Davis
7703f0a76a move generic parts of Keyboard into gtkmm2ext. imperfectly done, but makes modifiers available in libgtkmm2ext now
git-svn-id: svn://localhost/ardour2/branches/3.0@6288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 22:51:32 +00:00
Carl Hetherington
478fd92039 Use a shared_ptr for SessionPlaylists so that it can be explicitly destroyed in ~Session to ease debugging.
git-svn-id: svn://localhost/ardour2/branches/3.0@6282 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 19:09:08 +00:00
Carl Hetherington
ee9455af40 Move some (most) playlist-related code and data into a separate object
(SessionPlaylists).  Main point being to ensure that, when a Session
is destroyed (especially as a result of its constructor throwing an
exception) SessionPlaylists::track is disconnected from its signal
at the same time as the list of playlists is destroyed.  Otherwise
problems abound.


git-svn-id: svn://localhost/ardour2/branches/3.0@6270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03 21:52:10 +00:00
Carl Hetherington
8b9b4308e0 Clean up some confusion about zoom focus and the edit point.
git-svn-id: svn://localhost/ardour2/branches/3.0@6261 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 23:31:02 +00:00
Carl Hetherington
1e4280c9cd Remove unused editor hscroller code. Add buttons to the left and right of the summary to substitute for the equivalent buttons on a scrollbar.
git-svn-id: svn://localhost/ardour2/branches/3.0@6239 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 04:10:06 +00:00
Carl Hetherington
cf6f83146a Clean up confusion wrt showing the bundle manager. Fixes #2930.
git-svn-id: svn://localhost/ardour2/branches/3.0@6230 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-01 00:34:45 +00:00
Paul Davis
2e8d37776e restore editor with leftmost frame preserved
git-svn-id: svn://localhost/ardour2/branches/3.0@6199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 01:53:41 +00:00
Carl Hetherington
7664d86dc5 Fix #2931; redundant menu items on main clocks.
git-svn-id: svn://localhost/ardour2/branches/3.0@6184 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-26 02:15:44 +00:00
Paul Davis
8f7f171877 make strip-as-GUI-for-send work for metering too ; frame around session summary widget ; tooltip for editor group tabs ; route group dialog name entry is now activatable (return == click on ok)
git-svn-id: svn://localhost/ardour2/branches/3.0@6137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-20 15:26:34 +00:00
Paul Davis
1474b10d39 avoid .h pollution in last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@6110 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 14:14:26 +00:00
Paul Davis
29d677e668 allow use of Return, KP_Enter and more in key binding editor; better display of such bindings; potential fix for "crashes" caused by an endless loop of enter/hide events involving the verbose canvas cursor
git-svn-id: svn://localhost/ardour2/branches/3.0@6109 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 13:54:04 +00:00
Paul Davis
ff9ddf5100 tidy up (a bit) locations editing widget ; use pixbuf/string code from 2.0;remove edit point clock
git-svn-id: svn://localhost/ardour2/branches/3.0@6074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-12 20:39:53 +00:00
Paul Davis
7857ec8b45 comments for BBT math methods; remove chunks from GUI; split location UI into a widget and a window; add the widget part to the editor RHS notebook. this is unfinished - it looks absurd. but its the starting point for a reworking of the location UI in its rightful place
git-svn-id: svn://localhost/ardour2/branches/3.0@6071 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-12 05:47:05 +00:00
Carl Hetherington
b49830d1a0 Stop temporal zoom buttons being clipped (slightly). Add tooltip for MIDI panic button.
git-svn-id: svn://localhost/ardour2/branches/3.0@6066 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-12 00:29:16 +00:00
Carl Hetherington
da03bc931b Fix update of the editor mixer when its route is removed; this stops routes (and hence their JACK ports) hanging around after deletion in the UI.
git-svn-id: svn://localhost/ardour2/branches/3.0@6049 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-09 23:43:13 +00:00
Paul Davis
0cc0c13444 provide accessors to Editor::snap_{type,mode} ; when nudging notes, use grid in preference to nudge clock
git-svn-id: svn://localhost/ardour2/branches/3.0@5934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-26 23:43:04 +00:00
David Robillard
8d168bda87 Remove cyclic Source->Playlist references (and with it all dependence on Playlist from Source and children and a bunch of finicky reference managing code).
git-svn-id: svn://localhost/ardour2/branches/3.0@5925 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-26 17:24:08 +00:00
Paul Davis
fa5aeb7892 change the use of "SMPTE" to "Timecode" to reflect the global economy and the end of american dominance on the world audio production stage
git-svn-id: svn://localhost/ardour2/branches/3.0@5924 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-26 14:38:58 +00:00
Carl Hetherington
1f2a518ee2 Clean up and simplify code to find marks before and after a position, and hence improve snap to markers so that both start and end positions of a range marker are taken into account.
git-svn-id: svn://localhost/ardour2/branches/3.0@5897 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 22:28:27 +00:00
David Robillard
bc56eb8bd7 Fix unused parameter warnings since GCC apparently doesn't feel like listening to -Wno-unused-parameter
git-svn-id: svn://localhost/ardour2/branches/3.0@5835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:15:42 +00:00
Carl Hetherington
2898c4fa70 Make the behaviour zoom to region more intuitive (IMHO); ie always zoom to the selected region. Not quite sure what the zoomed_to_region flag was intended to achieve. Fixes mantis 2154.
git-svn-id: svn://localhost/ardour2/branches/3.0@5823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 18:20:38 +00:00
Carl Hetherington
9155aca8c2 Tidy up the popup region editor and fix a few bugs with it; should close mantis 2601 and 2602.
git-svn-id: svn://localhost/ardour2/branches/3.0@5813 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 01:05:33 +00:00
Carl Hetherington
09ec342926 Tidy up window titles, according to GNOME HIG and as suggested in mantis 2803.
git-svn-id: svn://localhost/ardour2/branches/3.0@5805 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 17:25:37 +00:00
Paul Davis
8713667ec1 rework Stateful::set_state() patch to avoid default version argument
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 18:56:11 +00:00
Carl Hetherington
79f91c7a20 Part 1 of loading 2.X sessions; some things work, some things don't, hacks a-plenty.
LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE,
MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION.

So don't do that unless you make a backup of the session file first.



git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 00:57:55 +00:00
David Robillard
bb9cc45cd2 Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red.  I don't know the emacs equivalent...


git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
Paul Davis
e488378d42 string_is_affirmative() fix for 3.0
git-svn-id: svn://localhost/ardour2/branches/3.0@5723 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-02 20:53:31 +00:00