Dean Herbert
8990152315
Fix duration snapping still being incorrect
2020-02-07 16:43:50 +09:00
Dean Herbert
3aa18abd99
Fix typo in xmldoc
...
Co-Authored-By: Tree <thewildtree@outlook.com>
2020-02-07 16:22:59 +09:00
Dean Herbert
f63bf06373
Fix incorrect distance snap grid being displayed when in selection mode
2020-02-07 16:09:54 +09:00
Dean Herbert
63c595ed97
Make EditorBeatmap a component and move UpdateHitObject to it
2020-02-05 17:48:21 +09:00
Berkan Diler
9596030e1d
Make use of ElementAtOrDefault() when possible
2020-01-31 18:32:47 +01:00
Dan Balasescu
77b1bf3ee2
Merge pull request #7648 from peppy/keyboard-composition-tools
...
Allow selecting composition tools using 1-4 keys
2020-01-29 17:29:11 +09:00
Dan Balasescu
37c7fe30fa
Merge branch 'master' into keyboard-composition-tools
2020-01-29 16:52:47 +09:00
Dan Balasescu
66b8d38d42
Merge branch 'master' into selection-composition-conformity
2020-01-29 16:52:45 +09:00
Dan Balasescu
65ac412ff8
Merge branch 'master' into fix-beat-snap
2020-01-29 15:32:27 +09:00
Dean Herbert
8e2159e4eb
Ensure selection tool correctly matches selection state
...
- When a selection is made (via the timeline) the selection tool should become the select tool.
- When the selection tool is changed to anything *but* the select tool, the selection should be cleared.
2020-01-28 15:13:12 +09:00
Dean Herbert
7e0c45de6d
Allow selecting composition tools using 1-4 keys
2020-01-28 15:09:03 +09:00
Dean Herbert
e81d3c51ed
Move select tool to an actual tool implementation
...
Also tidies up radio button action firing so calling Select actually fires the associated action in all cases.
2020-01-28 15:05:29 +09:00
Dean Herbert
58654f28b6
Fix beat snap implementation being incorrect
2020-01-28 12:48:24 +09:00
Dean Herbert
143d47ec93
Merge pull request #7538 from peppy/decouple-blueprint-container
...
Decouple blueprint container to allow usage in timeline
2020-01-23 16:13:51 +09:00
Dean Herbert
ccf911884b
Remove passed in BaetDivisor
2020-01-23 15:31:56 +09:00
Dean Herbert
098d643955
Move beat snapping to its own interface
2020-01-23 14:39:56 +09:00
smoogipoo
5f178b7755
General refactorings
2020-01-16 11:54:03 +09:00
Dean Herbert
d57f55f053
Apply remaining changes required to restore previous functionality
2020-01-15 19:09:49 +09:00
Dean Herbert
ee332e0d42
Split out BlueprintContainer functionality further
2020-01-02 18:21:16 +09:00
smoogipoo
8c378dc625
Move EditorBeatmap construction/conversion to Editor
2019-12-30 14:51:14 +09:00
smoogipoo
6069d98ced
Remove generic editor beatmap
2019-12-27 19:39:30 +09:00
smoogipoo
5861eca80d
Make DrawableRuleset take a converted beatmap
2019-12-12 15:58:11 +09:00
Dean Herbert
9f4c8db395
Add xmldoc
2019-12-06 12:17:41 +09:00
Dean Herbert
d8620a70fb
Make work in editor
2019-12-05 20:12:25 +09:00
smoogipoo
f3ddc4c00b
Advance editor clock after a snapped placement
2019-11-07 14:08:02 +09:00
smoogipoo
9f28b1905b
Expose composer method to update hitobject
2019-10-31 18:15:19 +09:00
smoogipoo
4ca6a5a0cc
Interface the distance snap provider
2019-10-25 16:50:21 +09:00
smoogipoo
607b4d874a
Refactor flow of snapping through HitObjectComposer
2019-10-25 16:40:30 +09:00
smoogipoo
d83b9ef0e4
Rename grid snapping methods
2019-10-24 18:18:04 +09:00
smoogipoo
f45f17339c
Implement slider path distance snapping
2019-10-24 18:17:30 +09:00
smoogipoo
c03fa01fd9
Remove unnecessary set
2019-10-23 17:51:16 +09:00
smoogipoo
2c9b11cdfd
Move variable outside of if block
2019-10-23 17:49:21 +09:00
smoogipoo
64682611bb
Fix distance snapping grid not updating on scroll
2019-10-23 16:39:14 +09:00
Dean Herbert
b157aaead1
Merge remote-tracking branch 'upstream/master' into beatsnap-grid-integration
2019-10-21 17:09:43 +09:00
smoogipoo
190a83da6e
Refresh the grid after a placement
2019-10-18 19:04:08 +09:00
Dean Herbert
07286c0cfc
Fix editor's clock not being processed unless composer is loaded
2019-10-18 18:21:53 +09:00
smoogipoo
31313ec9e1
Fix potential nullref
2019-10-18 17:56:31 +09:00
smoogipoo
463079e148
Implement placement snapping
2019-10-18 13:48:59 +09:00
smoogipoo
cb301a4661
Improve performance of intra-frame updates/deletions
2019-10-18 13:18:57 +09:00
smoogipoo
b047e05d86
Fix bad variable names
2019-10-18 13:18:16 +09:00
smoogipoo
ba4402207a
Implement selection time snapping
2019-10-18 12:53:38 +09:00
smoogipoo
1dc7c59853
Implement selection position snapping
2019-10-18 12:53:27 +09:00
smoogipoo
c4704f6a29
Add beat snap grid to the composer
2019-10-18 12:47:52 +09:00
smoogipoo
d3e38f5e5a
Make the editor beatmap protected
2019-10-18 12:40:31 +09:00
smoogipoo
2c13043c42
Hook up the event to HitObjectComposer
2019-10-03 14:40:00 +09:00
smoogipoo
6ab2b20c70
Add an interface for working beatmaps
2019-08-29 19:38:44 +09:00
smoogipoo
714ee312da
Rename DrawableEditRuleset -> DrawableEditRulesetWrapper
2019-08-29 18:20:43 +09:00
smoogipoo
87e28ab1f9
Remove non-generic DrawableEditRuleset
2019-08-29 18:12:29 +09:00
smoogipoo
59296d12f3
Refactor HitObjectComposer
2019-08-29 18:02:50 +09:00
smoogipoo
0fbdcabb6f
Re-use a single beatmap processor
2019-08-29 17:21:52 +09:00
smoogipoo
b40143cb73
Remove unnecessary comment
2019-08-29 17:18:34 +09:00
smoogipoo
5db813b7a4
Add secondary interface for further abstraction
2019-08-29 16:26:39 +09:00
smoogipoo
7927b684d3
Hook up + use editor beatmap
2019-08-29 16:06:40 +09:00
smoogipoo
6949c96aaa
Add initial EditorBeatmap structure
2019-08-29 15:17:27 +09:00
smoogipoo
0222424aef
Make mods IReadOnlyList<Mod> gamewide
...
Prevents potential multiple evaluations of enumerable.
2019-04-10 17:20:36 +09:00
smoogipoo
c584967eb1
Remove mods from workingbeatmap
2019-04-09 12:59:32 +09:00
Dean Herbert
6896ec7731
Remove unnecessary method
2019-04-01 10:39:55 +09:00
Dean Herbert
42eaabe24c
Fix editor blueprints being misplaced
...
Regressed with PlayfieldAdjustmentContainer changes.
2019-03-31 01:29:37 +09:00
Dean Herbert
5f288650bf
Fix misses/typos
2019-03-20 14:49:33 +09:00
Dean Herbert
baea7230bc
Rename RulesetContainer to DrawableRuleset
2019-03-19 23:47:31 +09:00
Dean Herbert
26d53d06a9
Fix remaining issues
2019-02-28 13:31:40 +09:00
smoogipoo
d8c55bc729
Adjust namespaces
2019-02-21 19:05:52 +09:00
Dean Herbert
ca5c8d37d1
Use leased bindables
2019-02-01 16:44:06 +09:00
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00
smoogipoo
55edeb095d
SelectionBox -> SelectionHandler
2018-11-19 16:58:11 +09:00
smoogipoo
d5464702fa
Fix post-merge issue
2018-11-15 20:56:34 +09:00
smoogipoo
eddba44d0f
Merge branch 'note-placement' into inter-column-movements
2018-11-15 20:53:57 +09:00
smoogipoo
c963fc7cd2
Reduce chaining
2018-11-14 18:34:13 +09:00
smoogipoo
fbc20d2d4d
Hide placement when cursor is not in the playfield
2018-11-13 12:52:04 +09:00
smoogipoo
3a1fee59fb
Implement note placement
2018-11-12 18:24:18 +09:00
Dean Herbert
4783df1d4b
Fix compose mode not working
2018-11-09 11:36:06 +09:00
smoogipoo
52f4923c8e
Remove intermediate Screens namespace
2018-11-06 18:28:22 +09:00
smoogipoo
ac25718c5a
Renamespace compose-mode components
2018-11-06 18:14:46 +09:00
smoogipoo
27d82052f4
BorderLayer -> EditorPlayfieldBorder
2018-11-06 18:10:46 +09:00
smoogipoo
11be820efe
CreateMaskFor -> CreateBlueprintFor
2018-11-06 18:03:21 +09:00
smoogipoo
90c813618a
Merge PlacementContainer into BlueprintContainer
2018-11-06 18:02:55 +09:00
smoogipoo
f2a5f28ea2
SelectionMask -> SelectionBlueprint
2018-11-06 17:56:04 +09:00
smoogipoo
ad2836a61e
MaskSelection -> SelectionBox
2018-11-06 17:52:47 +09:00
smoogipoo
26c9390c16
HitObjectMaskLayer -> BlueprintContainer
2018-11-06 17:36:10 +09:00
smoogipoo
0e841628b6
Implement hitobject deletion
2018-10-18 16:36:06 +09:00
smoogipoo
b7435c0c5f
Fix border layer not working
2018-10-17 18:29:30 +09:00
smoogipoo
6eb7a030d0
Fix placement container not being refreshed upon placement
2018-10-17 18:11:44 +09:00
smoogipoo
d36ac59ca2
Reduce complexity of creating edit ruleset containers
2018-10-17 18:06:00 +09:00
smoogipoo
969477dadd
Remove placement events, make everything pass top-down
2018-10-17 17:43:16 +09:00
smoogipoo
62635c5ab8
Add container to handle placement mask
2018-10-17 16:17:49 +09:00
smoogipoo
4ea4ec0d25
Move placement handling events to a higher level
2018-10-17 15:46:30 +09:00
smoogipoo
70f1d17b7e
Merge remote-tracking branch 'origin/master' into editor-mask-placement
...
# Conflicts:
# osu.Game.Rulesets.Catch/UI/CatchRulesetContainer.cs
# osu.Game.Rulesets.Mania/Edit/ManiaEditRulesetContainer.cs
# osu.Game.Rulesets.Osu/Edit/OsuEditRulesetContainer.cs
# osu.Game/Rulesets/UI/RulesetContainer.cs
2018-10-16 17:28:16 +09:00
smoogipoo
934b687965
Fix selection masks not being added for new objects
2018-10-03 16:49:59 +09:00
smoogipoo
3420e0c7eb
Re-implement composition tools + implement placement masks
2018-10-03 16:27:26 +09:00
smoogipoo
540a010fbb
Implement an intermediary EditRulesetContainer
2018-10-03 15:36:24 +09:00
smoogipoo
4cdb6dcea5
Rename HitObjectMask -> SelectionMask
2018-10-03 13:28:00 +09:00
smoogipoo
826dc6ceb7
Make Playfield not a ScalableContainer
2018-09-21 14:02:32 +09:00
Dean Herbert
aead4be134
Merge remote-tracking branch 'upstream/master' into AlFasGD-mania-mask-container
2018-07-23 06:36:10 +02:00
smoogipoo
1139f0dbf2
Centralise method of disabling playfield judgements
2018-07-20 17:04:33 +09:00
smoogipoo
b7721edc80
Remove more unnecessary changes
2018-07-19 18:25:28 +09:00
smoogipoo
9b7d01397b
Add ruleset config to HitObjectComposer
2018-07-17 16:53:32 +09:00
smoogipoo
9f730dd784
Merge branch 'editor-composer-cleanup' into mania-mask-container
...
# Conflicts:
# osu.Game/Rulesets/Edit/HitObjectComposer.cs
# osu.Game/Screens/Edit/Screens/Compose/Layers/HitObjectMaskLayer.cs
2018-07-17 16:00:46 +09:00
smoogipoo
3905a9105c
Add a playfield method to retrieve all hitobjects
2018-07-17 15:51:10 +09:00
smoogipoo
0b66f63f7d
Invert flow order of hitobjects between composer and mask layers
2018-07-17 15:35:32 +09:00
smoogipoo
55475d129f
Merge remote-tracking branch 'origin/master' into mania-mask-container
...
# Conflicts:
# osu.Game.Rulesets.Mania/Objects/Drawables/DrawableHoldNote.cs
2018-06-07 19:19:20 +09:00
smoogipoo
72cc53aded
Rename GameBeatmap -> BindableBeatmap
2018-06-06 20:16:20 +09:00
smoogipoo
8004b8af4d
Privatise the OsuGame beatmap, add local beatmap to OsuTestCase
2018-05-23 17:38:02 +09:00
AlFasGD
d504a44dfb
Implement mask layering (incomplete)
2018-05-21 23:08:04 +03:00
smoogipoo
4ecdea8b2e
Remove now-unnecessary IsForCurrentRuleset property of RulesetContainer
2018-05-07 10:17:54 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
smoogipoo
fbc50d6030
Merge master into editor-clock
2018-04-12 13:35:53 +09:00
smoogipoo
248be8e35f
HitObjectComposer no longer needs a beat divisor
2018-04-06 18:21:45 +09:00
smoogipoo
c7abd56fc4
Give editor a custom clock to handle seeking
2018-04-06 18:11:37 +09:00
Huo Yaoyuan
b842f682eb
Use Linq.Append and Prepend.
2018-04-02 12:06:34 +08:00
smoogipoo
786e6242e1
Make bdl beat divisor nullable
2018-03-20 14:01:06 +09:00
smoogipoo
b1d09500f2
Integrate beat snap divisor into editor seeking
2018-03-19 20:42:06 +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
6f7163769d
Adjust comment for readability
2018-03-16 19:57:14 +09:00
Dean Herbert
bca4b620b6
Merge branch 'master' into editor-wheel-movement
2018-03-16 15:56:51 +09:00
smoogipoo
fc15c63a88
Re-order methods
2018-03-15 18:28:08 +09:00
smoogipoo
c937ef5d24
Fix not being able to scroll before the first timing point
2018-03-15 18:26:53 +09:00
smoogipoo
c8f6a6980b
Move clock construction to Editor
2018-03-15 17:27:37 +09:00
smoogipoo
9e0aeec574
Use a decoupled clock for accurate clock times
2018-03-15 17:03:33 +09:00
smoogipoo
50f9d810dd
Add more testcases + fix up seeking a bit more
2018-03-15 15:40:52 +09:00
smoogipoo
0da3ae0944
Add some basic tests + fixes to seek/seekforward functionality
2018-03-14 20:52:48 +09:00
Dean Herbert
81f82d98a1
Rework a lot of naming and structure
2018-03-14 15:18:21 +09:00
smoogipoo
299de4b866
Rewrite seeking to better handle timing point boundaries
2018-03-13 16:54:34 +09:00
smoogipoo
df352c98d6
Change wheel direction to match stable
2018-03-13 14:30:50 +09:00
smoogipoo
e580819621
Rename to seekAmount
2018-03-13 14:08:43 +09:00
smoogipoo
6c148930b5
Don't skip beats when scrolling in the direction of the closest beat
2018-03-13 14:02:37 +09:00
smoogipoo
8acba47a2b
Implement mouse wheel movement in the editor
2018-03-13 11:23:44 +09:00
smoogipoo
4103c66cff
Move selection overlay to HitObjectOverlayLayer for extensibility
2018-03-10 00:48:57 +09:00
smoogipoo
ad72d3816b
Allow dragging anywhere in a capture box to move objects
2018-03-09 23:43:50 +09:00
smoogipoo
278b25bcbd
Fix border being the wrong size
2018-02-23 15:29:56 +09:00
smoogipoo
45c579630d
Make selectionLayer handle input below object overlays
2018-02-22 14:34:37 +09:00
smoogipoo
07252254eb
Fix post-merge issues
2018-02-22 14:22:04 +09:00
smoogipoo
99e9eb81f2
Merge remote-tracking branch 'origin/master' into editor-hitobject-overlays
2018-02-22 14:16:01 +09:00
Dean Herbert
7c942eb592
Tidy up layer container logic
2018-02-22 13:42:36 +09:00
smoogipoo
4934ef7429
Add playfield aspect ratio + scaling modifications to composer layers
2018-02-21 11:07:42 +09:00
smoogipoo
ad2f556133
Add hitobject overlays to selected hitobjects
2018-02-20 18:01:45 +09:00
smoogipoo
8f25a5da66
Add playfield aspect ratio + scaling modifications to composer layers
2018-02-20 14:01:33 +09:00
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
Dean Herbert
6f5f4f76e5
Use Logger.Error when exceptions are involved
2017-12-25 18:21:15 +09:00
smoogipoo
666dcdbd62
Give HitObjectComposer a SelectionLayer
2017-12-11 22:20:02 +09:00
smoogipoo
a80059032c
Remove PlayfieldOverlay
2017-12-02 20:24:10 +09:00
smoogipoo
5a7c4772bd
Remove PlayfieldUnderlay for now
2017-12-02 19:53:20 +09:00
smoogipoo
c0c051aa32
Remove unused parameter for now
2017-11-30 21:58:41 +09:00
smoogipoo
e8cbde3ae1
Add overlay/underlay
2017-11-30 21:56:19 +09:00
smoogipoo
7e34b0f08d
Remove SelectionTool, make Select the default tool
2017-11-30 19:53:52 +09:00
smoogipoo
677f3653eb
Hide osu! playfield cursor
2017-11-30 19:19:34 +09:00
smoogipoo
efa39f38ca
CI fixes
2017-11-30 18:49:08 +09:00
smoogipoo
e5353bb53e
Add border to playfield, add shadow to toolbox buttons
2017-11-30 17:38:55 +09:00
smoogipoo
456bbe25f3
Implement toolbox into HitObjectComposer
2017-11-30 16:58:14 +09:00
smoogipoo
309eb4edd7
Integrate HitObjectComposer into Compose
...
Also removes the other rulesets' HitObjectComposers for now.
2017-11-29 17:46:21 +09:00