13
0
Commit Graph

217 Commits

Author SHA1 Message Date
df09d80bd3 EditorRoutes needs to respond to PropertyChanged(selected) 2016-06-10 13:57:19 -04:00
393d69c7a0 listen for gui_changed() signal from all Stripables, not just Routes 2016-06-08 11:03:13 -04:00
5fddbdd495 ensure that newly-added tracks are displayed in the editor 2016-06-06 14:44:58 -04:00
a0f0bdc063 try to keep editor+mixer treemodels in sync 2016-06-06 12:58:48 -04:00
20d85384c1 there is no remote model choice anymore - ordering is determined by the GUI 2016-06-06 12:04:49 -04:00
c0e5265b14 don't add routes+VCAs separately to editor routes during startup; merge into single list of Stripables 2016-06-05 16:33:02 -04:00
8342d4d9e6 remove unused sort object 2016-06-05 16:33:02 -04:00
23f29a89ce use PresentationInfo API to mark Stripable elements hidden (from editor) 2016-06-05 16:33:02 -04:00
b85911d252 update use of PresentationInfo/Stripable API 2016-06-05 16:33:01 -04:00
9d3aba30c4 Stripable signals moved to PresentationInfo 2016-06-05 16:33:01 -04:00
260058a4a9 move from PresentationInfo::global_order() to PresentationInfo::order, and fix up part of reordering behaviour
Dragging tracks/busses in the editor *below* VCAs still does not work
2016-06-03 15:15:39 -04:00
6baac7d46f various safety checks for the result of dynamic_cast-ing a TimeAxisView to RouteTimeAxisView
Now that we have VCATimeAxisView, this needed to be done, but it also potentially applied with automation
2016-06-02 08:42:58 -04:00
d30266dfc3 use new record safe control in GUI 2016-05-31 15:30:45 -04:00
482873760c initial implementation of VCA time axis views 2016-05-31 15:30:44 -04:00
f022784014 convert editor routes code to use Stripable 2016-05-31 15:30:44 -04:00
83052ad18c clean up debug output for OrderKeys 2016-05-31 15:30:42 -04:00
daab42f209 use Session::notify_presentation_info_changed() rather than emitting Stripable::PresentationInfoChange after editor-based reordering 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
5b5e64d860 remove Route::listening_via_monitor()
This is better tested with direct use of the solo_control and
Config->get_solo_controls_are_listen_controls()
2016-05-31 15:30:41 -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
36784ee94f use route automation control Changed() signals for solo/mute in GUI 2016-05-31 15:30:40 -04:00
8ce39c891b change sort ordering model in mixer and editor
This allows correct reordering of the mixer "track_model" even
when non-route elements are present.

This isn't really utilized in the Editor at present because we do
not show VCAs there at all, but it will become important in the
future when we represent VCA automation there
2016-05-31 15:30:39 -04:00
ac7df69b49 rec-safe GUI 2016-05-24 21:30:33 +02:00
6605b52c17 centralize rec-en sensitivity & prepare for rec-safe 2016-05-24 03:01:27 +02:00
6815dc7ead towards an Instrument Setup/Replace workflow 2016-05-19 16:29:39 +02:00
433f18049b skip updating editor-route display when closing the session 2016-05-03 14:27:48 +02:00
eedeb4949d add const_cast to avoid compiler warnings from apple gcc 2016-02-22 15:31:25 -05:00
9e5b7db89f first compiling, mostly working version of group controls changes 2016-01-22 11:58:31 -05:00
André Nusser
7a846b7e6d Make capitalization consistent and other minor spelling corrections. 2015-12-01 00:39:35 +01:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
André Nusser
71f6f982e3 Fixed spelling. 2015-09-30 14:43:02 -04:00
André Nusser
6fdd3f47ac Make all the context menu entries of the track list work. 2015-09-30 14:43:02 -04:00
1d42ed077e Use ARDOUR_UI_UTILS::set_tooltip rather than via ARDOUR_UI::set_tip
This removes the direct dependence on ARDOUR_UI/Gtk_UI for setting
tooltips. Removes inclusion of ardour_ui.h from 16 files.
2015-09-16 16:55:17 -04:00
0e85408c59 cleanup display suspend. 2015-04-30 19:19:31 +02:00
e3375c309a suspend editor redisplay during batch changes
(major speed-up when changing all meters)
2015-04-30 18:01:30 +02:00
0c468dc379 add more contexts for SLA. 2015-04-05 00:44:03 +02:00
6d531b82e0 add context to single-letter translatable 2015-04-05 00:17:53 +02:00
Valeriy Kamyshniy
5001a680fc [Summary] Sort the routes of session before creating time axises unconditionally. This will keep tracks sorted even in case a new session created from template.
Conflicts:
	gtk2_ardour/editor_routes.cc
2015-04-02 16:32:28 -04:00
11a702149e avoid possible shared remote control IDs in large (>317 track) session 2015-03-16 13:00:09 -05:00
nick_m
bf72a02f74 Fix incorrect track ordering when creating a session from a template
(supplied order keys are correct).
This really shouldn't be needed, but historically there have been races
between the treeview and the editor order keys.
Interesting to note that there have been no reported ordering bugs when
loading sessions.
2015-03-15 02:57:39 +11:00
nick_m
1a6bacb1f0 Don't mess with the track selection at all from the editor route list
when adding tracks (thinko in last commit).
2015-03-13 04:01:55 +11:00
nick_m
9ec393422f Add new routes to selection in the editor, rather than the editor
route list.
Fixes new tracks not being selected.
Also begin selection op history when adding routes.
2015-03-13 02:47:16 +11:00
cc7f9d7f46 fix up recent cherry-picks from waves' tracks 2015-02-13 17:08:25 -05:00
236f549caa insanely complex fixes for dragging to and from the drop zone.
This probably breaks some of ardour's functionality (e.g. layered mode), but seems to
be either just right or very close to it for tracks

Conflicts:
	gtk2_ardour/editor_routes.cc
2015-02-13 17:00:30 -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
99cfd00e86 remove unnecessary scoping 2014-12-26 13:04:48 -05:00
c6a3d6bc48 small round of compiler warning fixes 2014-10-23 03:43:04 +02:00
5462294629 remove debug message 2014-09-07 20:42:50 +02:00
27631e7c7f fix (auto-expand) typo in f23f379b3 2014-09-07 20:33:11 +02:00
4167e83972 NOOP, re-indent, remove trailing whitespace, sort includes 2014-09-07 20:23:50 +02:00
f23f379b37 don't loose a redraw.
This more or less obsoletes the DisplaySuspender.
While RAII is nice, the DisplaySuspender cannot be
used from outside gtk2_ardour eg Mute/Solo signals
notifications from libardour (which don't originate
from the GUI).

The DisplaySuspender is still useful, because it
explicitly disables re-display and forces a single
expose at the end.
2014-09-07 20:23:50 +02:00
78f0007d54 safe EditorRoutes::redisplay() 2014-09-06 22:01:39 +02:00
bcd2e8d5e6 idle update editor TreeView
dramatic speedup for solo & route toggle.
2014-09-06 13:10:47 +02:00
3a75fab244 speed up session load (display updates) 2014-09-06 12:52:29 +02:00
885f1c71ec Remove unused variables (fix warnings). 2014-08-31 17:54:16 -04: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
c52cb37bf2 suspend route redisplay for (rec-en, solo, mute and monitor) batch changes 2014-06-29 02:52:56 +02:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
5d6dc388f7 fix some confusion when redrawing editor/mixer track/strip displays after track/bus deletion
The code relied on the idea that the order-key resync that occurs after deletion would change the order keys and thus cause
a redisplay. But since both the editor and mixer can initiate an order-key resync, the other window's resync will actually
do nothing (the order keys will already be correct). This led to the incorrect placement of material in the tracks canvas,
because the first resync triggered a redisplay while the route still existed, and then the second resync didn't cause a
redisplay (repositioning) but the canvas elements representing the track went away.

Fixed by forcing a redisplay in both editor and mixer if a route deletion is believed to be triggering a row deletion
in their underlying data models.
2014-06-20 21:52:24 -04:00
95f81e2d24 add optional arg to Editor::ensure_time_axis_view_is_visible() to "force" "make it visible as the top track" behaviour 2014-03-24 19:46:45 -04:00
012504d35a selecting a track/bus in the editor list now selects it in the canvas, and also ensures that it is visible
Visibility is done with Editor::ensure_time_axis_view_is_visible(), and ctrl-click in the editor list
was also modified to use the same method.
2014-03-24 17:32:04 -04:00
ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
7ce86cec7d handle enter/leave items when zooming and scrolling occur 2013-10-31 03:10:18 -04:00
nick_m
be69bf15dd New routes are placed after highest selected route. 2013-10-24 01:27:13 +11:00
664e715a00 merge from master 2013-10-22 15:29:44 -04:00
nick_m
5b62e88fbf Unify editor / mixer ordering. 2013-10-21 00:19:43 +11:00
525cb6b4a7 some sort-of-deep fixes to get autoscroll/vertical scroll to work properly for cairocanvas 2013-07-10 19:10:06 -04:00
4e9108cd1e remove TimeAxisView::clip_to_viewport() and Editor::update_canvas_now() and Editor::flush_canvas() which should no longer be necessary with a sane canvas design 2013-04-12 18:01:44 -04:00
19bd641915 commit immediately post linking 2013-04-04 18:45:27 -04:00
aaea166135 initial commit of hand merging, plus getting "ancient" waf script to work correctly 2013-04-04 00:32:52 -04:00
851a392495 likely fix for #5426 (hide all tracks doesn't work and causes inconsistent state 2013-04-01 19:56:33 -04:00
076d919ac3 fix crash when pressing "s" with kbd focus in editor route list
git-svn-id: svn://localhost/ardour2/branches/3.0@14055 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-02-06 14:38:13 +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
89d1a2fdf5 dramatically speed up the addition of large numbers of busses + tracks. consists of a backend part (ignore JACK graph/latency callbacks while we're adding tracks) and a GUI side (avoid O(N^N) behaviour while adding each new time axis view)
git-svn-id: svn://localhost/ardour2/branches/3.0@13595 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-04 14:32:28 +00:00
f750aa3207 fix serious logic error in re-ordering treeviews after route order keys/RIDs change - fixes major memory corruption bug that overwrote random memory as soon as a track gets deleted and/or user-defined remote IDs are in use
git-svn-id: svn://localhost/ardour2/branches/3.0@13355 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-27 00:15:45 +00:00
4f77bf201e make more or less all LHS treeviews use the same style
git-svn-id: svn://localhost/ardour2/branches/3.0@13056 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-20 01:47:27 +00:00
e43d91949b more work on RID and editor/mixer order matching; when a track/bus is hidden in the GUI controlling RID, it gets a extremely large RID to prevent it showing up on a control surface (but ... for now ... is still visible in the other GUI, even if "sync order between mixer + editor" is enabled); change font in editor route list
git-svn-id: svn://localhost/ardour2/branches/3.0@13054 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-19 22:35:43 +00:00
7db500301d further efforts at cleaning up the design of the interaction/relationship between route sort order keys and remote control IDs
git-svn-id: svn://localhost/ardour2/branches/3.0@12962 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 22:27:37 +00:00
958c63bd18 minor cleanups from 12952
git-svn-id: svn://localhost/ardour2/branches/3.0@12956 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 14:32:26 +00:00
f46a7bc509 reorder #includes to avoid the usual Apple BS with un-namespaced typenames like Style
git-svn-id: svn://localhost/ardour2/branches/3.0@12954 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 02:11:26 +00:00
11415b49be first pass at the big rethink of managing sort order keys for editor and mixer. this appears to work, but remote control IDs are not yet correct (frequently off by one because of the presence of the master bus in the editor)
git-svn-id: svn://localhost/ardour2/branches/3.0@12953 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-27 22:57:06 +00:00
97d920593f drastic rethink of the relationship between remote control ID and route order keys. unless the user explicitly switches to UserOrdered, Route::_remote_control_id is an unallocated pointer, and Route::remote_control_id() simply returns a value based on the relevant order_key() value. Also, change the key used in the Route::order_keys std::map<> from a string to an enum, since there is no evidence that we are benefitting from the theoretical benefit of using a string. Generally tidy up allocation of order keys so that the master and monitor busses always get a "special" MixerSort key value, based on the MMC ID for master (already defined within Ardour), and all other tracks/busses start at zero. Syncing keys between editor and mixer will leave the MixerSort key for the master and monitor bus alone, reflecting the fact that we display these in their own distinct parts of the GUI and they are not orderable like other tracks or busses within the mixer window
git-svn-id: svn://localhost/ardour2/branches/3.0@12923 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:46:13 +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
2b7d17e904 reorder editor route list columns to put visible and active first (from joern)
git-svn-id: svn://localhost/ardour2/branches/3.0@11732 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-20 17:08:07 +00:00
c52c2b7368 forward-port some fixes from a2
git-svn-id: svn://localhost/ardour2/branches/3.0@11630 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-09 17:15:25 +00:00
b08d13706f remove additional "mid" color from ArdourButton; replace Active/Mid widget state with ExplicitActive/ImplicitActive; represent implicit-active state with colored border around ArdourButton; tune button colors; new rounded_foo() functions, some in use, some not in use right now
git-svn-id: svn://localhost/ardour2/branches/3.0@11466 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-07 17:43:55 +00:00
946dc070f8 add monitoring column to route group list; make click in blank area of route list and route group list cancel selection and/or name editing
git-svn-id: svn://localhost/ardour2/branches/3.0@10911 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-06 16:46:50 +00:00
5547744d85 consistent colors for selected treeview rows
git-svn-id: svn://localhost/ardour2/branches/3.0@10901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-05 17:20:15 +00:00
eab4929c31 add tooltips to the editor track/bus list
git-svn-id: svn://localhost/ardour2/branches/3.0@10859 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02 14:52:04 +00:00
Carl Hetherington
12e80812fd Remove solo buttons from the master route in the route list (#4486).
git-svn-id: svn://localhost/ardour2/branches/3.0@10667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-18 00:08:47 +00:00
Carl Hetherington
aef4f9fb07 Fix erroneous setup of order keys when tracks have children: order keys relate to the actual tracks only, and ignore child automation views. Should fix the root cause of #4481.
git-svn-id: svn://localhost/ardour2/branches/3.0@10664 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-17 23:44:16 +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
Carl Hetherington
ce6d99ccb5 Add active toggle to editor route list (#4236).
git-svn-id: svn://localhost/ardour2/branches/3.0@10098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-19 22:34:30 +00:00
Carl Hetherington
6ae03aa212 Maintain order keys even when routes are hidden, to prevent
git-svn-id: svn://localhost/ardour2/branches/3.0@9844 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-12 11:02:12 +00:00
1e7f4986ec use thorsten's new icons where relevant
git-svn-id: svn://localhost/ardour2/branches/3.0@9820 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-09 20:22:53 +00:00
b0ec4057ad fix behaviour of "Hide" in track context menu
git-svn-id: svn://localhost/ardour2/branches/3.0@9804 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07 18:58:02 +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
c03ea1fdb3 fixed width columns for LHS of editor route list
git-svn-id: svn://localhost/ardour2/branches/3.0@9782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-01 23:37:42 +00:00
39c75ebcd6 new editor track/bus list icons from thorwil
git-svn-id: svn://localhost/ardour2/branches/3.0@9781 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-01 21:05:58 +00:00