multi-path-manipulator.h revision c635a682d950f1421ca59bdb63e2bf83db697ad3
/** @file
* Multi path manipulator - a tool component that edits multiple paths at once
*/
/* Authors:
* Krzysztof KosiĆski <tweenk.pl@gmail.com>
*
* Copyright (C) 2009 Authors
* Released under GNU GPL, read the file 'COPYING' for more information
*/
#include <sigc++/connection.h>
#include "display/display-forward.h"
#include "forward.h"
#include "ui/tool/commit-events.h"
#include "ui/tool/manipulator.h"
#include "ui/tool/node-types.h"
#include "ui/tool/shape-record.h"
struct SPCanvasGroup;
struct PathSharedData;
/**
* Manipulator that manages multiple path manipulators active at the same time.
* It functions like a boost::ptr_set - manipulators added via insert() are retained.
*/
// TODO fix this garbage!
//std::map<SPPath*, std::pair<Geom::Matrix, guint32> > const &items);
void cleanup();
void selectSubpaths();
void selectAll();
void shiftSelection(int dir);
void linearGrow(int dir);
void spatialGrow(int dir);
void invertSelection();
void invertSelectionInSubpaths();
void deselect();
void setNodeType(NodeType t);
void setSegmentType(SegmentType t);
void insertNodes();
void joinNodes();
void breakNodes();
void deleteNodes(bool keep_shape = true);
void joinSegment();
void deleteSegments();
void reverseSubpaths();
void showOutline(bool show);
void showHandles(bool show);
void showPathDirection(bool show);
void updateOutlineColors();
}
}
}
}
}
}
}
}
void _doneWithCleanup(gchar const *);
PathSharedData const &_path_data;
bool _show_handles;
bool _show_outline;
bool _show_path_direction;
};
} // namespace UI
} // namespace Inkscape
#endif
/*
Local Variables:
mode:c++
c-file-style:"stroustrup"
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
indent-tabs-mode:nil
fill-column:99
End:
*/
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :