view doodle/import/new.d @ 29:960b408d3ac5

Builds and runs ok with builder now. Still heaps of cleaning up to do, especially code roughly imported from dog.
author Graham St Jack <graham.stjack@internode.on.net>
date Mon, 03 Aug 2009 23:19:55 +0930
parents 1754cb773d41
children
line wrap: on
line source

version(none) {

//import doodle.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();
}

}