Orange Canvas application is build around the a workflow model (scheme),
which is implemented in the
scheme package. Briefly
speaking a workflow is a simple graph structure(a Directed Acyclic
Graph - DAG). The nodes in this graph represent some action/task to be
computed. A node in this graph has a set of inputs and outputs on which it
receives and sends objects.
The set of available node types for a workflow are kept in a
WidgetDiscovery can be used (but not
required) to populate the registry.
Common reusable gui elements used for building the user interface
reside in the
The workflow model is implemented by
It is composed by a set of node (
instances and links (
SchemeLink) between them.
Every node has a corresponding
defining its inputs and outputs (restricting the node’s connectivity).
In addition, it can also contain workflow annotations. These are only used when displaying the workflow in a GUI.
The runtime execution (propagation of node’s outputs to dependent node inputs) is handled by the signal manager.
Workflow Node GUI¶
A WidgetManager is responsible for managing GUI corresponsing to individual nodes in the workflow.
The workflow view (
The workflow editor (
Joining everything together, the final application (main window, …)
is implemented in