summaryrefslogtreecommitdiff
path: root/libs/canvas/poly_item.cc
AgeCommit message (Collapse)Author
2020-04-10Remove hardcoded 2^15 cairo-boundary, prefer window-areaRobin Gareus
2020-04-10NO-OP: whitespaceRobin Gareus
2020-04-10Remove unused functionRobin Gareus
Cairo::curve_to renders cubic Bézier splines, those are not generally useful in a DAW context. Canvas::Curve implements centripetal catmull-rom spline drawing which can be used for fades and automation interpolation.
2020-04-10Interpolate poly-line with view-point #6481Robin Gareus
2019-08-03Update canvas/UI lib GPL boilerplate and (C) from git logRobin Gareus
2017-01-19remove use of boost::optional to define "undefined" Canvas::Rect, and use ↵Paul Davis
Rect::empty instead. This commit includes Rect::operator bool() which might be a candidate for removal in a future commit, in an attempt to make the meaning clearer
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2014-06-27slightly increase size of a Canvas::PolyItem, to avoid left-over pixels when ↵Paul Davis
dragging (as well as other general incorrectness
2014-06-21refactor Canvas so that all Items have children; add Container abstract base ↵Paul Davis
class; rename Group as "Layout" and retain only drawing semantics
2014-06-12change Canvas heirarchy and constructorsPaul Davis
Items no longer need a parent group (they require a Canvas pointer instead), so all constructors have been rationalized and have two variants, one with a parent and one with a canvas. All Items now inherit from Fill and Outline, to banish diagonal inheritance and virtual base classes and all that. There were zero changes to the Ardour GUI arising from these changes.
2014-03-11don't queue redraws when various canvas item properties are "reset" to the ↵Paul Davis
same value, plus supporting functions
2014-03-10tiny red dots, be gone (expand poly_item bounding box by correct (?) amount)Paul Davis
2014-03-10missing iterator advancePaul Davis
2014-03-07slightly optimize bounding box computation for ArdourCanvas::PolyItem by ↵Paul Davis
avoiding inner conditional
2014-01-13pixel-align canvas PolyItems with single-pixel outlines, for crispnessPaul Davis
2014-01-06add missing iterator increment to poly item renders.Paul Davis
2014-01-06small optimization to curve renderingPaul Davis
2013-12-28slight optimization of PolyItem::render_path()Paul Davis
2013-12-09make PolyLine use distance_to_segment_squared(), and add separate (null, for ↵Paul Davis
now) method Curve::covers(Duple) because the math there needs to be different, maybe
2013-11-04drop use of bounding box to determine whether an item covers a point; add ↵Paul Davis
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-06-21fix incorrect coordinate space when drawing first poly-curve linePaul Davis
2013-06-18basically operational switch to canvas drawing coordinates, although text ↵Paul Davis
and waves don't work, and redraw areas are too small
2013-04-15add headers to all canvas .cc and .h filesPaul Davis
2013-04-15remove all xml++.h inclusion by canvas implementationsPaul Davis
2013-04-15remove all XML related API from canvas. it may have been useful during ↵Paul Davis
development, but it is just a distraction - we will NEVER be saving or restoring canvas state via XML or any kind of serialized state
2013-04-11add (bezier) curves to canvas, use for automation lines; fix issue with ↵Paul Davis
rectangles missing their upper line segment; more cairo canvas fixes
2013-04-08mo' better debugging of canvas "structure" via Item::dump and derivativesPaul Davis
2013-04-05lots of tweaking and adding debug output including operator<</dump(ostream&) ↵Paul Davis
methods to help visualize canvas structure
2013-04-04initial commit of hand merging, plus getting "ancient" waf script to work ↵Paul Davis
correctly