Paul Davis
bb05ae05a8
remove unused _wave_color member from waveview canvas item; use outline color for edge dots of waveforms instead of hardcoding black
2014-01-26 16:02:38 -05:00
Paul Davis
3c5a870289
a better, more general fix for the previous Canvas::item_going_away() issue. There is no need to repick the current item if the item going away is NOT the current item
2014-01-20 10:59:44 -05:00
Paul Davis
2691209050
When removing an item which is event-insensitive, there is no need to repick the current item, since it can never have been used as the current item.
...
This fixes crashes associated with ghost notes in midi regions.
2014-01-20 10:53:58 -05:00
Paul Davis
620e1e6677
add event type string function to canvas (since it does not use gtkmm2ext)
2014-01-16 10:52:34 -05:00
Paul Davis
fbe94f4470
pixel-align canvas PolyItems with single-pixel outlines, for crispness
2014-01-13 09:39:50 -05:00
Paul Davis
5062a00c7d
move -fvisibility=hidden to the top of the source tree, and remove its internal use; use libtimecode as a shared lib again
2014-01-12 15:40:47 -05:00
Paul Davis
22c303d8f6
final (?) tweaks to rectangle rendering
2014-01-10 14:36:05 -05:00
Paul Davis
9df593d823
clamp expose (queue_redraw()) requests to visible window area, some extra debugging details
2014-01-10 14:35:36 -05:00
Paul Davis
02e6d14e23
make no-zero-line be the default for wave views (still shown for normal audio region views
2014-01-10 12:08:58 -05:00
Paul Davis
6d4c0baad3
fix up thinko in recent raise_to_top/lower_to_bottom optimization
2014-01-10 11:54:05 -05:00
Paul Davis
70c4a5e2d6
slightly expand CanvasRender debug output
2014-01-10 11:02:34 -05:00
Paul Davis
ffdf3ed017
don't go through ::deliver_enter_leave() unnecessarily
2014-01-10 11:02:05 -05:00
Paul Davis
5cd35de56b
prevent Rect::expand() from generating negative coordinates where there were none before
2014-01-08 18:20:19 -05:00
Paul Davis
cf293d0593
tweak rectangle bounding box computation
2014-01-08 10:42:14 -05:00
Paul Davis
35d3a4a351
remove unused code
2014-01-08 10:31:39 -05:00
Paul Davis
a70edc5765
change rounding used for convert Rect from canvas to window coordinates
2014-01-08 10:31:14 -05:00
Paul Davis
98dec658ee
Revert "remove unused code"
...
This reverts commit 2d283c17e1 .
2014-01-08 10:29:03 -05:00
Paul Davis
2d283c17e1
remove unused code
2014-01-08 10:28:46 -05:00
Paul Davis
8fa54cd1d9
shrink waveview zero line to single pixel
2014-01-07 22:51:18 -05:00
Paul Davis
c235d3da99
mostly fix conceptual error in how canvas rectangle frames are drawn
2014-01-07 20:56:36 -05:00
Paul Davis
5fec68e6c5
for now, hide ugly circle thing in drag handles
2014-01-07 20:56:03 -05:00
Paul Davis
d1652f8cc6
outline width of 0.5 is stupid and meaningless, and was just hiding other issues with outlines
2014-01-07 11:31:47 -05:00
Paul Davis
7914d45f27
add missing iterator increment to poly item renders.
2014-01-06 20:45:40 -05:00
Paul Davis
4b71d7fde5
small optimization to curve rendering
2014-01-06 20:45:40 -05:00
Paul Davis
7b24be86a2
make raise_to_top() and lower_to_bottom() no-ops if item is already in the right place
2014-01-02 16:49:42 -05:00
Paul Davis
7f83975e7d
add drag handle source to wscript
2014-01-02 16:49:11 -05:00
Paul Davis
edb932b819
basic, prototypical drag handle implementation
2014-01-02 16:48:44 -05:00
Paul Davis
8f876bb5ab
remove legacy CANVAS_COMPATIBILITY property_foo() stuff (related to gnomecanvas API) from libcanvas
2013-12-31 11:54:05 -05:00
Paul Davis
110c790d91
define signal associated with configurable clipping level to Canvas::WaveView
2013-12-30 15:54:09 -05:00
Paul Davis
7158eb7565
add configurable clipping level to Canvas::WaveView
2013-12-30 15:46:44 -05:00
Paul Davis
2d50adaf3a
ignore invisible items when picking the current item
...
Also left behind some commented debug out that probably deserves a new PBD::Debug bit.
2013-12-30 14:02:43 -05:00
Paul Davis
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
Paul Davis
a585816f3e
slight optimization of PolyItem::render_path()
2013-12-28 13:52:08 -05:00
Paul Davis
218a4664be
add visibility/export control to libcanvas
2013-12-27 16:24:58 -05:00
Paul Davis
84f55440a3
fix redrawing of canvas with an optimized build
...
Best guess right now is that optimization does something bad when ceil() is called twice on a very large dbl-precision number,
which results in a zero (empty) redraw area. Without the removal of the redundant ceil & floor functions, no expose events
would be delivered to the canvas in an optimized build during drags (and maybe more).
2013-12-23 15:35:49 -05:00
Paul Davis
9b6135b2e1
change enter/exit event delivery to follow X Window model (inferior, ancestor, virtual, nonlinear)
2013-12-12 20:44:04 -05:00
Paul Davis
88732abd01
change event propagation to be based on parent/child lineage, not z-axis stacking, plus some more alterations to try to get enter/leave working
2013-12-12 10:03:33 -05:00
Paul Davis
a631350f93
implement Curve::covers() in a very primitive way (also note: fails for actual spline curves)
2013-12-09 21:03:16 -05:00
Paul Davis
c4f0063a68
make PolyLine use distance_to_segment_squared(), and add separate (null, for now) method Curve::covers(Duple) because the math there needs to be different, maybe
2013-12-09 17:24:34 -05:00
Paul Davis
77a63c2bf7
ArdourCanvas::Line::covers() uses distance_to_segment_squared()
2013-12-09 13:39:10 -05:00
Paul Davis
4780c84252
debug trace tweaks
2013-12-09 13:38:22 -05:00
Paul Davis
75b25cd913
add a utility function to Canvas to compute distance from a point to a line segment
2013-12-09 13:35:07 -05:00
Paul Davis
6473cc7cb4
drop use of bounding box to determine whether an item covers a point; add Item::covers(Duple const&)
...
Default implementation for Item still uses bounding box, but specializations for Arc (Circle), Polygon, Line and PolyLine have been added
2013-11-04 11:56:10 -05:00
Paul Davis
08b485db75
send enter events to EVERY newly entered item (ignore the bool return from the event handler); other canvas debugging aids;switch items_at_point() to use canvas coordinates
2013-11-03 10:07:00 -05:00
Paul Davis
85daa31ab5
all events propagate out of the canvas in canvas coordinates now, so revert changes in editor_drags.cc that worked around this not being the case
2013-10-31 16:43:35 -04:00
Paul Davis
b46244d527
finally (?) fix up logic for rectangle drawing (fill+stroke) to tackle what is hopefully the last of the expose problems
2013-10-31 11:49:36 -04:00
Paul Davis
7ce86cec7d
handle enter/leave items when zooming and scrolling occur
2013-10-31 03:10:18 -04:00
Paul Davis
7bbd28aa08
notable changes to try to improve most of enter/leave handling for canvas items
2013-10-30 23:36:30 -04:00
Paul Davis
006ba7cd36
reduce verbiage and remove visible current_item red rect
2013-10-28 16:36:11 -04:00
Paul Davis
f6d33d2a87
fix comment
2013-10-28 16:35:48 -04:00