1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 20:32:55 +08:00
Commit Graph

495 Commits

Author SHA1 Message Date
Dean Herbert
3345e34544 Move beatmap specific logic out of EditorChangeHandler 2023-02-03 17:53:54 +09:00
ansel
00acea59fc Move some strings to common 2023-01-15 19:37:40 +03:00
ansel
8777d5349b Use existing strings 2023-01-15 14:39:34 +03:00
ansel
78e562903d Localise part of editor 2023-01-15 01:50:47 +03:00
Bartłomiej Dach
a82f1a6abd
Adjust method naming and copy 2023-01-01 18:50:47 +01:00
cdwcgt
a4d28aff6d
fix typo 2022-12-16 10:48:56 +09:00
cdwcgt
c164744064
Add ability to set preview time 2022-12-16 01:03:30 +09:00
cdwcgt
e02b8cb199
Group export methods into their respective managers 2022-12-11 18:30:24 +09:00
cdwcgt
a1fc33668c
Merge branch 'master' into export 2022-12-09 23:40:26 +09:00
Dean Herbert
a2db0afe19 Avoid querying GetLastObjectTime twice in editor seek flow 2022-12-02 16:07:24 +09:00
Dean Herbert
896f2d8f74 Fix multiple instances of last hitobject time being calculated incorrectly 2022-12-01 18:04:06 +09:00
Bartłomiej Dach
894ef15e79
Merge branch 'master' into update-framework 2022-11-26 16:19:36 +01:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
37f725bfa2 Reverse directionality of up/down traversal keys to match scroll 2022-11-24 13:55:58 +09:00
Dean Herbert
9b9b8a5977 Add ability to seek between control points in editor using down/up arrows
Matches stable. Addresses #21376.
2022-11-23 15:59:32 +09:00
cdwcgt
e37d30a373
refactor based on reviews
removed LegacyExportManager

Separated the method of CreateZip method and the default export method
2022-11-21 18:58:01 +09:00
cdwcgt
4e457871f3
impossible null and remove storage 2022-11-19 01:03:22 +09:00
cdwcgt
4b29941b47
add LegacyExportManager 2022-11-18 20:00:00 +09:00
Salman Ahmed
7a28a7f2a0 Move IGameplaySettings override to compose screen to keep test mode unaffected 2022-11-17 01:45:16 +03:00
cdwcgt
e1a21e0cf9
create a task to export to avoid block main thread
Code quality and remove some #nullable disable
2022-11-17 01:08:06 +09:00
Dan Balasescu
db25e9e9c8 Merge branch 'master' into combo-colour-brightness-limit 2022-11-11 15:31:28 +09:00
Dan Balasescu
051f7f4c68
Merge pull request #21173 from peppy/toggle-hit-markers
Add the ability to toggle off hit marker displays in the editor
2022-11-10 12:23:53 +09:00
Dean Herbert
4457648b1c Fix editor playing too many sounds when user performs a manual seek during playback 2022-11-09 17:42:33 +09:00
Dean Herbert
4448fcb3c8 Override combo colour brightness normalisation setting only in editor 2022-11-08 18:29:10 +09:00
Dean Herbert
ada039151b Add the ability to toggle off hit marker displays in the editor 2022-11-08 18:07:06 +09:00
Dean Herbert
349d262c18 Remove commented unbind 2022-11-08 17:19:48 +09:00
Dean Herbert
0e502de8b4 Rename field to match usage 2022-11-02 18:04:42 +09:00
Dean Herbert
c3eb0c6330 Merge branch 'master' into editor-background 2022-11-02 17:43:38 +09:00
cdwcgt
9884618290
rename editorDim to editorBackgroundDim 2022-11-02 15:12:15 +09:00
cdwcgt
6991195d69
let editor dim different from gameplay dim 2022-10-26 15:22:57 +09:00
Bartłomiej Dach
f5ca447b8e
Rename one more "{duplicate -> clone}" reference 2022-10-25 21:34:41 +02:00
Dean Herbert
4d4f6e25ba Rename to "clone" instead of "duplicate" 2022-10-25 11:43:23 +09:00
Dean Herbert
1e579e06f8 Fix duplicate working incorrectly if there is no selection currently made 2022-10-25 11:42:12 +09:00
cdwcgt
a2682b3ce3
background dim settings for editor
View -> Background Dim

follow `DimLevel` and `BlurLevel`

Co-Authored-By: Dead_Bush_Sanpai <DeadBushSanpai@yandex.com>
2022-10-24 23:55:33 +09:00
Dean Herbert
e72a71a28e Add simple editor "duplicate objects" key binding 2022-10-24 14:01:34 +09:00
Dean Herbert
db15bd56e8 Invalidate working beatmap cache when calling DeleteDifficultyImmediately rather than in editor code 2022-09-06 18:12:47 +09:00
Dean Herbert
4f18105e9d Ensure next beatmap selected matches the menu ordering 2022-09-02 17:57:00 +09:00
Dean Herbert
840d1c4cd5 Disable delete difficulty menu item when only one difficulty is present 2022-09-02 17:14:48 +09:00
Dean Herbert
9fd8067e11 Tidy up dialog and deletion flow 2022-09-02 17:07:09 +09:00
Dean Herbert
605108c938 Refactor/rename deletion method to read better 2022-09-02 16:59:01 +09:00
Dean Herbert
b388428e1c
Merge branch 'master' into feature/EditorDeleteDiff 2022-09-02 16:48:38 +09:00
Dean Herbert
12d6d6793c Move EditorClock processing to Update and always decouple 2022-08-26 18:08:43 +09:00
Dean Herbert
6b9dec5996 Restore original event flow to allow for OnSuspend case to work correctly 2022-08-17 14:32:21 +09:00
Dean Herbert
8ce50e98a6 Move delegate debounce logic to Editor itself 2022-08-17 14:04:57 +09:00
Dean Herbert
ea50936d71 Fix slider ticks playing back at infinite rate while making changes to a slider in the editor 2022-08-16 15:27:58 +09:00
Dean Herbert
cc4cde2c79 Improve IBeatSyncProvider interface and reduce beatmap track dependence 2022-08-02 17:59:18 +09:00
Dean Herbert
2f60f91a0e Fix editor potentially using a track post-disposal
This changes the editor to track the current track as it is *loaded* by
`MusicController`, rather than haphazardly following the current global
`WorkingBeatmap` (with a potentially unloaded track) or relying on local
immediate-load behaviour (as implemented in `ResourcesSection`).
2022-08-01 16:53:49 +09:00
Micahel Kelly
dd315ff97b Adds hard-delete for a beatmap diff 2022-07-27 21:21:16 +10:00
Micahel Kelly
e6fad601cc Adds delete difficulty option to editor 2022-07-27 19:15:43 +10:00
Dean Herbert
f713253d1b Fix formatting inconsistencies in empty ctors 2022-07-22 14:00:29 +09:00
LukynkaCZE
ed94d7fce8 Fix requested changes 2022-07-22 02:46:17 +02:00
LukynkaCZE
5987acfbca Fixed code formatting 2022-07-19 22:59:25 +02:00
LukynkaCZE
a00da279b7 Beatmap Editor Save Toast 2022-07-19 21:38:23 +02:00
Dean Herbert
952d97c66e Update comment regarding LoadTrack safety 2022-07-13 19:02:22 +09:00
Joseph Madamba
834bb1f187 Fix editor playing object samples while paused after cancelling exit 2022-07-09 12:14:39 -07:00
Dean Herbert
98938821e5 Merge branch 'master' into beatmap-update-flow 2022-06-30 16:44:17 +09:00
Dean Herbert
0ba29b6fa6 Use currentScreen instead to make sure the screen we care about is loaded 2022-06-27 18:28:00 +09:00
Dean Herbert
5a7d339cc8 Centralise and harden editor-ready-for-use check
Not only does this combine the check into one location, but it also adds
a check on the global `WorkingBeatmap` being updated, which is the only
way I can see the following failure happening:

```csharp
05:19:07     osu.Game.Tests: osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.TestAddAudioTrack
05:19:07       Failed TestAddAudioTrack [161 ms]
05:19:07       Error Message:
05:19:07        TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
05:19:07       Stack Trace:
05:19:07       --TearDown
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass7_0.<AddFile>b__0(TModel managed) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass8_0.<performFileOperation>b__0(Realm realm) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 49
05:19:07        at osu.Game.Database.RealmExtensions.Write(Realm realm, Action`1 function) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\RealmExtensions.cs:line 14
05:19:07        at osu.Game.Database.ModelManager`1.performFileOperation(TModel item, Action`1 operation) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 46
05:19:07        at osu.Game.Database.ModelManager`1.AddFile(TModel item, Stream contents, String filename) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Screens.Edit.Setup.ResourcesSection.ChangeAudioTrack(FileInfo source) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Screens\Edit\Setup\ResourcesSection.cs:line 115
05:19:07        at osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.<TestAddAudioTrack>b__13_0() in C:\BuildAgent\work\ecd860037212ac52\osu.Game.Tests\Visual\Editing\TestSceneEditorBeatmapCreation.cs:line 101
05:19:07        at osu.Framework.Testing.Drawables.Steps.AssertButton.checkAssert()
05:19:07        at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
05:19:07        at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
```
2022-06-27 16:22:01 +09:00
Dean Herbert
7692bac35a Simplify refetch (and ensure to invalidate after processing) 2022-06-24 21:02:38 +09:00
Dean Herbert
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
Dean Herbert
c61e90d768 Change editor seek-while-playing modifier to be BPM agnostic 2022-06-21 13:07:50 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dean Herbert
c27e5d1216 Fix editor still playing back sound when exiting with confirmation 2022-06-15 18:44:02 +09:00
Dean Herbert
713cff3403 Don't play editor exit sound when changing difficulties 2022-06-15 17:49:09 +09:00
Dean Herbert
fd4529aa7c Play editor exit sound if no confirmation buttons were shown during exit process 2022-06-15 17:37:54 +09:00
Jamie Taylor
5e3ccf7087
Don't play 'back' sample when exiting Editor 2022-06-15 15:41:28 +09:00
Dean Herbert
aeca138930 Fix ctrl-z in editor also seeking to start in addition to undo 2022-06-14 18:48:57 +09:00
Bartłomiej Dach
e511c1dfff
Merge branch 'master' into use-normalised-precise-scrolling 2022-05-27 16:55:13 +02:00
Dean Herbert
fb586fe0b2 Merge branch 'master' into editor-bottom-bar-new-design 2022-05-26 18:32:28 +09:00
Dean Herbert
8791e3b9ef Split BottomBar out of Editor 2022-05-25 23:54:59 +09:00
Dean Herbert
206f2ca208 Rename screen switcher control to be in line with naming expectations 2022-05-25 22:20:33 +09:00
Dean Herbert
0bcf8c846c Change editor colour scheme to aquamarine 2022-05-24 18:43:22 +09:00
Dean Herbert
648cee7106 Remove editor screen transitions for now 2022-05-24 18:43:22 +09:00
Susko3
88217e0c98 Adjust ScrollDelta usages to account for normalised IsPrecise values 2022-05-23 20:22:27 +02:00
Dean Herbert
007582afb9 Remove unused usings resulting from namespace move 2022-05-22 23:55:33 +09:00
Dean Herbert
eabf578282 Use interface to convey beat sync information 2022-05-22 22:44:54 +09:00
Bartłomiej Dach
ab5c736da1
Merge branch 'master' into editor-readability 2022-05-13 21:10:48 +02:00
Dean Herbert
c4871ebcf4 Add editor track traversal keys (Z-V) 2022-05-14 02:50:51 +09:00
Dean Herbert
f22ff4e087 Remove editor animation toggling (replaced by overlap markers) 2022-05-12 19:28:56 +09: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
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
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
f15b8781bb Move editor mode selector out of EditorMenuBar to allow for better reuse 2022-03-02 20:05:01 +09: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
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/RulesetInfos 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
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
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
Salman Ahmed
f7f58b06a1 Fix beat divisor not saving in editor 2022-01-25 11:56:38 +03: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
a3276758b8 Remove unnecessary re-query of beatmap set in editor menu construction 2022-01-12 17:00:16 +09:00
Dean Herbert
83cbee39de Mark cases where BeatmapSet is generally guaranteed to be non-null 2022-01-12 16:39:36 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +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
7599efac30 Update editor cases where repeat should not be handled 2021-11-18 13:13:36 +09: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
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
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
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
ebe58cee11 Rename BeatmapInfo.StarDifficulty to StarRating to match underlying interface 2021-11-11 17:19:46 +09: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
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dean Herbert
09536cd733 Add logging of WorkingBeatmapCache.Invalidate calls 2021-10-14 14:05:33 +09:00
Dean Herbert
02689a1b60 Use actual BeatmapInfo rather than PlayableBeatmap.BeatmapInfo for editor writes 2021-10-13 14:50:12 +09:00
Jamie Taylor
4d91204faf
Pause Editor sample playback while popup dialog is shown 2021-09-29 20:46:41 +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
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
f8bdca542d Make restoring state a public call on Editor 2021-09-14 23:36:17 +09:00
Bartłomiej Dach
35ee889e5b
Restore clipboard content after difficulty switch 2021-09-13 21:04:27 +02:00
Bartłomiej Dach
3fc72271f1
Restore editor clock time after difficulty switch 2021-09-13 20:59:31 +02:00
Bartłomiej Dach
22fa9a303e
Expose test helper for switching between difficulties 2021-09-12 13:55:48 +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
Bartłomiej Dach
d6a47fd99c
Sort difficulties by ruleset and star rating in menu 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
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