Dean Herbert
9c62c90cfc
Refactor SelectionBlueprint
and MoveSelectionEvent
to work in screen-space coordinates
...
Until now, the implementation of the overrides in `SelectionBlueprint`
have been confusing to the point where I would just implement by
trial-and-error (or copying from an existing implementation). This was
due to a combination of using "object" space coordinates
(ie. the thing the `Blueprint` is operating on) and screen-space coordinates.
This change switches all event related coordinates to screen-space,
which is how we already handle rotation/scale operations. With the
introduction of other editor types where the related objects are
drawables, this also makes a lot more sense.
2021-04-29 16:10:42 +09:00
Dean Herbert
532ec40395
Remove unnecessary newline
2021-04-28 12:04:48 +09:00
Dean Herbert
43772f4303
Remove duplicated call to initially select blueprint
2021-04-28 12:03:41 +09:00
Dean Herbert
e4f2e0131c
Rename AllowDeselection
to better match use case
2021-04-28 12:02:55 +09:00
Dean Herbert
d0be8f9fb3
Remove one more out-of-date comment
2021-04-28 11:45:36 +09:00
Dean Herbert
42255f8d33
Rename and xmldoc selection completed method
2021-04-27 19:01:29 +09:00
Dean Herbert
7ec5ea1eb5
Remove hitobject terminology from base classes
2021-04-27 19:01:29 +09:00
Dean Herbert
dd3d8e5d03
Make SelectionHandler
abstract to ensure things get implemented
2021-04-27 19:01:29 +09:00
Dean Herbert
eac139ca0e
Allow BlueprintContainer to perform movement without an ISnapProvider
2021-04-27 19:01:29 +09:00
Dean Herbert
f2e56bd306
Refactor editor selection/blueprint components to be generic
2021-04-27 19:01:29 +09:00
Dean Herbert
1884c18a2c
Ignore movement operations which have no offset
2021-04-22 18:12:03 +09:00
Dean Herbert
c59906e925
Fix an occasional crash when deleting a HitObject via internal means
2021-04-16 15:55:33 +09:00
Dean Herbert
66e74da2b7
Fix regression in quick delete mouse action blocking
2021-04-13 13:03:14 +09:00
Dean Herbert
cc2acf5e54
Fix ctrl-dragging on an existing selection causing deselection of the hovered object
2021-04-12 19:05:23 +09:00
Dean Herbert
8d4ff867bf
Fix barlines showing up in the osu!mania editor's timeline
2021-03-25 16:30:31 +09:00
Bartłomiej Dach
dd48b68f8a
Ensure selected blueprints are given selection priority
2021-03-19 22:44:33 +01:00
Dean Herbert
cd1c1bf534
Centralise cases of performing actions on the current selection
...
By moving this to a central location, we can avoid invoking the
EditorChangeHandler when there is no selection made. This helps
alleviate the issue pointed out in
https://github.com/ppy/osu/issues/11901 , but not fix it completely.
2021-02-26 14:15:13 +09:00
Dean Herbert
04fa32bc34
Rename and add xmldoc for smooth seeking method
2021-01-15 16:14:21 +09:00
Dean Herbert
c17d67bc7d
Merge branch 'master' into editor-beat-snap-always
2020-11-30 18:34:38 +09:00
Dean Herbert
7edbba58f7
Avoid updating hitobjects unnecessarily for start time changes
...
This was firing regardless of whether the start time was changed, such
as where beat snap provided the same time the object already has.
The case where a change actually occurs is already handled by
EditorBeatmap (see `startTimeBindables`), so it turns out this local
handling is not required at all.
2020-11-27 16:31:06 +09:00
Dean Herbert
91592cf32d
Expose EditorClock for consumption
2020-11-26 19:20:39 +09:00
Dean Herbert
0ddeff648d
Fix incorrect index lookup on non-ordered selections
2020-11-25 17:25:54 +09:00
Dean Herbert
c9a41f9dae
Make all objects in selection candidates for spatial snapping
...
Closes #10898 .
2020-11-24 17:35:54 +09:00
smoogipoo
f00c23b4a0
Add comment + xmldoc
2020-11-18 13:37:15 +09:00
smoogipoo
783c172b5d
Make sealed and cleanup comparator
2020-11-18 13:33:22 +09:00
smoogipoo
58c8184ad7
Define blueprint order similarly to hitobjects
2020-11-17 22:56:31 +09:00
Dean Herbert
7b79b9b9c1
Merge branch 'master' into fix-quick-delete-crash
2020-11-16 13:54:54 +09:00
Bartłomiej Dach
399a1a16a0
Refactor beginClickSelection in a slightly different way
2020-11-15 21:06:47 +01:00
kamp
1db303b159
Revert beginClickSelection logic
2020-11-15 16:54:48 +01:00
Bartłomiej Dach
610ed99ae3
Add null checks to unguarded resolved-as-null fields
2020-11-14 14:52:58 +01:00
kamp
4d2bc790fd
Fix crash on shift+right-click deleting objects
2020-11-14 13:20:16 +01:00
smoogipoo
0219aff7bc
Add timeline visible range adjustment
2020-11-13 17:10:29 +09:00
smoogipoo
3957697c48
Add pooling support to the editor
2020-11-13 17:08:20 +09:00
smoogipoo
4ef2e9548c
Pass HitObjectComposer to BlueprintContainer via ctor
2020-11-13 16:59:37 +09:00
Dean Herbert
de6fcd1792
Fix BlueprintContainer triggering assert when left and right mouse button are pressed together
2020-11-10 17:16:28 +09:00
Dean Herbert
a012105dac
Fix editor quick delete being triggerable from left mouse button
...
Closes https://github.com/ppy/osu/issues/10629 .
2020-11-10 16:54:37 +09:00
Dean Herbert
d19b799f44
Invert boolean logic
2020-11-04 17:53:03 +09:00
Dean Herbert
9f333ac58a
Add the ability to delete slider control points using shift+right click
...
Closes https://github.com/ppy/osu/issues/10672 .
In two minds about how this should be implemented but went in this
direction initially. The other way would be to add local handling of
Shift-Right Click inside PathControlPointPiece (which is already doing
mouse handling itself).
2020-11-03 20:46:33 +09:00
Bartłomiej Dach
003994ab75
Bind UpdateVisibility() directly to source of truth
2020-10-31 13:54:02 +01:00
Bartłomiej Dach
202fe09306
Group selection actions back up in SelectionHandler
2020-10-28 22:06:48 +01:00
Dean Herbert
681e88af40
Merge branch 'master' into editor-fix-button-states-after-paste
2020-10-09 20:51:09 +09:00
Dean Herbert
3838f405dd
Fix missed usages
2020-10-09 18:50:05 +09:00
Dean Herbert
afed832b19
Tidy up EditorBeatmap slightly
2020-10-08 18:06:49 +09:00
Dean Herbert
ef092de9ba
Add missing UpdateHitObject calls and move local to usages (not via bindables)
2020-10-08 18:04:07 +09:00
Dean Herbert
a4e9c85333
Trigger a hitobject update after blueprint drag ends
2020-09-28 15:37:06 +09:00
Dean Herbert
51cc644b7b
Fix set access to SelectionHandler
...
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2020-09-25 17:42:49 +09:00
Dean Herbert
0f8551e9ea
Merge branch 'editor-ternary-states' into new-combo-toggle
2020-09-25 15:36:33 +09:00
Dean Herbert
a6adf8334e
Use existing method to update combo state of selection
2020-09-25 14:19:35 +09:00
Dean Herbert
e009264f10
Add new combo toggle to main composer interface
2020-09-25 14:10:30 +09:00
Dean Herbert
44be0ab762
Add basic osu! object to object snapping
2020-09-24 16:24:35 +09:00