Adds acceptance doc for networking UI

* Adds gerkin feature file for networking visualization
* Adds implementation details to networking.md
This commit is contained in:
Jared Tabor
2018-03-26 17:07:23 -07:00
committed by Ben Thomasson
parent 09801d6dab
commit 92dc450940
48 changed files with 2334 additions and 0 deletions

100
docs/networking/README.md Normal file
View File

@@ -0,0 +1,100 @@
Finite State Machine Designs
============================
This directory contains the finite state machine designs that were used to
generate the skeleton of the javascript implementations and can be used to
check that the implementations still match the designs.
**Machine Readable FSM Schema**
The machine readable FSM schema contains three top-level elements: `name`, `states`, and `transitions`.
* The `name` element is a string.
* The `states` element contains a list of `state` elements which have attributes `id`, `label`, and `x`, and `y`.
* The `transitions` element contains a list of `transition` elements which have attributes `from_state`, `to_state`, and `label`.
**Design Diagrams**
The diagrams below are visual representations of the finite state machine designs in this directory.
The equivalent machine readable representations are linked as well.
---
**Button FSM**
* See: button.yml
The button FSM describes how a button works. The key insight here is that a button is not
clicked if the mouse is not over the button on both the `MouseDown` and `MouseUp` events. Moving
the mouse off the button before `MouseUp` is not a click.
![Button FSM](button.png)
---
**Buttons FSM**
* See: buttons.yml
The buttons FSM distributes events to the buttons which each have their own FSM.
![Buttons FSM](buttons.png)
---
**Hot Keys FSM**
* See: hotkeys.yml
The hot keys FSM handles key events and generates new events like `NewLink` to implement
hot keys.
![Hot Keys FSM](hotkeys.png)
---
**Mode FSM**
* See: mode.yml
The mode FSM controls the overall mode of the network UI application.
![Mode](mode.png)
---
**Move FSM**
* See: move.yml
The move FSM controls placement of devices as well as editing the device labels.
![Move](move.png)
---
**Time FSM**
* See: time.yml
The time FSM controls undo/redo functionality of the network UI.
![Time](time.png)
---
**Toolbox FSM**
* See: toolbox.yml
The toolbox FSM controls the drag-and-drop toolboxes and allow placement of new devices, applications,
racks, and sites onto the canvas.
![Toolbox](toolbox.png)
---
**View FSM**
* See: view.yml
The view FSM controls the panning and scaling of the the virtual canvas through clicking-and-dragging
of the background and scrolling the mousewheel.
![View](view.png)

View File

@@ -0,0 +1,29 @@
diagram_id: 58
name: animation_fsm
states:
- id: 4
label: Cancelled
x: 590
y: 602
- id: 3
label: Completed
x: 225
y: 604
- id: 2
label: Running
x: 418
y: 362
- id: 1
label: Start
x: 454
y: 158
transitions:
- from_state: Running
label: onAnimationCancelled
to_state: Cancelled
- from_state: Running
label: onAnimationCompleted
to_state: Completed
- from_state: Start
label: start
to_state: Running

BIN
docs/networking/button.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@@ -0,0 +1,43 @@
diagram_id: 66
name: 'button_fsm'
finite_state_machine_id: 12
states:
- id: 3
label: Clicked
x: 331
y: 568
- id: 5
label: Disabled
x: 719
y: 283
- id: 4
label: Pressed
x: 606
y: 563
- id: 1
label: Ready
x: 471
y: 376
- id: 2
label: Start
x: 468
y: 170
transitions:
- from_state: Clicked
label: start
to_state: Ready
- from_state: Disabled
label: onEnable
to_state: Ready
- from_state: Pressed
label: onMouseUp
to_state: Clicked
- from_state: Ready
label: onDisable
to_state: Disabled
- from_state: Ready
label: onMouseDown
to_state: Pressed
- from_state: Start
label: start
to_state: Ready

BIN
docs/networking/buttons.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

@@ -0,0 +1,28 @@
app: buttons_fsm
finite_state_machine_id: 7
panX: 133
panY: 41
scaleXY: 1
states:
- label: Start
size: 100
x: 392
y: 88
- label: Ready
size: 100
x: 392
y: 281
- label: ButtonPressed
size: 100
x: 394
y: 491
transitions:
- from_state: Start
label: start
to_state: Ready
- from_state: Ready
label: onMouseDown
to_state: ButtonPressed
- from_state: ButtonPressed
label: onMouseUp
to_state: Ready

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

View File

@@ -0,0 +1,26 @@
diagram_id: 70
finite_state_machine_id: 21
name: diagram
states:
- id: 1
label: Start
x: 590
y: 233
- id: 2
label: Collapsed
x: 594
y: 490
- id: 3
label: Expanded
x: 919
y: 491
transitions:
- from_state: Start
label: start
to_state: Collapsed
- from_state: Expanded
label: onDetailsPanelClose
to_state: Collapsed
- from_state: Collapsed
label: onDetailsPanel
to_state: Expanded

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

View File

@@ -0,0 +1,19 @@
finite_state_machine_id: 19
name: device_detail_fsm
states:
- id: 2
label: Ready
x: 517
y: 588
- id: 3
label: Disable
x: 770
y: 455
- id: 1
label: Start
x: 507
y: 336
transitions:
- from_state: Start
label: start
to_state: Ready

BIN
docs/networking/group.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

119
docs/networking/group.yml Normal file
View File

@@ -0,0 +1,119 @@
diagram_id: 61
finite_state_machine_id: 5
name: group_fsm
states:
- id: 12
label: ContextMenu
x: 1228
y: -74
- id: 3
label: CornerSelected
x: 526
y: 554
- id: 8
label: Disable
x: 497
y: 84
- id: 9
label: EditLabel
x: 1130
y: 112
- id: 6
label: Move
x: 1297
y: 786
- id: 11
label: Placing
x: 299
y: 300
- id: 7
label: Ready
x: 733
y: 304
- id: 1
label: Resize
x: 571
y: 911
- id: 4
label: Selected1
x: 839
y: 640
- id: 10
label: Selected2
x: 1179
y: 435
- id: 5
label: Selected3
x: 1528
y: 360
- id: 2
label: Start
x: 744
y: 69
transitions:
- from_state: ContextMenu
label: onLabelEdit
to_state: EditLabel
- from_state: ContextMenu
label: onMouseDown
to_state: Ready
- from_state: CornerSelected
label: onMouseMove
to_state: Resize
- from_state: CornerSelected
label: onMouseUp
to_state: Selected1
- from_state: EditLabel
label: onKeyDown
to_state: Selected2
- from_state: EditLabel
label: onMouseDown
to_state: Ready
- from_state: Move
label: onMouseDown
to_state: Selected1
- from_state: Move
label: onMouseUp
to_state: Selected2
- from_state: Placing
label: onMouseDown
to_state: Resize
- from_state: Ready
label: onMouseDown
to_state: CornerSelected
- from_state: Ready
label: onMouseDown
to_state: Selected1
- from_state: Ready
label: onNewGroup
to_state: Placing
- from_state: Resize
label: onMouseUp
to_state: Selected1
- from_state: Selected1
label: onMouseMove
to_state: Move
- from_state: Selected1
label: onMouseUp
to_state: Selected2
- from_state: Selected2
label: onKeyDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Selected3
- from_state: Selected2
label: onNewGroup
to_state: Ready
- from_state: Selected3
label: onMouseMove
to_state: Move
- from_state: Selected3
label: onMouseUp
to_state: ContextMenu
- from_state: Start
label: start
to_state: Ready

BIN
docs/networking/hotkeys.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@@ -0,0 +1,25 @@
finite_state_machine_id: 1
name: hotkeys_fsm
states:
- id: 2
label: Enabled
x: 585
y: 396
- id: 1
label: Start
x: 585
y: 160
- id: 3
label: Disabled
x: 331
y: 408
transitions:
- from_state: Enabled
label: onDisable
to_state: Disabled
- from_state: Disabled
label: onEnable
to_state: Enabled
- from_state: Start
label: start
to_state: Enabled

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 KiB

View File

@@ -0,0 +1,38 @@
diagram_id: 68
finite_state_machine_id: 18
name: diagram
states:
- id: 1
label: Enabled
x: 842
y: 533
- id: 2
label: Start
x: 839
y: 270
- id: 3
label: Disabled
x: 1412
y: 522
transitions:
- from_state: Start
label: start
to_state: Enabled
- from_state: Disabled
label: onBindDocument
to_state: Enabled
- from_state: Enabled
label: onUnbindDocument
to_state: Disabled
- from_state: Disabled
label: onDetailsPanelClose
to_state: Enabled
- from_state: Enabled
label: onDetailsPanel
to_state: Disabled
- from_state: Enabled
label: onSearchDropdown
to_state: Disabled
- from_state: Disabled
label: onSearchDropdownClose
to_state: Enabled

BIN
docs/networking/link.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

42
docs/networking/link.yml Normal file
View File

@@ -0,0 +1,42 @@
finite_state_machine_id: 4
name: link_fsm
states:
- id: 5
label: Selecting
x: -429
y: 63
- id: 2
label: Start
x: 15
y: -221
- id: 4
label: Connecting
x: -429
y: 466
- id: 3
label: Connected
x: 47
y: 453
- id: 1
label: Ready
x: 26
y: 61
transitions:
- from_state: Ready
label: onNewLink
to_state: Selecting
- from_state: Selecting
label: onMouseUp
to_state: Connecting
- from_state: Connecting
label: onMouseUp
to_state: Connected
- from_state: Connecting
label: onMouseUp
to_state: Ready
- from_state: Connected
label: start
to_state: Ready
- from_state: Start
label: start
to_state: Ready

View File

@@ -0,0 +1,19 @@
messages:
- {msg_type: DeviceMove, fields: [msg_type, sender, id, x, y, previous_x, previous_y]}
- {msg_type: DeviceCreate, fields: [msg_type, sender, id, x, y, name, type, host_id]}
- {msg_type: DeviceDestroy, fields: [msg_type, sender, id, previous_x, previous_y, previous_name, previous_type, previous_host_id]}
- {msg_type: DeviceLabelEdit, fields: [msg_type, sender, id, name, previous_name]}
- {msg_type: DeviceSelected, fields: [msg_type, sender, id]}
- {msg_type: DeviceUnSelected, fields: [msg_type, sender, id]}
- {msg_type: InterfaceCreate, fields: [msg_type, sender, device_id, id, name]}
- {msg_type: InterfaceLabelEdit, fields: [msg_type, sender, id, device_id, name, previous_name]}
- {msg_type: LinkLabelEdit, fields: [msg_type, sender, id, name, previous_name]}
- {msg_type: LinkCreate, fields: [msg_type, id, sender, name, from_device_id, to_device_id, from_interface_id, to_interface_id]}
- {msg_type: LinkDestroy, fields: [msg_type, id, sender, name, from_device_id, to_device_id, from_interface_id, to_interface_id]}
- {msg_type: LinkSelected, fields: [msg_type, sender, id]}
- {msg_type: LinkUnSelected, fields: [msg_type, sender, id]}
- {msg_type: MultipleMessage, fields: [msg_type, sender, messages]}
- {msg_type: Snapshot, fields: [msg_type, sender, devices, links, order, trace_id]}
- {msg_type: id, type: int}
- {msg_type: topology_id, type: int}
- {msg_type: Topology, fields: [topology_id, name, panX, panY, scale, link_id_seq, device_id_seq]}

BIN
docs/networking/mode.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

96
docs/networking/mode.yml Normal file
View File

@@ -0,0 +1,96 @@
diagram_id: 68
finite_state_machine_id: 9
name: mode_fsm
states:
- id: 7
label: Device
x: 558
y: 821
- id: 2
label: Interface
x: 340
y: 1053
- id: 5
label: MultiSite
x: 569
y: -88
- id: 4
label: Process
x: 833
y: 1051
- id: 6
label: Rack
x: 571
y: 486
- id: 3
label: Site
x: 564
y: 201
- id: 1
label: Start
x: 568
y: -379
transitions:
- from_state: Device
label: onMouseWheel
to_state: Process
- from_state: Device
label: onMouseWheel
to_state: Rack
- from_state: Device
label: onMouseWheel
to_state: Interface
- from_state: Device
label: onScaleChanged
to_state: Interface
- from_state: Device
label: onScaleChanged
to_state: Rack
- from_state: Device
label: onScaleChanged
to_state: Process
- from_state: Interface
label: onMouseWheel
to_state: Device
- from_state: Interface
label: onScaleChanged
to_state: Device
- from_state: MultiSite
label: onMouseWheel
to_state: Site
- from_state: MultiSite
label: onScaleChanged
to_state: Site
- from_state: Process
label: onMouseWheel
to_state: Device
- from_state: Process
label: onScaleChanged
to_state: Device
- from_state: Rack
label: onMouseWheel
to_state: Site
- from_state: Rack
label: onMouseWheel
to_state: Device
- from_state: Rack
label: onScaleChanged
to_state: Site
- from_state: Rack
label: onScaleChanged
to_state: Device
- from_state: Site
label: onMouseWheel
to_state: MultiSite
- from_state: Site
label: onMouseWheel
to_state: Rack
- from_state: Site
label: onScaleChanged
to_state: MultiSite
- from_state: Site
label: onScaleChanged
to_state: Rack
- from_state: Start
label: start
to_state: MultiSite

BIN
docs/networking/models.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

130
docs/networking/models.yml Normal file
View File

@@ -0,0 +1,130 @@
app: awx.network_ui
external_models: []
models:
- display: name
fields:
- name: device_id
pk: true
type: AutoField
- name: topology
ref: Topology
ref_field: topology_id
type: ForeignKey
- len: 200
name: name
type: CharField
- name: x
type: IntegerField
- name: y
type: IntegerField
- name: id
type: IntegerField
- len: 200
name: device_type
type: CharField
- default: 0
name: interface_id_seq
type: IntegerField
- default: 0
name: host_id
type: IntegerField
name: Device
x: 348
y: 124
- fields:
- name: link_id
pk: true
type: AutoField
- name: from_device
ref: Device
ref_field: device_id
related_name: from_link
type: ForeignKey
- name: to_device
ref: Device
ref_field: device_id
related_name: to_link
type: ForeignKey
- name: from_interface
ref: Interface
ref_field: interface_id
related_name: from_link
type: ForeignKey
- name: to_interface
ref: Interface
ref_field: interface_id
related_name: to_link
type: ForeignKey
- name: id
type: IntegerField
- len: 200
name: name
type: CharField
name: Link
x: 731
y: -33
- display: name
fields:
- name: topology_id
pk: true
type: AutoField
- len: 200
name: name
type: CharField
- name: scale
type: FloatField
- name: panX
type: FloatField
- name: panY
type: FloatField
- default: 0
name: device_id_seq
type: IntegerField
- default: 0
name: link_id_seq
type: IntegerField
name: Topology
x: 111
y: 127
- fields:
- name: client_id
pk: true
type: AutoField
name: Client
x: -162
y: 282
- display: name
fields:
- name: interface_id
pk: true
type: AutoField
- name: device
ref: Device
ref_field: device_id
type: ForeignKey
- len: 200
name: name
type: CharField
- name: id
type: IntegerField
name: Interface
x: 977
y: 312
- fields:
- name: topology_inventory_id
pk: true
type: AutoField
- name: topology
ref: Topology
ref_field: topology_id
type: ForeignKey
- name: inventory_id
type: IntegerField
name: TopologyInventory
x: -204
y: 12
modules: []
view:
panX: 213.729555519212
panY: 189.446959094643
scaleXY: 0.69

BIN
docs/networking/move.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

View File

@@ -0,0 +1,65 @@
diagram_id: 91
name: diagram
states:
- id: 0
label: ContextMenu
x: 826
y: 1008
- id: 1
label: Disable
x: 914
y: 115
- id: 5
label: Ready
x: 702
y: 327
- id: 6
label: Selected1
x: 397
y: 332
- id: 7
label: Selected2
x: 268
y: 735
- id: 8
label: Selected3
x: 225
y: 1021
- id: 9
label: Start
x: 704
y: 128
transitions:
- from_state: ContextMenu
label: onDetailsPanel
to_state: Selected2
- from_state: ContextMenu
label: onMouseDown
to_state: Selected2
- from_state: Ready
label: onMouseDown
to_state: Selected1
- from_state: Selected1
label: onMouseUp
to_state: Selected2
- from_state: Selected2
label: onKeyDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Selected3
- from_state: Selected2
label: onMouseDown
to_state: Ready
- from_state: Selected3
label: ''
to_state: Selected3
- from_state: Selected3
label: onMouseMove
to_state: Selected2
- from_state: Selected3
label: onMouseUp
to_state: ContextMenu
- from_state: Start
label: start
to_state: Ready

107
docs/networking/move.yml Normal file
View File

@@ -0,0 +1,107 @@
diagram_id: 87
name: move
states:
- id: 8
label: ContextMenu
x: 826
y: 1008
- id: 0
label: Disable
x: 914
y: 115
- id: 6
label: EditLabel
x: 765
y: 684
- id: 4
label: Move
x: 118
y: 594
- id: 5
label: Placing
x: 263
y: 89
- id: 2
label: Ready
x: 702
y: 327
- id: 3
label: Selected1
x: 397
y: 332
- id: 7
label: Selected2
x: 268
y: 735
- id: 9
label: Selected3
x: 361
y: 961
- id: 1
label: Start
x: 704
y: 128
transitions:
- from_state: ContextMenu
label: onDetailsPanel
to_state: Selected2
- from_state: ContextMenu
label: onLabelEdit
to_state: EditLabel
- from_state: ContextMenu
label: onMouseDown
to_state: Selected2
- from_state: EditLabel
label: onKeyDown
to_state: Selected2
- from_state: EditLabel
label: onMouseDown
to_state: Ready
- from_state: Move
label: onMouseDown
to_state: Selected1
- from_state: Move
label: onMouseUp
to_state: Selected1
- from_state: Placing
label: onMouseDown
to_state: Selected1
- from_state: Placing
label: onMouseMove
to_state: Move
- from_state: Ready
label: onMouseDown
to_state: Selected1
- from_state: Ready
label: onNewDevice
to_state: Placing
- from_state: Ready
label: onPasteDevice
to_state: Selected2
- from_state: Selected1
label: onMouseMove
to_state: Move
- from_state: Selected1
label: onMouseUp
to_state: Selected2
- from_state: Selected2
label: onKeyDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Selected3
- from_state: Selected2
label: onMouseDown
to_state: Ready
- from_state: Selected2
label: onNewDevice
to_state: Ready
- from_state: Selected3
label: onMouseMove
to_state: Move
- from_state: Selected3
label: onMouseUp
to_state: ContextMenu
- from_state: Start
label: start
to_state: Ready

BIN
docs/networking/null.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

15
docs/networking/null.yml Normal file
View File

@@ -0,0 +1,15 @@
finite_state_machine_id: 17
name: null_fsm
states:
- id: 1
label: Start
x: 391
y: 132
- id: 2
label: Ready
x: 402
y: 346
transitions:
- from_state: Start
label: start
to_state: Ready

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

View File

@@ -0,0 +1,233 @@
channels:
- from_fsm: buttons_fsm
from_fsm_id: 7
inbox: ''
outbox: ''
to_fsm: button_fsm
to_fsm_id: 12
type: ''
- from_fsm: buttons_fsm
from_fsm_id: 7
inbox: ''
outbox: ''
to_fsm: toolbox_fsm
to_fsm_id: 14
type: ''
- from_fsm: details_panel_fsm
from_fsm_id: 21
inbox: ''
outbox: ''
to_fsm: move_fsm
to_fsm_id: 3
type: ''
- from_fsm: device_detail_fsm
from_fsm_id: 19
inbox: ''
outbox: ''
to_fsm: view_fsm
to_fsm_id: 2
type: ''
- from_fsm: group_fsm
from_fsm_id: 5
inbox: ''
outbox: ''
to_fsm: stream_fsm
to_fsm_id: 20
type: ''
- from_fsm: hotkeys_fsm
from_fsm_id: 1
inbox: ''
outbox: ''
to_fsm: null_fsm
to_fsm_id: 17
type: ''
- from_fsm: keybindings_fsm
from_fsm_id: 18
inbox: ''
outbox: ''
to_fsm: hotkeys_fsm
to_fsm_id: 1
type: ''
- from_fsm: link_fsm
from_fsm_id: 4
inbox: ''
outbox: ''
to_fsm: details_panel_fsm
to_fsm_id: 21
type: ''
- from_fsm: mode_fsm
from_fsm_id: 9
inbox: ''
outbox: ''
to_fsm: time_fsm
to_fsm_id: 8
type: ''
- from_fsm: move_fsm
from_fsm_id: 3
inbox: ''
outbox: ''
to_fsm: device_detail_fsm
to_fsm_id: 19
type: ''
- from_fsm: rack_fsm
from_fsm_id: 6
inbox: ''
outbox: ''
to_fsm: group_fsm
to_fsm_id: 5
type: ''
- from_fsm: site_fsm
from_fsm_id: 22
inbox: ''
outbox: ''
to_fsm: rack_fsm
to_fsm_id: 6
type: ''
- from_fsm: stream_fsm
from_fsm_id: 20
inbox: ''
outbox: ''
to_fsm: link_fsm
to_fsm_id: 4
type: ''
- from_fsm: test_fsm
from_fsm_id: 23
inbox: ''
outbox: ''
to_fsm: mode_fsm
to_fsm_id: 9
type: ''
- from_fsm: time_fsm
from_fsm_id: 8
inbox: ''
outbox: ''
to_fsm: buttons_fsm
to_fsm_id: 7
type: ''
- from_fsm: toolbox_fsm
from_fsm_id: 14
inbox: ''
outbox: ''
to_fsm: site_fsm
to_fsm_id: 22
type: ''
- from_fsm: view_fsm
from_fsm_id: 2
inbox: ''
outbox: ''
to_fsm: keybindings_fsm
to_fsm_id: 18
type: ''
diagram_id: 85
fsms:
- id: 12
name: button_fsm
x1: -2438
x2: -3026
y1: -934
y2: -1532
- id: 7
name: buttons_fsm
x1: -2650
x2: -2850
y1: -16
y2: -619
- id: 21
name: details_panel_fsm
x1: 5669
x2: 5140
y1: -64
y2: -521
- id: 19
name: device_detail_fsm
x1: 7667
x2: 7214
y1: -110
y2: -562
- id: 5
name: group_fsm
x1: 3685
x2: 2256
y1: 278
y2: -906
- id: 1
name: hotkeys_fsm
x1: 9692
x2: 9281
y1: -124
y2: -549
- id: 18
name: keybindings_fsm
x1: 9223
x2: 8370
y1: -71
y2: -614
- id: 4
name: link_fsm
x1: 5080
x2: 4436
y1: 154
y2: -732
- id: 9
name: mode_fsm
x1: -3760
x2: -4453
y1: 192
y2: -1439
- id: 3
name: move_fsm
x1: 6968
x2: 5813
y1: 146
y2: -935
- id: 17
name: null_fsm
x1: 10125
x2: 9925
y1: -129
y2: -543
- id: 6
name: rack_fsm
x1: 2214
x2: 1047
y1: 127
y2: -753
- id: 22
name: site_fsm
x1: 964
x2: -190
y1: 128
y2: -768
- id: 20
name: stream_fsm
x1: 4376
x2: 3868
y1: 56
y2: -643
- id: 23
name: test_fsm
x1: -4569
x2: -5140
y1: 72
y2: -863
- id: 8
name: time_fsm
x1: -3122
x2: -3693
y1: -69
y2: -553
- id: 14
name: toolbox_fsm
x1: -680
x2: -1722
y1: 265
y2: -904
- id: 2
name: view_fsm
x1: 8311
x2: 7734
y1: -25
y2: -684
name: diagram
states: []
transitions: []

BIN
docs/networking/rack.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

83
docs/networking/rack.yml Normal file
View File

@@ -0,0 +1,83 @@
diagram_id: 65
finite_state_machine_id: 6
name: rack_fsm
states:
- id: 9
label: ContextMenu
x: 898
y: 1016
- id: 2
label: Disable
x: 760
y: 468
- id: 7
label: EditLabel
x: 600
y: 934
- id: 8
label: Move
x: -69
y: 861
- id: 1
label: Ready
x: 532
y: 560
- id: 4
label: Selected1
x: 214
y: 566
- id: 5
label: Selected2
x: 220
y: 810
- id: 6
label: Selected3
x: 249
y: 1047
- id: 3
label: Start
x: 582
y: 334
transitions:
- from_state: ContextMenu
label: onLabelEdit
to_state: EditLabel
- from_state: ContextMenu
label: onMouseDown
to_state: Ready
- from_state: EditLabel
label: onKeyDown
to_state: Selected2
- from_state: EditLabel
label: onMouseDown
to_state: Ready
- from_state: Move
label: onMouseUp
to_state: Selected2
- from_state: Ready
label: onMouseDown
to_state: Selected1
- from_state: Selected1
label: onMouseMove
to_state: Move
- from_state: Selected1
label: onMouseUp
to_state: Selected2
- from_state: Selected2
label: onKeyDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Selected3
- from_state: Selected3
label: onMouseMove
to_state: Move
- from_state: Selected3
label: onMouseUp
to_state: ContextMenu
- from_state: Start
label: start
to_state: Ready

BIN
docs/networking/site.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

83
docs/networking/site.yml Normal file
View File

@@ -0,0 +1,83 @@
diagram_id: 63
finite_state_machine_id: 22
name: site_fsm
states:
- id: 9
label: ContextMenu
x: 887
y: 1031
- id: 2
label: Disable
x: 760
y: 468
- id: 7
label: EditLabel
x: 600
y: 934
- id: 8
label: Move
x: -69
y: 861
- id: 1
label: Ready
x: 532
y: 560
- id: 4
label: Selected1
x: 214
y: 566
- id: 5
label: Selected2
x: 220
y: 810
- id: 6
label: Selected3
x: 249
y: 1047
- id: 3
label: Start
x: 582
y: 334
transitions:
- from_state: ContextMenu
label: onLabelEdit
to_state: EditLabel
- from_state: ContextMenu
label: onMouseDown
to_state: Ready
- from_state: EditLabel
label: onKeyDown
to_state: Selected2
- from_state: EditLabel
label: onMouseDown
to_state: Ready
- from_state: Move
label: onMouseUp
to_state: Selected2
- from_state: Ready
label: onMouseDown
to_state: Selected1
- from_state: Selected1
label: onMouseMove
to_state: Move
- from_state: Selected1
label: onMouseUp
to_state: Selected2
- from_state: Selected2
label: onKeyDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Ready
- from_state: Selected2
label: onMouseDown
to_state: Selected3
- from_state: Selected3
label: onMouseMove
to_state: Move
- from_state: Selected3
label: onMouseUp
to_state: ContextMenu
- from_state: Start
label: start
to_state: Ready

BIN
docs/networking/stream.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

View File

@@ -0,0 +1,42 @@
finite_state_machine_id: 20
name: stream_fsm
states:
- id: 4
label: Connecting
x: 344
y: 312
- id: 5
label: Selecting
x: 311
y: 23
- id: 1
label: Ready
x: 36
y: 28
- id: 3
label: Connected
x: 55
y: 317
- id: 2
label: Start
x: 43
y: -188
transitions:
- from_state: Ready
label: onNewStream
to_state: Selecting
- from_state: Start
label: start
to_state: Ready
- from_state: Connected
label: start
to_state: Ready
- from_state: Connecting
label: onMouseUp
to_state: Ready
- from_state: Connecting
label: onMouseUp
to_state: Connected
- from_state: Selecting
label: onMouseUp
to_state: Connecting

50
docs/networking/test.yml Normal file
View File

@@ -0,0 +1,50 @@
diagram_id: 69
finite_state_machine_id: 23
name: diagram
states:
- id: 1
label: Disabled
x: 895
y: 344
- id: 4
label: Loading
x: 524
y: 710
- id: 5
label: Ready
x: 722
y: 509
- id: 6
label: Reporting
x: 926
y: 721
- id: 3
label: Running
x: 720
y: 922
- id: 2
label: Start
x: 702
y: 186
transitions:
- from_state: Disabled
label: onEnableTest
to_state: Ready
- from_state: Loading
label: start
to_state: Running
- from_state: Ready
label: onDisableTest
to_state: Disabled
- from_state: Ready
label: start
to_state: Loading
- from_state: Reporting
label: start
to_state: Loading
- from_state: Running
label: onTestCompleted
to_state: Reporting
- from_state: Start
label: start
to_state: Disabled

BIN
docs/networking/time.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

37
docs/networking/time.yml Normal file
View File

@@ -0,0 +1,37 @@
finite_state_machine_id: 8
name: time_fsm
states:
- id: 1
label: Present
x: 256
y: 123
- id: 2
label: Start
x: 245
y: -161
- id: 3
label: Past
x: -115
y: 129
transitions:
- from_state: Past
label: onRedo
to_state: Present
- from_state: Past
label: onMouseWheel
to_state: Present
- from_state: Past
label: onKeyDown
to_state: Present
- from_state: Start
label: start
to_state: Present
- from_state: Present
label: onUndo
to_state: Past
- from_state: Present
label: onMouseWheel
to_state: Past
- from_state: Present
label: onKeyDown
to_state: Past

BIN
docs/networking/toolbox.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

View File

@@ -0,0 +1,98 @@
finite_state_machine_id: 14
name: toolbox_fsm
states:
- id: 9
label: Disabled
x: 885
y: 141
- id: 7
label: OffScreen
x: 1140
y: 217
- id: 1
label: Selected
x: 1180
y: 959
- id: 2
label: Move
x: 1409
y: 741
- id: 3
label: Ready
x: 892
y: 429
- id: 4
label: Scrolling
x: 567
y: 431
- id: 5
label: Selecting
x: 888
y: 710
- id: 6
label: Dropping
x: 1358
y: 431
- id: 8
label: Start
x: 672
y: 196
- id: 10
label: OffScreen2
x: 1115
y: -12
transitions:
- from_state: Ready
label: onDisable
to_state: Disabled
- from_state: OffScreen2
label: onToggleToolbox
to_state: Disabled
- from_state: OffScreen2
label: onEnable
to_state: OffScreen
- from_state: Ready
label: onToggleToolbox
to_state: OffScreen
- from_state: Selecting
label: onMouseDown
to_state: Selected
- from_state: Selected
label: onMouseMove
to_state: Move
- from_state: Selecting
label: onMouseDown
to_state: Ready
- from_state: Selected
label: onMouseUp
to_state: Ready
- from_state: Dropping
label: start
to_state: Ready
- from_state: Start
label: start
to_state: Ready
- from_state: Scrolling
label: onMouseWheel
to_state: Ready
- from_state: OffScreen
label: onToggleToolbox
to_state: Ready
- from_state: Disabled
label: onEnable
to_state: Ready
- from_state: Ready
label: onMouseWheel
to_state: Scrolling
- from_state: Ready
label: onMouseDown
to_state: Selecting
- from_state: Move
label: onMouseUp
to_state: Dropping
- from_state: OffScreen
label: onDisable
to_state: OffScreen2
- from_state: Disabled
label: onToggleToolbox
to_state: OffScreen2

BIN
docs/networking/view.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

45
docs/networking/view.yml Normal file
View File

@@ -0,0 +1,45 @@
finite_state_machine_id: 2
name: view_fsm
states:
- id: 1
label: Start
x: 498
y: 175
- id: 2
label: Ready
x: 506
y: 395
- id: 3
label: Scale
x: 310
y: 626
- id: 4
label: Pan
x: 741
y: 631
- id: 5
label: Pressed
x: 739
y: 392
transitions:
- from_state: Scale
label: onMouseWheel
to_state: Ready
- from_state: Start
label: start
to_state: Ready
- from_state: Ready
label: onMouseWheel
to_state: Scale
- from_state: Ready
label: onMouseDown
to_state: Pressed
- from_state: Pressed
label: onMouseMove
to_state: Pan
- from_state: Pressed
label: onMouseUp
to_state: Ready
- from_state: Pan
label: onMouseUp
to_state: Ready