-
Notifications
You must be signed in to change notification settings - Fork 3
/
TESTS.txt
83 lines (67 loc) · 3.72 KB
/
TESTS.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# "Tests"
these could be considered manual tests
and some could be automated perhaps
but it's also a sketch of functionality
not all of these things are implemented,
so if one of these doesn't work, it's not necessarily a *bug*
## Editor Behavior
drag with the middle mouse button to pan the view
(with momentum, wee!)
zoom in and out with the mouse wheel
(with the mouse anchored in the world)
while editing an entity
drag outside of the entity to select points (w/ a selection box)
double click outside of the entity to stop editing the entity
(another entity you click on should not be selected)
(the entity should be deselected)
double clicking on the entity should not stop editing the entity
drag on a selected point to move all selected points
drag on a non-selected point to select that point and move it
alt+drag to drag the selection from anywhere
click on a point to select that point
(even when it's one of multiple points in the selection)
shift+click or ctrl+click on a point to toggle the selected state of that point
shift+drag from anywhere to select points (w/ a selection box)
press delete to delete selected points
otherwise
press delete to delete selected entities
with selected entities
drag on a selected entity to move all selected entities
alt+drag to drag the selection from anywhere
double click on a selected entity to edit the entity
(should always make it the only selected entity)
click on a selected entity to make it the only selected entity
drag on a non-selected entity to select that entity and move it
drag outside of any entity to select entities (w/ a selection box)
click on an entity to select that entity
shift+click or ctrl+click on an entity to toggle the selected state of that entity
shift+drag from anywhere to select entities (w/ a selection box)
drag from the entities bar to create and place an entity
click on an entity in the bar to create it and have it placed randomly offscreen in the middle of nowhere
(or not)
(the cursor should be enough indication that you need to drag)
only what will be dragged should ever be shown as hovered
when there are multiple points within the minimum range for dragging, the closest should be hovered
when there are multiple entities within the minimum range for dragging, the one on top should probably be hovered
you can drag a selection to access entities that are behind large entities such as terrain or a large tree
while dragging an entity, the entities bar should be hidden
when starting editing an entity, you should not also start dragging a point
delete, undo, redo, etc. should work while dragging entities or points
minimum drag distances should be based on view positions, not world positions
undo states should only be created once a drag starts
pressing esc should either
1. cancel a selection/dragging gesture, resetting to the state before the gesture (including removing an entity dragged from the entities bar),
2. deselect any points,
3. exit entity editing mode, or
4. deselect any entities,
in that order of priority
alt+tabbing away from the window or exiting edit mode should cancel any gesture in the same way as esc, and should reset the hover state
entities and points should have hover styles
double clicks where the first click was not on the same entity as the second should be rejected
MMB-dragging from the entities bar should either work or not
it should not start a drag but not drag until you mouse off of the entities bar
there should be a way to regenerate an entity
it could be something like right click
it should work for both placed entities and entities in the entities bar
entity previews in the entities bar could show the exact random entity you would receive (and then generate a new one in the bar)
context menus