view doodle/import/new.d @ 28:1754cb773d41

Part-way through getting to compile with configure/builder.
author Graham St Jack <graham.stjack@internode.on.net>
date Sun, 02 Aug 2009 16:27:21 +0930
parents import/new.d@e907d2c54ec3
children 960b408d3ac5
line wrap: on
line source

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();
}