Mercurial > projects > doodle
diff import/new.d @ 0:e907d2c54ec3
Initial import
author | David Bryant <daveb@acres.com.au> |
---|---|
date | Wed, 13 May 2009 15:42:39 +0930 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/import/new.d Wed May 13 15:42:39 2009 +0930 @@ -0,0 +1,40 @@ +import types; +import tango.util.collection.ArraySeq; + +interface IProperty { +} + +interface ISemanticModelBridge { + char[] presentation(); +} + +interface ISimpleSemanticModelElement : ISemanticModelBridge { + char[] type_info(); +} + +interface IDiagramElement { + bool is_visible(); + IProperty[] get_properties(); + + void accept(in IVisitor visitor); +} + +interface IVisitor { + void visit(in IGraphNode node); + void visit(in IGraphEdge edge); +} + +interface IGraphElement : IDiagramElement { +} + +interface IGraphNode : IGraphElement { +} + +interface IGraphEdge : IGraphElement { +} + +interface IGraphConnector { + Point point(); + IGraphElement element(); + IGraphEdge[] edges(); +}