index 2755d6fb35c94cb4bd8d0bde7258d862b706e6e1..cfa3846f86495a5b37aa2206db5e369817bbde9b 100644 (file)
}
}
}
}
-/** Select all nodes in the path. */
-void PathManipulator::selectAll()
-{
- for (SubpathList::iterator i = _subpaths.begin(); i != _subpaths.end(); ++i) {
- for (NodeList::iterator j = (*i)->begin(); j != (*i)->end(); ++j) {
- _selection.insert(j.ptr());
- }
- }
-}
-
-/** Select points inside the given rectangle. If all points inside it are already selected,
- * they will be deselected.
- * @param area Area to select
- */
-void PathManipulator::selectArea(Geom::Rect const &area)
-{
- bool nothing_selected = true;
- std::vector<Node*> in_area;
- for (SubpathList::iterator i = _subpaths.begin(); i != _subpaths.end(); ++i) {
- for (NodeList::iterator j = (*i)->begin(); j != (*i)->end(); ++j) {
- if (area.contains(j->position())) {
- in_area.push_back(j.ptr());
- if (!j->selected()) {
- _selection.insert(j.ptr());
- nothing_selected = false;
- }
- }
- }
- }
- if (nothing_selected) {
- for (std::vector<Node*>::iterator i = in_area.begin(); i != in_area.end(); ++i) {
- _selection.erase(*i);
- }
- }
-}
-
/** Move the selection forward or backward by one node in each subpath, based on the sign
* of the parameter. */
void PathManipulator::shiftSelection(int dir)
/** Move the selection forward or backward by one node in each subpath, based on the sign
* of the parameter. */
void PathManipulator::shiftSelection(int dir)
}
}
}
}
-/** Invert selection in the entire path. */
-void PathManipulator::invertSelection()
-{
- for (SubpathList::iterator i = _subpaths.begin(); i != _subpaths.end(); ++i) {
- for (NodeList::iterator j = (*i)->begin(); j != (*i)->end(); ++j) {
- if (j->selected()) _selection.erase(j.ptr());
- else _selection.insert(j.ptr());
- }
- }
-}
-
/** Invert selection in the selected subpaths. */
void PathManipulator::invertSelectionInSubpaths()
{
/** Invert selection in the selected subpaths. */
void PathManipulator::invertSelectionInSubpaths()
{
_createGeometryFromControlPoints();
}
_createGeometryFromControlPoints();
}
+/** Hide the curve drag point until the next motion event. */
void PathManipulator::hideDragPoint()
{
_dragpoint->setVisible(false);
void PathManipulator::hideDragPoint()
{
_dragpoint->setVisible(false);