diff --git a/src/conn-avoid-ref.h b/src/conn-avoid-ref.h
index ac9295cf917450307ab3a3c23834d15ce04b6757..d34d8ca2e644be593e20589368326718dd51598a 100644 (file)
--- a/src/conn-avoid-ref.h
+++ b/src/conn-avoid-ref.h
#ifndef SEEN_CONN_AVOID_REF
#define SEEN_CONN_AVOID_REF
-/*
+/** \file
* A class for handling shape interaction with libavoid.
- *
+ */
+/*
* Authors:
* Michael Wybrow <mjwybrow@users.sourceforge.net>
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-
+#include <glib/gslist.h>
#include <sigc++/connection.h>
+struct SPDesktop;
struct SPItem;
-namespace Avoid {
- class ShapeRef;
-}
+namespace Avoid { class ShapeRef; }
class SPAvoidRef {
public:
SPAvoidRef(SPItem *spitem);
- ~SPAvoidRef();
+ virtual ~SPAvoidRef();
// libavoid's internal representation of the item.
Avoid::ShapeRef *shapeRef;
void setAvoid(char const *value);
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::runningFrom
+ // Avoid::runningToAndFrom
+ GSList *getAttachedShapes(const unsigned int type);
+ GSList *getAttachedConnectors(const unsigned int type);
private:
SPItem *item;
extern GSList *get_avoided_items(GSList *list, SPObject *from,
SPDesktop *desktop, bool initialised = true);
-extern void avoid_item_move(NR::Matrix const *mp, SPItem *moved_item);
+extern void avoid_item_move(Geom::Matrix const *mp, SPItem *moved_item);
extern void init_avoided_shape_geometry(SPDesktop *desktop);
-static const double defaultConnSpacing = 10.0;
+static const double defaultConnSpacing = 3.0;
#endif /* !SEEN_CONN_AVOID_REF */