13
0
Commit Graph

134 Commits

Author SHA1 Message Date
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