Commit Graph

516 Commits

Author SHA1 Message Date
af884b4174 meter-change: don’t update track-headers if not needed 2015-04-30 17:30:10 +02:00
abcc51d089 remove not-an-error error message. 2015-04-26 01:21:08 +02:00
52d67203a1 Trim Automation UI 2015-04-25 21:25:19 +02:00
15fc481776 make wording consistent 2015-04-06 20:14:24 -04:00
803853b4a4 rationalize incorrect design for removing tracks.
Still requires a way to make this work correctly from the mixer window
2015-04-06 17:56:23 -04:00
6d531b82e0 add context to single-letter translatable 2015-04-05 00:17:53 +02:00
d6574c9c40 remove duplicated calls to update solo/mute state from RouteUI descendants.
RouteUI::set_route() already does the right thing. Also remove RouteUI::mute_changed() since its
only role was to handle the mute change signal from a route, which boost::bind() makes unnecessary
since we can connect update_mute_display() directly.
2015-03-31 12:31:06 -04:00
75e0f5a023 remove GUI object state when tracks/busses are removed.
Not doing this results in accumulation of useless GUI object state which is never cleaned up.
Taken from work by Grygorii Zharun.
2015-03-30 15:27:23 -04:00
f1ce87a699 add API to select TAV height mode.
preparation for further Summary and Number of visible
track count fixes.

* “Only Self”: don’t resize child-views (old default)
* “Total Height”: distribute height equally among 
   all visible child [automation] lanes
* “Height per Lane”: given height should be applied
   to all sub-views.
2015-03-19 21:47:34 +01:00
99054ea415 fix previous commit 2015-02-10 14:54:43 -06:00
b2e93b8fba fix color and alpha of timestretch rect 2015-02-09 14:46:20 -05:00
nick_m
7a3662bc14 Fix missing selection undo for track header click and route list select. 2015-01-13 21:41:30 +11:00
9e0cd98ad4 fix select-all-regions-within (it used to select everything overlapped) 2015-01-09 12:21:10 -06:00
21ffb956e6 properly catch RTAV deletion.
fixes issue with editor-mixer retaining
a shared-pointer to the deleted route.
2015-01-08 00:41:59 +01:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
56ca52651e fix up requested color names everywhere.
Thank <deity> for emacs ... space-uncamelcase-word-at-point FTW
2014-12-14 16:15:38 -05:00
48a7a11974 initial pass to replace all UIConfiguration::get_XXXXXX() calls with UIConfiguration::color(name).
IMPORTANT: names have not been downcased and spaced yet, so many colors are not found
2014-12-14 12:27:07 -05:00
89be7ae58c Fix crash on quit when in a non-route time axis. 2014-12-06 22:43:06 -05:00
63082821d8 Support paste between automation lanes.
Also push the increasingly unwieldly paste parameters into a context object.

As with othe things, currently it is only possible to do "cross-type paste" by
explicitly selecting the target track.  We will need to get automation region
view selection working to do better here, but at least for now it's possible to
get the data over.
2014-12-06 12:20:52 -05:00
0f72ea4a34 Factor out duplicated track automation code.
Mute automation for MIDI tracks.
2014-11-30 23:56:19 -05:00
2fa6caad95 Support cut/copy/paste of several regions and lines at once.
The idea here is to do the reasonable thing, and copy objects of some
type (e.g. MIDI region, gain line) to tracks with a matching type.  The user
can override this with a track selection, which will be used straight-up.

Lost: ability to copy/paste lines across types, e.g. gain to pan.  This is
often questionable, but sometimes useful, so we will need to implement some
sort of "greedy mode" to make it possible.  Implementation simple, but not sure
what to do.  Perhaps this should only be possible if one automation track is
explicitly (i.e. via track selection) involved, and the types are at least
compatible-ish?
2014-11-16 22:35:45 -05:00
31acd96384 Implement "multi-paste" for notes, regions, and automation.
The idea here is that pasting several times to the same location doesn't make
sense.  Instead, the paste is appended past the last paste, snapped to the
grid.  This make it simple to replicate a given section a number of times,
simply by copying once and pasting several times.

This behaviour only appears when successive pastes are done to the same
location (whatever the edit point is).  When the paste point changes, the
"multi-paste" state is reset.

Boots 'n cats 'n boots 'n cats.
2014-11-14 20:04:19 -05:00
6b3a8915f3 add abort() to non-reached code
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
8a128b33d3 Automation of LV2 plugin properties.
Work towards ParameterDescriptor being used more universally to describe control characteristics.
2014-11-02 02:10:24 -05:00
ba4d1cd1c1 remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config() 2014-10-21 22:58:58 -04:00
6bb573d81c vertical pixel alignment of all TAV elements 2014-09-08 18:42:41 +02:00
1bb6fd752c special case track-header buttons 2014-09-07 20:23:49 +02:00
4912409a8d gtk style related fixes:
* remove some old/unused styles
* fix plugin-ui button (hover color when active)
* consistent style for route buttons
  (and related ArdourButton updates)
2014-09-06 12:49:57 +02:00
ae1200716f fix track-header vertical scrolling
Ignore vertical scroll events on horizontal
Automation Track Sliders. see also 70be12afaa
2014-09-06 12:46:28 +02:00
8fc6205e4e set proper name (font) for number labels 2014-09-05 23:44:39 +02:00
dc02625b56 further tweaks pertaining the track-number height 2014-09-04 20:11:44 +02:00
dea4b27ca6 update number label geometry
the number label can be significantly wider than other
ctrl buttons and does not lend itself or be 'square'.
2014-09-04 03:09:38 +02:00
0ea1238479 ask TAV buttons to have square proportions 2014-09-03 11:56:31 -05:00
c4212fb10b use tape-track rec-enable icon throughout. 2014-09-03 02:40:01 +02:00
599af96971 use new tape rec-en 2014-09-03 02:39:55 +02:00
5d5d859c2a use new 'special' rec-en button 2014-09-02 20:43:27 +02:00
5d0e4f7380 number-label: use pixel-width for given font 2014-09-02 19:27:40 +02:00
b184df3286 static global definition for track-header width
the track-header minimum width is defined by
the name-label (IFF the 2nd row fader is not visible,
but the fader is rather small by default and and grows)

track-header width in almost all cases is:
   name-label width
 + width of three button (1 char each)
 + max size of all meters (if visible)
 + width of MIDI scroomer (if visible)
 + 2px table cellspacing (per column)
2014-09-02 18:12:39 +02:00
b012f2cd18 retain track-header width regardless of number-label. 2014-09-01 00:00:20 +02:00
154621978a track-header fader tweaks:
* align height to button-height.
* align width to label text-entry
* increase min width
2014-08-31 21:32:22 +02:00
098a698052 right side track-header control buttons (for non mixbus profile) 2014-08-31 16:12:43 +02:00
c993e2d37b update track-header width when track-number visibility is toggled 2014-08-31 07:12:21 +02:00
9c59b21bb6 simplify time-axis packing: consistent table layout 2014-08-31 07:11:24 +02:00
bf13bf6385 red-border selection for tracks, regions, and processors. requesting comments 2014-08-29 17:16:32 -05:00
65287a6f09 mark "Label Buttons" as inactive 2014-08-29 21:10:20 +02:00
d6454dfb36 amend 7be3c88a, update rec-en color 2014-08-29 19:55:25 +02:00
7be3c88a3e experiment with unicode circle for rec-en
fixes button-area width mismatch on track-headers
except for tape-tracks (which till use old fixed size icon)
2014-08-29 01:13:49 +02:00
392f4847b0 use 2 digit width as minium for track number labels 2014-08-28 22:38:59 +02:00
7306568634 More fixes to ArdourButton actions.
Optionally allow events to fallthrough to parents, in particular for the DnDVBox case.
Also allow the number_label to operate as a track selector.
2014-08-28 14:25:19 -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
5c1a561325 change packing so number_label shares space with name_label 2014-08-11 15:08:57 -05:00
b41df8e120 shuffle packing order to accomodate midi controls 2014-08-11 14:44:12 -05:00
bf034f48ce New track header layout.
Vertical alignment no longer depends on number of meters shown.
Looking for comments.
2014-08-11 12:59:42 -05:00
f296389fe0 Enforce mixer strip widths, more case fixes, and minor theme changes 2014-08-01 15:44:42 -05:00
3961017921 allow track headers to select io from right-click menu 2014-08-01 13:48:47 -05:00
b32823f074 Various UI tweaks.
Refactor comments dialog into Route_UI so it can be shared by tracks and strips.
Make Color and Comments selections consistent in the menus
Refine the color displays at the top of each mixer strip
Correctly color the number displays on tracks
2014-07-29 16:40:19 -05:00
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
7d95e5de9e fix double escape in r13530
git-svn-id: svn://localhost/ardour2/branches/3.0@13538 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-20 21:17:03 +00:00
0e2396cd78 markup-escape track/playlist titles in tooltips.
git-svn-id: svn://localhost/ardour2/branches/3.0@13530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-19 16:18:03 +00:00
fc14ecb93b do not attach plugin automation submenu to automation menu if the route has no plugins (avoid common user confusion) - thanks thorsten
git-svn-id: svn://localhost/ardour2/branches/3.0@13468 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-12 20:03:57 +00:00
Carl Hetherington
6a778added Nudge the time axis view gain slider up a bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@12941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 17:03:38 +00:00
Carl Hetherington
2b559c41ae Try slightly narrower faders in the track controls area
(#4445).


git-svn-id: svn://localhost/ardour2/branches/3.0@12928 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 20:32:14 +00:00
Carl Hetherington
c785552d8f Uninitialised variable.
git-svn-id: svn://localhost/ardour2/branches/3.0@12712 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 20:58:07 +00:00
Carl Hetherington
5c60eea32a Don't recompute child heights when building the route time axis view menu.
git-svn-id: svn://localhost/ardour2/branches/3.0@12709 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 20:37:07 +00:00
Carl Hetherington
d7551a8f08 Escape angled brackets in playlist names for tooltips.
git-svn-id: svn://localhost/ardour2/branches/3.0@12672 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-12 14:19:35 +00:00
Carl Hetherington
cf0753a4bd Patch from colinf to put the playlist / take name in the playlist button tooltip (#4833).
git-svn-id: svn://localhost/ardour2/branches/3.0@12666 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 23:15:17 +00:00
Carl Hetherington
80afb6e08b Don't change playlists of frozen tracks when changing the
playlist of a route group (#4864).


git-svn-id: svn://localhost/ardour2/branches/3.0@12651 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 11:26:42 +00:00
Carl Hetherington
e39a8fc968 Make faders visually desensitised when their tracks are in automation-play.
git-svn-id: svn://localhost/ardour2/branches/3.0@12518 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-01 00:41:28 +00:00
Carl Hetherington
f722858e43 Patch from tophatdave to improve display of timestretch in
stacked layers mode (#4379).


git-svn-id: svn://localhost/ardour2/branches/3.0@12460 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-27 20:07:13 +00:00
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
Carl Hetherington
27e64c1439 Rename Route Group -> Group in the GUI, and give busses
route group and automation menu items in their right-click
menus, not just tracks.


git-svn-id: svn://localhost/ardour2/branches/3.0@12399 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-23 19:01:28 +00:00
Carl Hetherington
c977b157bc Update tooltips for AFL/PFL.
git-svn-id: svn://localhost/ardour2/branches/3.0@12146 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-02 01:24:26 +00:00
ec1ef5d6b5 remove the apparently unnecessary "ui_bind()" macro from entire source base
git-svn-id: svn://localhost/ardour2/branches/3.0@12088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 12:58:19 +00:00
Carl Hetherington
a2897ecef6 Fairly major change to the way in which crossfades are handled;
they are now done with region fades, rather than separate objects.
After this commit, Ardour will try to convert your session files
to the new crossfade format, but will make a backup in your
session folder first.

If you have works in progress using Ardour 3 it is
***STRONGLY RECOMMENDED*** that you back up session files before
updating to this commit.


git-svn-id: svn://localhost/ardour2/branches/3.0@11986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16 16:32:22 +00:00
33c61757fc promote Playlist::RegionList to ARDOUR::RegionList; fix timefx on multiple regions, even regions of mixed type. this mostly involved some trivial code changes but to make the code simpler and less error prone, the API switched away from using RegionSelection (list of regionviews that catches regionviews vanishing) and used RegionList (lists of regions, no semantics) instead.
git-svn-id: svn://localhost/ardour2/branches/3.0@11362 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-27 16:29:01 +00:00
ea99ee68d9 change tooltip of automation button for MIDI tracks to give hint that its also about controllers
git-svn-id: svn://localhost/ardour2/branches/3.0@11221 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-10 15:53:33 +00:00
Carl Hetherington
6304261b98 Re-work layering in possibly debatable ways. Sketchy docs in doc/layering.
git-svn-id: svn://localhost/ardour2/branches/3.0@11088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-27 01:42:49 +00:00
Carl Hetherington
4dd7b9b34c Make TimeAxisView::remove_child virtual so that RouteTimeAxis can override it to also remove the same child from its _automation_tracks list. Prevents a shared_ptr to an out-of-date AutomationTimeAxisView hanging around; fixes #4554.
git-svn-id: svn://localhost/ardour2/branches/3.0@10985 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-12 02:17:17 +00:00
702cca1c93 extra track header buttons are now ArdourButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@10550 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-11 17:24:05 +00:00
708fb03e87 use ArdourButton for the (radio) buttons in the monitor section; fix ArdourButton, MonitorSection and CairoWidget to work with radio semantics
git-svn-id: svn://localhost/ardour2/branches/3.0@10430 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-03 21:35:20 +00:00
370a8ba79a remove lock icon from track header solo button when appropriate
git-svn-id: svn://localhost/ardour2/branches/3.0@10423 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-03 16:17:58 +00:00
5b45dc04df remove extraneous 'r' from rec-enable buttons
git-svn-id: svn://localhost/ardour2/branches/3.0@10417 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-03 14:52:53 +00:00
bcac4f1c96 rec-enable buttons are now ArdourButtons, but with a minor graphical glitch that will be solved/fixed soon-ish
git-svn-id: svn://localhost/ardour2/branches/3.0@10402 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-02 19:51:59 +00:00
11fdd6cd18 solo buttons are now ArdourButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@10401 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-02 18:48:32 +00:00
592bfa3616 mute and send-alert buttons are now ArdourButtons
git-svn-id: svn://localhost/ardour2/branches/3.0@10397 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-02 16:46:49 +00:00
51ab5ccabf new ArdourButton class, to start to provide more control over how our buttons work and appear; use ArdourButtons for monitor, solo isolate and solo safe buttons, and in the processor box; don't save UI config file (canvas colors) to the user's home dir unless one or more parameters were modified by the user
git-svn-id: svn://localhost/ardour2/branches/3.0@10311 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-26 21:01:14 +00:00
32bf6003c4 Fix use of uninitialized value
git-svn-id: svn://localhost/ardour2/branches/3.0@10243 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-19 21:52:22 +00:00
0938a42440 fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Carl Hetherington
0411b3b54c Colin's patch to handle scroll events on track header meters (#4029)
git-svn-id: svn://localhost/ardour2/branches/3.0@10118 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-25 13:15:59 +00:00
Carl Hetherington
24a38b8b08 Add option to insert time on all a track's playlists (#4304).
git-svn-id: svn://localhost/ardour2/branches/3.0@10054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-05 23:38:18 +00:00
Carl Hetherington
881b5a43e7 Allow route groups to color their tracks (remainder of
#4064).


git-svn-id: svn://localhost/ardour2/branches/3.0@10043 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-31 19:14:12 +00:00
Carl Hetherington
3b018f6902 Tidy up route colouring a bit so that colours are the
same for both the time axis view and the mixer strip.


git-svn-id: svn://localhost/ardour2/branches/3.0@10035 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-30 15:44:00 +00:00
Carl Hetherington
89354edbbc When renaming a track to the name of an existing one,
use the same behaviour in both the editor and mixer
windows (add a number to the requested name).


git-svn-id: svn://localhost/ardour2/branches/3.0@9954 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-03 13:28:54 +00:00
Carl Hetherington
61d95b0bd0 Fix erroneous check for colons in track names; clean up
the dialogue a bit and go back to the name entry if the
user wants to re-edit.


git-svn-id: svn://localhost/ardour2/branches/3.0@9953 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-03 13:28:36 +00:00
df78f284ee fix up colons in track names before they are used for JACK port names; catch most (not all) attempted renames and ask the user about colons
git-svn-id: svn://localhost/ardour2/branches/3.0@9928 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-26 02:07:59 +00:00
6dc74f8c87 clean up GUIObjectState API, and use bools when setting "visible" property rather than string (not that it matters); don't unconditionally set visible to true unless a non-hidden track/bus has no visibility property already
git-svn-id: svn://localhost/ardour2/branches/3.0@9843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-11 20:32:33 +00:00
5946e84fc5 fix audio-specific code in RouteTimeAxis::use_playlist (#4154)
git-svn-id: svn://localhost/ardour2/branches/3.0@9800 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07 14:16:33 +00:00
10cb0a7646 introduce GUIObjectState; massive, pervasive changes in visibility and height management for track displays in the editor
git-svn-id: svn://localhost/ardour2/branches/3.0@9796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07 00:37:13 +00:00
Carl Hetherington
75eeb68e37 Minor refactoring; a few comments; don't try to add Amp processor automation curves using the generic mechanism as they are already special-cased separately (#4127).
git-svn-id: svn://localhost/ardour2/branches/3.0@9787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-02 23:36:01 +00:00
a82b900e44 implement a delete operation that works like "cut" but doesn't put the deleted items in the cut buffer. you will not be able to access this from your keyboard (Delete keyunless you remove your existing ~/.config/ardour3/ardour.bindings file
git-svn-id: svn://localhost/ardour2/branches/3.0@9711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-12 15:50:47 +00:00
1060243302 major, substantive reworking of how we store GUI information (visibility, height) for automation data. old design stored (insufficient) identifying information plus actual data in a GUI-only XML node; new scheme adds GUI data via extra_xml node to each AutomationControl object. reworked public/private methods for showing/hiding TimeAxisView objects; changed labelling of automation tracks to just show the name of the controlled parameter - more info can be viewed in the tooltip for the track headers. NOTE: Session file format ALTERED. No data loss but track visibility may be different than previous ardour3 versions
git-svn-id: svn://localhost/ardour2/branches/3.0@9703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-11 15:35:34 +00:00
2a5118270c when adding existing processor automation time axis views, use add_automation_child(), not add_child() so that subsequent searches for this automation time axis view by parameter will find it, and not create a duplicate track
git-svn-id: svn://localhost/ardour2/branches/3.0@9700 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-09 20:34:29 +00:00
b27a3d99ac Remove "smaller" track height (basically just a broken version of small anyway).
Remove no-longer-necessary cruft related to non-editable track names (which do not exist).
Fix smallest height to be correctly padded (just large enough to hold the button row without ugly clipping).
Fix resizing of tracks when renaming (issue #4075).


git-svn-id: svn://localhost/ardour2/branches/3.0@9665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-02 00:06:35 +00:00
ed626628b5 Delete trailing whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@9656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 17:00:29 +00:00
c937a67f6e do not offer combine operation for MIDI (see comment in libs/ardour/midi_playlist_source.cc for an explanation)
git-svn-id: svn://localhost/ardour2/branches/3.0@9630 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-30 11:57:12 +00:00
d6be900da0 more combine/uncombine fixes including making uncombine push the compound region gain level into the constituents and doing the right thing when we uncombine in a playlist other than the one in which the compound region was created
git-svn-id: svn://localhost/ardour2/branches/3.0@9601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-26 17:22:22 +00:00
e984220eaa correct the logic used when building a compound region to include a whole-file (whole-source) region as a parent for the region list
git-svn-id: svn://localhost/ardour2/branches/3.0@9584 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-25 12:19:24 +00:00
e5dc4e4ea2 change region selection after a combine op
git-svn-id: svn://localhost/ardour2/branches/3.0@9580 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-25 00:40:32 +00:00
fab94b8495 rationalize and improve region naming conventions to cover compound regions
git-svn-id: svn://localhost/ardour2/branches/3.0@9569 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-22 21:28:25 +00:00
9c733915a0 basic uncombining (no post-facto region trimming)
git-svn-id: svn://localhost/ardour2/branches/3.0@9566 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-22 16:11:00 +00:00
Carl Hetherington
a581b356b1 A few capitalisation fixes.
git-svn-id: svn://localhost/ardour2/branches/3.0@9530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-16 22:22:57 +00:00
c8a27ebdbf track combine ops per-playlist to avoid name collisions for compound regions
git-svn-id: svn://localhost/ardour2/branches/3.0@9529 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-16 21:21:16 +00:00
99aa8c6338 rename join regions op as combine regions; save and restore nested playlists, sources, regions; add undo/redo for combine; fixup peakfile use/discovery
git-svn-id: svn://localhost/ardour2/branches/3.0@9528 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-16 20:16:57 +00:00
43798a7c25 sane naming scheme for combined regions; fix deadlock when nesting to more than one level
git-svn-id: svn://localhost/ardour2/branches/3.0@9519 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-16 13:06:55 +00:00
0a9cef7720 very basic Join (regions) editing operation. not finished yet, no undoable, no sensible name for new region, etc. etc
git-svn-id: svn://localhost/ardour2/branches/3.0@9518 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-16 02:17:58 +00:00
8fc47ac2ae make sure Edit property of RouteGroup is enabled when doing a few different playlist and other ops and applying them to the group
git-svn-id: svn://localhost/ardour2/branches/3.0@9509 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-13 20:57:13 +00:00
Carl Hetherington
378ea3430f Don't alter horizontal padding when shrinking tracks to their minimum height (part of #4014).
git-svn-id: svn://localhost/ardour2/branches/3.0@9472 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-04 12:26:32 +00:00
Carl Hetherington
f2160077c7 Fix non-appearing track names when opening sessions with minimum track height (part of #4014).
git-svn-id: svn://localhost/ardour2/branches/3.0@9465 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-03 18:40:23 +00:00
Carl Hetherington
d1f58cf5a4 Don't hide solo/mute/rec enable for the smallest track height, as there appears to be no need to (#4014).
git-svn-id: svn://localhost/ardour2/branches/3.0@9462 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-03 00:08:14 +00:00
fd380077bf move comment to a more appropriate location
git-svn-id: svn://localhost/ardour2/branches/3.0@9113 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-09 05:20:55 +00:00
8849cb4287 add new concept for managing alignment style (AlignChoice); switch to using worst_playback_latency() just about everywhere we were using worst_output_latency() - the former includes plugin latency. answer appears to break earlier fixes to alignment, but is semantically right, so plan to investigate in another 8 hours or so
git-svn-id: svn://localhost/ardour2/branches/3.0@9112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-09 05:19:44 +00:00
Carl Hetherington
eabe5b31f8 Hide/Remove to apply to the track selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9090 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 13:05:45 +00:00
Carl Hetherington
8f45604f27 Make Active apply to the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9089 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 13:04:46 +00:00
Carl Hetherington
92a5e4da48 Make stuff in the automation menu apply to the track selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 13:04:36 +00:00
Carl Hetherington
965a974083 Make the route group submenu of the RouteTimeAxisView menu apply to the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9087 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 13:04:03 +00:00
Carl Hetherington
1c5f395c01 Desensitize playlist menu with >1 selected tracks.
git-svn-id: svn://localhost/ardour2/branches/3.0@9001 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-01 15:05:47 +00:00
Carl Hetherington
02ca880e9f Make track mode menu apply to the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@9000 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-01 15:05:05 +00:00
Carl Hetherington
8f7db269cb Create ghost regions when automation tracks are added, as well as on session reload (#3801).
git-svn-id: svn://localhost/ardour2/branches/3.0@8973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-26 23:48:43 +00:00
Carl Hetherington
ea4db5c1dd Fix crash on opening route menu with busses in the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@8945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-24 00:05:28 +00:00
Carl Hetherington
17a2d70f1c Make alignment options work across the track selection. Also remove code to update the options now that the menu is rebuilt every time it is shown.
git-svn-id: svn://localhost/ardour2/branches/3.0@8941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 02:48:35 +00:00
Carl Hetherington
65e1710087 Make layer menu items apply to the selection.
git-svn-id: svn://localhost/ardour2/branches/3.0@8940 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 02:08:57 +00:00
Carl Hetherington
8b1203dc33 Set up layers menu correctly depending on current state.
git-svn-id: svn://localhost/ardour2/branches/3.0@8938 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 01:44:50 +00:00
Carl Hetherington
465aaffdd4 Desensitize Remote Control ID menu option if there are > 1 selected tracks.
git-svn-id: svn://localhost/ardour2/branches/3.0@8937 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 01:05:15 +00:00
Carl Hetherington
5da5a1c100 Remove duplicate Automation menu entry.
git-svn-id: svn://localhost/ardour2/branches/3.0@8936 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 01:04:58 +00:00
Carl Hetherington
f9e3a8b59f Make track context colour menu apply to all selected tracks.
git-svn-id: svn://localhost/ardour2/branches/3.0@8934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 01:03:51 +00:00
Carl Hetherington
1b8a919f57 Small clean up of route colour setting.
git-svn-id: svn://localhost/ardour2/branches/3.0@8933 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-23 01:03:37 +00:00
7268bdb132 more debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@8915 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-21 02:58:16 +00:00
Carl Hetherington
9ac5fdfefb Don't show Crossfade-related menu items on busses.
git-svn-id: svn://localhost/ardour2/branches/3.0@8913 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-21 00:16:36 +00:00
Carl Hetherington
5576faf943 Clean up some confusion with AutomationControls in AutomationTimeAxisViews that have regions.
git-svn-id: svn://localhost/ardour2/branches/3.0@8883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-17 16:18:27 +00:00
Carl Hetherington
738b2b85f5 Re-add height menu to tracks (#3761).
git-svn-id: svn://localhost/ardour2/branches/3.0@8872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-16 17:59:28 +00:00
Carl Hetherington
cdba0d7010 Update name_label as well as name_entry when the route name changes. Fixes #3675.
git-svn-id: svn://localhost/ardour2/branches/3.0@8460 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-06 01:36:28 +00:00
Carl Hetherington
11d2bfa26f Fix up midi ghost regions. Should fix #3629.
git-svn-id: svn://localhost/ardour2/branches/3.0@8388 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-30 18:35:16 +00:00
Carl Hetherington
73192bc1a7 Remove all use of nframes_t.
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03 22:26:29 +00:00
bb797943dd add configurable colors to stereo panner, plus keybindings for zero width (0), 1 (alt-up) or -1 (alt-down), plus M when its mono
git-svn-id: svn://localhost/ardour2/branches/3.0@8153 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-02 15:51:42 +00:00
Carl Hetherington
156f5e4a42 Only compute and render the visible portion of crossfades. Fixes #3498.
git-svn-id: svn://localhost/ardour2/branches/3.0@7901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-17 23:35:05 +00:00
Carl Hetherington
74cc8f6067 Fix multiple creation of identical automation tracks. Fixes #3482.
git-svn-id: svn://localhost/ardour2/branches/3.0@7848 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-27 18:56:26 +00:00
Carl Hetherington
8000b39c8c Create MIDI track gain automation tracks as non-region-based. Fix construction of MidiTimeAxisViews to use the same first_idle arrangement as AudioTimeAxisViews to prevent use of partially constructed objects.
git-svn-id: svn://localhost/ardour2/branches/3.0@7847 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-27 02:04:16 +00:00
ede4ecbb00 megaopus patch #2 for today: remove nframes64_t and sframes_t from source
git-svn-id: svn://localhost/ardour2/branches/3.0@7792 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17 18:20:37 +00:00
Carl Hetherington
c243a02c99 Fix crossfade undo using the stateful diff system. Fixes #3257.
git-svn-id: svn://localhost/ardour2/branches/3.0@7694 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-26 01:44:11 +00:00
Carl Hetherington
f30402d073 clear_history -> clear_changes and some comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@7685 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-25 17:32:08 +00:00
be85889464 fix load+save of plugin parameter automation
git-svn-id: svn://localhost/ardour2/branches/3.0@7678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-24 22:07:53 +00:00