1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 15:12:54 +08:00
Commit Graph

1193 Commits

Author SHA1 Message Date
Dean Herbert
6f067ff300 Only show confirmation if changes have been made since last save 2020-09-09 19:40:41 +09:00
Dean Herbert
ac0c4fcb8c Add prompt to save beatmap on exiting editor 2020-09-09 19:31:19 +09:00
Dean Herbert
c9f5005efd Add icons for editor toolbox tools 2020-09-09 18:40:01 +09:00
Dan Balasescu
53496aab33
Merge pull request #10090 from peppy/editor-song-setup
Add basic metadata info editing support to editor
2020-09-08 22:26:20 +09:00
Dan Balasescu
69f482f2cf
Merge pull request #10089 from peppy/fix-editor-multiple-screens
Avoid multiple editor screens potentially loading on top of each other
2020-09-08 21:26:10 +09:00
Dean Herbert
c38e7d796a Fix tab key not working 2020-09-08 19:52:56 +09:00
Dean Herbert
b55b6e3746 Bring design somewhat in line with collections dialog 2020-09-08 19:52:56 +09:00
Dean Herbert
c8281b17bd Remove editor screen fade (looks bad) 2020-09-08 19:52:56 +09:00
Dean Herbert
fe31edfa26 Add rudimentary saving logic 2020-09-08 19:52:56 +09:00
Dean Herbert
f43f8cf6b9 Add basic setup for song select screen 2020-09-08 19:52:56 +09:00
Dean Herbert
a501df954b Avoid multiple editor screens potentially loading on top of each other 2020-09-08 19:52:05 +09:00
Dean Herbert
c3123bf117 Rename drag blueprint selection method for discoverability 2020-09-08 17:22:59 +09:00
Dean Herbert
9e559cb9ac
Merge branch 'master' into editor-new-beatmap 2020-09-08 02:58:38 +09:00
Dean Herbert
1468b9589f Increase max sane BPM value 2020-09-07 18:20:47 +09:00
Dean Herbert
98676af7bb Move default declarations for readability 2020-09-07 18:18:50 +09:00
Dean Herbert
86512d6e8d Add BPM entry textbox 2020-09-07 18:18:50 +09:00
Dean Herbert
6091714f15 Limit BPM entry via slider to a sane range 2020-09-07 18:18:50 +09:00
smoogipoo
9ab6d584d3 Merge branch 'master' into editor-new-beatmap 2020-09-07 14:30:41 +09:00
Dan Balasescu
e17ccdfe9f
Merge branch 'master' into combo-colors 2020-09-07 13:55:41 +09:00
Yao Chung Hu
96f39dd350 Merge remote-tracking branch 'upstream/master' into visible-playfield-boundary 2020-09-05 01:50:13 -05:00
Dean Herbert
fba253f131 Take user argument in CreateNew method parameters 2020-09-04 13:17:43 +09:00
Dean Herbert
1f2f21e07a Merge branch 'master' into editor-new-beatmap 2020-09-04 13:11:59 +09:00
Dean Herbert
fe524ec491 Merge branch 'master' into update-framework 2020-09-03 14:58:32 +09:00
Dean Herbert
d849f7f2b5 Use the local user's username when saving a new beatmap 2020-09-03 13:20:23 +09:00
Dean Herbert
e032844570 Start with a fresh beatmap when entering editor from main menu 2020-09-03 13:20:23 +09:00
Dean Herbert
c964e4036e Merge branch 'master' into update-framework 2020-09-02 15:49:19 +09:00
Dean Herbert
249ae5df1b
Merge branch 'master' into beatmap-track-rework 2020-09-02 15:24:46 +09:00
Craftplacer
c2ade44656 Change types back 2020-09-01 17:58:06 +02:00
Craftplacer
9835d98942 Merge remote-tracking branch 'upstream/master' into combo-colors 2020-09-01 17:39:35 +02:00
Dan Balasescu
f08e7828da
Merge branch 'master' into beatmap-track-rework 2020-09-01 16:06:38 +09:00
Dean Herbert
d1f79a6a48 Fix potentially incorrect zoom level getting set on very short audio
track
2020-09-01 15:41:36 +09:00
Dean Herbert
d45a1521a1 Update BindableList usages 2020-09-01 11:56:23 +09:00
Dean Herbert
bee01bdd38 Fix first scroll wheel in editor incorrectly advancing twice 2020-08-31 18:01:16 +09:00
Craftplacer
db413686bb Add BeatmapSkin to EditorBeatmap 2020-08-30 21:12:45 +02:00
Craftplacer
b39ec74bb8 Scope down to IBeatmapSkin in EditorChangeHandler 2020-08-30 16:07:06 +02:00
Craftplacer
f5c82d41eb Remove if-cast 2020-08-30 16:06:48 +02:00
Craftplacer
00b68b050c Merge remote-tracking branch 'upstream/master' into combo-colors 2020-08-30 10:16:38 +02:00
Dean Herbert
f65991f31f Revert some usages based on review feedback 2020-08-26 23:28:58 +09:00
Craftplacer
e6646b9877 Resolve review comments 2020-08-23 15:08:02 +02:00
Dean Herbert
122265ff0e Revert non-track usage 2020-08-22 19:47:08 +09:00
Dean Herbert
70697cf1a0 Restore remaining editor components to use Beatmap.Track 2020-08-21 17:11:29 +09:00
Dean Herbert
0b0ff62647 Switch timeline to use track directly from beatmap again 2020-08-21 14:49:34 +09:00
Dean Herbert
5ade1e8259
Merge branch 'master' into beatmap-track-rework 2020-08-18 13:03:49 +09:00
Dean Herbert
b969bc03e0 Add loading spinner while editor screen loads 2020-08-18 00:47:32 +09:00
Dean Herbert
d9debef156 Add explicit LoadTrack method 2020-08-17 15:38:16 +09:00
Craftplacer
cfd82104db Minor changes and improvements 2020-08-16 01:00:28 +02:00
Craftplacer
48bdbb0cfb Use existing field in Editor 2020-08-15 23:46:10 +02:00
Craftplacer
c4a7fac760 Add required parameters and other various changes 2020-08-15 22:03:24 +02:00
Craftplacer
69590113d6 Temporary changes 2020-08-12 06:40:21 +02:00
smoogipoo
070d71ec27 More cleanups 2020-08-12 00:48:38 +09:00
smoogipoo
e87f50f74f Rename method 2020-08-07 22:31:41 +09:00
smoogipoo
b08ebe6f81 More inspections (rider is broken) 2020-08-07 21:14:45 +09:00
smoogipoo
961c6dab54 Fix more inspections 2020-08-07 21:08:03 +09:00
smoogipoo
5002d69f69 Update inspections 2020-08-07 20:51:56 +09:00
smoogipoo
61b632516e Ensure CurrentTrack is never null 2020-08-07 19:43:16 +09:00
smoogipoo
c8ebbc8594 Remove MusicController from EditorClock 2020-08-06 18:19:55 +09:00
smoogipoo
5c05fe3988 Expose track from MusicController 2020-08-06 16:24:14 +09:00
smoogipoo
6e42b8219c Move track to MusicController, compiles 2020-08-06 16:24:14 +09:00
Dan Balasescu
288c0402ee
Merge branch 'master' into editor-show-selected-count 2020-07-17 18:00:35 +09:00
Dan Balasescu
96c12bdf61
Merge pull request #9591 from peppy/editor-fix-double-click
Fix editor double-click incorrectly firing when clicks target different hitobjects
2020-07-17 17:58:15 +09:00
Dean Herbert
b4b230288b Shift hue of selection handler box to not collide with blueprints 2020-07-17 17:51:39 +09:00
Dean Herbert
ea6f257dc2 Add a display of count of selected objects in editor 2020-07-17 17:48:27 +09:00
Dean Herbert
222a22182e Fix double-click incorrectly firing across disparate targets 2020-07-17 17:03:57 +09:00
Dean Herbert
039790ce4f Perform next timing point check before ensuring movement 2020-07-17 16:40:02 +09:00
Dean Herbert
e96e558728 Fix reversing scroll direction not always behaving as expected 2020-07-17 16:03:23 +09:00
Yao Chung Hu
0d95b768aa Rename and Move EditorPlayfieldBorder to PlayfieldBorder for general purpose 2020-07-10 07:34:48 -05:00
Dan Balasescu
fd9ac3503f
Merge branch 'master' into fix-editor-drag-selection-while-playing 2020-06-23 21:56:31 +09:00
smoogipoo
e7238e25f9 Fix exception when dragging after deleting object 2020-06-23 20:36:09 +09:00
Dean Herbert
a5eac716ec Make work for all editors based on track running state 2020-06-23 18:42:56 +09:00
Dean Herbert
53d542546e Fix editor drag selection not continuing to select unless the mouse is moved 2020-06-23 18:04:50 +09:00
Dean Herbert
abe07b742e Fix drag scroll in editor timeline no longer working correctly 2020-06-14 13:20:58 +09:00
smoogipoo
f3b5149648 Move some suggestions to warnings, resolve issues 2020-06-03 16:48:44 +09:00
Dean Herbert
dd7dbfd548 Rename to IHasDuration 2020-05-29 16:45:47 +09:00
Dean Herbert
534dccc0c3 Move sett from EndTime to Duration 2020-05-29 16:45:47 +09:00
Dean Herbert
a2eec5d963 Fix strong bindable changes for DrumRolls 2020-05-29 16:45:47 +09:00
Dean Herbert
9a060cfb3a Allow drag selections to occur from outside the playfield 2020-05-27 20:44:15 +09:00
Dean Herbert
7e1e26de2a Allow HandleMovement by default 2020-05-26 17:04:31 +09:00
Dean Herbert
d041de63ce Allow SelectionHandler to provide custom context menu items without local hover check 2020-05-26 13:53:09 +09:00
Dean Herbert
decdc58de5 Merge branch 'editor-clock-cache' into editor-clock-transform 2020-05-24 12:55:47 +09:00
Dean Herbert
a3a9810344 Merge branch 'master' into editor-clock-cache 2020-05-23 00:44:04 +09:00
Dean Herbert
12d65f305f Simplify and fix incorrect seeking 2020-05-22 22:11:55 +09:00
Dean Herbert
1486a44b55 Merge branch 'editor-clock-cache' into editor-clock-transform 2020-05-22 19:51:02 +09:00
Dean Herbert
8b79e14225 Fix remaining test regressions 2020-05-22 19:49:49 +09:00
Dean Herbert
5ea33f4c04 Fix incorrect rounding in DragBar 2020-05-22 19:23:07 +09:00
Dean Herbert
866db629d6 Fix remaining test failures 2020-05-22 18:23:24 +09:00
Dean Herbert
d18eb663b1 Add tweening seek support to EditorClock 2020-05-22 16:47:52 +09:00
Dean Herbert
dd09d7830d Cache and resolve editor clock as EditorClock in all cases 2020-05-22 16:44:06 +09:00
Dean Herbert
8a47e2431b Move distance snap grid implementation to OsuHitObjectComposer 2020-05-21 17:13:22 +09:00
Dean Herbert
82d6549161 Pass down snap result and remove local TimeAt usage 2020-05-20 21:01:29 +09:00
Dean Herbert
23bf0d000e Implement mania beat snapping support 2020-05-20 21:01:19 +09:00
Dean Herbert
ffb8d48fc3 Fix osu!mania editor placement regressions 2020-05-20 21:01:03 +09:00
Dean Herbert
c46bfc2532 Create SnapResult class to hold various snapping results 2020-05-20 21:00:47 +09:00
Dean Herbert
3354d48a38 Change snapping to be screen space coordinate based 2020-05-20 21:00:29 +09:00
smoogipoo
dcfef6b443 Add clear method to EditorBeatmap 2020-05-08 18:46:37 +09:00
Dean Herbert
d470e092a3
Merge branch 'master' into fix-overlapping-object-undoredo 2020-05-01 10:45:29 +09:00
smoogipoo
c96bc5c51c Fix undo/redo behaving poorly with simultaneous objects 2020-04-30 20:39:41 +09:00
smoogipoo
9bec42bc7e Fix mania crashing on undo/redo 2020-04-30 20:03:46 +09:00
smoogipoo
cebc0fc046 Attempt to fix multiple selection movements 2020-04-27 20:35:24 +09:00
smoogipoo
7f5a1d7f44 Merge branch 'master' into fix-mania-selection 2020-04-27 17:09:40 +09:00
smoogipoo
104c61d622 Remove unnecessary scale 2020-04-27 11:06:23 +09:00
Dean Herbert
48168dddce Adjust editor timeline current marker to promote tick visibility 2020-04-27 10:54:32 +09:00
Dean Herbert
1c13fa6c61 Fix editor crashing when entering with no beatmap selected 2020-04-24 10:27:32 +09:00
smoogipoo
4ebb28d3e7 wip 2020-04-23 17:52:54 +09:00
smoogipoo
e1142b424d Fix test failures 2020-04-22 18:14:21 +09:00
smoogipoo
9c22d2f1dd Use platform bindings for editor actions 2020-04-22 17:41:24 +09:00
smoogipoo
9e2be6f2f4 Remove bindable to promote one-way access 2020-04-16 13:25:08 +09:00
smoogipoo
ce21cfbb03 Use bindables in menu items 2020-04-15 16:17:34 +09:00
smoogipoo
e8c955ed9b Add CanUndo/CanRedo bindables 2020-04-15 16:17:17 +09:00
Dean Herbert
2388799acf Limit upper number of editor beatmap states saved to 50 2020-04-13 20:37:46 +09:00
Dean Herbert
0e88c28060 Merge branch 'editor-undo-redo' into more-change-state-support 2020-04-13 18:07:00 +09:00
Dean Herbert
6aab19413c Rename differ to patcher, add xmldoc 2020-04-13 17:20:20 +09:00
Dean Herbert
bb53f96c71 Store states as byte[] instead of Streams 2020-04-13 17:18:50 +09:00
Dean Herbert
0c60dbe796
Merge branch 'master' into editor-undo-redo 2020-04-13 16:03:53 +09:00
smoogipoo
4a87ac7840 Add support for sample changes 2020-04-10 13:53:09 +09:00
smoogipoo
ee7e2b0854 Fix editor beatmap potentially not updating hitobjects 2020-04-10 13:29:46 +09:00
smoogipoo
575b061dd7 Add change state support to more editor components 2020-04-09 22:02:42 +09:00
smoogipoo
2e33d38cd7 Merge branch 'master' into editor-undo-redo 2020-04-09 22:02:28 +09:00
Dean Herbert
cc0bcea6e5
Merge pull request #8693 from smoogipoo/editorbeatmap-update-cleanup
Cleanup handling of hitobject updates
2020-04-09 21:32:58 +09:00
smoogipoo
14eca3655b Add change state handling to the editor 2020-04-09 21:22:07 +09:00
smoogipoo
86243d463f Add legacy beatmap diffing 2020-04-09 20:48:59 +09:00
smoogipoo
683302a77d Fix crash when trying to edit long beatmaps 2020-04-09 20:25:26 +09:00
smoogipoo
ee6ea08cf8 Cleanup handling of hitobject updates 2020-04-09 20:16:44 +09:00
smoogipoo
1f797207f7 Rework lookups to not require total playfield columns 2020-04-03 12:31:05 +09:00
Fuewburvpoa
6c825eb744
Update osu.Game/Screens/Edit/Compose/Components/BeatDivisorControl.cs
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-18 00:04:03 +02:00
Fuewburvpoa
bee8e22d18 Fix BeatDivisorControl allow to select value outside of VALID_DIVISORS 2020-03-17 22:27:11 +02:00
Dean Herbert
5e3668b2ea
Merge pull request #8260 from smoogipoo/add-workingbeatmap-timeout
Add beatmap loading timeout to prevent runaway loading scenarios
2020-03-17 11:17:35 +09:00
Joehu
f7ea20a926 Limit font weight to bold 2020-03-16 16:32:25 -07:00
Dan Balasescu
f390c1995d
Apply comment suggestions
Co-Authored-By: Dean Herbert <pe@ppy.sh>
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-16 11:29:28 +09:00
smoogipoo
c33ca6e99c Decorate usages with exception management 2020-03-13 14:28:11 +09:00
Dean Herbert
ed837d3115 Use framework extension method for FromHex 2020-03-11 10:18:41 +09:00
smoogipoo
da89798765 Merge remote-tracking branch 'origin/master' into layout-rework 2020-02-26 15:06:40 +09:00
Dean Herbert
9557a2cd96 Use object initialiser 2020-02-25 20:52:33 +09:00
Dean Herbert
d6046abe70 Only expose save for now 2020-02-25 18:59:16 +09:00
smoogipoo
6c28fd21c7 osu-side changes 2020-02-24 20:52:15 +09:00
Dean Herbert
575946d923 Expose save and export options in editor to non-dekstop platforms 2020-02-23 20:47:14 +09:00
smoogipoo
958c891d15 Update with framework-side bindable list changes 2020-02-17 15:06:14 +09:00
recapitalverb
c753cb46c5 Use [Resolved] wherever possible 2020-02-14 20:14:00 +07:00
Dean Herbert
0e439e3a70 Fix missing dependency in ZoomableScrollContainer test 2020-02-14 14:41:55 +09:00
Dan Balasescu
60d796ae3f
Merge branch 'master' into fix-timeline-seek-while-playing 2020-02-14 13:04:38 +09:00
Dan Balasescu
4b7a053544
Merge branch 'master' into update-placement-more-often 2020-02-13 18:43:27 +09:00
Dan Balasescu
c384e3cfc2
Merge branch 'master' into timeline-zoom-button-repeat 2020-02-13 18:04:36 +09:00
Dean Herbert
118f862342 Fix not being able to seek using scroll wheel in timeline while playing track 2020-02-13 12:03:50 +09:00
Dean Herbert
03bf10f9a2 Remove unused using statement 2020-02-13 11:15:00 +09:00
Dean Herbert
487dd47c9e Add mouse down repeat support to timeline zoom buttons 2020-02-13 11:14:09 +09:00
Dean Herbert
e34a24a063 Update placement blueprint more often for better display 2020-02-13 10:45:16 +09:00
Dean Herbert
2b6f99d404 Standardise placement blueprint creation and destruction 2020-02-13 10:12:56 +09:00
Dean Herbert
b65e839bd2 Simplify blueprints by removing visible state 2020-02-13 10:00:09 +09:00
Dean Herbert
0fe41fd50a Fix blueprint showing even when mouse outside of container 2020-02-13 09:03:48 +09:00
Dan Balasescu
28cf5c7a59 Add accessor 2020-02-10 14:28:43 +09:00
Dean Herbert
801e39a543 Improve xmldoc for PlacementObject 2020-02-08 11:35:27 +09:00
Dean Herbert
91203c2b12
Merge branch 'master' into placement-display-in-timeline 2020-02-08 01:50:24 +09:00
Dean Herbert
2082948f9a Make editor screens display below timeline 2020-02-07 18:23:59 +09:00
Dean Herbert
56a091674b Add placement display to timeline 2020-02-07 18:04:10 +09:00
Dean Herbert
e08437c5dc Track placement object in EditorBeatmap 2020-02-07 18:03:14 +09:00
Dean Herbert
e31d69c749 Add commit status to EndPlacement; call BeginPlacement on initial movement 2020-02-07 18:02:48 +09:00
smoogipoo
6ae0efa40d Fix adjustment not working when dragged before object 2020-02-06 14:47:43 +09:00
smoogipoo
c138e3907e Move methods below ctor 2020-02-06 14:35:45 +09:00
Dean Herbert
f5edad16e6 Improve visuals 2020-02-05 19:43:13 +09:00
Dean Herbert
98ab1f9862 Fix negative spinners 2020-02-05 18:35:31 +09:00
Dean Herbert
3d42973764 Allow scrolling via drag while dragging a hold note handle 2020-02-05 18:35:31 +09:00
Dean Herbert
cef45afbc8 Add a simple hover state 2020-02-05 18:35:31 +09:00
Dean Herbert
d56accaef1 Disallow negative / zero repeat counts (and fix off-by-one) 2020-02-05 18:35:31 +09:00
Dean Herbert
d04cc0123d Initial implementation of timeline blueprint dragbars 2020-02-05 18:35:31 +09:00
Dean Herbert
96986bf5fc Remove beat divisor from ctor and use DI instead 2020-02-05 17:48:21 +09:00
Dean Herbert
63c595ed97 Make EditorBeatmap a component and move UpdateHitObject to it 2020-02-05 17:48:21 +09:00
Dean Herbert
90caa61245
Reverse comparison for readability
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-02-01 02:05:26 +09:00
Dean Herbert
f51cfa2220 Fix too many ticks being displayed on beatmaps with multiple timing sections
Closes https://github.com/ppy/osu/issues/7681.
2020-01-31 00:24:00 +09:00
Dan Balasescu
66b8d38d42
Merge branch 'master' into selection-composition-conformity 2020-01-29 16:52:45 +09:00
Dan Balasescu
e553a9b9e0
Merge branch 'master' into distance-snap-grid-correct-colouring 2020-01-29 16:09:35 +09:00
Dan Balasescu
63501c188a
Merge pull request #7644 from peppy/standardise-zoom-levels
Standardise editor timeline zoom across maps of all lengths
2020-01-29 16:04:25 +09:00
Dan Balasescu
018c005c71
Merge branch 'master' into distance-snap-grid-correct-colouring 2020-01-29 15:33:07 +09:00
Dan Balasescu
0d6fd0a54a
Merge branch 'master' into standardise-zoom-levels 2020-01-29 15:32:57 +09:00
Dan Balasescu
65ac412ff8
Merge branch 'master' into fix-beat-snap 2020-01-29 15:32:27 +09:00
smoogipoo
391681b7af Separate calculation to follow other examples 2020-01-29 15:16:48 +09:00
Dean Herbert
7d05840ee0
Merge branch 'master' into select-tool 2020-01-29 15:04:22 +09:00
smoogipoo
9a47428bfd Remove out of date comment 2020-01-29 14:40:42 +09:00
Dean Herbert
40379a5e22 Use foreach 2020-01-28 16:04:13 +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
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
596a01661c Remove 1ms offset and update tests 2020-01-28 13:42:22 +09:00
Dean Herbert
4bb33046ca Standardise editor timeline zoom across maps of all lengths 2020-01-28 13:03:06 +09:00
Dean Herbert
58654f28b6 Fix beat snap implementation being incorrect 2020-01-28 12:48:24 +09:00
Dean Herbert
29daabb40a Fix distance snap grid showing incorrect colouring
Now matches timeline colours (based on timing point).
2020-01-28 11:59:21 +09:00
Dean Herbert
d5fda053f4 Use centre origin/anchors 2020-01-27 18:09:54 +09:00
Dean Herbert
493390b750 Rename class to TimelineTickDisplay 2020-01-27 18:08:01 +09:00
Dean Herbert
084fa2f04a Add timeline beat display 2020-01-27 17:38:50 +09:00
Dean Herbert
e24c4ab901 Adjust zoom defaults for timeline to be more useful 2020-01-27 17:34:40 +09:00
Dean Herbert
df665c3a3c Move beat index colour retrieval to static function 2020-01-27 17:34:40 +09:00
Dean Herbert
508b92e611 Update beat divisor colours to be more distinguishable
Close to osu-stable
2020-01-27 17:34:40 +09:00
Dan Balasescu
368587fc06
Merge branch 'master' into timeline-maybe 2020-01-24 18:08:29 +09:00
smoogipoo
811ddb02a4 General refactoring 2020-01-24 17:50:36 +09:00
smoogipoo
28727bbafd Fix crash when deselecting via ctrl+click 2020-01-24 17:30:37 +09:00
Dean Herbert
e4702ffe9e Fix editor rate adjustment polluting global beatmap rate 2020-01-24 13:10:02 +09:00
Dean Herbert
5646f7777e Add comment about custom SelectionHandler 2020-01-23 16:23:42 +09:00
Dean Herbert
5cadbb1ffb Move timeline blueprint to own class 2020-01-23 16:22:43 +09:00
Dean Herbert
9d90799447 Remove useless container 2020-01-23 16:20:42 +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
02ae92418f Merge remote-tracking branch 'upstream/master' into decouple-blueprint-container 2020-01-23 15:54:46 +09:00
Dean Herbert
289be7a17b Merge branch 'i-beat-snapping' into timeline-maybe 2020-01-23 15:45:33 +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
Dean Herbert
56c044c44a Move beat snapping to its own interface 2020-01-23 14:30:25 +09:00
Dean Herbert
cb09c2e144 Add support for dragging outside visible extents 2020-01-23 14:30:25 +09:00
Dean Herbert
477e1b7d27 Rename TimelineHitObjectDisplay to TimelineBlueprintContainer 2020-01-23 14:30:25 +09:00
Dean Herbert
9d2a46df89 Add beat snapping to timeline movement 2020-01-23 14:30:25 +09:00
Dean Herbert
c76f76e5aa Fix being able to drag out of the blueprint intending to be moved 2020-01-23 14:30:25 +09:00
Dean Herbert
aa1a226ab7 Remove unused ScreenSpaceStartPosition field 2020-01-23 14:30:25 +09:00
Dean Herbert
53bdf72592 Allow basic timeline selection temporal movement 2020-01-23 14:30:25 +09:00
Dean Herbert
cb6e7425ae Make dragbox stateful to fix blueprint movement 2020-01-23 14:30:25 +09:00
Dean Herbert
f0d810fe20 Follow start time and duration changes 2020-01-23 14:30:08 +09:00
Dean Herbert
63cef8b8b7 Rename nested classes to be more appropriate 2020-01-23 14:30:08 +09:00
Dean Herbert
89d90fdfa0 Fix drag not updating until mouse is moved while scrolling timeline 2020-01-23 14:30:07 +09:00
Dean Herbert
a8ec4907c4 Fix selections while scrolling timeline 2020-01-23 14:27:21 +09:00
Dean Herbert
c4395b1cea Clean up nested class implementations 2020-01-23 14:27:20 +09:00
Dean Herbert
482409e776 Colour extension bars of long objects 2020-01-23 14:26:33 +09:00
Dean Herbert
a6775d1bd3 Implement custom drag box and allow drag seeking once again 2020-01-23 14:26:33 +09:00
Dean Herbert
8a7f7c5e46 Merge remote-tracking branch 'smoogipoo/void-key-up-returns' into update-framework 2020-01-22 22:57:56 +09:00
Dean Herbert
7c62cc3ac3 Merge remote-tracking branch 'smoogipoo/void-mouse-up-returns' into update-framework 2020-01-22 22:57:52 +09:00
smoogipoo
7b2f58eb30 Apply OnRelease method signature refactorings 2020-01-22 13:22:34 +09:00
Dean Herbert
e3a2b20f63 Fix SelectionHandler visibility on remote selection 2020-01-22 01:32:11 +09:00
Dean Herbert
83fa4a9bb3 Move circle size to a constant 2020-01-21 22:24:04 +09:00
Dean Herbert
a963d652bc Mark readonly 2020-01-21 20:54:50 +09:00
Dean Herbert
c88bdbd4a0 Share selected hitobjects across multiple blueprint containers 2020-01-21 20:46:39 +09:00
Dean Herbert
1ce78afa98 Disable y offset for now 2020-01-21 19:51:44 +09:00
Dean Herbert
f582c42bbd Perform deletion directly via EditorBeatmap 2020-01-21 18:56:09 +09:00
Dean Herbert
a888d148b6 Remove remaining cast 2020-01-21 18:01:10 +09:00
Dean Herbert
6187b2e77c Implement IDistanceSnapProvider in timeline for now 2020-01-21 18:00:36 +09:00
Dean Herbert
353b74b04a Handle selection events in timeline 2020-01-21 17:37:35 +09:00
Dean Herbert
79351976d5 Allow timeline content to get more localised dependencies 2020-01-21 17:37:05 +09:00
Dean Herbert
8f16c1cb04 Add non-hiding selection state 2020-01-21 14:21:00 +09:00
Dean Herbert
53fe0ce790 Use AliveChildren 2020-01-21 14:20:52 +09:00
Dean Herbert
bd96cf94a6 Begin refactoring SelectionBlueprint to handle non-drawable HitObjects 2020-01-21 12:47:14 +09:00
smoogipoo
40f502c6d1 Apply input method signature refactorings 2020-01-20 19:35:37 +09:00
smoogipoo
1b1003bd73 Refactor 2020-01-20 18:31:25 +09:00
smoogipoo
bfb056c612 Apply input method signature refactorings 2020-01-20 18:17:21 +09:00
Dean Herbert
25aff5d96e Merge remote-tracking branch 'upstream/master' into decouple-blueprint-container 2020-01-20 17:08:59 +09:00
smoogipoo
9535b3eeba Fix possible nullref on blueprint removal 2020-01-16 12:00:36 +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
smoogipoo
e49701a215 Save before exporting 2020-01-15 13:48:28 +09:00
smoogipoo
c25fefa3ca Add beatmap package export 2020-01-15 13:44:46 +09:00
smoogipoo
b51575b433 Add temporary keybind for saving 2020-01-14 19:24:53 +09:00
smoogipoo
ea7510d2f5 Rename menu option 2020-01-14 19:24:53 +09:00
smoogipoo
a255832195 Add beatmapmanager method for saving 2020-01-14 19:24:53 +09:00
smoogipoo
91735ff367 Update MathUtils namespace usages 2020-01-09 13:43:44 +09:00
Dean Herbert
d8d12cbbdd wip: Move more functionality into ComposeBlueprintContainer 2020-01-02 19:09:37 +09:00
Dean Herbert
ee332e0d42 Split out BlueprintContainer functionality further 2020-01-02 18:21:16 +09:00
Dean Herbert
f09f9eb07d Merge branch 'master' into general-editor-beatmap 2020-01-01 23:27:08 +09:00
Dean Herbert
4f2fa2626a Centralise calls to mutable hitobjects list 2020-01-01 21:24:00 +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
Dean Herbert
bf85f4affb Fix editor crashing when loading a beatmap for an unsupported ruleset 2019-12-18 17:53:26 +09:00
smoogipoo
59345c97e4 Remove now unnecessary editor working beatmap 2019-12-12 15:58:31 +09:00
Dean Herbert
606bd33aa6 Use beatmap background in editor 2019-12-12 13:04:32 +09:00
smoogipoo
94a298a82d Refactor distance snap grid to not require hitobjects 2019-12-10 16:00:09 +09:00
Dean Herbert
b1426d1b22 Full impossible nullref 2019-12-06 12:51:43 +09:00
Dean Herbert
9248fbe881 Remove extra checkboxes for now 2019-12-06 12:22:44 +09:00
Dean Herbert
28400aa865 Update test scene 2019-12-06 11:27:24 +09:00
Dean Herbert
12a9843835 Move thickness to a constant 2019-12-06 10:48:18 +09:00
Dean Herbert
e76f8bdd64 Fix warnings 2019-12-05 23:31:21 +09:00
Dean Herbert
d8620a70fb Make work in editor 2019-12-05 20:12:25 +09:00
Dean Herbert
e225b0032a Add basic hitobject display to timeline 2019-12-05 19:31:40 +09:00
Dean Herbert
709ec1404f Centralise End/StartTime retrieval to extension method 2019-11-25 19:09:14 +09:00
Berkan Diler
fccdbffa93 Use MathF instead of Math- functions when possible
MathF-functions are faster than the Math-counterpart and it looks cleaner, so use MathF when we cast to float or int anyway.
2019-11-25 00:45:42 +01:00
Dean Herbert
c2e85a2057 Apply CornerExponent fixes 2019-11-22 19:49:20 +09:00
Dean Herbert
201f32859a
Merge branch 'master' into slider-control-point-removal 2019-11-21 22:10:52 +09:00
Berkan Diler
6cab517b2d .NET Standard 2.1 implements Math.Clamp , use it instead of MathHelper.Clamp from osuTK. 2019-11-20 13:37:47 +01:00
smoogipoo
76ab0ecd3c Disallow deselections with right clicks 2019-11-13 17:21:55 +09:00
Dean Herbert
4b66ce0c52
Merge branch 'master' into slider-controlpoint-addition 2019-11-12 18:13:27 +09:00
Dean Herbert
dd196385cb
Add Ctrl+A to select all and Escape to deselect all (#6803)
Add Ctrl+A to select all and Escape to deselect all

Co-authored-by: Dean Herbert <pe@ppy.sh>
2019-11-12 18:10:45 +09:00
Dean Herbert
cdd87a6903
Merge branch 'master' into delete-selection 2019-11-12 17:59:43 +09:00
smoogipoo
10fd5ef5a7 Merge context menus 2019-11-12 15:02:27 +09:00
Dean Herbert
b4525c1f6e Fix right clicking to select not showing context menu 2019-11-12 14:42:30 +09:00
smoogipoo
9f1d490ac9 Only handle selection input on blueprints 2019-11-12 12:18:24 +09:00
Dean Herbert
a43b0ee01b Apply naming and styling changes 2019-11-12 10:45:46 +09:00
Dean Herbert
b37bf4ea01 Merge remote-tracking branch 'upstream/master' into selection-hitsound-addition 2019-11-12 10:44:53 +09:00
smoogipoo
f3dc38e342 Add Ctrl+A to select all (esc to deselect all) 2019-11-11 13:41:10 +09:00
smoogipoo
97ea07db0e Add delete option to the right-click menu 2019-11-08 19:44:47 +09:00
Dean Herbert
c70c05c896
Less sickening parallax (#6743)
Less sickening parallax
2019-11-08 19:15:25 +09:00
Dean Herbert
5699f3e22b
Seek to the first hitobject when entering the editor (#6766)
Seek to the first hitobject when entering the editor

Co-authored-by: Dean Herbert <pe@ppy.sh>
2019-11-08 19:15:08 +09:00
Dean Herbert
a849bc0746 Move implementation into resetTrack for safety 2019-11-08 18:51:01 +09:00
smoogipoo
e904928314 Seek to first hitobject when entering editor 2019-11-08 17:42:19 +09:00
smoogipoo
36cc79f04f Softly handle invalid beat divisors instead of throwing 2019-11-08 17:28:11 +09:00
smoogipoo
998e1dfe47 Fix non-1/1 initial beat divisor control display 2019-11-08 17:23:47 +09:00
smoogipoo
eb9fff96ba Read default beat divisor from beatmap 2019-11-08 17:22:58 +09:00
smoogipoo
df08a95734 Separate addition/removal into separate methods 2019-11-08 16:46:58 +09:00
smoogipoo
6fc1be64c2 Make hitobject samples a bindable list 2019-11-08 14:04:57 +09:00
smoogipoo
864b8db638 Use three states for the hitsound menu items 2019-11-08 13:52:36 +09:00
smoogipoo
046f0b0fe5 Allow right-clicks to trigger selection 2019-11-08 13:40:47 +09:00
smoogipoo
573d11503e Remove unused using 2019-11-08 13:36:17 +09:00
smoogipoo
abb3a6ca5b Initial right click context menu implementation 2019-11-08 13:36:17 +09:00
Dean Herbert
70cf91fb40
Seek editor when hit objects are double clicked (#6745)
Seek editor when hit objects are double clicked
2019-11-06 19:22:41 +09:00
smoogipoo
3680e7c704 Seek editor when hit objects are double clicked 2019-11-06 18:15:57 +09:00
Dean Herbert
aaa06396f0 Reduce editor parallax 2019-11-06 18:11:56 +09:00
smoogipoo
2c1bfd62ef Disallow selections to be moved outside of the playfield 2019-11-06 17:28:04 +09:00
Dean Herbert
c631a05a44
Add ability to edit individual ControlPoint attributes from tim… (#6638)
Add ability to edit individual ControlPoint attributes from timing screen
2019-11-06 17:24:51 +09:00
Dean Herbert
a2963b66f6
Limit distance snap between two adjacent hit objects (#6740)
Limit distance snap between two adjacent hit objects
2019-11-06 17:18:00 +09:00
Dean Herbert
23eab68c72 Merge remote-tracking branch 'upstream/master' into editor-timing-screen-2 2019-11-06 16:22:55 +09:00
smoogipoo
020b08b450 Initial implementation of limited distance snap 2019-11-06 15:27:48 +09:00
Dean Herbert
ebfb5d050d Move section update code to abstract method to avoid incorrect BindValue usage 2019-11-06 14:36:43 +09:00
smoogipoo
322a1f0a86 Fix potential nullref 2019-11-06 12:45:35 +09:00
smoogipoo
7cd4cb8a93 Rename selectedPoints to selectedGroup 2019-11-06 12:32:12 +09:00
smoogipoo
9dd7f997d2 Reoder SampleSection to match others 2019-11-06 12:17:18 +09:00
smoogipoo
f20bfe7a55 Fix extra semicolon 2019-11-06 12:16:48 +09:00
Dan Balasescu
b5a8bbaa60
Merge branch 'master' into editor-timing-screen 2019-11-06 12:02:00 +09:00
Dean Herbert
52dba69a64
Implement slider control point deletion (#6679)
Implement slider control point deletion

Co-authored-by: Dean Herbert <pe@ppy.sh>
2019-11-05 19:15:15 +09:00
Dean Herbert
f4b93ec943 Add exception when holding control 2019-11-05 18:29:08 +09:00
Dean Herbert
f77de7d880 Simplify implementation 2019-11-05 18:25:38 +09:00
smoogipoo
0db34a47f8 Fix selecting underneath selected blueprints 2019-11-05 17:28:42 +09:00
smoogipoo
7c20a589f2 Remove unused usings 2019-11-05 13:56:21 +09:00
smoogipoo
c8beb5296f Use PlatformAction.Delete instead of Delete key 2019-11-05 13:26:44 +09:00
Dean Herbert
7b67701e57
Merge branch 'master' into editor-timing-screen 2019-10-30 19:27:24 +09:00
Dean Herbert
7f2916454d Simplify EditorClock.Seek method 2019-10-30 19:09:46 +09:00
Dean Herbert
93076ad6a1
Merge branch 'master' into editor-timing-screen 2019-10-30 18:42:20 +09:00
smoogipoo
45af796943 Remove usages of EF internals 2019-10-30 17:05:15 +09:00
Dean Herbert
522572eace Add ability to adjust all control point attributes 2019-10-28 16:21:31 +09:00
Dean Herbert
9c3e54909c Ensure tooltips of RowAttributes are up-to-date 2019-10-28 16:20:54 +09:00
Dean Herbert
ee5591d7d5 Add missing license headers 2019-10-28 12:42:17 +09:00
Dean Herbert
43ad4a3a3c Tidy up string output 2019-10-28 12:31:38 +09:00
Dean Herbert
1953aa64b6 Merge branch 'bindable-control-points' into editor-timing-screen 2019-10-28 12:00:51 +09:00
Dean Herbert
8069674824 Merge remote-tracking branch 'upstream/master' into bindable-control-points 2019-10-28 11:52:04 +09:00
Dean Herbert
29e20bc8d2 Add xmldoc and combine GroupAt / CreateGroup 2019-10-28 10:45:11 +09:00
Dean Herbert
81b5d7b79f Select another group after deleting selected 2019-10-27 16:30:05 +09:00
Dean Herbert
73369ae613 Add the ability to add/remove groups 2019-10-27 16:13:24 +09:00
Dean Herbert
0fba272e78 Add the ability to add new ControlPoint types to existing groups 2019-10-27 15:19:36 +09:00
Dean Herbert
de69665a46 Reduce horizontal spacing of attributes 2019-10-27 14:17:59 +09:00
Dean Herbert
93b003eb5a Add selected row state 2019-10-27 13:31:23 +09:00
Dean Herbert
b8efc59cdc Update UI components to use new grouping 2019-10-25 20:13:22 +09:00
Dean Herbert
e987db37ec Add grouping of ControlPoints 2019-10-25 19:52:02 +09:00
Dean Herbert
da6769f0fc Remove necessity of AutoGenerated flag 2019-10-25 19:43:38 +09:00
Dean Herbert
94ffe03e6e Group timing points 2019-10-25 19:36:12 +09:00
Dan Balasescu
3692846367
Merge branch 'master' into snapping-refactor 2019-10-25 18:26:14 +09:00
smoogipoo
ae011e8ee8 Fix distance snap grid test scenes 2019-10-25 17:25:46 +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
Dean Herbert
351f8d3dd1 Merge branch 'master' into editor-timing-screen 2019-10-25 13:21:56 +09:00
Dean Herbert
0b3c7f28af
Merge branch 'master' into fix-dragbox-first-frame 2019-10-24 23:01:32 +09:00
Dean Herbert
fa3350ce2d
Refactor blueprint movement and selection events (#6588)
Refactor blueprint movement and selection events
2019-10-24 22:58:03 +09:00
smoogipoo
a969914d6e Mention coordinate space 2019-10-24 18:24:22 +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
7a71352684 Fix drag box being positioned incorrectly for 1 frame 2019-10-24 17:22:14 +09:00
smoogipoo
fb88001c0e Reorder blueprint addition/removal + add regions 2019-10-24 16:53:34 +09:00
smoogipoo
45bd91f63f Add special cases for click-selection 2019-10-24 16:14:29 +09:00
smoogipoo
8e4a21bee7 Separate out mouse down/click/up handling 2019-10-24 15:58:22 +09:00
smoogipoo
a07e5a269b Extract drag events into multiple methods 2019-10-24 15:33:08 +09:00
smoogipoo
f128e99fb2 Remove unused methods 2019-10-24 15:07:04 +09:00
smoogipoo
e04c77178c Move selection events to BlueprintContainer 2019-10-24 14:58:02 +09:00
smoogipoo
714c89faa4 Move selection drag events to BlueprintContainer 2019-10-24 14:57:58 +09:00
smoogipoo
cef2318cf5 Move drag box drag handling to BlueprintContainer 2019-10-23 18:38:06 +09:00
Dean Herbert
f61d7e4fbe Add smoothing and tidy code a touch 2019-10-23 17:56:09 +09:00
smoogipoo
c9fec50f63 Remove unnecessary whitespace 2019-10-23 17:00:17 +09:00
smoogipoo
97383b4a37 Show centre point of distance snap grid 2019-10-23 16:58:56 +09:00
smoogipoo
851773a842 Apply adjustments for framework changes 2019-10-23 14:04:06 +09:00
Dean Herbert
c06f142433 Fix some spacing and references 2019-10-23 11:22:55 +09:00
Dean Herbert
5e22eed131 Add add/remove buttons 2019-10-22 21:50:21 +09:00
Dean Herbert
4883844c4c Add basic information display for all types of control points 2019-10-22 20:57:56 +09:00
Dean Herbert
81e8b678d3 Update editor time when a new timing point is selected 2019-10-22 20:17:19 +09:00
Dean Herbert
25601ac17c Merge branch 'master' into editor-timing-screen 2019-10-22 18:01:53 +09:00
Dean Herbert
0bf35faae8 Update incorrect reference 2019-10-21 19:25:56 +09:00
Dean Herbert
e3fa5f1da3
Merge branch 'master' into beatsnap-grid-integration 2019-10-21 18:44:34 +09:00
Dean Herbert
b157aaead1 Merge remote-tracking branch 'upstream/master' into beatsnap-grid-integration 2019-10-21 17:09:43 +09:00
smoogipoo
38c2c328ff Rename HitObject -> DrawableObject in selection blueprints 2019-10-21 17:04:56 +09:00
smoogipoo
fc7e4680a7 Split on multiple lines 2019-10-21 14:08:28 +09:00
Dean Herbert
80bf68c108 Add control sections and hook up bindable control groups 2019-10-21 00:06:38 +09:00
Dean Herbert
0fbba9a5e5 Split out more classes 2019-10-20 23:42:13 +09:00
Dean Herbert
07286c0cfc Fix editor's clock not being processed unless composer is loaded 2019-10-18 18:21:53 +09:00
Dean Herbert
ffec960b77 Split out classes 2019-10-18 17:59:54 +09:00
Dean Herbert
71d45d41d1 Add basic visualisation of different control point types 2019-10-18 17:57:37 +09:00
Dean Herbert
f22ec6f5bd Merge branch 'master' into editor-timing-screen 2019-10-18 16:57:46 +09:00
smoogipoo
463079e148 Implement placement snapping 2019-10-18 13:48:59 +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
bc76a9cb8c Expose selection changed event from BlueprintContainer 2019-10-18 12:40:27 +09:00
smoogipoo
c5ee533524 Merge branch 'dho-apply' into beatsnap-grid-integration 2019-10-18 12:38:29 +09:00
smoogipoo
510ce9345f Fix potential blueprint nullrefs with the new structure 2019-10-17 16:14:28 +09:00
Dean Herbert
f92331531c Rename grid to DistanceSnap to be more in line with its purpose 2019-10-17 15:32:02 +09:00
smoogipoo
b6b8098b98 Add an arbitrary offset to prevent div-by-0 2019-10-16 19:44:53 +09:00
smoogipoo
2d4b7dc361 Remove redundant code 2019-10-16 19:33:18 +09:00
smoogipoo
5ac5e34f85 Use a cleaner distance function 2019-10-16 19:32:45 +09:00
Dean Herbert
f3c38ae089
Merge branch 'master' into osu-beatsnapping-grid 2019-10-13 18:38:57 +09:00
Dean Herbert
00f0957cc3
Merge branch 'master' into editor-grids-2 2019-10-12 23:28:51 +09:00
Dean Herbert
de13320a2d Add initial table display 2019-10-11 18:46:05 +09:00
smoogipoo
45835f97a1 Split out grids into separate files 2019-10-11 18:41:17 +09:00
smoogipoo
050d86a741 Always use the local coordinate space 2019-10-11 18:24:33 +09:00
smoogipoo
9ecec806c2 Rename grid creation method + parameter 2019-10-11 18:24:33 +09:00
smoogipoo
5f0cd356d7 Rename startPosition to centrePosition 2019-10-11 18:24:33 +09:00
smoogipoo
8fb2628f9e Improve xmldocs 2019-10-11 18:24:33 +09:00
smoogipoo
66e0fef85b Expose StartPosition for derived grids to use 2019-10-11 18:24:33 +09:00
smoogipoo
97d4a8e59e Remove unnecessary dependency 2019-10-11 18:24:33 +09:00
smoogipoo
2df519ddfa Simplify colour retrieval function 2019-10-11 18:24:33 +09:00
smoogipoo
2aa3d0bb39 Implement base class for beat snapping grids 2019-10-11 18:24:33 +09:00
Dean Herbert
937dbb7bf6 Initial layout for timing screen 2019-10-11 16:22:24 +09:00
smoogipoo
2e2768870f Merge remote-tracking branch 'origin/master' into editor-selection-movement-params 2019-10-10 16:38:41 +09:00
Dean Herbert
0681bb9a2b Fix potential nullref 2019-10-09 16:49:10 +09:00
Dean Herbert
2d8e5615e4 Extract timeline and layout logic from ComposeScreen 2019-10-09 16:05:55 +09:00
Dean Herbert
3dd2b18ff0 Make EditorScreen abstract 2019-10-09 16:04:58 +09:00
smoogipoo
179656788d Remove unnecessary method 2019-10-08 19:27:59 +09:00
smoogipoo
c1db11fa06 More removal of "drag" 2019-10-08 19:24:58 +09:00
smoogipoo
8b661e624d Remove drag from class/method namings + refactor 2019-10-08 19:08:31 +09:00