canvas: when an item has its bbox marked dirty, this should propagate to all parents
This commit is contained in:
parent
d54d63da3a
commit
c75ceb31ab
@ -102,7 +102,7 @@ Arc::set_center (Duple const & c)
|
|||||||
|
|
||||||
_center = c;
|
_center = c;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -113,7 +113,7 @@ Arc::set_radius (Coord r)
|
|||||||
|
|
||||||
_radius = r;
|
_radius = r;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -124,7 +124,7 @@ Arc::set_arc (double deg)
|
|||||||
|
|
||||||
_arc_degrees = deg;
|
_arc_degrees = deg;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -136,7 +136,7 @@ Arc::set_start (double deg)
|
|||||||
|
|
||||||
_start_degrees = deg;
|
_start_degrees = deg;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -166,5 +166,5 @@ Arc::_size_allocate (Rect const & r)
|
|||||||
_radius = min (r.width(),r.height()) / 2.0;
|
_radius = min (r.width(),r.height()) / 2.0;
|
||||||
_center = Duple ((r.width()/2.), (r.height() /2.));
|
_center = Duple ((r.width()/2.), (r.height() /2.));
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
@ -101,7 +101,7 @@ Arrow::set_show_head (int which, bool show)
|
|||||||
setup_polygon (which);
|
setup_polygon (which);
|
||||||
}
|
}
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,7 +121,7 @@ Arrow::set_head_outward (int which, bool outward)
|
|||||||
_heads[which].outward = outward;
|
_heads[which].outward = outward;
|
||||||
|
|
||||||
setup_polygon (which);
|
setup_polygon (which);
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ Arrow::set_head_height (int which, Distance height)
|
|||||||
_heads[which].height = height;
|
_heads[which].height = height;
|
||||||
|
|
||||||
setup_polygon (which);
|
setup_polygon (which);
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -157,7 +157,7 @@ Arrow::set_head_width (int which, Distance width)
|
|||||||
_heads[which].width = width;
|
_heads[which].width = width;
|
||||||
|
|
||||||
setup_polygon (which);
|
setup_polygon (which);
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -174,7 +174,7 @@ Arrow::set_outline_width (Distance width)
|
|||||||
if (_heads[1].polygon) {
|
if (_heads[1].polygon) {
|
||||||
_heads[1].polygon->set_outline_width (width);
|
_heads[1].polygon->set_outline_width (width);
|
||||||
}
|
}
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Set the x position of our line.
|
/** Set the x position of our line.
|
||||||
@ -190,7 +190,7 @@ Arrow::set_x (Coord x)
|
|||||||
_heads[i].polygon->set_x_position (x - _heads[i].width / 2);
|
_heads[i].polygon->set_x_position (x - _heads[i].width / 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Set the y position of end 0 of our line.
|
/** Set the y position of end 0 of our line.
|
||||||
@ -203,7 +203,7 @@ Arrow::set_y0 (Coord y0)
|
|||||||
if (_heads[0].polygon) {
|
if (_heads[0].polygon) {
|
||||||
_heads[0].polygon->set_y_position (y0);
|
_heads[0].polygon->set_y_position (y0);
|
||||||
}
|
}
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Set the y position of end 1 of our line.
|
/** Set the y position of end 1 of our line.
|
||||||
@ -216,7 +216,7 @@ Arrow::set_y1 (Coord y1)
|
|||||||
if (_heads[1].polygon) {
|
if (_heads[1].polygon) {
|
||||||
_heads[1].polygon->set_y_position (y1 - _heads[1].height);
|
_heads[1].polygon->set_y_position (y1 - _heads[1].height);
|
||||||
}
|
}
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @return x position of our line in pixels (in our coordinate system) */
|
/** @return x position of our line in pixels (in our coordinate system) */
|
||||||
|
@ -333,11 +333,11 @@ public:
|
|||||||
|
|
||||||
/** our bounding box; may be out of date if _bounding_box_dirty is true */
|
/** our bounding box; may be out of date if _bounding_box_dirty is true */
|
||||||
mutable Rect _bounding_box;
|
mutable Rect _bounding_box;
|
||||||
/** true if _bounding_box might be out of date, false if its definitely not */
|
|
||||||
mutable bool _bounding_box_dirty;
|
|
||||||
PackOptions _pack_options;
|
PackOptions _pack_options;
|
||||||
|
|
||||||
void bb_clean () const;
|
void bb_clean () const;
|
||||||
|
void set_bbox_dirty () const;
|
||||||
|
bool bbox_dirty() const { return _bounding_box_dirty; }
|
||||||
|
|
||||||
Rect _allocation;
|
Rect _allocation;
|
||||||
bool _layout_sensitive;
|
bool _layout_sensitive;
|
||||||
@ -373,7 +373,9 @@ private:
|
|||||||
std::string _tooltip;
|
std::string _tooltip;
|
||||||
bool _ignore_events;
|
bool _ignore_events;
|
||||||
bool _scroll_translation;
|
bool _scroll_translation;
|
||||||
|
/** true if _bounding_box might be out of date, false if its definitely not */
|
||||||
|
mutable bool _bounding_box_dirty;
|
||||||
|
|
||||||
void find_scroll_parent ();
|
void find_scroll_parent ();
|
||||||
void propagate_show_hide ();
|
void propagate_show_hide ();
|
||||||
};
|
};
|
||||||
|
@ -161,7 +161,7 @@ Grid::set_margin (double t, double r, double b, double l)
|
|||||||
void
|
void
|
||||||
Grid::reset_bg ()
|
Grid::reset_bg ()
|
||||||
{
|
{
|
||||||
if (_bounding_box_dirty) {
|
if (bbox_dirty()) {
|
||||||
(void) bounding_box ();
|
(void) bounding_box ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -331,7 +331,7 @@ Grid::reposition_children ()
|
|||||||
(*i)->set_position (Duple (col_dimens[c->second.x], row_dimens[c->second.y]));
|
(*i)->set_position (Duple (col_dimens[c->second.x], row_dimens[c->second.y]));
|
||||||
}
|
}
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
reset_bg ();
|
reset_bg ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
#include "canvas/canvas.h"
|
#include "canvas/canvas.h"
|
||||||
#include "canvas/debug.h"
|
#include "canvas/debug.h"
|
||||||
#include "canvas/item.h"
|
#include "canvas/item.h"
|
||||||
|
#include "canvas/root_group.h"
|
||||||
#include "canvas/scroll_group.h"
|
#include "canvas/scroll_group.h"
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
@ -41,7 +42,6 @@ Item::Item (Canvas* canvas)
|
|||||||
, _parent (0)
|
, _parent (0)
|
||||||
, _scroll_parent (0)
|
, _scroll_parent (0)
|
||||||
, _visible (true)
|
, _visible (true)
|
||||||
, _bounding_box_dirty (true)
|
|
||||||
, _pack_options (PackOptions (0))
|
, _pack_options (PackOptions (0))
|
||||||
, _layout_sensitive (false)
|
, _layout_sensitive (false)
|
||||||
, _lut (0)
|
, _lut (0)
|
||||||
@ -50,6 +50,7 @@ Item::Item (Canvas* canvas)
|
|||||||
, _requested_height (-1)
|
, _requested_height (-1)
|
||||||
, _ignore_events (false)
|
, _ignore_events (false)
|
||||||
, _scroll_translation (true)
|
, _scroll_translation (true)
|
||||||
|
, _bounding_box_dirty (true)
|
||||||
{
|
{
|
||||||
DEBUG_TRACE (DEBUG::CanvasItems, string_compose ("new canvas item %1\n", this));
|
DEBUG_TRACE (DEBUG::CanvasItems, string_compose ("new canvas item %1\n", this));
|
||||||
}
|
}
|
||||||
@ -61,7 +62,6 @@ Item::Item (Item* parent)
|
|||||||
, _parent (parent)
|
, _parent (parent)
|
||||||
, _scroll_parent (0)
|
, _scroll_parent (0)
|
||||||
, _visible (true)
|
, _visible (true)
|
||||||
, _bounding_box_dirty (true)
|
|
||||||
, _pack_options (PackOptions (0))
|
, _pack_options (PackOptions (0))
|
||||||
, _layout_sensitive (false)
|
, _layout_sensitive (false)
|
||||||
, _lut (0)
|
, _lut (0)
|
||||||
@ -70,6 +70,7 @@ Item::Item (Item* parent)
|
|||||||
, _requested_height (-1)
|
, _requested_height (-1)
|
||||||
, _ignore_events (false)
|
, _ignore_events (false)
|
||||||
, _scroll_translation (true)
|
, _scroll_translation (true)
|
||||||
|
, _bounding_box_dirty (true)
|
||||||
{
|
{
|
||||||
DEBUG_TRACE (DEBUG::CanvasItems, string_compose ("new canvas item %1\n", this));
|
DEBUG_TRACE (DEBUG::CanvasItems, string_compose ("new canvas item %1\n", this));
|
||||||
|
|
||||||
@ -88,7 +89,6 @@ Item::Item (Item* parent, Duple const& p)
|
|||||||
, _scroll_parent (0)
|
, _scroll_parent (0)
|
||||||
, _position (p)
|
, _position (p)
|
||||||
, _visible (true)
|
, _visible (true)
|
||||||
, _bounding_box_dirty (true)
|
|
||||||
, _pack_options (PackOptions (0))
|
, _pack_options (PackOptions (0))
|
||||||
, _layout_sensitive (false)
|
, _layout_sensitive (false)
|
||||||
, _requested_width (-1.)
|
, _requested_width (-1.)
|
||||||
@ -97,6 +97,7 @@ Item::Item (Item* parent, Duple const& p)
|
|||||||
, _resize_queued (false)
|
, _resize_queued (false)
|
||||||
, _ignore_events (false)
|
, _ignore_events (false)
|
||||||
, _scroll_translation (true)
|
, _scroll_translation (true)
|
||||||
|
, _bounding_box_dirty (true)
|
||||||
{
|
{
|
||||||
DEBUG_TRACE (DEBUG::CanvasItems, string_compose ("new canvas item %1\n", this));
|
DEBUG_TRACE (DEBUG::CanvasItems, string_compose ("new canvas item %1\n", this));
|
||||||
|
|
||||||
@ -607,7 +608,7 @@ Item::size_allocate (Rect const & r)
|
|||||||
{
|
{
|
||||||
begin_change ();
|
begin_change ();
|
||||||
_size_allocate (r);
|
_size_allocate (r);
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -661,7 +662,7 @@ Item::set_size_request (double w, double h)
|
|||||||
begin_change ();
|
begin_change ();
|
||||||
_requested_width = w;
|
_requested_width = w;
|
||||||
_requested_height = h;
|
_requested_height = h;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -709,7 +710,7 @@ Item::set_size_request_to_display_given_text (const std::vector<std::string>& st
|
|||||||
ArdourCanvas::Rect
|
ArdourCanvas::Rect
|
||||||
Item::bounding_box () const
|
Item::bounding_box () const
|
||||||
{
|
{
|
||||||
if (_bounding_box_dirty) {
|
if (bbox_dirty()) {
|
||||||
compute_bounding_box ();
|
compute_bounding_box ();
|
||||||
assert (!_bounding_box_dirty);
|
assert (!_bounding_box_dirty);
|
||||||
add_child_bounding_boxes ();
|
add_child_bounding_boxes ();
|
||||||
@ -848,7 +849,7 @@ Item::covers (Duple const & point) const
|
|||||||
{
|
{
|
||||||
Duple p = window_to_item (point);
|
Duple p = window_to_item (point);
|
||||||
|
|
||||||
if (_bounding_box_dirty) {
|
if (bbox_dirty()) {
|
||||||
(void) bounding_box ();
|
(void) bounding_box ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1055,7 +1056,7 @@ Item::add (Item* i)
|
|||||||
_items.push_back (i);
|
_items.push_back (i);
|
||||||
i->reparent (this, true);
|
i->reparent (this, true);
|
||||||
invalidate_lut ();
|
invalidate_lut ();
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -1066,7 +1067,7 @@ Item::add_front (Item* i)
|
|||||||
_items.push_front (i);
|
_items.push_front (i);
|
||||||
i->reparent (this, true);
|
i->reparent (this, true);
|
||||||
invalidate_lut ();
|
invalidate_lut ();
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -1093,7 +1094,7 @@ Item::remove (Item* i)
|
|||||||
i->set_layout_sensitive (false);
|
i->set_layout_sensitive (false);
|
||||||
_items.remove (i);
|
_items.remove (i);
|
||||||
invalidate_lut ();
|
invalidate_lut ();
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
|
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
@ -1106,8 +1107,7 @@ Item::clear (bool with_delete)
|
|||||||
clear_items (with_delete);
|
clear_items (with_delete);
|
||||||
|
|
||||||
invalidate_lut ();
|
invalidate_lut ();
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
|
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1207,7 +1207,7 @@ Item::child_changed (bool bbox_changed)
|
|||||||
invalidate_lut ();
|
invalidate_lut ();
|
||||||
|
|
||||||
if (bbox_changed) {
|
if (bbox_changed) {
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_parent) {
|
if (_parent) {
|
||||||
@ -1339,6 +1339,17 @@ Item::bb_clean () const
|
|||||||
_bounding_box_dirty = false;
|
_bounding_box_dirty = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Item::set_bbox_dirty () const
|
||||||
|
{
|
||||||
|
_bounding_box_dirty = true;
|
||||||
|
Item* i = _parent;
|
||||||
|
while (i) {
|
||||||
|
i->set_bbox_dirty ();
|
||||||
|
i = i->parent ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
Item::set_pack_options (PackOptions po)
|
Item::set_pack_options (PackOptions po)
|
||||||
{
|
{
|
||||||
|
@ -86,7 +86,7 @@ Line::set (Duple a, Duple b)
|
|||||||
_points[0] = a;
|
_points[0] = a;
|
||||||
_points[1] = b;
|
_points[1] = b;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -100,7 +100,7 @@ Line::set_x (Coord x0, Coord x1)
|
|||||||
_points[0].x = x0;
|
_points[0].x = x0;
|
||||||
_points[1].x = x1;
|
_points[1].x = x1;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -113,7 +113,7 @@ Line::set_x0 (Coord x0)
|
|||||||
|
|
||||||
_points[0].x = x0;
|
_points[0].x = x0;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -126,7 +126,7 @@ Line::set_y0 (Coord y0)
|
|||||||
|
|
||||||
_points[0].y = y0;
|
_points[0].y = y0;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -141,7 +141,7 @@ Line::set_x1 (Coord x1)
|
|||||||
|
|
||||||
_points[1].x = x1;
|
_points[1].x = x1;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -154,7 +154,7 @@ Line::set_y1 (Coord y1)
|
|||||||
|
|
||||||
_points[1].y = y1;
|
_points[1].y = y1;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ LineSet::set_extent (Distance e)
|
|||||||
begin_change ();
|
begin_change ();
|
||||||
|
|
||||||
_extent = e;
|
_extent = e;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
|
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
@ -138,7 +138,7 @@ LineSet::add_coord (Coord y, Distance width, Gtkmm2ext::Color color)
|
|||||||
_lines.push_back (Line (y, width, color));
|
_lines.push_back (Line (y, width, color));
|
||||||
sort (_lines.begin(), _lines.end(), LineSorter());
|
sort (_lines.begin(), _lines.end(), LineSorter());
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -147,7 +147,7 @@ LineSet::clear ()
|
|||||||
{
|
{
|
||||||
begin_change ();
|
begin_change ();
|
||||||
_lines.clear ();
|
_lines.clear ();
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ Outline::set_outline_width (Distance width)
|
|||||||
if (width != _outline_width) {
|
if (width != _outline_width) {
|
||||||
_self.begin_change ();
|
_self.begin_change ();
|
||||||
_outline_width = width;
|
_outline_width = width;
|
||||||
_self._bounding_box_dirty = true;
|
_self.set_bbox_dirty ();
|
||||||
_self.end_change ();
|
_self.end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -64,7 +64,7 @@ Outline::set_outline (bool outline)
|
|||||||
if (outline != _outline) {
|
if (outline != _outline) {
|
||||||
_self.begin_change ();
|
_self.begin_change ();
|
||||||
_outline = outline;
|
_outline = outline;
|
||||||
_self._bounding_box_dirty = true;
|
_self.set_bbox_dirty ();
|
||||||
_self.end_change ();
|
_self.end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ Pixbuf::set (Glib::RefPtr<Gdk::Pixbuf> pixbuf)
|
|||||||
begin_change ();
|
begin_change ();
|
||||||
|
|
||||||
_pixbuf = pixbuf;
|
_pixbuf = pixbuf;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
|
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
@ -135,7 +135,7 @@ PolyItem::set (Points const& points)
|
|||||||
|
|
||||||
_points = points;
|
_points = points;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -57,7 +57,7 @@ void
|
|||||||
PolyLine::set_fill_y1 (double y1)
|
PolyLine::set_fill_y1 (double y1)
|
||||||
{
|
{
|
||||||
begin_change ();
|
begin_change ();
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
_y1 = y1;
|
_y1 = y1;
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
@ -128,7 +128,7 @@ Polygon::covers (Duple const & point) const
|
|||||||
Points::size_type j = npoints -1;
|
Points::size_type j = npoints -1;
|
||||||
bool oddNodes = false;
|
bool oddNodes = false;
|
||||||
|
|
||||||
if (_bounding_box_dirty) {
|
if (bbox_dirty()) {
|
||||||
(void) bounding_box ();
|
(void) bounding_box ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -191,7 +191,7 @@ Rectangle::set (Rect const & r)
|
|||||||
|
|
||||||
_rect = r;
|
_rect = r;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -204,7 +204,7 @@ Rectangle::set_x0 (Coord x0)
|
|||||||
|
|
||||||
_rect.x0 = x0;
|
_rect.x0 = x0;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -217,7 +217,7 @@ Rectangle::set_y0 (Coord y0)
|
|||||||
|
|
||||||
_rect.y0 = y0;
|
_rect.y0 = y0;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change();
|
end_change();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -230,7 +230,7 @@ Rectangle::set_x1 (Coord x1)
|
|||||||
|
|
||||||
_rect.x1 = x1;
|
_rect.x1 = x1;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -243,7 +243,7 @@ Rectangle::set_y1 (Coord y1)
|
|||||||
|
|
||||||
_rect.y1 = y1;
|
_rect.y1 = y1;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -107,7 +107,7 @@ StepButton::set_size (double w, double h)
|
|||||||
width = w;
|
width = w;
|
||||||
height = h;
|
height = h;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
|
|
||||||
create_patterns ();
|
create_patterns ();
|
||||||
|
|
||||||
|
@ -92,7 +92,7 @@ Text::set (string const & text)
|
|||||||
_text = text;
|
_text = text;
|
||||||
|
|
||||||
_need_redraw = true;
|
_need_redraw = true;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
|
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
@ -245,7 +245,7 @@ Text::clamp_width (double w)
|
|||||||
}
|
}
|
||||||
begin_change ();
|
begin_change ();
|
||||||
_clamped_width = w;
|
_clamped_width = w;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -258,7 +258,7 @@ Text::compute_bounding_box () const
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_bounding_box_dirty) {
|
if (bbox_dirty()) {
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
const float retina_factor = 0.5;
|
const float retina_factor = 0.5;
|
||||||
#else
|
#else
|
||||||
@ -283,7 +283,7 @@ Text::set_alignment (Pango::Alignment alignment)
|
|||||||
|
|
||||||
_alignment = alignment;
|
_alignment = alignment;
|
||||||
_need_redraw = true;
|
_need_redraw = true;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -296,7 +296,7 @@ Text::set_font_description (Pango::FontDescription font_description)
|
|||||||
_need_redraw = true;
|
_need_redraw = true;
|
||||||
_width_correction = -1.0;
|
_width_correction = -1.0;
|
||||||
|
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -127,7 +127,7 @@ XFadeCurve::set_inout (Points const & in, Points const & out)
|
|||||||
begin_change ();
|
begin_change ();
|
||||||
_in.points = in;
|
_in.points = in;
|
||||||
_out.points = out;
|
_out.points = out;
|
||||||
_bounding_box_dirty = true;
|
set_bbox_dirty ();
|
||||||
interpolate ();
|
interpolate ();
|
||||||
end_change ();
|
end_change ();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user