diff --git a/src/conn-avoid-ref.h b/src/conn-avoid-ref.h
index d34d8ca2e644be593e20589368326718dd51598a..5dff8dd381dcde6fcff5db0f54a0f7491e35cf18 100644 (file)
--- a/src/conn-avoid-ref.h
+++ b/src/conn-avoid-ref.h
struct SPDesktop;
struct SPItem;
+struct ConnectionPoint;
+typedef std::map<int, ConnectionPoint> IdConnectionPointMap;
namespace Avoid { class ShapeRef; }
class SPAvoidRef {
// libavoid's internal representation of the item.
Avoid::ShapeRef *shapeRef;
+ // Used for holding connection points for item
+ IdConnectionPointMap connection_points;
+
void setAvoid(char const *value);
+ void setConnectionPoints(gchar const *value);
+ void addConnectionPoint(ConnectionPoint &cp);
+ void updateConnectionPoint(ConnectionPoint &cp);
+ void deleteConnectionPoint(ConnectionPoint &cp);
void handleSettingChange(void);
-
+
// Returns a list of SPItems of all connectors/shapes attached to
// this object. Pass one of the following for 'type':
// Avoid::runningTo
// Avoid::runningToAndFrom
GSList *getAttachedShapes(const unsigned int type);
GSList *getAttachedConnectors(const unsigned int type);
+ Geom::Point getConnectionPointPos(const int type, const int id);
+
+ bool isValidConnPointId( const int type, const int id );
private:
SPItem *item;
// A sigc connection for transformed signal.
sigc::connection _transformed_connection;
+ void setConnectionPointsAttrUndoable(const gchar* value, const gchar* action);
};
extern GSList *get_avoided_items(GSList *list, SPObject *from,
extern void init_avoided_shape_geometry(SPDesktop *desktop);
static const double defaultConnSpacing = 3.0;
+static const double defaultConnCurvature = 3.0;
#endif /* !SEEN_CONN_AVOID_REF */