Salman Ahmed
24432dffc4
Add support for focusing intermediate slider-textbox component
2022-05-11 09:53:04 +03:00
Salman Ahmed
0b597e712e
Fix timeline not handling mouse down events
2022-05-11 09:39:27 +03:00
Bartłomiej Dach
cbd1169495
Move cache declarations of ISamplePlaybackDisabler
to interface
2022-05-08 10:38:58 +02:00
Bartłomiej Dach
9ae019eb39
Move ISamplePlaybackDisabler
to more general namespace
2022-05-08 10:38:58 +02:00
Bartłomiej Dach
202a603d72
Merge branch 'master' into distance-snap-grid-current-tiume
2022-05-07 08:49:30 +02:00
Dean Herbert
dd63657dfb
Merge pull request #18065 from huoyaoyuan/code-style
...
Enforce code style analysis shipped with .NET SDK
2022-05-07 14:58:19 +09:00
Dean Herbert
71758390b5
Fix time based distance grid alpha not correctly accounting for distance spacing multiplier
2022-05-07 13:37:36 +09:00
Salman Ahmed
723fce8174
Move inverting value to happen outside clamp
...
Looks to have no effect, but makes sense to happen outside instead.
2022-05-06 18:54:13 +03:00
Salman Ahmed
d78f1d158d
Use GetEndTime()
instead of StartTime
...
Companion to
246479bf34
2022-05-06 18:51:35 +03:00
Salman Ahmed
112496204d
Make nested class private
2022-05-06 18:50:28 +03:00
Salman Ahmed
3077d398ef
Merge branch 'master' into distance-snap-grid-current-tiume
2022-05-06 18:20:22 +03:00
Salman Ahmed
144d33f0d2
Merge branch 'master' into distance-snapping-test
2022-05-06 17:29:27 +03:00
Bartłomiej Dach
29a3ab7e7a
Halve drag box padding
...
Allows the drag box borders to collapse in on themselves to a single
line if the drag selection has zero width or height.
2022-05-06 15:21:35 +02:00
Dean Herbert
fad1f727bb
Fix editor drag box visuals
2022-05-06 20:34:44 +09:00
Dean Herbert
69592722f8
Highlight distance snap grid rings that are close to the current time value
2022-05-06 18:30:46 +09:00
Dean Herbert
118e58888b
Rename incorrectly named variable (radius is not diameter)
2022-05-06 17:51:51 +09:00
Dean Herbert
37cbc79283
Fix clamping logic to always clamp to the last displayed tick
2022-05-06 17:09:38 +09:00
Dean Herbert
684fef7f8c
Fix MaxIntervals
incorrectly factoring distance spacing multipiler into snap calculation
2022-05-06 17:09:02 +09:00
Dean Herbert
246479bf34
Fix snap extent not working correctly on sliders (and providing incorrect time values)
2022-05-06 15:54:37 +09:00
Dean Herbert
32b40bdabf
Rename DistanceBetweenTick
to be plural
2022-05-06 15:45:36 +09:00
Dan Balasescu
39d10487b9
Merge branch 'master' into snapping-tidy-distance
2022-05-05 19:55:55 +09:00
Dean Herbert
e83604a1fc
Merge branch 'master' into cache-at-interface
2022-05-05 18:54:24 +09:00
Dean Herbert
b9d8b7e413
Fix end time extent not being accounted for in new snap implementation
2022-05-05 18:49:12 +09:00
Dean Herbert
b2e9be70a5
Rewrite CircularDistanceSnapGrid
snapping implementation to use snap provider
2022-05-05 17:52:36 +09:00
Dean Herbert
4c884aea5d
Fix CircularDistanceSnapGrid
returning an incorrect time value when distance spacing is not 1.0
2022-05-05 17:09:14 +09:00
Dean Herbert
786c7f14d3
Expose DistanceSpacingMultiplier
to distance
2022-05-05 17:08:53 +09:00
Dean Herbert
de9b3d33eb
Rename misleading DistanceSpacing
variable
2022-05-05 17:08:09 +09:00
Dean Herbert
4226583afd
Merge branch 'cache-at-interface'
2022-05-05 16:52:03 +09:00
Dean Herbert
19cf9dc20b
Merge branch 'snapping-tidy-distance'
2022-05-05 16:51:32 +09:00
Dean Herbert
1c6a233cc0
Move snap provider caching to interfaces
2022-05-05 16:44:37 +09:00
Dean Herbert
b411b59006
Move IPlacementHandler
caching to interface
2022-05-05 16:43:02 +09:00
Dean Herbert
977e6d8a80
Add xmldoc for IDistanceSnapProvider
and related properties
2022-05-05 16:25:45 +09:00
Dean Herbert
f6fc926f1a
Add xmldoc and rename methods in IPositionSnapProvider
for legibility
2022-05-05 15:58:21 +09:00
Dean Herbert
df530cb5ab
Add highlighting to the position snap grid edges in addition to centre lines
2022-05-04 13:49:04 +09:00
Dean Herbert
0bb90c7b07
Fix gridline centering and ensure lines are always rendered using a fixed screen-space width
2022-05-04 13:41:55 +09:00
Huo Yaoyuan
7cf4dabe29
Fix IDE0005 and IDE0034
2022-05-03 13:09:19 +08:00
Salman Ahmed
173a6188eb
Add back float
cast to distance spacing computation
2022-04-29 08:41:37 +03:00
Salman Ahmed
fef94d49f4
Revert "Convert data type of DistanceSpacing
to float"
...
This reverts commit 7aaa88cac2
.
2022-04-29 08:02:07 +03:00
Salman Ahmed
abb88b0907
Move distance spacing application to DistanceSnapGrid
2022-04-28 10:54:38 +03:00
Salman Ahmed
7aaa88cac2
Convert data type of DistanceSpacing
to float
2022-04-28 10:24:36 +03:00
Salman Ahmed
2e8372fe90
Minor cleanup
...
Just from reading diff.
2022-04-28 07:14:43 +03:00
Salman Ahmed
59cf3ff50f
Move distancing methods from IPositionSnapProvider
to IDistanceSnapProvider
2022-04-28 05:48:45 +03:00
Salman Ahmed
70a93c0e7e
Move DistanceSpacingMultiplier
bindable to its own IDistanceSnapProvider
interface
2022-04-24 08:33:00 +03:00
Salman Ahmed
4f8f27a58b
Merge branch 'master' into osu-distance-spacing
2022-04-24 05:23:30 +03:00
Dean Herbert
832d37b2c2
Update screen transition events to use new event args
2022-04-22 00:52:44 +09:00
Joseph Madamba
5e5c8e78a6
Use existing web localisation for most hardcoded strings
2022-04-20 16:31:11 -07:00
Dean Herbert
043599081b
Split out INotificationOverlay
to allow for easier testing
2022-04-18 20:14:01 +09:00
Dean Herbert
e315313266
Split out IDialogOverlay
to allow for easier testing
2022-04-18 18:36:26 +09:00
Dean Herbert
90093c1d9d
Combine private
skin variable into exposed one
2022-04-18 13:32:37 +09:00
Salman Ahmed
2cb217e06c
Fix editor legacy beatmap skins not receiving transformer
2022-04-18 06:59:58 +03:00
Salman Ahmed
338d94626e
Expose underlying skin of EditorBeatmapSkin
2022-04-18 06:44:39 +03:00
Dean Herbert
fbf0e5a45c
Remove startFromSkipTarget
parameter and update usages that required said behaviour
2022-04-13 14:25:43 +09:00
Bartłomiej Dach
e14d5b8adb
Remove unused using directives
2022-03-31 21:20:30 +02:00
CenTdemeern1
a6875383fc
Rebind SaveState()
to bpmTextEntry
2022-03-31 21:06:05 +02:00
CenTdemeern1
52d723aaa6
Remove BPM slider
2022-03-31 20:11:07 +02:00
Bartłomiej Dach
f3aad77239
Remove unused local variable
2022-03-22 22:00:24 +01:00
Bartłomiej Dach
a38bafab91
Remove unused using directive
2022-03-22 22:00:05 +01:00
Dean Herbert
61ddf1e6cf
Disallow exiting the editor without saving (unless explicitly confirming)
2022-03-22 15:42:56 +09:00
Dean Herbert
f95bd89166
Revert editor exit behaviour to exit without changes for now
2022-03-22 14:46:57 +09:00
Dean Herbert
d811a70f4b
Change button types on editor exit dialog to match purpose
...
Addresses https://github.com/ppy/osu/discussions/17363 .
2022-03-21 16:06:59 +09:00
Dean Herbert
ba1642a680
Allow section headers to wrap
2022-03-16 17:19:08 +09:00
Dean Herbert
a0a033520f
Rider no add licence headers
2022-03-15 16:48:14 +09:00
Dean Herbert
4ab5d6e3f0
Remove unnecessary FillFlowContainer
from section
2022-03-15 16:47:08 +09:00
Dean Herbert
9e476ced63
Add EditorSidebar
component
2022-03-15 16:38:00 +09:00
Dean Herbert
68aedd63a7
Move SelectionHandler
's SelectedItems
binding to the base implementation
...
Until now it was up to each implementation to connect
`BlueprintContainer` to its `SelectionHandler`, which didn't make much
sense at all.
2022-03-10 23:22:19 +09:00
Bartłomiej Dach
e1eeb9c6bb
Allow tabbing between textboxes in sample point popover
2022-03-06 01:43:56 +01:00
Dean Herbert
f15b8781bb
Move editor mode selector out of EditorMenuBar
to allow for better reuse
2022-03-02 20:05:01 +09:00
Dean Herbert
2be40f36f7
Reword popup text to read better (or more vaguely)
...
Removed some words but also don't mention "smaller" because it's...
musically incorrect and also functionally incorrect – entering 1/[8]
will result in 1/16 also being populated for instance.
2022-02-28 15:26:50 +09:00
Dean Herbert
368eadd8d1
Remove unused using statement
2022-02-28 15:24:02 +09:00
Dean Herbert
3634e12e66
Automatically focus divisor textbox and hide popover after successful change
2022-02-28 15:23:01 +09:00
Bartłomiej Dach
7de5dad4f0
Add test coverage for divisor behaviour
2022-02-27 19:23:02 +01:00
Bartłomiej Dach
423838a649
Add flow for specifying entirely custom snaps
2022-02-27 17:55:20 +01:00
Bartłomiej Dach
d0c01afc2e
Add flow for changing set of valid divisors between presets
2022-02-27 15:37:51 +01:00
Bartłomiej Dach
36137e0619
Add simple carousel divisor type selector
2022-02-27 15:37:51 +01:00
Salman Ahmed
0992bec2c8
Change "distance spacing" multipler type to double
...
Avoids losing precision on initial load, causing an unnecessary
hash change in `EditorChangeHandler`.
Resolves test failures in `TestSceneEditorChangeStates`
(https://github.com/ppy/osu/runs/5192493482?check_suite_focus=true ).
2022-02-16 03:28:12 +03:00
Dean Herbert
954ae60b81
Merge branch 'master' into copy-existing-difficulty
2022-02-16 08:55:12 +09:00
Salman Ahmed
f5d0eb41cb
Update further ChangeFocus
usages
2022-02-15 02:42:39 +03:00
Salman Ahmed
528dc03b8c
Expose distance spacing in IPositionSnapProvider
for updating distance grid
...
Alternate method is to expose a `SnapDistancesChanged` event in
`IPositionSnapProvider` instead, but I chose this way as an analogue to
`IBeatSnapProvider.BeatDivisor`, which might even make sense to be
exposed as `BindableBeatDivisor` instead of caching that separately.
2022-02-15 02:21:53 +03:00
Bartłomiej Dach
e45a2ae0fc
Restructure difficulty copy flow to adapt to latest changes
2022-02-14 22:02:37 +01:00
Bartłomiej Dach
6221447164
Append copy suffix on creating copy of difficulty
2022-02-14 20:19:12 +01:00
Bartłomiej Dach
6fd663a718
Apply some renames to convey difference between creation options better
2022-02-13 14:01:23 +01:00
Bartłomiej Dach
a144d6f8d6
Fix beatmap skin properties not copying
2022-02-13 14:01:22 +01:00
Bartłomiej Dach
a2c2b2bbb3
Add flow for copying existing difficulty content
2022-02-13 14:01:20 +01:00
Salman Ahmed
6f0e32826c
Standardise ordering/grouping of IRulesetInfo
/RulesetInfo
s
2022-02-11 04:27:11 +03:00
Dean Herbert
ee1feae806
Remove unnecessary ruleset ordering
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-02-04 11:06:18 +09:00
Bartłomiej Dach
afc48d86df
Add failing test coverage for save after safeties addition
2022-02-02 21:57:10 +01:00
Bartłomiej Dach
4f1aac9345
Add safeties preventing creating multiple difficulties with same name
2022-02-02 21:57:09 +01:00
Bartłomiej Dach
0d51c015ad
Add basic test coverage for new difficulty creation
2022-02-02 21:55:34 +01:00
Bartłomiej Dach
dc96c4888b
Add support for creating new blank difficulties
2022-02-02 21:55:33 +01:00
Bartłomiej Dach
3386f038ba
Add new difficulty creation menu
2022-02-02 21:23:35 +01:00
Bartłomiej Dach
e2fcdc394b
Extract method for difficulty switch menu creation
2022-02-02 21:23:35 +01:00
Bartłomiej Dach
c6a65ccfed
Remove unused parameter from createContent()
...
No longer used since 513e470b52
.
2022-02-01 21:35:40 +01:00
Dean Herbert
b3856c9005
Fix editor crashing on custom rulesets due to ChangeHandler
not being supported
...
As per https://github.com/ppy/osu/discussions/16668 , even without proper
saving support some ruleset developers do want to work on the editor.
This brings things back into a workable state.
2022-01-28 14:03:31 +09:00
Dean Herbert
91be77ad3d
Fix null ref in ComposeScreen
when ruleset doesn't provide a composer
2022-01-28 14:01:10 +09:00
Dean Herbert
a5d422e82c
Merge branch 'master' into ruleset-id-fixes
2022-01-27 17:07:18 +09:00
Dean Herbert
5288eedd31
Update all usages of RulesetID
and Ruleset.ID
to use Ruleset.OnlineID
2022-01-27 15:38:03 +09:00
Bartłomiej Dach
d760283665
Ensure edited beatmap is restored to a baseline state on exit
2022-01-26 21:15:49 +01:00
Dean Herbert
bdf215c576
Merge branch 'master' into improve-timeline-zoom
2022-01-26 03:40:53 +09:00
Salman Ahmed
4169e5592e
Reword event handler name and update xmldoc
2022-01-25 19:36:19 +03:00
Salman Ahmed
d1cbdf63f0
Add support for reading/saving timeline zoom in editor
2022-01-25 18:57:39 +03:00
Salman Ahmed
f7f58b06a1
Fix beat divisor not saving in editor
2022-01-25 11:56:38 +03:00
Salman Ahmed
5a9524a74e
Decrease default timeline zoom to "6 seconds visible" range
2022-01-25 10:43:51 +03:00
Bartłomiej Dach
bd748686fa
Adjust spacing of time signature numerator input box
2022-01-23 15:21:32 +01:00
Salman Ahmed
e4758c9dbb
Mark LabelledTimeSignature
as public
2022-01-23 10:14:37 +03:00
Bartłomiej Dach
54f7b1b8d0
Use new time signature control on timing screen
2022-01-22 20:50:32 +01:00
Bartłomiej Dach
f39f2c93b5
Add control for arbitrary-numerator time signatures
2022-01-22 20:50:31 +01:00
Bartłomiej Dach
735414bc49
Replace TimeSignatures
enum with struct for storage of arbitrary meter
2022-01-22 20:50:31 +01:00
Dean Herbert
5f5765d6a2
Reduce redundancy time range to create a bit more visual blending on the timeline
2022-01-19 14:57:01 +09:00
Dean Herbert
03ac91a3ee
Consider all points in a group to meet redundancy check
2022-01-19 14:56:44 +09:00
Dean Herbert
93cd07f7fb
Merge branch 'master' into summary-timeline-control-point-optimisation
2022-01-19 14:50:45 +09:00
Dean Herbert
67bf95bc91
Remove all usage of AuthorString
2022-01-18 23:30:40 +09:00
Dean Herbert
d10d657073
Merge pull request #16421 from Susko3/textbox-AllowIme-false
...
Add `AllowIme => false` to text boxes where applicable
2022-01-18 18:02:47 +09:00
Dean Herbert
39c9c4985b
Merge branch 'master' into textbox-AllowIme-false
2022-01-18 17:03:51 +09:00
Dean Herbert
566d341b1e
Split conditions out for readability
2022-01-16 22:04:29 +09:00
Dean Herbert
565611ee00
Fix typo in inline comment
2022-01-15 23:57:20 +09:00
Dean Herbert
236fa6da7e
Rename ControlPointVisualisation
interface type to be less specific
2022-01-15 23:56:00 +09:00
Dean Herbert
c5cae4e3ee
Rename methods and add xmldoc
2022-01-15 23:55:11 +09:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps
2022-01-15 14:45:42 +01:00
Dean Herbert
64c499d9d6
Revert unintended temporary commenting (was used during benchmarking)
2022-01-15 15:24:30 +09:00
Susko3
19467e58c1
Remove unused params from BDL methods
2022-01-15 01:06:39 +01:00
Dean Herbert
c64a919a9d
Reduce number of redundant control points displayed on summary timeline
...
As pointed out in https://github.com/ppy/osu/discussions/16435 , beatmaps
with too many control points (usually added via external automation
apps) could cause the lazer editor to grind to a halt.
The overheads here are mostly from the GL side. An eventual goal would
be to render this in a smarter way, rather than using thousands of
drawables. Until that, this optimisation should help reduce the overhead
by omitting control points in close proximity that are redundant for
display purposes.
I've tried to contain this in the display logic directly, with the goal
that it can be ripped out as fast as it was added. Certainly required
more changes than I hoped for, but I don't think it's too ugly.
2022-01-14 17:13:26 +09:00
Dean Herbert
51251e3204
Fix CI reported warnings
2022-01-12 22:39:00 +09:00
Dean Herbert
7509a9ff8f
Update BeatmapModelManager.Save
to work for editor scenarios
2022-01-12 17:49:11 +09:00
Dean Herbert
3811bd8520
Fix some null inspections
2022-01-12 17:00:16 +09:00
Dean Herbert
a3276758b8
Remove unnecessary re-query of beatmap set in editor menu construction
2022-01-12 17:00:16 +09:00
Dean Herbert
b8cd3cdbbc
Various updates to ruleset and primary key usages to move closer to realm support
2022-01-12 16:57:13 +09:00
Dean Herbert
83cbee39de
Mark cases where BeatmapSet
is generally guaranteed to be non-null
2022-01-12 16:39:36 +09:00
Susko3
a0842838e7
Add AllowIme => false
where applicable
...
Also adds `AllowWordNavigation => false` to password text box.
2022-01-12 00:15:17 +01:00
Bartłomiej Dach
d76c674abc
Add tooltip with relative rotation in degrees to rotation handles
2022-01-08 20:24:15 +01:00
Bartłomiej Dach
24d377fddb
Move implementation of drag handle operations to concrete classes
2022-01-08 20:24:00 +01:00
Bartłomiej Dach
9370e84460
Fix effect point multiplier text box displaying too much decimal digits
2022-01-08 16:12:52 +01:00
Dean Herbert
6779503e57
Refactor logic to avoid TimelineSelectionHandler
having to block base calls
2022-01-05 16:56:54 +09:00
Dean Herbert
866ae3472b
Add global flip hotkeys
2022-01-05 16:48:07 +09:00
Dean Herbert
13cce50fa7
Remove existing handling of flip hotkeys
2022-01-05 16:30:42 +09:00
Joseph Madamba
7de43e3aba
Fix most open compound words in identifiers being closed
2021-12-27 20:26:28 -08:00
Joseph Madamba
98524d60a4
Fix clear identifier typos
2021-12-27 20:26:28 -08:00
Bartłomiej Dach
7ab1c0c99d
Improve contrast of timeline blueprint foreground content for pastel combo colours
2021-12-21 12:54:17 +01:00
Dan Balasescu
63a017bc8e
Use Array.Empty instead
2021-12-11 19:33:37 +09:00
Dean Herbert
c1b3ee6bb2
Fix editor not resetting mods when entering
...
Would leave the user potentially in a test mode that is in a weird
state (ie. if cinema mod was enabled). Eventually we'll add the ability
to choose mods for test play, but that will be done in a saner way.
Closes #15870 .
2021-12-10 18:57:45 +09:00
Bartłomiej Dach
10dd64e07c
Fix being able to paste objects while composer is loading
...
Would lead to exceptions due to modification of `Beatmap.HitObjects`
during its enumeration by `DrawableRuleset`, which was happening as an
async load via `EditorScreenWithTimeline.CreateMainContent()`.
2021-12-07 21:00:25 +01:00
Dean Herbert
1eed2436e6
Clean up unused resolved properties
2021-12-03 18:49:49 +09:00
Dean Herbert
a7e4e7be3a
Remove the ability to specify a filename in ReplaceFile
2021-11-29 18:11:51 +09:00
Dean Herbert
e2ebcf7a26
Remove unnecessary manager parameter
...
Confused why I added this in the first place..
2021-11-25 18:36:03 +09:00
Dean Herbert
cc1b91e4bd
Split out legacy model export logic into LegacyModelExporter
classes
2021-11-25 16:41:12 +09:00
Dean Herbert
0eea026afb
Remove null checks on CreateInstance()
calls
2021-11-24 12:23:09 +09:00
Dean Herbert
7599efac30
Update editor cases where repeat should not be handled
2021-11-18 13:13:36 +09:00
Dean Herbert
5471994450
Merge branch 'master' into sample-point-multiple
2021-11-15 14:13:58 +09:00
Bartłomiej Dach
6b4b6de554
Fix test gameplay starting in a hidden state
2021-11-13 22:11:00 +01:00
Bartłomiej Dach
2562412125
Propagate clock state from gameplay test back to editor
2021-11-13 22:11:00 +01:00
Bartłomiej Dach
d2ddc25ab3
Propagate clock state from editor to gameplay test
2021-11-13 22:10:59 +01:00
Bartłomiej Dach
9a19a516f9
Adjust spacings on sample point piece popover
2021-11-13 21:59:45 +01:00
Bartłomiej Dach
73ca1d39a2
Improve sample bank text box UX in case of multiple selection
2021-11-13 21:59:44 +01:00
Bartłomiej Dach
3fee6b0938
Add support for setting sample bank & volume for multiple objects at once
2021-11-13 21:24:59 +01:00
Bartłomiej Dach
9800cd4903
Add test coverage for sample control point piece operation
2021-11-13 18:14:50 +01:00
Dean Herbert
983d5a6cb8
Merge branch 'master' into difficulty-point-multiple
2021-11-13 23:47:12 +09:00
Bartłomiej Dach
5f2a789a6d
Ensure editor clock is stopped before testing gameplay
2021-11-13 14:01:00 +01:00
Bartłomiej Dach
eb8c5292d5
Ensure editor background is dimmed after return from gameplay test
2021-11-13 13:50:57 +01:00
Bartłomiej Dach
b47c0b63f4
Tweak loader transition when testing gameplay in editor
2021-11-13 13:39:18 +01:00
Bartłomiej Dach
a5ba3bd012
Move gameplay test pieces to own namespace
2021-11-13 13:39:17 +01:00
Bartłomiej Dach
e1c28ddd76
Adjust difficulty point popover content spacing
2021-11-12 23:32:12 +01:00
Bartłomiej Dach
d567d2be97
Fix multiple issues with textbox content display
...
- Sometimes would display too many decimal digits due to floating point
representation errors.
- Placeholder would also look wrong if text was removed during a
multiple (but determinate) selection.
2021-11-12 23:32:12 +01:00
Bartłomiej Dach
e55e2a1697
Allow to adjust slider velocity on multiple objects simultaneously
2021-11-12 23:32:11 +01:00
Bartłomiej Dach
7ba93aac27
Add test coverage for difficulty point piece operation
2021-11-12 22:16:09 +01:00
Dean Herbert
54ae307a3d
Trigger test via button click when using keyboard shortcut
2021-11-12 14:42:33 +09:00
Dean Herbert
e891c0ce53
Add keyboard shortcut to start test mode in editor
2021-11-12 14:13:11 +09:00
Dean Herbert
321aa456a7
Adjust button size slightly
2021-11-12 14:04:34 +09:00
Bartłomiej Dach
c465bcb821
Ensure track is stopped on player completion
2021-11-11 20:54:36 +01:00
Bartłomiej Dach
385df51b06
Ensure editor test player is exited on completion
2021-11-11 20:54:36 +01:00
Bartłomiej Dach
59727ce836
Add minimal implementation of gameplay testing from editor
2021-11-11 20:54:35 +01:00
Bartłomiej Dach
32b5a736c8
Add preview gameplay button to bottom editor bar
2021-11-11 17:12:21 +01:00
Dean Herbert
51a353e12d
Rename BeatmapInfo.Version
to DifficultyName
to match underlying interface
2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11
Rename BeatmapInfo.StarDifficulty
to StarRating
to match underlying interface
2021-11-11 17:19:46 +09:00
Bartłomiej Dach
b25ad8dfcb
Copy editor timestamp to OS clipboard even when triggered via menu bar
...
Would only work when triggered via Ctrl+C before, and not work at all
for Ctrl+X.
2021-11-10 12:49:10 +01:00
Bartłomiej Dach
5e31e890ae
Extract class for clipboard contents for DI purposes
2021-11-10 12:36:23 +01:00
Bartłomiej Dach
042b05a250
Move clipboard action availability logic down to editor screens
2021-11-09 19:54:37 +01:00
Bartłomiej Dach
286754f6f7
Move clipboard operation implementation down to current screen
2021-11-09 19:54:37 +01:00
Dean Herbert
ed07ee8c61
Update all existing usages of AuthorString
/AuthorId
...
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
09701d0af1
Use explicit primitive type specification
2021-11-04 16:02:37 +09:00
Dean Herbert
0f4f1349db
Merge branch 'master' into editor-context-menu-on-select
2021-11-04 15:59:06 +09:00
Bartłomiej Dach
11de924704
Use LocalisableString
s where possible to leverage localisable text flow
2021-11-02 21:42:02 +01:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Jason Won
c633e2e952
only propagate unmodified right click
2021-10-26 16:24:53 -04:00
Jason Won
f64fa65fd5
right click on unselected object shows context menu
2021-10-26 14:52:15 -04:00
Dean Herbert
c47497923a
Schedule drag events for now
2021-10-15 19:52:44 +09:00
Dean Herbert
30c3fcb4ea
Merge branch 'master' into slider-timeline-velcotiy-adjust-v2
2021-10-15 19:45:04 +09:00
Dean Herbert
3909fd8caa
Fix wonkiness when dragging slider end at high input refresh rates
2021-10-15 19:43:57 +09:00
Dean Herbert
874d722820
Merge branch 'master' into fix-editor-difficulty-name-update
2021-10-15 11:14:45 +09:00
Dean Herbert
ad0732484f
Just wait for metadata section to be loaded
2021-10-14 22:12:38 +09:00
smoogipoo
901f107b2e
Merge branch 'master' into slider-timeline-velcotiy-adjust-v2
2021-10-14 17:25:51 +09:00
Dan Balasescu
fb9c3fe72e
Merge pull request #14619 from peppy/no-more-difficulty-control-points-info
...
Move `DifficultyControlPoint`s to be specified at a per-`HitObject` level
2021-10-14 17:24:32 +09:00
Dean Herbert
09536cd733
Add logging of WorkingBeatmapCache.Invalidate
calls
2021-10-14 14:05:33 +09:00
Bartłomiej Dach
d067159435
Recolour elements of editor setup screen to match dropdown theming
2021-10-13 22:32:54 +02:00
Dean Herbert
02689a1b60
Use actual BeatmapInfo
rather than PlayableBeatmap.BeatmapInfo
for editor writes
2021-10-13 14:50:12 +09:00
smoogipoo
bc37cb6f43
Merge branch 'master' into no-more-difficulty-control-points-info
2021-10-08 18:41:17 +09:00
Dean Herbert
ef64c64f0b
Merge branch 'master' into popup-filter-effect
2021-10-07 18:56:07 +09:00
Dean Herbert
f98dd1b811
Merge branch 'master' into popup-filter-effect
2021-10-07 18:40:21 +09:00
Dean Herbert
0df409c050
Move difficulty copy to BeatmapModelManager.Save
2021-10-07 17:16:45 +09:00
Dean Herbert
4ca97bc60a
Merge branch 'master' into difficulty-move-to-beatmap
2021-10-06 16:14:21 +09:00
Dean Herbert
222997f2b9
Copy difficulty settings back out to BeatmapInfo
on editor changes
2021-10-06 15:19:26 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dean Herbert
d9849bcf49
Fix dragging on an editor file selection text box causing repeated popover display
...
Local fix and no tests as this is a pretty weird usage of `TextBox`.
We'll probably want to change it to not use a textbox eventually.
Closes #14969 .
2021-10-06 13:15:05 +09:00
Dean Herbert
ec61c3c5ee
Rename all remaining cases
2021-10-03 00:55:29 +09:00
Dean Herbert
ac471a0ec1
Merge branch 'no-more-difficulty-control-points-info' into slider-timeline-velcotiy-adjust-v2
2021-10-01 17:46:58 +09:00
Jamie Taylor
4d91204faf
Pause Editor
sample playback while popup dialog is shown
2021-09-29 20:46:41 +09:00
Dean Herbert
46bafb6252
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-28 13:53:56 +09:00
Bartłomiej Dach
ca6cbca04a
Fix range selection crashing after non-mouse selection
2021-09-27 20:54:29 +02:00
Dean Herbert
df85092426
Resolve inner items early in process and rename variable
2021-09-27 14:24:17 +09:00
Dean Herbert
41fb3371e5
Merge branch 'master' into blueprint-container-sorting
2021-09-27 14:12:09 +09:00
Bartłomiej Dach
d3203f83dd
Add implementation of range selection
2021-09-26 20:12:26 +02:00
Bartłomiej Dach
81d160c85a
Add test covering expected UX of range selection
2021-09-26 19:27:47 +02:00
Bartłomiej Dach
6dc3e66c93
Include combo information when determining ordering if available
2021-09-26 15:52:25 +02:00
Bartłomiej Dach
a86b9893ac
Always re-sort blueprints before adding/removing one
2021-09-26 15:48:56 +02:00
Bartłomiej Dach
4e094b2127
Implement grid size toggling matching stable
2021-09-19 20:26:02 +02:00
Bartłomiej Dach
56e80a0706
Add rectangular position snap grid
2021-09-19 18:07:19 +02:00
smoogipoo
e8dea0138c
Fix one more issue
2021-09-16 18:34:13 +09:00
smoogipoo
f9d5abff8a
Update with keybinding changes
2021-09-16 18:26:12 +09:00
Dean Herbert
fa693bb8a8
Move MusicController
adjustment set to inside OsuScreen
itself (and result nullable
)
2021-09-16 16:08:09 +09:00
AbstractQbit
318f0941ca
Move all the "inherit previous AllowTrackAdjustments
" logic into OsuScreen
2021-09-15 21:25:39 +03:00
Dean Herbert
931e873a7e
Merge branch 'master' into inheritable-allow-track-adjust
2021-09-15 22:26:13 +09:00
Dean Herbert
13f88cbc4e
Fix EditorClock
retaining a reference to potentially outdated ControlPointInfo
2021-09-14 23:56:57 +09:00
AbstractQbit
b9193aae6d
Make IOsuScreen.AllowTrackAdjustments nullable
...
Allows for inheriting value from the previous screen if undefined
2021-09-14 17:37:57 +03:00
Dean Herbert
57f8ccca16
Remove nullability from EditorState
properties
...
Also update the xmldoc to not be specific to difficulty switching
2021-09-14 23:36:28 +09:00
Dean Herbert
f8bdca542d
Make restoring state a public
call on Editor
2021-09-14 23:36:17 +09:00
Dean Herbert
2a894e7a3f
Make EditorLoader
state private
2021-09-14 23:26:02 +09:00
Dean Herbert
563bf92529
Also update the full object on sample changes to make them apply immediately
2021-09-14 19:21:23 +09:00
Dean Herbert
d825da3983
Add note about a better way to adjust velocity
2021-09-14 18:54:29 +09:00
Dean Herbert
e4dd59aee2
Add popovers to adjust SV and samples from the timeline
2021-09-14 18:51:22 +09:00
Dean Herbert
9d17f84681
Adjust timeline height to account for less global control points
2021-09-14 18:51:11 +09:00
Dean Herbert
9551e77553
Remove difficulty and sample sections from timing screen
2021-09-14 18:51:11 +09:00
Dean Herbert
87cfcf706e
Add ability to change slider velocity with shift-drag
2021-09-14 18:26:17 +09:00
Dean Herbert
b19dc5e41f
Remove all legacy ControlPoint
s when entering the editor
2021-09-14 18:26:16 +09:00
Dean Herbert
6015b5037a
Display difficulty and sample control points associated with hitobjects
2021-09-14 18:26:16 +09:00
Bartłomiej Dach
35ee889e5b
Restore clipboard content after difficulty switch
2021-09-13 21:04:27 +02:00
Bartłomiej Dach
79d0f4835e
Add failing tests for preserving clipboard content
2021-09-13 21:03:30 +02:00
Bartłomiej Dach
3fc72271f1
Restore editor clock time after difficulty switch
2021-09-13 20:59:31 +02:00
Dean Herbert
65fdceee79
Merge branch 'master' into editor-test-scenes-through-loader
2021-09-13 14:02:55 +09:00
Bartłomiej Dach
345cde251d
Add "samples match playback rate" to editor setup screen
2021-09-12 16:54:17 +02:00
Bartłomiej Dach
22fa9a303e
Expose test helper for switching between difficulties
2021-09-12 13:55:48 +02:00
Bartłomiej Dach
8357efc74f
Make EditorTestScene
go through EditorLoader
2021-09-12 13:26:04 +02:00
Dean Herbert
9edd010b1d
Fix unnecessary background screen transition
2021-09-07 14:34:54 +09:00
Dean Herbert
7921ad4516
Add loading spinner in case load takes longer than expected
2021-09-07 14:34:47 +09:00
Dean Herbert
ddaa95a1ca
Fix pushEditor
function running twice on returning to loader
2021-09-07 14:34:18 +09:00
Bartłomiej Dach
5b9f37702b
Remove unnecessary delay before pushing editor from loader
2021-09-06 21:32:23 +02:00
Bartłomiej Dach
2d59008f52
Move screen management logic to EditorLoader
2021-09-06 21:30:50 +02:00
Bartłomiej Dach
bd7d6dd35d
Rename method
2021-09-06 21:27:17 +02:00
Dean Herbert
ce197b6322
Fix missing attribute text (and give slightly more space for "10.00x" cases
2021-09-06 21:40:30 +09:00
Dean Herbert
3c7a34bdbd
Move mania-specific conversion to converter
2021-09-06 21:06:13 +09:00
Dean Herbert
52b6b05883
Update terminology in timing screen for now
2021-09-06 21:06:13 +09:00
Dean Herbert
0500cd578a
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-06 21:06:12 +09:00
Bartłomiej Dach
d6a47fd99c
Sort difficulties by ruleset and star rating in menu
2021-09-05 21:48:11 +02:00
Bartłomiej Dach
7012a1d934
Fix issues with main menu -> editor loader transition
2021-09-05 21:48:11 +02:00
Bartłomiej Dach
382269b362
Test staying on same difficulty due to unsaved changes
2021-09-05 21:48:10 +02:00
Bartłomiej Dach
c72523bc14
Add basic test for difficulty switching
2021-09-05 21:48:10 +02:00
Bartłomiej Dach
a9403b65b3
Eliminate dependency on OsuGame
2021-09-05 21:48:10 +02:00
Bartłomiej Dach
c397cc2027
Restructure proof of concept
2021-09-05 21:48:09 +02:00
Bartłomiej Dach
fe2520c599
Add intermediary screen to avoid going back to menus
2021-09-05 21:48:09 +02:00
Bartłomiej Dach
7befd030df
Minimal working example of switching difficulties
2021-09-05 21:48:09 +02:00
Bartłomiej Dach
90f0b6874f
Highlight current difficulty in switcher
2021-09-05 21:48:08 +02:00
Bartłomiej Dach
e8fb5d2e66
Add non-functional difficulty switcher to menu
2021-09-05 21:48:08 +02:00
Dean Herbert
e0ee2a5533
Change section title to read better
2021-09-05 13:34:57 +09:00
Dean Herbert
25420af078
Rename method to drop redundant ruleset suffix
2021-09-05 13:34:23 +09:00
Bartłomiej Dach
1a90fb1ef3
Fix cached property being assigned twice
2021-09-04 19:52:42 +02:00
Dean Herbert
f42131ff89
Add back editor functionality for now
2021-09-03 19:08:23 +09:00
Dean Herbert
d4e5a612ea
Update IPositionalSnapProvider
to take a HitObject
as reference, rather than raw time
...
This allows fetching the correct `DifficultyControlPoint` from the
hitobject. Nothing more.
2021-09-03 17:11:12 +09:00
Dean Herbert
a3d9ab1e2e
Move approach rate to EffectControlPoint
2021-09-03 16:58:16 +09:00
Dean Herbert
071c56e90b
Update usages of DifficultyPointAt
2021-09-03 16:58:16 +09:00
Bartłomiej Dach
ce1912781e
Add extension point for ruleset-specific beatmap setup sections
2021-09-02 23:29:14 +02:00
Dan Balasescu
6c649b7bbe
Merge branch 'master' into no-more-sample-control-points-info
2021-09-02 18:09:05 +09:00
Dean Herbert
0319177c5c
Fix pixels poking out of the top edge of editor setup screen
2021-09-01 16:46:19 +09:00
Dean Herbert
edf29e405b
Merge pull request #14581 from bdach/setup-screen-countdown-settings
...
Add countdown settings to setup screen
2021-09-01 15:35:46 +09:00
Bartłomiej Dach
5dc938cc9f
Update tests to match expectations
2021-08-31 22:41:47 +02:00
Bartłomiej Dach
04773b51bb
Remove countdown toggle transition for now
...
Tricky to get right and the design isn't final as is anyway, so leaving
*something* functioning as a best-effort for now.
2021-08-31 22:41:40 +02:00
Dean Herbert
ce0d7cce2d
Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info
2021-08-31 14:40:54 +09:00
Dean Herbert
c25ab6835c
Remove IJsonSerializable interface
...
Was pretty pointless and made it hard to use the custom serialisation
terms arbitrarily in tests.
2021-08-31 14:39:20 +09:00
Bartłomiej Dach
ddf9d2aa6c
Add test coverage
2021-08-30 22:55:58 +02:00
Bartłomiej Dach
eec9f6d191
Add countdown settings to design section
2021-08-30 22:51:41 +02:00
Dean Herbert
ccacf56dd8
Move to legacy namespace
2021-08-30 17:14:53 +09:00
Dean Herbert
7257aae7f2
Move samples to LegacyControlPointInfo
2021-08-30 17:14:53 +09:00
Bartłomiej Dach
fcc3e57d5d
Move overlay colour provider up to editor screen
2021-08-28 20:05:58 +02:00
Bartłomiej Dach
e94d96f250
Add local popover container to editor screens
2021-08-28 20:05:58 +02:00
Salman Ahmed
b4d6495f99
Fix editor skin providing container not providing playable beatmap
2021-08-25 17:52:36 +03:00
Salman Ahmed
3ad0b529fb
Make EditorScreen
inherit from VisibilityContainer
rather than unsafe transforms
2021-08-25 17:14:52 +03:00
Bartłomiej Dach
ccf337bdc2
Merge branch 'master' into editor-setup-file-selector-popovers
2021-08-23 18:28:44 +02:00
Salman Ahmed
bd42d7aada
Hide popover on file selection
2021-08-23 18:01:01 +03:00
Dean Herbert
c2c9a93e2c
Show editor file choosers in a popover rather than inline
...
Supersedes and closes #14370 .
Closes #14367 .
2021-08-23 18:12:36 +09:00
Dean Herbert
2f6b95da39
Add descriptions for the remaining settings
2021-08-23 17:41:03 +09:00
Dean Herbert
1de84e1c98
Change description to include mention of video
...
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2021-08-23 17:34:19 +09:00
Bartłomiej Dach
2e80e2be51
Reword epilepsy warning description text
2021-08-22 21:47:37 +02:00
Bartłomiej Dach
9816af688e
Add basic design settings to setup screen
2021-08-22 17:43:20 +02:00
Dean Herbert
98357d51da
Merge pull request #14323 from minetoblend/editor-seek
...
Prevent seeking before mp3 start time while editor is playing
2021-08-20 13:28:20 +09:00
Salman Ahmed
8c5d99ab21
Override CreateInstance()
in osu! bindable subclasses
...
Three bindables are left which don't have this overriden due to them
already not having a value-only constructor and not supporting
`GetBoundCopy()` properly:
- `BeatmapDifficultyCache.BindableStarDifficulty`.
- `TotalScoreBindable`
- `TotalScoreStringBindable`
I could add support for them by passing the required data to them, as
they seem to be able to have that shared, but I'm hesitant to support
something which was already broken and never used, not sure.
2021-08-18 04:19:58 +03:00
Dean Herbert
f16468b706
Improve visibility of repeat ticks / drag areas on timeline
2021-08-17 18:17:55 +09:00
Marvin Schürz
78f9f4a230
Move time clamp to Seek
/transformSeekTo
methods
2021-08-16 20:39:09 +02:00
Dean Herbert
1c7cbc8621
Add missing readonly
keyword to new bindable
2021-08-16 17:14:13 +09:00
Bartłomiej Dach
6108451449
Retrieve separated skin instance from working beatmap for editing
2021-08-15 21:18:09 +02:00
Bartłomiej Dach
81280dfd25
Use editable skin structure in combo colour picker
2021-08-15 21:18:08 +02:00
Bartłomiej Dach
0d64da8c63
Add skin providing container responding to beatmap skin edits
2021-08-15 21:18:08 +02:00
Bartłomiej Dach
df43e758ee
Add editable beatmap skin
2021-08-15 21:18:07 +02:00
Marvin Schürz
d287db7961
Clamping seekTime to beatmap length
2021-08-15 14:48:56 +02:00
Jamie Taylor
c1d8a7e2ad
Add and use 'Submit' select sample variant for particular components
2021-07-30 21:35:28 +09:00