Age | Commit message (Collapse) | Author | |
---|---|---|---|
2015-02-12 | add accessor methods for single_exposure | Ben Loftis | |
2015-02-12 | _single_exposure is now a member variable for each GtkCanvas. | Ben Loftis | |
Gtk coalesces multiple exposes into a single combined rect. If _single_exposure is disabled, we break apart the individual expose rects for the canvas rendering. | |||
2015-02-11 | remove naive attempt to avoid drawing first vertical pixel line of ↵ | Paul Davis | |
Canvas::WaveView And add commented out attempt at more subtle attempt to get it right | |||
2015-02-11 | simplify Canvas::Rectangle rendering to avoid unnecessary nonsense, and ↵ | Paul Davis | |
remove TimeRectangle | |||
2015-02-11 | Canvas::Rect::contains() should treat its right/left coordinates as exclusive | Paul Davis | |
2015-02-10 | add a sort-of hack to allow us to avoid drawing the first pixel of a ↵ | Paul Davis | |
waveview when necessary | |||
2015-02-09 | correct drawing of rectangle borders. | Paul Davis | |
They need to use fractional coordinates, and the border position needed generalizing for other border widths. See verbose comment for details | |||
2015-02-09 | canvas items must be able to use fractional positions when rendering. | Paul Davis | |
This is required to be able to draw precise single pixel lines, as described in the Cairo FAQ | |||
2015-02-03 | tweak to help with uncoalesced renders | Ben Loftis | |
2015-02-03 | render canvas using the GDK region rather than the GDK area. | Paul Davis | |
The region is the un-coalesced set of rectangles that were requested for redraw. The area is the coalesced single rectangle. In the worst cases, the coalesced rectangle could span the entire window even though just two pixels in opposite corners were to be redrawn. There is a problem with the verbose cursor as it is dragged across MIDI tracks. TO BE FIXED. | |||
2015-01-24 | ScrollGroup::covers_{window,canvas}() need to account for possible non-zero ↵ | Paul Davis | |
position of the group. They also do NOT need to consider scroll offset | |||
2015-01-24 | ScrollGroups are kept in their own list, so ::window_to_canvas() does not ↵ | Paul Davis | |
need to inspect root group children to find them Conflicts: libs/canvas/canvas.cc | |||
2015-01-21 | apply Theme > “Show waveform clipping” | Robin Gareus | |
fixes http://tracker.ardour.org/view.php?id=5589#c15515 | |||
2015-01-19 | use C locale, because POSIX locale is not supported on windows, and ↵ | Ben Loftis | |
operation is undefined. C works on all platforms | |||
2015-01-16 | Revert "Kludgey fix for invisible playhead when scrolled." | David Robillard | |
This reverts commit 8f823388d9bd5aa8e297ab05be8c9fb323518945. | |||
2015-01-16 | Compute arrow bbox manually to appease crazy canvas. | David Robillard | |
2015-01-16 | Kludgey fix for invisible playhead when scrolled. | David Robillard | |
The problem this is avoiding makes absolutely no sense. Either I'm dumb, or something is more deeply wrong with scroll group bounding boxes, or both, but I don't care anymore. This works. Viva release mode. | |||
2015-01-16 | Put playhead on top of everything. | David Robillard | |
Achieve this by adding a new hscroll group just for cursors. That requires a slightly smarter window_to_canvas() to deal with overlapping sensitive scroll groups. New rule is that scroll groups can overlap, but the most sensitive one found from the top down will be chosen to translate coordinates. This basically means don't overlap scroll groups with different sensitivities. In the presence of scroll groups, having a canvas-wide window_to_canvas() and/or canvas_to_window() fundamentally makes no sense. At some point in the glorious future we should kill those and use only item-relative coordinate translation. | |||
2015-01-16 | Update arrow bbox when geometry changes. | David Robillard | |
2015-01-16 | Fix clipping for scroll groups an offset bbox. | David Robillard | |
2015-01-12 | Fix mouse event position offset bug. | David Robillard | |
Search scroll groups for event delivery from top to bottom rather than bottom to top. Overlapping scroll groups still aren't properly supported by the canvas, but currently all we care about is that the top one gets the event, so the hscroll group (tempo lines) can be below the hvscroll group (tracks), but the latter gets events. | |||
2015-01-09 | remove cruft (old unused pre-git version files) | Robin Gareus | |
2015-01-08 | Fix bounding box of rectangles with wide outlines. | David Robillard | |
2015-01-08 | Close polygon borders (fix partially drawn hits). | David Robillard | |
2014-12-31 | Fix alleged use of uninitialized variable. | David Robillard | |
Looks like a guaranteed else branch to me, but who am I to argue with gcc? | |||
2014-12-24 | Fix crash when getting width of item with no bbox. | David Robillard | |
2014-12-19 | add ArdourCanvas::change_alpha() | Paul Davis | |
Time to move away from rgba macros | |||
2014-12-18 | change Item::visible() to Item::self_visible(); add Item::visible() which ↵ | Paul Davis | |
returns accurate visibility Child items will be hidden when their ancestors are hidden. The old ::visible() implementation didn't reflect this. In addition, when changes are made to hidden items (new definition of visible/not visible), don't bother to request redraws, since this will be done when the item becomes visible again. | |||
2014-12-15 | add getters for SVAModifier | Paul Davis | |
2014-12-15 | fix typo | Paul Davis | |
2014-12-15 | more fixes to SVAModifier constructor(s) | Paul Davis | |
2014-12-14 | fix up SVAModifier constructors | Paul Davis | |
2014-12-14 | add SVAModifier to ArdourCanvas color code | Paul Davis | |
2014-12-08 | lots more color work, closer and closer to being ready for ... being taken ↵ | Paul Davis | |
apart again | |||
2014-12-07 | remove all explicit button text colors; use contrasting_text_color() instead. | Paul Davis | |
Also, use a slightly off-white rather than pure white, which should really be configurable | |||
2014-12-06 | Fix inappropriately massive flag font. | David Robillard | |
2014-12-05 | experimental drawing optimization. | Robin Gareus | |
Q: is bounding_box(); etc more complex than queuing draw? either way, canvas should eventually switch to use an optimized OptimizingLookupTable. | |||
2014-12-05 | include alpha-delta computation in HSV::delta() | Paul Davis | |
2014-12-02 | first pass at optimization for low-level canvas code | Paul Davis | |
2014-11-28 | Show discrete/toggled automation as stepped line. | David Robillard | |
2014-11-28 | Add some newly introduced source files to our MSVC project (cairocanvas) | John Emmas | |
2014-11-27 | Fix calculation using uninitialized value. | David Robillard | |
Implicit "this" is the devil. | |||
2014-11-26 | get correct ::distance() and ::delta() implementations for cases involving ↵ | Paul Davis | |
achromatics | |||
2014-11-26 | massive reworking of color selection implementation | Paul Davis | |
2014-11-25 | Remove dead code. | David Robillard | |
2014-11-18 | Avoid possible use of uninitialized values. | David Robillard | |
This could only happen with a broken widget, but it shuts up clang and doesn't hurt. | |||
2014-11-15 | Fix MIDI region keyboard editing (add key handling to canvas). | David Robillard | |
2014-11-13 | fix define | Robin Gareus | |
2014-11-10 | tweak canvas on_expose_event() handler to avoid unnecessary save/paint/restore | Paul Davis | |
2014-11-10 | further work on new color manipulation code | Paul Davis | |