Interface GraphModel

All Known Implementing Classes:
AbstractGraphModel, DefaultGraphModel

public interface GraphModel

The nodes, edges and groups a com.codename1.ui.graph.NodeGraph shows.

Every edit a user makes in the view goes through one of the methods below, so a model that refuses an edit (by returning false or null) keeps the graph as it was. AbstractGraphModel refuses all of them; extend DefaultGraphModel for an editable graph in memory.

  • Method Details

    • getNodes

      List<GraphNode> getNodes()
      Every node, in painting order: later nodes are drawn over earlier ones.
    • getEdges

      List<GraphEdge> getEdges()
      Every edge.
    • getGroups

      List<GraphGroup> getGroups()
      Every group.
    • getNode

      GraphNode getNode(String id)
      The node with this id, or null.
    • getGroup

      GraphGroup getGroup(String id)
      The group with this id, or null.
    • moveNode

      boolean moveNode(GraphNode node, double x, double y)

      Moves a node to a world position.

      Returns

      false when the model refuses the move

    • connect

      GraphEdge connect(GraphNode source, GraphPort sourcePort, GraphNode target, GraphPort targetPort)

      Makes an edge from one node or port to another.

      Parameters
      • source: the node the edge leaves
      • sourcePort: its output port, or null
      • target: the node the edge enters
      • targetPort: its input port, or null
      Returns

      the new edge, or null when the model refuses it

    • removeEdge

      boolean removeEdge(GraphEdge edge)

      Removes an edge.

      Returns

      false when the model refuses

    • removeNode

      boolean removeNode(GraphNode node)

      Removes a node and every edge that touches it.

      Returns

      false when the model refuses

    • renameNode

      boolean renameNode(GraphNode node, String label)

      Gives a node a new label.

      Returns

      false when the model refuses

    • setCollapsed

      boolean setCollapsed(GraphGroup group, boolean collapsed)

      Collapses or expands a group.

      Returns

      false when the model refuses

    • addChangeListener

      void addChangeListener(GraphChangeListener l)
      Adds a listener told about every change.
    • removeChangeListener

      void removeChangeListener(GraphChangeListener l)
      Removes a listener.