13
0
Commit Graph

156 Commits

Author SHA1 Message Date
471570705d move contrasting_text_color() into ArdourCanvas 2014-06-30 10:38:45 -04:00
6b835af842 make time axis view item name text be insensitive to events
We don't really need to be able to click on this to do anything - dbl-click on the item brings up the edit menu etc.
2014-06-27 09:37:57 -04:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
c44ebde5d6 reset time axis view item name text color when selected status changes 2014-06-23 10:29:30 -04:00
6a5d805b38 more canvas refactoring.
Remove Canvas::Layout, use Canvas::Container for the same purpose, move child-rendering into Item::render_children() so that it
could theoretically be used by any derived type.
2014-06-22 11:41:05 -04:00
0796ccfb65 use newly factored canvas in gtk2_ardour 2014-06-21 11:44:22 -04:00
276e8b48ce various fixes for places that used get_font_for_style() ... converted to use UIConfiguration::get_canvasvar_*Font() 2014-06-19 11:18:44 -04:00
50fea864db rationalize and coordinate handle of region (time axis view item) opacity.
There are still some bugs with this because of the waveview image cache - fixes coming soon.
2014-06-13 12:22:39 -04:00
a245250409 use the alpha/opacity value for the region base whether track colors are in use or not 2014-06-12 18:14:55 -04:00
551014240a drag handles no longer exist as distinct item types (failed experiment) 2014-06-12 14:51:51 -04:00
ce08ec0de0 substantial changes in color management, involving a reduction in the use of Gdk::Color and more consistent logic for region coloring.
Group tabs now also get the text drawn in an appropriately contrast-y color
2014-06-09 23:29:00 -04:00
nick_m
7a05dde39d Use a dumb cache for waveview ImageSurfaces. This halves the size of the
previous one, but usually ends up using three of them at the current
CACHE_HIGH_WATER setting.
Should result in a smaller memory footprint for sessions with
multiple copies of nearby audio segments (electronic style).
The downside is the larger memory footprint for linear recording
sessions if CACHE_HIGH_WATER > 1 (1 giving a max of two
half - sized cache entries per audio stream).
2014-06-08 01:47:38 +10:00
64701f3955 remove needlessly-added method 2014-06-05 15:22:26 -04:00
ad346dc638 reinstate a canvas group where we reparent regions while dragging, so that they are always on top.
I mistakenly removed this during the onecanvas changes.
2014-06-05 15:16:55 -04:00
05f476875b tweak logic for region coloring, particularly when muted 2014-06-05 14:12:58 -04:00
94b0d3bc25 remove unused label_color from TimeAxisViewItem 2014-06-05 12:04:42 -04:00
39eec5ac1b hopefully fix up selection of color for region name text, under all conditions 2014-06-05 12:04:42 -04:00
8accb22923 put back bottom line of region views if name highlight is not shown.
Also remove redundant line that replicated the one we modified.
2014-04-18 05:08:17 -04:00
78bab09e98 improve comment text 2014-04-16 07:35:20 -04:00
e324249d8c fix logic for Config->show_name_highlight (reversed from inital experiments) 2014-04-16 07:30:09 -04:00
981754781a use new config option to control name highlight and name placement 2014-04-16 06:35:24 -04:00
55bfe10fa6 make frame/trim handles transparent for now.
This is a new GUI feature that will not be completed for the 3.6 release, so just hide them.
2014-04-14 04:46:24 -04:00
c2885671c6 avoid multiple requests for redraws when resetting a TimeAxisViewItem name highlight 2014-03-11 07:37:20 -04:00
72965e411f improve (though not 100% perfect) handling of region trim handles and mouse mode interaction 2014-03-10 12:14:37 -04:00
1beed21c8a don't show frame trim handles when in internal editing mode 2014-03-07 12:27:48 -05:00
0c9120de8f do not show region trim handles unless in (effective) object mouse mode 2014-03-05 14:40:49 -05:00
ed05292898 fix height of time axis item view trim frame handles 2014-02-25 13:38:05 -05:00
0bcf3001f5 fiddle with single pixel adjustments to time axis view item heights; fix region gain envelope visibility 2014-02-25 12:02:50 -05:00
e9e08f59ce fix up details of time axis view item drawing.
* remove top and bottom edges - rely on track edges for that.
* move right edge of time axis view items 1 pixel right to get a much
   nicer effect when splitting regions. the end line and start line
   of two adjacent regions are now on the same pixel.
* adjust audio region view components to be properly placed.

still need to do ghost regions and MIDI regions
2014-02-13 18:18:19 -05:00
7970437975 tweak pixel-level dimensions and positioning 2014-01-10 11:56:55 -05:00
bec4be41d6 use new DragHandle canvas object 2014-01-02 16:50:00 -05:00
10c8b48235 tweak design of time axis view item name text handling 2014-01-02 14:29:07 -05:00
6085d8c15c remove debug output, try a new approach to name text placement 2014-01-02 13:44:57 -05:00
03bf8b826f debug output for time axis item name font handling 2014-01-02 10:02:28 -05:00
4886eb7098 try to rationalize logic for displaying/hiding regionview (time axis view item) name highlights and text 2013-12-29 23:10:54 -05:00
7bbd28aa08 notable changes to try to improve most of enter/leave handling for canvas items 2013-10-30 23:36:30 -04:00
b00751d0dc fix up ordering/timing of naming for TimeAxisViewItem (so that canvas debugging is more useful) 2013-10-25 13:30:01 -04:00
7a7e937d8e more waveform drawing/coloring changes
* move color-regions-using-track color into UI config, not RC config
   * consolidate all waveform coloring into AudioRegionView::set_one_waveform_color()
2013-06-28 11:31:26 -04:00
0e656f0a13 workaround/hack/fix for cairo pattern gradient space exceeding 2^16 size limit 2013-06-27 10:41:00 -04:00
24acef66be use W3C color difference computation to select black or white text for region name text 2013-06-26 17:40:10 -04:00
a1f858d3b2 an awful lot of tweaks to drawing details 2013-06-24 16:28:53 -04:00
bebe2af95a merge with master 2013-05-08 14:48:28 -04:00
7de31d5a41 use virtual bool canvas_group_event () in TimeAxisViewItems to get suitably delegatable/inherited event handling 2013-04-25 16:06:12 -04:00
737433c446 tweaks to improve enter/leave event handling - fixes at least some crashes caused by this stuff 2013-04-24 18:31:00 -04:00
6f664c1f67 many pervasive changes primarily related to waveform drawing, particular content-dragging, colors, and more 2013-04-24 15:42:14 -04:00
d1a05240ef fix clamping of line and rect coordinates to avoid issues with cairo when drawing way outside a surface's dimensions; move various coordinate methods down to Canvas, because they don't require GTK information; make visible_area() a Canvas virtual method so that we don't have to cast to call it 2013-04-17 10:53:17 -04: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
393ba98422 tweak time axis view item text positioning; allow ArdourCanvas::Text to have its width clamped, and use this as TAVI's get narrow so that text doesn't overflow 2013-04-15 14:45:22 -04:00
7e19053b88 Fix dragging objects on the canvas and remove redundant canvas groups
Delivery of fake motion events to the editor needed the event coordinates to be
in canvas space, as they are with "real" events. Editor and other objects had
many redundant groups from timbyr's work on gnomecanvas to scroll by moving
groups. We don't need this anymore with cairo-canvas (though possibly a
stationay background group for the canvas might be useful again one day as in
the SAE logo. Its implementation would be fairly different though, since we
would have to explicitly move the group on every scroll, since nothing else
ever moves on scroll).

Also tweaks to text item placement, and switch TimeAxisViewItem from
name_pixbuf to name_text, since ArdourCanvas::Text is already "pixbuf optimized".
2013-04-15 13:50:05 -04:00
b05968fb4e change frames_per_pixel to samples_per_pixel 2013-04-12 11:31:50 -04:00