13
0
Commit Graph

310 Commits

Author SHA1 Message Date
e85ff4dad2 Cut and Copy should remember the white space at the end of a range.
This will be used when you paste with Ripple; it maintains the whitespace that you chose in the selection.
Also fix default setting of Dim contol by storing the default(normal) value for MPControl Controllables.
2014-07-23 14:36:21 -05:00
07e0f785f8 add "fade range" operation, bound to alt-f at present by default 2014-07-10 08:17:22 -04:00
0a87bbc37b add partial support for mute automation (playback does not work, data is not recorded in the session) 2014-07-01 14:37:05 -04:00
e5e12acc56 Merge branch 'ripple-mode-cc' into cairocanvas
Fix up merge conflicts in
	gtk2_ardour/editor_mouse.cc
	gtk2_ardour/editor_ops.cc

Also fix up compile errors.
2014-07-01 19:10:47 +01:00
cabd3783fe Ripple mode: fix undo of paste
Fix undo of region paste operations in ripple mode.
2014-07-01 18:38:14 +01:00
a7c559fd63 show track-number in GUI 2014-06-26 19:21:05 +02:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
14c6dfab07 Do not allow to de/activate a track while the transport is rolling.
roll_delay and latency are only re-calculated when the transport is stopped.
de/activating a track is also not RT-safe.
2014-06-22 23:18:00 +02:00
00af9a967b Ripple mode: ripple all after start of deleted range
When deleting a range in ripple mode, ripple everything after the start
point of that range backwards by the length of the range, so that
newly-created regions immediately at the range end move back to the range
start.
2014-05-16 20:04:57 +01:00
99c0ef21d7 Ripple mode: ripple when deleting ranges.
Make delete, cut and clear of a range ripple the appropriate playlists.
2014-05-16 01:03:37 +01:00
d75c7151d4 Ripple mode: basic implementation
Add a value for Ripple to EditMode enum.

Add Ripple edit mode to edit mode dropdown, by adding it to the
Editor::build_edit_mode_menu() helper function, and remove the old code that
added items to the (now unused) Editor::edit_mode_strings.

Add the regions that should be affected by the drag to RegionDrag::_views so
that the drag carries them along automatically.

Use a copy of the RegionList in Playlist::core_ripple(), since bad things
happen when iterating over regions and they get moved around in the list.

Handle rippling in removal of regions from playlist.

When dragging in ripple mode, exclude all regions that lie before the
original start position of the selected regions being dragged from
rippling: this is what Mixbus does.

Make editor dragging respect snap-to settings, by using the existing
compute_x_delta() function, which did almost the right thing. Move setting
of _last_frame_position out of that function so all ripple-dragged regions
can move.

Ripple when dragging from region list: even though Mixbus doesn't do this, it
seems like a good idea.

Prevent multi-track selection being dragged across tracks, by making
RegionMotionDrag::y_movement_allowed() virtual, and overriding it in
RegionRippleDrag to forbid dragging of selections containing regions on more
than one track to dofferent tracks in ripple mode.

Remember which TimeAxisView a ripple-mode drag that's allowed cross-track
drags started from, so that the effect of rippling regions after any region
that's dragged off that track can be undone.
2014-05-07 19:46:24 +01:00
509159c3c6 first pass hiding/rearrangement of UI elements related to trx 2014-04-10 13:30:25 -04:00
2952ac05e6 fixed a few warnings from clang static analysis 2014-03-18 22:51:44 +01: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
fa22520fd2 Merge branch 'master' into cairocanvas 2013-11-25 09:26:35 -05:00
9a50b56930 reset time-axis peak when meter-point changes - fixes #5771 2013-11-20 18:54:34 +01:00
08b485db75 send enter events to EVERY newly entered item (ignore the bool return from the event handler); other canvas debugging aids;switch items_at_point() to use canvas coordinates 2013-11-03 10:07:00 -05: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
c08b336292 Fix ambiguous type CheckMenuItem that is also defined via windows.h 2013-07-11 15:32:31 -04:00
580520b12f fix conflicts caused by meterbridge merge 2013-07-11 09:11:53 -04:00
2b53ac2e31 amend cb7bcb6d - locked-solo button style 2013-07-11 02:31:30 +02:00
92494b8965 queue axis resize if port-config changes 2013-07-10 20:48:42 +02:00
fbc324ee81 adjust-width/redraw track-header when meter changes 2013-07-10 15:27:09 +02:00
6d69567676 fix track-header: show meters the first time 'round. 2013-07-10 15:27:06 +02:00
aabe526df2 update track-header layout - proper padding around meters 2013-07-10 15:27:06 +02:00
2a534de272 double width of mono-meters in track-header 2013-07-10 15:27:04 +02:00
066b385c68 adjust padding of meters in time-axis view (still using border bg color) 2013-07-10 15:27:03 +02:00
363b646de9 add margin around meters in editor track header 2013-07-10 15:27:03 +02:00
1c24a847dd remove no-op "horizontal_position_changed()" method from StreamView and RouteTimeAxisView 2013-06-16 22:15:32 -04:00
f00b3b7f11 merge with master 2013-06-13 23:00:24 -04:00
ce0aa96838 NOOP - use PBD's std::string to number functions 2013-06-08 09:03:26 +02:00
96eee9e7a1 change UIConfig to use accessor/setter methods like RCConfig so that ParameterChanged methods can actually be emitted; add variable (over a small range) background shading for all TimeAxisViewItems 2013-04-16 23:46:22 -04:00
b05968fb4e change frames_per_pixel to samples_per_pixel 2013-04-12 11:31:50 -04:00
30968b8542 merge with master, including manual merge conflict resolution 2013-04-06 16:12:15 -04:00
cd6cbba299 rename Route::is_hidden() to Route::is_auditioner() and Route::Hidden to Route::Auditioner. this has been the meaning of these terms for years now and it would be better to make it explicit 2013-04-06 16:04:02 -04:00
8eef4b1904 master merge; new files not added after initial cairocanvas patch application 2013-04-05 17:16:33 -04:00
096fe04e61 Make track header faders insensitive to vertical scroll-wheel events again.
This effectively reverts d235a27a, and restores the behaviour to that of
Ardour 2.
2013-04-05 10:08:36 +01:00
aaea166135 initial commit of hand merging, plus getting "ancient" waf script to work correctly 2013-04-04 00:32:52 -04:00
0a05c08a1a alter menu name for processor automation and hide extra separator in menu when not needed 2013-03-30 09:23:12 -04:00
4abbabdcf9 Squashed commit of the following:
commit fdbae82077db53add90df7448a06869dac89acc6
Author: Paul Davis <paul@linuxaudiosystems.com>
Date:   Wed Mar 27 21:45:28 2013 -0400

    mammoth changes in basic signal flow, total redesign of MIDI channel filtering and more.

commit 59343a8283698e02bc0f622313b29e98f449e4c8
Author: Paul Davis <paul@linuxaudiosystems.com>
Date:   Wed Mar 27 01:58:53 2013 -0400

    initial working version after changes to MIDI channel filtering. may affect metering input too. testing not yet finished

this commit merges many deep changes in ardour's internal architecture,
combined with a total redesign of how MIDI channel filtering works.

data in a track used to flow from JACK port buffers to diskstream's ringbuffers
and was then copied from the ringbuffers into a BufferSet for use during
Route::process_output_buffers(). The butler thread would handle the movement of
data between the ringbuffers and disk.

with this commit, data now flows from JACK port buffers into the BufferSet used
for Route processing, and is copied from the BufferSet into the diskstream's
ringbuffers (the butler thread continues to handle interactions with disk as
usual).

this change allowed a dramatic consolidation of code and simplification of most
aspects of Track/Route::roll() and Track/Route::no_roll(). in particular, see
Route::fill_buffers_with_input() which now concisely describes how we move data
from JACK port buffers into the BufferSet for all Route types (including Tracks).

this work was initially motivated by changing MIDI channel filtering so that we
can process capture and playback independently. there is now a very clean
pathway for this - see MidiTrack::roll() (NOTE: This needs implementing in the
no-roll case too - a TODO item).

the channel selector for MIDI tracks has been moved out of the track header and
is now accessible via the context menu. more work is likely here, to make it
(more) obvious to the user when filtering is going on.
2013-03-27 21:50:18 -04:00
f4f0dd6637 completely revisit how track name editing works in the editor
git-svn-id: svn://localhost/ardour2/branches/3.0@13898 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 15:27:04 +00:00
00cba5aa3b more substantive reworkings of TimeAxisView::name_(entry|label) and name editing. better, but i can still (somehow) trigger occasional misbehaviour
git-svn-id: svn://localhost/ardour2/branches/3.0@13840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-14 21:46:32 +00:00
f269d7c56e various tweaks to get 80% Of the way to proper use of TimeAxisView::name_label and TimeAxisView::name_entry. Not done yet, since the entry sometimes loses focus and cannot be hidden.
git-svn-id: svn://localhost/ardour2/branches/3.0@13836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-12 04:07:29 +00:00
2b58d51e50 rework pixfader design again: remove texture, draw entire (double-sized) pattern ahead of time and render appropriate part of it at expose (this may turn out to be the wrong idea if/when we use a "real" fader design); fix up color(s) in track headers for these things
git-svn-id: svn://localhost/ardour2/branches/3.0@13833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-12 01:37:27 +00:00
9fcf40c94b substantive changes to pixfaders and derived classes. now fully dynamically sizable and have an added texture that currently just emulates the ardour2 belt pattern. mild color changes, not finalized yet.
git-svn-id: svn://localhost/ardour2/branches/3.0@13830 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-11 18:33:57 +00:00
b1029a3caf goodbye pixmaps and pixbufs (no longer) used by Gtkmm2ext::PixFader
git-svn-id: svn://localhost/ardour2/branches/3.0@13827 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-10 15:25:11 +00:00
d235a27aaf allow vertical scroll events on track faders to do their job
git-svn-id: svn://localhost/ardour2/branches/3.0@13756 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-03 00:52:39 +00:00
4481cca74a do not start editing track/bus names on a single click in the name entry of the track header - require double click; show name label rather than name entry when rec-enabled, to allow using the name area for track selection (name entry would have been visually still available for editing, which is misleading
git-svn-id: svn://localhost/ardour2/branches/3.0@13738 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-27 14:08:38 +00:00
54ce76e8fd remove "edit" property from track/bus groups; use "select" property which should force region selection to propagate, and then rely on "edit-applies-to-selection"
git-svn-id: svn://localhost/ardour2/branches/3.0@13734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-26 17:50:29 +00:00
Ben Loftis
5249f82603 more theming and layout tweaks. new faders that pre-light. fixed some spacing around mixer buttons. tweaked some colors (returned mutes to yellow). removed group button at bottom of mixer strip and replaced it with fader automation mode.
git-svn-id: svn://localhost/ardour2/branches/3.0@13617 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-07 22:38:49 +00:00