smoogipoo
5d0a636cc4
Rename SelectionBox -> Selection
2018-03-30 15:51:38 +09:00
smoogipoo
1dca1663c3
Handle all selection events within SelectionBox (incl. single-mask)
2018-03-30 15:50:55 +09:00
smoogipoo
082e5e4949
Reduce iterations of DragBox
2018-03-30 15:06:52 +09:00
smoogipoo
6b2ca36657
Add license header
2018-03-29 22:52:42 +09:00
smoogipoo
d9c5a0c6d1
Fix position editing not working
2018-03-29 22:38:44 +09:00
smoogipoo
4446aeaa0d
Commenting + cleanup of HitObjectMask/HitObjectMaskLayer
2018-03-29 22:38:28 +09:00
smoogipoo
d8f26f2260
Make HitObjectMaskLayer not iterate through all masks when deselecting
2018-03-29 22:22:42 +09:00
smoogipoo
1018711cc9
Cleanup SelectionBox
2018-03-29 22:20:56 +09:00
smoogipoo
346de77776
Cleanup DragBox
2018-03-29 22:13:28 +09:00
smoogipoo
04874bcda4
"overlay" -> "mask"
2018-03-29 22:09:22 +09:00
smoogipoo
6d4f94756e
Rewrite the way drag + click selections happen
...
The general idea here is that we need the masks to handle mouse down events, as they need to handle the drag (mousedown -> drag immediately).
I've rewritten the editor selections to use events, as there are some 3 different components that handle/trigger selections in different ways.
1. All selections/deselections now propagate through `HitObjectMask.Select()`/`HitObjectMask.Deselect()`.
2. Components that react to changes in the selection bind to the masks' `Selected`/`Deselected` events, and track them/change their states locally.
3. Masks provide a `SingleSelectionRequested` event which is invoked on the mouse-down event. Various components bind to this event to perform state changes locally in this scenario.
4. `DragBox` now handles all drag input locally. It triggers `Select`/`Deselect` on the masks it needs to.
5. `SelectionBox` handles the display of itself locally.
6. `SelectionBox` handles movement of groups of masks locally.
7. `HitObjectMasks` handles movement of itself locally.
2018-03-29 22:07:23 +09:00
smoogipoo
6314694557
Make HitObjectMaskLayer always create masks for all objects
2018-03-29 17:13:45 +09:00
Dean Herbert
0e669c9a3f
Fix many warnings
2018-03-24 18:23:22 +09:00
smoogipoo
ffa712dccb
Fix post-merge issues
2018-03-24 15:19:45 +09:00
smoogipoo
2b7d22c4ea
Very slightly reduce size of slider bar to increase bottom padding
2018-03-22 20:11:55 +09:00
Dean Herbert
dade52d15d
Fix vertical padding
2018-03-22 16:15:14 +09:00
Dean Herbert
271c082606
Adjust colour assignment
2018-03-21 16:25:32 +09:00
Dean Herbert
48142602ea
Adjust text size to match design
2018-03-21 16:04:43 +09:00
Dean Herbert
63f0419d6a
Apply minor fixes
2018-03-21 15:40:43 +09:00
Dean Herbert
8ac660b0c6
Fixes for keyboard handling and general code quality
2018-03-20 22:25:15 +09:00
Dean Herbert
aa8b0d017c
Adjust colours and spacing
2018-03-20 21:59:56 +09:00
Dean Herbert
dac1ba21db
Make keyboard control work
2018-03-20 21:38:22 +09:00
Dean Herbert
045610dbfe
Adjust styling and colours
2018-03-20 21:31:17 +09:00
Dean Herbert
c2eb32c0e9
DrawableBeatDivisor -> BeatDivisorControl
2018-03-20 20:10:27 +09:00
Dean Herbert
6fd650777c
Move value change logic to bindable
...
Also add drag support
2018-03-20 20:09:55 +09:00
smoogipoo
50192b21e3
Give DrawableBeatDivisor a ctor
2018-03-20 13:57:25 +09:00
smoogipoo
b1d09500f2
Integrate beat snap divisor into editor seeking
2018-03-19 20:42:06 +09:00
smoogipoo
c5eab7a227
Actually rename to DrawableBeatDivisor...
2018-03-19 20:34:24 +09:00
smoogipoo
5ecbc5612c
Integrate with dependency injection
2018-03-19 20:33:58 +09:00
smoogipoo
4c0ccffe08
Merge remote-tracking branch 'origin/master' into beat-snap-divisor
2018-03-19 20:23:15 +09:00
smoogipoo
df0b8a24c5
Rename + renamespace
2018-03-19 20:21:19 +09:00
smoogipoo
879dbc75b5
Nest TickContainer in BeatSnapVisualiser
2018-03-19 20:20:29 +09:00
smoogipoo
b25c564ecb
Integrate into editor's compose screen
2018-03-19 20:14:58 +09:00
smoogipoo
32fecc6ff4
Adjust icon scale + text
2018-03-19 20:14:34 +09:00
smoogipoo
e96dad441d
Offset the icon buttons a little bit to look a bit more centered
...
Maybe it's just me, but this is really triggering me.
2018-03-19 20:14:13 +09:00
smoogipoo
c86ddb7ee3
Add slight easing to marker movements
2018-03-19 19:57:02 +09:00
smoogipoo
fbc92bfa01
Add previous/next divisor button actions
2018-03-19 19:55:49 +09:00
smoogipoo
070db63157
Privatise tick to TickContainer
2018-03-19 19:52:22 +09:00
smoogipoo
7182442b21
Add divisor text
2018-03-19 19:49:57 +09:00
smoogipoo
6b035e8c53
Add basic structure/layout for the beat snap visualiser
2018-03-19 19:46:26 +09:00
Dean Herbert
4b812279bb
Merge branch 'master' into fix-editor-clocks
2018-03-19 19:06:38 +09:00
smoogipoo
8d4c9eda48
Fix attempting to add selection boxes with no selection
...
E.g. because DrawableSpinner doesn't (currently) create an overlay, SelectionBox was being constructed with 0 hitobjects and then calculating a non-finite size for itself.
2018-03-19 18:00:11 +09:00
smoogipoo
e25d1f6982
Pass down editor clocks through DI
2018-03-19 16:27:52 +09:00
Dean Herbert
4b83278cf4
Merge branch 'master' into fix-editor-clocks
2018-03-16 23:32:54 +09:00
smoogipoo
d05947ef48
Pass adjustable clocks to components, rather than relying on the track
2018-03-15 18:19:28 +09:00
smoogipoo
c8f6a6980b
Move clock construction to Editor
2018-03-15 17:27:37 +09:00
smoogipoo
5e742eb466
Move editor constructions to BDL load
2018-03-15 17:10:08 +09:00
Dean Herbert
81f82d98a1
Rework a lot of naming and structure
2018-03-14 15:18:21 +09:00
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
Dan Balasescu
3bfa6bd9fd
Merge branch 'master' into better-notification-delays
2017-12-27 23:26:57 +09:00