Commit Graph

121 Commits

Author SHA1 Message Date
Robin Gareus c6a3d6bc48 small round of compiler warning fixes 2014-10-23 03:43:04 +02:00
Robin Gareus 5462294629 remove debug message 2014-09-07 20:42:50 +02:00
Robin Gareus 27631e7c7f fix (auto-expand) typo in f23f379b3 2014-09-07 20:33:11 +02:00
Robin Gareus 4167e83972 NOOP, re-indent, remove trailing whitespace, sort includes 2014-09-07 20:23:50 +02:00
Robin Gareus 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
Robin Gareus 78f0007d54 safe EditorRoutes::redisplay() 2014-09-06 22:01:39 +02:00
Robin Gareus bcd2e8d5e6 idle update editor TreeView
dramatic speedup for solo & route toggle.
2014-09-06 13:10:47 +02:00
Robin Gareus 3a75fab244 speed up session load (display updates) 2014-09-06 12:52:29 +02:00
David Robillard 885f1c71ec Remove unused variables (fix warnings). 2014-08-31 17:54:16 -04:00
Ben Loftis 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
Robin Gareus c52cb37bf2 suspend route redisplay for (rec-en, solo, mute and monitor) batch changes 2014-06-29 02:52:56 +02:00
Robin Gareus a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis ea1ccb869a fix merge with master 2013-10-31 13:16:51 -04:00
Paul Davis 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
Paul Davis 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
Paul Davis 525cb6b4a7 some sort-of-deep fixes to get autoscroll/vertical scroll to work properly for cairocanvas 2013-07-10 19:10:06 -04:00
Paul Davis 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
Paul Davis 19bd641915 commit immediately post linking 2013-04-04 18:45:27 -04:00
Paul Davis aaea166135 initial commit of hand merging, plus getting "ancient" waf script to work correctly 2013-04-04 00:32:52 -04:00
Paul Davis 851a392495 likely fix for #5426 (hide all tracks doesn't work and causes inconsistent state 2013-04-01 19:56:33 -04:00
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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
Paul Davis 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