diff options
| author | Diederik van Lierop <mail@diedenrezi.nl> | 2011-06-26 20:00:36 +0000 |
|---|---|---|
| committer | Diederik van Lierop <mail@diedenrezi.nl> | 2011-06-26 20:00:36 +0000 |
| commit | bdf703831ff93438d49324ab842052ccaf390a5d (patch) | |
| tree | f98f378da026d6c5699b0565e2735c02f4f1620c /src/snap-preferences.cpp | |
| parent | Documentation. Tutorials translation update. (diff) | |
| download | inkscape-bdf703831ff93438d49324ab842052ccaf390a5d.tar.gz inkscape-bdf703831ff93438d49324ab842052ccaf390a5d.zip | |
- Add a third group of snap sources/targets, called ¨others¨ (before we had only ¨bounding box¨ and nodes (see bug #788178)
- Fix the display of the snap source
- Fix snapping of guides to other guides & grids
(bzr r10372)
Diffstat (limited to '')
| -rw-r--r-- | src/snap-preferences.cpp | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/src/snap-preferences.cpp b/src/snap-preferences.cpp index 15c976466..816320145 100644 --- a/src/snap-preferences.cpp +++ b/src/snap-preferences.cpp @@ -27,7 +27,7 @@ Inkscape::SnapPreferences::SnapPreferences() : _snap_to_page_border(false), _strict_snapping(true) { - setSnapFrom(SnapSourceType(SNAPSOURCE_BBOX_CATEGORY | SNAPSOURCE_NODE_CATEGORY | SNAPSOURCE_OTHER_CATEGORY), true); //Snap any point. In v0.45 and earlier, this was controlled in the preferences tab + setSnapFrom(SnapSourceType(SNAPSOURCE_BBOX_CATEGORY | SNAPSOURCE_NODE_CATEGORY | SNAPSOURCE_OTHERS_CATEGORY), true); //Snap any point. In v0.45 and earlier, this was controlled in the preferences tab } /* @@ -68,11 +68,26 @@ bool Inkscape::SnapPreferences::getSnapModeNode() const return (_snap_from & Inkscape::SNAPSOURCE_NODE_CATEGORY); } -bool Inkscape::SnapPreferences::getSnapModeBBoxOrNodes() const +void Inkscape::SnapPreferences::setSnapModeOthers(bool enabled) { - return (_snap_from & (Inkscape::SNAPSOURCE_BBOX_CATEGORY | Inkscape::SNAPSOURCE_NODE_CATEGORY) ); + if (enabled) { + _snap_from = SnapSourceType(_snap_from | Inkscape::SNAPSOURCE_OTHERS_CATEGORY); + } else { + _snap_from = SnapSourceType(_snap_from & ~Inkscape::SNAPSOURCE_OTHERS_CATEGORY); + } +} + +bool Inkscape::SnapPreferences::getSnapModeOthers() const +{ + return (_snap_from & Inkscape::SNAPSOURCE_OTHERS_CATEGORY); } + +//bool Inkscape::SnapPreferences::getSnapModeBBoxOrNodes() const +//{ +// return (_snap_from & (Inkscape::SNAPSOURCE_BBOX_CATEGORY | Inkscape::SNAPSOURCE_NODE_CATEGORY) ); +//} + bool Inkscape::SnapPreferences::getSnapModeAny() const { return (_snap_from != 0); @@ -81,15 +96,15 @@ bool Inkscape::SnapPreferences::getSnapModeAny() const void Inkscape::SnapPreferences::setSnapModeGuide(bool enabled) { if (enabled) { - _snap_from = SnapSourceType(_snap_from | Inkscape::SNAPSOURCE_OTHER_CATEGORY); + _snap_from = SnapSourceType(_snap_from | Inkscape::SNAPSOURCE_OTHERS_CATEGORY); } else { - _snap_from = SnapSourceType(_snap_from & ~Inkscape::SNAPSOURCE_OTHER_CATEGORY); + _snap_from = SnapSourceType(_snap_from & ~Inkscape::SNAPSOURCE_OTHERS_CATEGORY); } } bool Inkscape::SnapPreferences::getSnapModeGuide() const { - return (_snap_from & Inkscape::SNAPSOURCE_OTHER_CATEGORY); + return (_snap_from & Inkscape::SNAPSOURCE_OTHERS_CATEGORY); } /** |
