13
0
Commit Graph

299 Commits

Author SHA1 Message Date
46c8369328 merge fix 2015-07-16 16:13:24 -05:00
81c7eff66b fix “Show waveform in regions” Preference. 2015-07-11 05:25:47 +02:00
9f0012aaaa various tweaks to the height/sizing of audioregion views and their waveforms 2015-06-19 08:15:25 -04:00
nick_m
aa1cdd26ca AudioRegionView now uses ControlList::editor_add(). 2015-06-19 05:02:06 +10:00
cc396baf0d Fix some visual loopholes when switching tools inside a region:
switching to Grab should show the fade handles...
...switching away from grab should hide them.
Also, change "always show gain" preference to show lines, but not control points.
2015-06-01 13:12:39 -05:00
cc7a368fb6 Rationalize some aspects of region-gain control-point visibility:
Visibility is driven by the currently selected mouse mode.
Visibility no longer depends on entering/exiting the region.
Range mode shows the lines but not the points.
Fixed option text to reflect new operation.
2015-05-26 16:41:03 -05:00
e0747bdb79 x-fade pixel hunt 2015-04-30 02:32:42 +02:00
90110c4308 allow to drag gain-envelope points 2015-03-08 20:18:50 +01:00
266ac60941 skip drawing the first pixel of waves in an audio region view.
This means that they do no overwrite the frame border of the time axis item
2015-02-10 19:48:47 -05:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
5fef655380 Remove internal edit mode and add "content" tool. 2014-12-18 20:21:01 -05:00
nick_m
9af9e17adc Add editor selection state to session history via a SelectionMemento, which
combines selection related editor properties with the current editor selection.

The related editor properties are:
mouse mode,
zoom setting,
left frame of the canvas,
y origin of the canvas.

Selection state now includes region views (storing the underlying region id)
and time.

This patch also fixes a region mute undo bug.
2014-12-18 11:03:10 -05:00
1fd681604e next modifier 2014-12-15 10:21:08 -05:00
666f33b463 next modifier 2014-12-15 10:02:20 -05:00
70e517380c add 22 modifiers to dark.colors and start using the first one (for crossfade alpha) 2014-12-15 09:05:25 -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
c98366c7c8 fixed merge conflict 2014-12-14 09:36:01 -05:00
603748d68a Unify gain and draw tools.
There might be a few special cases lingering around from attempts at magic tool
business, but this seems to work fine as far as I can tell.
2014-12-07 20:37:46 -05:00
ea5876b836 Remove dead code. 2014-11-25 02:11:44 -05:00
4260d0ca0e use new canvas colors header as necessary 2014-11-07 14:24:27 -05:00
1e8645bb8e remove TimeAxisViewItem::RIGHT_EDGE_SHIFT; fix up x-coordinate for right edge of an audio fade out 2014-11-07 12:58:56 -05:00
7baa3275e0 one off by one off - red-selection outline
This mitigates issues introduced with 3.5-3406-g90872c2
but is not a final solution. The x-axis is still broken.
see #5589 comment0015955
2014-11-01 21:05:43 +01:00
ba4d1cd1c1 remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config() 2014-10-21 22:58:58 -04:00
d80e55e828 don't clamp wave-fill alpha value when using region color 2014-09-13 01:48:11 +02:00
70358639de Revert "cont'd work on automation-track headers (amend ba53af1c5)"
This reverts commit beb5e3e777.
2014-09-04 16:14:01 +02:00
beb5e3e777 cont'd work on automation-track headers (amend ba53af1c5)
now that the separator line is at the top,
offset region-contents y0 by 1px.
2014-09-03 20:48:20 +02:00
1873bcfa9d More fixes for range-based automation editing.
-Remove redundant start_grab calls.
-Show gain curves in Range mode, so you can see the curves you are selecting
2014-08-06 14:43:40 -05:00
eaa17c3951 xfade rects should only pop-up in Object mode, when they are focusable 2014-07-07 15:34:20 -05:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02: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
237741d187 ensure that all waveviews have ALL their colors set accurately before first render
Avoids occasional bright red zero line drawn because the color(s) had not been reset correctly
2014-06-19 15:06:48 -04:00
becf857f48 a whole slew of changes related to centralizing and rationalizing cursor management.
Debugging output left in place to help address the reports that will come in as people test this more
2014-06-18 10:24:59 -04:00
96fbdd4bee remove instances of RGBA_TO_UINT() macro from audio_region_view.cc 2014-06-09 23:39:07 -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
e495577f98 Use global clip level from prefs. Restore clip colour, \ 2014-06-09 02:50:14 +10:00
ac33bb4256 streamline logic for setting waveform colors 2014-06-05 14:12:58 -04:00
05f476875b tweak logic for region coloring, particularly when muted 2014-06-05 14:12:58 -04:00
39eec5ac1b hopefully fix up selection of color for region name text, under all conditions 2014-06-05 12:04:42 -04:00
5696199daf remove timebar canvas and just use a single canvas instead. This is just part one - lots of minor fixes to be done 2014-06-03 16:10:27 -04:00
fc9e6651dd remove unused variable 2014-06-03 16:09:06 -04:00
6894b1c7de initialize variables 2014-05-31 15:18:43 +02:00
12d4989067 show fade+trim handles only if the operation is possible 2014-05-31 15:15:46 +02:00
ef3c27bc1d session fade-region-visible is for fades - not controls 2014-05-31 14:16:15 +02:00
f0536816ab reduce outline of fade-in/active rectangle to line 2014-05-31 14:00:28 +02:00
1c32e45771 show x-fade-rectangle only when hovering 2014-05-31 14:00:04 +02:00
9decd39de9 reset [trim] fade handle position if track-height changes 2014-05-31 04:17:47 +02:00
4843c5d5cf towards region-trims preserving fade duration 2014-05-31 03:53:59 +02:00
7e44308471 replace use of Curve with XFadeCurve. 2014-05-29 03:10:22 +02:00
034f3dafd7 Revert "cairo sub-surface prototype & example
This reverts commit c57fcde78c.
and also     commit f1f8f89fcb.
2014-05-28 19:13:25 +02:00
f1f8f89fcb exercise subsurface rendering for x-fade curves 2014-05-28 17:38:42 +02:00
4cf93fffc2 x-fade drawing rework, part one 2014-05-27 16:37:01 +02:00
cadf07e362 global one-time setup of waveform preferences.
see note in previous commit.
2014-05-27 16:37:01 +02:00
a8f11b6004 persistent waveform shape setting.
NOTE: the call to set_global_shape() only needs to happen once,
presumably in a hook in the editor that catches Config::Changed

The same is true for waveform-scale and clipping. But for now it's
at least consistent.
2014-05-27 16:37:01 +02:00
3131ab8bbd new transport option, "loop-is-mode" which optionally changes the role of the "play loop" button.
If enabled, then the button simply changes the behaviour of the "play" button rather than actually starting playback. If disabled
transport behaviour should be unchanged from before.
2014-04-17 09:47:06 -04:00
344f326919 use Canvas::Curve for drawing xfades
Pixel-by-pixel we shall rule the earth.
2014-02-26 18:52:14 -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
156a5a0e5f add the with-guard-point distinction to region gain lines 2014-02-20 14:01:40 -05:00
d93050661c reinstate zero line in waveforms (can be hidden by changing the color to something with alpha=0 2014-02-14 14:03:07 -05:00
7e34ce96c6 fix up placement of fade out handle 2014-02-14 10:21:51 -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
2c79f74e49 correctly (?) indicate muted status of audio regions 2014-01-26 16:03:04 -05: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
395c3d35d1 tweak up pixel-level positioning 2014-01-10 11:54:32 -05:00
33cf341381 avoid 1 pixel overlap of end xfade 2014-01-07 22:51:41 -05:00
c22459d1b5 fix a whole set of errors in the placement of xfade visual elements (not 100% finished) 2014-01-07 20:55:04 -05:00
68af0fdc07 fix up visibility control for automation lines 2013-12-31 13:28:20 -05:00
e7059e5a16 remove use of canvas property_foo() since it did nothing (and has now been removed) 2013-12-31 11:54:38 -05:00
28759617c4 Revert "switch fade in/out lines to ArdourCanvas::Curve rather than ArdourCanvas::PolyLine, though for no apparent benefit"
This reverts commit e169f5c17f.
2013-12-27 11:24:56 -05:00
9fb3247350 rationalize color handling for fade in/out handles 2013-12-09 22:04:13 -05:00
e169f5c17f switch fade in/out lines to ArdourCanvas::Curve rather than ArdourCanvas::PolyLine, though for no apparent benefit 2013-12-09 21:02:42 -05:00
ba26316857 make region fade in/out curve shapes into PolyLines not Polygons so that they don't close the stroke path at the top/bottom 2013-10-31 15:39:29 -04:00
ff560fa361 remove debug output 2013-10-31 11:48:36 -04:00
7bbd28aa08 notable changes to try to improve most of enter/leave handling for canvas items 2013-10-30 23:36:30 -04:00
d7a16f7de6 'gtk2_ardour' - Use 'std::vector' to implement an array whose size is unknown (required to be buildable with MSVC) 2013-10-03 09:12:02 +01:00
af3056769c changes to waveform clipping display
* clip level is now -0.9dbFS
   * display of clipping is optional (see Theme Manager window)
   * clipping is based on disk data, unscaled by region gain
2013-06-28 20:21:30 -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
a1f858d3b2 an awful lot of tweaks to drawing details 2013-06-24 16:28:53 -04:00
1c74a3ab2d waveform drawing improvements
* handle logscaled and rectified
    * put dark tips in right places
    * improve color selection algorithm
2013-06-21 13:17:37 -04:00
594a8c1221 set waveform color to a V-reduced version of the frame fill color. 2013-06-20 23:11:40 -04:00
a0c5de281a fix crash when recording, because the audioregion view has no frame handles 2013-06-18 08:22:25 -04:00
e2f0c5f91e merge resolution with master 2013-05-02 20:21:54 -04:00
3973ce81b3 remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works 2013-05-02 18:13:35 -04:00
47f9d7fa12 do not lower waveforms to the bottom of their group - they are supposed to be above the time axis view item frame, not below it 2013-04-27 09:23:08 -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
9fdf60b637 change widths of fade lines 2013-04-20 16:11:40 -04:00
41abef90d0 fix up "other" fade line colors in xfades, and switch to using canvas var "CrossfadeLine" for crossfade "lines" rather than "GainLine" 2013-04-18 21:30:12 -04:00
55d7e8da19 reset xfade colors after theme change 2013-04-18 14:21:53 -04:00
19b6b45a2a get xfade drawing back to pre-cc days 2013-04-18 11:18:18 -04:00
ec8d521e98 semi-fix xfade display, and reduce number of calls to Curve::get_vector() by a factor of two 2013-04-18 09:56:01 -04:00
ec102f94e1 various work waveview amplitude mgmt; fix playhead cursor drag from timebar click 2013-04-17 15:22:09 -04:00
b9c94f6dbf remove all calls to Outline::set_outline_width (1) because this is "wrong" when using Cairo - the default is 0.5 and it can remain that way 2013-04-17 10:56:04 -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
a0044e5f71 add back various functionality to waveviews such as zero line, amplitude scaling 2013-04-16 10:07:52 -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
4258a34912 change all frame_to_pixel and pixel_to_frame to sample_to_pixel and pixel_to_sample 2013-04-12 11:15:45 -04:00
7caf517b27 add (bezier) curves to canvas, use for automation lines; fix issue with rectangles missing their upper line segment; more cairo canvas fixes 2013-04-11 22:54:12 -04:00
19bd641915 commit immediately post linking 2013-04-04 18:45:27 -04:00