f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop * Diederik van Lierop <mail@diedenrezi.nl>
d262df351f32b4f6bb9964ca9ff04bb3e37b968fDiederik van Lierop * Copyright (C) 2010 - 2012 Authors
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop * Released under GNU GPL, read the file 'COPYING' for more information
36d9047104b5881ca587a71ade77b1f21d083bc4Jon A. Cruz * enumerations of snap source types and snap target types.
d262df351f32b4f6bb9964ca9ff04bb3e37b968fDiederik van Lieropenum SnapSourceType { // When adding source types here, then also update Inkscape::SnapPreferences::source2target!
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop //-------------------------------------------------------------------
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop // Bbox points can be located at the edge of the stroke (for visual bboxes); they will therefore not snap
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop // to nodes because these are always located at the center of the stroke
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPSOURCE_BBOX_CATEGORY = 16, // will be used as a flag and must therefore be a power of two. Also,
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop // must be larger than the largest number of targets in a single group
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop //-------------------------------------------------------------------
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop // For the same reason, nodes will not snap to bbox points
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPSOURCE_NODE_CATEGORY = 32, // will be used as a flag and must therefore be a power of two
ae73b82cf10057153a43afdcb1f3a22deac18ea2Diederik van Lierop SNAPSOURCE_NODE_SMOOTH, // Symmetrical nodes are also considered to be smooth; there's no dedicated type for symm. nodes
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop SNAPSOURCE_RECT_CORNER, // of a rectangle, so at the center of the stroke
e0762361898748e8a6943d30ef1b5b070d4498a1Diederik van Lierop SNAPSOURCE_NODE_HANDLE, // eg. nodes in the path editor, handles of stars or rectangles, etc. (tied to a stroke)
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop //-------------------------------------------------------------------
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop // Other points (e.g. guides) will snap to both bounding boxes and nodes
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPSOURCE_DATUMS_CATEGORY = 64, // will be used as a flag and must therefore be a power of two
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop //-------------------------------------------------------------------
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop // Other points (e.g. gradient knots, image corners) will snap to both bounding boxes and nodes
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop SNAPSOURCE_OTHERS_CATEGORY = 128, // will be used as a flag and must therefore be a power of two
c60180049420944fe78f7d8b2ca1df28cba163fdDiederik van Lierop SNAPSOURCE_OBJECT_MIDPOINT, // midpoint of rectangles, ellipses, polygon, etc.
c60180049420944fe78f7d8b2ca1df28cba163fdDiederik van Lierop SNAPSOURCE_OTHER_HANDLE, // eg. the handle of a gradient or of a connector (ie not being tied to a stroke)
195e5fada891025f6d2f260e915ac209e0c0a5d0Diederik van Lierop SNAPSOURCE_GRID_PITCH, // eg. when pasting or alt-dragging in the selector tool; not realy a snap source
72cd517ebd6730a0b8b1b71bdb267ffe9f1d94ffDiederik van Lierop //-------------------------------------------------------------------
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPTARGET_BBOX_CATEGORY = 16, // will be used as a flag and must therefore be a power of two. Also,
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop // must be larger than the largest number of targets in a single group
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop // i.e > 15 because that's the number of targets in the "others" group
72cd517ebd6730a0b8b1b71bdb267ffe9f1d94ffDiederik van Lierop //-------------------------------------------------------------------
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPTARGET_NODE_CATEGORY = 32, // will be used as a flag and must therefore be a power of two
9120b0e3c36c1d15f4918f762b8998f4dab34f1cDiederik van Lierop SNAPTARGET_PATH, // If path targets are added here, then also add them to the list in findBestSnap()
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop SNAPTARGET_ELLIPSE_QUADRANT_POINT, // this corner is at the center of the stroke
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop SNAPTARGET_RECT_CORNER, // of a rectangle, so this corner is at the center of the stroke
72cd517ebd6730a0b8b1b71bdb267ffe9f1d94ffDiederik van Lierop //-------------------------------------------------------------------
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPTARGET_DATUMS_CATEGORY = 64, // will be used as a flag and must therefore be a power of two
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop //-------------------------------------------------------------------
727eeb2592befe925906eb7605e9ed770697162bDiederik van Lierop SNAPTARGET_OTHERS_CATEGORY = 128, // will be used as a flag and must therefore be a power of two
45d2569e428fc3733725b5e64e313e48c2a9d989Diederik van Lierop //-------------------------------------------------------------------
f200d31b8a03050faa7243929bbd5698db488399Diederik van Lierop#endif /* SNAPENUMS_H_ */