summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorbulia byak <buliabyak@gmail.com>2007-10-12 06:59:42 +0000
committerbuliabyak <buliabyak@users.sourceforge.net>2007-10-12 06:59:42 +0000
commitfd0cfa2ee854f5f9c13214e48a2ce76d8a137cb1 (patch)
treec09e7c88b6216834fc03a31098ab6e08ad166283 /src
parentscroll desktop to selected handle after Tab/Shift-Tab; allow Ins to work even... (diff)
downloadinkscape-fd0cfa2ee854f5f9c13214e48a2ce76d8a137cb1.tar.gz
inkscape-fd0cfa2ee854f5f9c13214e48a2ce76d8a137cb1.zip
select within rect
(bzr r3893)
Diffstat (limited to 'src')
-rw-r--r--src/gradient-drag.cpp15
-rw-r--r--src/gradient-drag.h1
2 files changed, 16 insertions, 0 deletions
diff --git a/src/gradient-drag.cpp b/src/gradient-drag.cpp
index 9244b8fd2..2e1a8db83 100644
--- a/src/gradient-drag.cpp
+++ b/src/gradient-drag.cpp
@@ -1293,6 +1293,21 @@ GrDrag::selectByCoords(std::vector<NR::Point> coords)
}
}
+
+/**
+\brief Select all stops/draggers that fall within the rect
+*/
+void
+GrDrag::selectRect(NR::Rect const &r)
+{
+ for (GList *l = this->draggers; l != NULL; l = l->next) {
+ GrDragger *d = ((GrDragger *) l->data);
+ if (r.contains(d->point)) {
+ setSelected (d, true, true);
+ }
+ }
+}
+
/**
\brief Select a dragger
\param dragger The dragger to select
diff --git a/src/gradient-drag.h b/src/gradient-drag.h
index b9a2fdcc2..a4cd481a3 100644
--- a/src/gradient-drag.h
+++ b/src/gradient-drag.h
@@ -122,6 +122,7 @@ public: // FIXME: make more of this private!
void deselectAll();
void selectAll();
void selectByCoords(std::vector<NR::Point> coords);
+ void selectRect(NR::Rect const &r);
void deleteSelected (bool just_one = false);