Naxess
19800f5f7f
Move IBeatmap
arg into context
2021-05-13 11:24:22 +02:00
Naxess
b37cb3bdbe
Change interpreted difficulty from bindable to regular value
...
There's no reason for why checks would need this to be bindable. A 1-directional binding is more appropriate.
2021-05-13 09:00:30 +02:00
Naxess
4eeeaf6a1a
Keep track of local bound copy
2021-05-13 07:57:32 +02:00
Naxess
e7c7786db3
Merge branch 'master' into beatmap-verifier-context
2021-05-13 07:40:33 +02:00
Dean Herbert
b81f86bd4d
Move DI resolution to inside BDL parameters
2021-05-13 13:54:06 +09:00
Dean Herbert
c6648112e5
Simplify binding flow in InterpretationSection
2021-05-13 13:51:41 +09:00
Dean Herbert
cdcbaf4291
Tidy up specification of SettingsSection
2021-05-13 13:45:10 +09:00
Naxess
47948d7b34
Set default for bindable in object initializer
...
Fixes the CI failure.
2021-05-13 06:08:48 +02:00
Naxess
fb305130de
Also refresh when interpreted difficulty changes
2021-05-13 06:00:21 +02:00
Naxess
ee0a6ba93e
Use local bound copy in InterpretationSection
as well
...
Else we're relying on the `VerifyScreen`'s bindable instance, and by extension the `VerifyScreen` instance itself.
2021-05-13 05:59:49 +02:00
Naxess
e80d8f6922
Keep track of local bound copy
2021-05-13 05:46:47 +02:00
Naxess
04c1585eb2
Use more consistent lambda discards
2021-05-13 05:38:45 +02:00
Naxess
e86834b740
Use local bound copy for HiddenIssueTypes
2021-05-13 05:25:20 +02:00
Naxess
c8d21f2c3f
Isolate refreshing to IssueList
2021-05-13 05:25:02 +02:00
Naxess
fbb76ba598
Split ShowIssueTypes
dict into hidden and configurable lists
...
This way `VerifyScreen` is decoupled from which options `VisibilitySection` provides.
Bindings are a bit less neat, though.
2021-05-13 04:50:32 +02:00
Naxess
dd8423c4c4
Set interpreted difficulty to correct default
2021-05-13 04:36:20 +02:00
Naxess
6806e40ad9
Remove unnecessary local variable
...
This now exists in `VerifyScreen`, which we can access from here.
2021-05-13 04:30:40 +02:00
Naxess
56bd897666
Move ShowIssueTypes
to VerifyScreen
2021-05-13 04:29:27 +02:00
Salman Ahmed
96d3586294
Fix rotation handle visibility logic not handling two handles hovered at once
2021-05-12 11:42:55 +03:00
Dean Herbert
d2e0e8ad94
Reverse direction of binding to allow for better abstract class definitions
2021-05-12 16:53:58 +09:00
Dean Herbert
17e3764576
Rename Settings
to have a more localised name
2021-05-12 16:38:04 +09:00
Naxess
64d96b06a6
Add interpreted difficulty info to BeatmapVerifierContext
...
Enables checks to make use of the difficulty level as shown in the settings UI.
2021-05-12 02:30:21 +02:00
Naxess
c13b93e6f1
Replace IWorkingBeatmap
arg with BeatmapVerifierContext
in checks
...
This simplifies passing of contextual information by enabling addition without needing to refactor lots of classes.
See next commit for example.
2021-05-12 02:29:18 +02:00
Naxess
4aeaec6ecc
Add InterpretationSection
and its bindable in IssueList
...
We'll eventually connect that bindable so that checks can access it.
2021-05-12 01:32:18 +02:00
Naxess
ad78aec1ef
Refresh IssueList
on changes in VisibilitySection
2021-05-12 01:30:45 +02:00
Naxess
1bb7d412da
Add IssueList
filtering based on those bindables
2021-05-12 01:29:46 +02:00
Naxess
2e4399f0c1
Add VisibilitySection
and its bindables in IssueList
2021-05-12 01:27:21 +02:00
Naxess
01b8794757
Add abstract Section
class
...
Similar to `Section` in the timing screen, but does not make use of checkboxes, nor specific to control points.
So there's a lot of things that differ, hence new class instead of factoring that out.
2021-05-12 01:26:12 +02:00
Naxess
1de35f880b
Separate IssueList
into own class
2021-05-12 01:23:31 +02:00
Naxess
d3c1ec55ee
Take IssueList
in IssueSettings
constructor
...
We'll be using this for bindables later.
2021-05-12 01:22:32 +02:00
Naxess
97bd482d4d
Factor out load
from settings into new Settings
class
2021-05-12 01:21:38 +02:00
Dean Herbert
a4e0529617
Replace polling logic with direct bindable reactions
2021-05-11 18:39:15 +09:00
Dean Herbert
6bb52ebcf8
Merge pull request #12570 from frenzibyte/corner-rotation-controls
...
Add rotation controls to editor selection box corners
2021-05-10 23:09:44 +09:00
Salman Ahmed
fc2a527e9d
Revert "Guard against potentially null track if ever"
...
This reverts commit b1134c3857
.
2021-05-07 09:57:08 +03:00
Salman Ahmed
7c4e54a1d4
Unrevert null-colaescing/conditionals removal
2021-05-07 09:54:14 +03:00
Salman Ahmed
b1134c3857
Guard against potentially null track if ever
2021-05-07 08:30:50 +03:00
Salman Ahmed
37f44d2e37
Revert wrong not-null track changes
...
This reverts commit f9d99a9882
.
This reverts commit 71547bece0
.
2021-05-07 08:28:44 +03:00
Salman Ahmed
71547bece0
Remove any null-coalescing/conditionals in WorkingBeatmap.Track
usages
2021-05-07 07:46:23 +03:00
Salman Ahmed
539643c72b
Set loadable beatmap track to clock immediately in BDL
...
This reverts commit 84da247002
.
Use loadable beatmap track for clock directly in BDL
2021-05-07 07:21:56 +03:00
Salman Ahmed
84da247002
Fix editor clock using the wrong beatmap track on creation
2021-05-07 05:32:55 +03:00
Salman Ahmed
2a67361dc0
OnOperation -> TriggerOperation
2021-05-05 21:50:16 +03:00
Bartłomiej Dach
3cac837acf
Merge branch 'master' into skin-bindables
2021-05-05 20:16:27 +02:00
Salman Ahmed
eeeb001d62
Refactor combo colour retrieval logic to request skin lookups instead
2021-05-05 07:17:27 +03:00
Salman Ahmed
1ac80d42f9
Merge branch 'master' into corner-rotation-controls
2021-05-04 23:53:23 +03:00
Bartłomiej Dach
4185053120
Merge branch 'master' into fix-selection-handler-visibility
2021-05-04 20:21:05 +02:00
Salman Ahmed
8abff4881b
Hide the corresponding rotation handle when holding scale handle
2021-05-04 07:31:55 +03:00
Salman Ahmed
b2a0c2b563
Consider drag handles active using mouse down instead of when dragged
2021-05-04 06:41:26 +03:00
Salman Ahmed
5f33c3514e
Move selection box control internal events to drag handles
2021-05-04 06:37:22 +03:00
Salman Ahmed
fd7a6b3a7c
Finish transforms on controls load complete
2021-05-04 06:37:20 +03:00
Dean Herbert
b28e1569ca
Remove no-longer-relevant matching comment
2021-05-03 20:09:50 +09:00
Salman Ahmed
840c22a3b1
Add back mis-removed fade transform
2021-05-03 12:16:40 +03:00
Dean Herbert
4f8240f19a
Merge branch 'master' into corner-rotation-controls
2021-05-03 18:02:23 +09:00
Dean Herbert
fdd0713988
Merge branch 'fix-selection-handler-visibility' into skin-bindables
2021-05-03 17:40:03 +09:00
Dean Herbert
3268a75f05
Remove intermediate container to fix tests
2021-05-03 17:35:56 +09:00
Dean Herbert
839ac968a9
Fix tooltips displaying for hidden SelectionHandler
content
2021-05-03 17:28:24 +09:00
Dean Herbert
4cfa858dc4
Fix tooltips displaying for hidden SelectionHandler
content
2021-05-03 15:37:15 +09:00
Dean Herbert
01984de9c7
Use existing GetStateFromSelection
helper function
2021-05-03 15:13:32 +09:00
Dean Herbert
8c9cfb6301
Remove unsafe access to Composer.HitObjects
2021-05-03 14:28:35 +09:00
Salman Ahmed
b83aa0bd76
Avoid LINQ in update
2021-05-02 06:21:14 +03:00
Salman Ahmed
0aa17e7c95
Rewrite selection box computation logic with RectangleF
's helper methods
2021-05-02 02:51:06 +03:00
Salman Ahmed
07fe99025f
Use bounding box of blueprint for computing selection box area
2021-05-02 02:36:40 +03:00
Bartłomiej Dach
eef135f8dc
Merge branch 'master' into remove-unused-triangles
2021-04-30 21:51:23 +02:00
Dan Balasescu
e6eea73b8b
Merge branch 'master' into basic-compose-checks
2021-04-30 23:41:46 +09:00
Dean Herbert
e4f895b490
Fix editor buttons inheriting from TriangleButton
when they have no need to
2021-04-30 14:48:37 +09:00
Dean Herbert
9c62c90cfc
Refactor SelectionBlueprint
and MoveSelectionEvent
to work in screen-space coordinates
...
Until now, the implementation of the overrides in `SelectionBlueprint`
have been confusing to the point where I would just implement by
trial-and-error (or copying from an existing implementation). This was
due to a combination of using "object" space coordinates
(ie. the thing the `Blueprint` is operating on) and screen-space coordinates.
This change switches all event related coordinates to screen-space,
which is how we already handle rotation/scale operations. With the
introduction of other editor types where the related objects are
drawables, this also makes a lot more sense.
2021-04-29 16:10:42 +09:00
Dean Herbert
f3c7694eeb
Rename methods to match generally how these find-methods are named elsewhere
2021-04-28 16:57:52 +09:00
Dean Herbert
48d6c9ac4b
Move snap/divisor helper methods to inside ControlPointInfo
2021-04-28 16:47:30 +09:00
Dean Herbert
e0906daebf
Change one remaining instance of incorrect terminology in xmldoc
2021-04-28 13:49:41 +09:00
Dean Herbert
4c9e94da2b
Move context menu logic to base class
2021-04-28 13:43:16 +09:00
Dean Herbert
532ec40395
Remove unnecessary newline
2021-04-28 12:04:48 +09:00
Dean Herbert
43772f4303
Remove duplicated call to initially select blueprint
2021-04-28 12:03:41 +09:00
Dean Herbert
e4f2e0131c
Rename AllowDeselection
to better match use case
2021-04-28 12:02:55 +09:00
Dean Herbert
a9a5809e94
Fix incorrect xmldoc in MoveSelectionEvent
2021-04-28 11:46:52 +09:00
Dean Herbert
d0be8f9fb3
Remove one more out-of-date comment
2021-04-28 11:45:36 +09:00
Dean Herbert
bc455005a5
Fix incorrect coordinate space mention in xmldoc
2021-04-28 11:44:50 +09:00
Dean Herbert
61d4eb1777
Remove unnecessary and out-of-place xmldoc
2021-04-28 11:44:19 +09:00
Dean Herbert
aa1cb65eaa
Rename region to be more inclusive
2021-04-28 11:42:22 +09:00
Dean Herbert
42255f8d33
Rename and xmldoc selection completed method
2021-04-27 19:01:29 +09:00
Dean Herbert
7ec5ea1eb5
Remove hitobject terminology from base classes
2021-04-27 19:01:29 +09:00
Dean Herbert
ff06a27a12
Revert changes to OnBlueprint
methods and handle select-on-addition locally
2021-04-27 19:01:29 +09:00
Dean Herbert
f97b14a20a
Fix binding direction of selected items
2021-04-27 19:01:29 +09:00
Dean Herbert
dd3d8e5d03
Make SelectionHandler
abstract to ensure things get implemented
2021-04-27 19:01:29 +09:00
Dean Herbert
32416e4e31
Move model selection handling to base SelectionHandler
class
2021-04-27 19:01:29 +09:00
Dean Herbert
eac139ca0e
Allow BlueprintContainer to perform movement without an ISnapProvider
2021-04-27 19:01:29 +09:00
Dean Herbert
f2e56bd306
Refactor editor selection/blueprint components to be generic
2021-04-27 19:01:29 +09:00
Naxess
7b9ed924be
Rename snapping methods
...
Further separates them from `IBeatSnapProvider`'s `SnapTime`, and groups them together more, to prevent confusion between the two interfaces.
Also changes the xmldoc of the reference time to that of `IBeatSnapProvider` for consistency.
2021-04-26 16:07:30 +02:00
Naxess
049e42fa85
Move snapping responsibility to IBeatmap
...
Seems `EditorBeatmap` already implements a different kind of `SnapTime` from `IBeatSnapProvider`, so method names here aren't great.
This is very similar to what https://github.com/ppy/osu/pull/12558 is doing, so may need to do some duplicate resolution later, especially surrounding `ClosestBeatSnapDivisor`.
Worth noting that this change makes 1/7, 1/5, etc unsupported for now, as we now rely on `BindableBeatDivisor.VALID_DIVISORS`.
2021-04-26 05:07:24 +02:00
Salman Ahmed
485da47d89
Revert "Inherit VisibilityContainer
and make duration constant protected"
...
This reverts commit c58ef4230d
. Uhh, how did I push this..
2021-04-26 01:41:42 +03:00
Salman Ahmed
b252485e1a
Remove protected expose of HandlingMouse
setter
...
Regardless of `OnDragEnd()`, `OnMouseUp()` will still be called resetting the value of that state back.
2021-04-25 20:13:23 +03:00
Salman Ahmed
7390a12e4b
SelectionBoxDragHandleDisplay -> SelectionBoxDragHandleContainer
2021-04-25 20:03:15 +03:00
Salman Ahmed
c58ef4230d
Inherit VisibilityContainer
and make duration constant protected
2021-04-25 20:03:15 +03:00
Salman Ahmed
79e2b232d8
Improve English
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-04-25 19:26:53 +03:00
Salman Ahmed
a8c460f7df
Replace separated top-centered rotation button with rotation drag handles
2021-04-25 10:17:36 +03:00
Salman Ahmed
77f7d4c963
Add composite managing display of selection box drag handles
2021-04-25 10:17:36 +03:00
Salman Ahmed
ab71782674
Use colour fade transform for selection box controls
...
To become harminous with the fade transforms of the rotation control
2021-04-25 10:14:31 +03:00
Salman Ahmed
62bcc5f76d
Add property for tracking whether control is during operation
2021-04-25 10:14:31 +03:00
Salman Ahmed
206fc94b8c
Add rotation drag handle component
2021-04-24 08:00:36 +03:00
Salman Ahmed
4bfa9cd6b6
Change inheritance of selection box buttons to base control instead
2021-04-24 08:00:29 +03:00
Salman Ahmed
decd8803bc
Abstract base appearence and hover update from drag handles
2021-04-24 07:45:53 +03:00
Dan Balasescu
93b53f54fa
Merge pull request #12531 from peppy/editor-add-nudge-shortcuts
...
Add simple key based time nudging support to editor
2021-04-22 21:14:51 +09:00
Dean Herbert
a5364b224f
Add simple key based time nudging support to editor
2021-04-22 18:47:04 +09:00
Dean Herbert
1884c18a2c
Ignore movement operations which have no offset
2021-04-22 18:12:03 +09:00
Dean Herbert
9d8f0c854d
Setup configuration item for editor hit animations
2021-04-21 18:05:40 +09:00
Dean Herbert
c6c91cd9a5
Refactor WaveformOpacityMenuItem
to not receive whole config
2021-04-21 18:05:26 +09:00
Dean Herbert
26430e3cb5
Merge pull request #12492 from Naxesss/bg-audio-quality-checks
...
Add background and audio checks
2021-04-21 00:10:32 +09:00
Naxess
3e1b6b3b34
Simplify verifier run call args
...
Uses the resolved working beatmap instead of resolving it every time.
Also uses the EditorBeatmap itself as playable beatmap, as it is of type `IBeatmap` already, and `.PlayableBeatmap` forwards everything anyway.
2021-04-20 13:34:12 +02:00
Naxess
496df411a7
Remove now unused import
2021-04-20 02:39:11 +02:00
Naxess
0e6b66f457
Merge branch 'master' into bg-audio-quality-checks
2021-04-20 02:36:13 +02:00
Naxess
8656176ab8
Add the playable beatmap as check argument
...
This is different from the working beatmap's `.Beatmap` property in that it is mutated by the ruleset/editor.
So hit objects, for example, are actually of type `Slider` and such instead of the legacy `ConvertSlider`.
This should be preferred over `workingBeatmap.Beatmap`.
2021-04-20 01:31:51 +02:00
Bartłomiej Dach
0825fc57a9
Move foreground colour helper into OsuColour
2021-04-19 18:24:48 +02:00
Bartłomiej Dach
97573fb11d
Merge branch 'master' into combo-colours-display
2021-04-19 18:21:57 +02:00
Dean Herbert
a40dcd4b8d
Add a touch more space in the timing column
2021-04-19 18:53:06 +09:00
Dean Herbert
097a347533
Adjust Add different background colour for timing area
2021-04-19 18:25:30 +09:00
Dean Herbert
5bce5d2057
Update design logic
2021-04-19 18:25:20 +09:00
Dean Herbert
1ebc5ac5cc
Remove unused legacy class
2021-04-19 16:36:00 +09:00
Dean Herbert
8da561a2a6
Soften colours and adjust padding slightly
2021-04-19 16:35:36 +09:00
Dean Herbert
f8b20ca8aa
Add new display for effect row attribute
2021-04-19 16:35:36 +09:00
Dean Herbert
ec249a0edb
Add new display for sample row attribute
2021-04-19 16:23:28 +09:00
Dean Herbert
6465a72060
Add bubbled word class for use in attribute rows
2021-04-19 16:23:28 +09:00
Dean Herbert
3aad0a8b9c
Add new display for difficulty row attribute
2021-04-19 16:23:06 +09:00
Dean Herbert
d3cebfb6fb
Use explicit label
2021-04-19 16:23:06 +09:00
Dean Herbert
a10a8680d0
Add new display for timing row attributes
2021-04-19 16:23:06 +09:00
Dean Herbert
f4baff9e04
Make TimingScreen
use rounded screen and adjust spacing/padding
2021-04-19 14:35:35 +09:00
Dean Herbert
e143afb598
Split out rounded content screen from SetupScreen for use in other places
2021-04-19 14:28:32 +09:00
Dean Herbert
513e470b52
Adjust grid spacing to allow attributes to use more width
2021-04-19 13:24:53 +09:00
Dean Herbert
0c918410d0
Make "add" button more visible
2021-04-19 13:15:24 +09:00
Dean Herbert
658c23c925
Give more space to the parameter adjustment area
2021-04-19 13:15:17 +09:00
Bartłomiej Dach
6f2ebb20a7
Fix test failing due to null beatmap skin
...
Also annotate the field on `EditorBeatmap` as nullable for future
travelers.
2021-04-18 20:46:42 +02:00
Bartłomiej Dach
07a00cd681
Add colours section with combo colour display
2021-04-18 20:46:42 +02:00
Bartłomiej Dach
a8027d87b6
Fix unreadable colour hex code text due to low contrast
...
Logic is shared with the timeline blueprints which also have the same
problem of displaying text on top of a combo colour.
Slightly modified the formula. Seems to yield better results on a
subjective check.
2021-04-18 20:44:55 +02:00
Dean Herbert
cfc7664094
Use full path
2021-04-18 21:05:23 +09:00
Dean Herbert
e76565dbc5
Fix selection box not displaying after pasting a selection in the editor
...
Closes #12471 .
2021-04-18 20:28:39 +09:00
Naxess
ef65c8910f
Fix resolved fields
2021-04-18 01:15:13 +02:00
Naxess
400f8b3938
Add GetStream
to IWorkingBeatmap
...
This is necessary to obtain the filesize of the audio and background files.
2021-04-17 17:47:13 +02:00
Naxess
448574e7e6
Use WorkingBeatmap
instead of IBeatmap
...
This lets us access things like the background, track, etc. which are necessary for quality and filesize checks.
Also improves the structure of the `CheckBackgroundTest` class in the process.
2021-04-17 17:33:53 +02:00
Dean Herbert
d9d50f0e88
Add border showing selected blueprints in timeline
2021-04-16 18:16:22 +09:00
Dan Balasescu
3c8e2b8b32
Merge branch 'master' into fix-potential-deselection-crash
2021-04-16 16:27:47 +09:00
Dan Balasescu
d3acbcced7
Merge pull request #12437 from peppy/fix-editor-placement-commit-false
...
Fix placement blueprints not being correctly removed after a rolled back placement
2021-04-16 16:25:05 +09:00
Dean Herbert
c59906e925
Fix an occasional crash when deleting a HitObject via internal means
2021-04-16 15:55:33 +09:00
Dean Herbert
119c9b4294
Fix placement blueprints not being correctly removed after a rolled back placement
2021-04-16 14:11:33 +09:00
Dean Herbert
42c066e6f2
Fix slider not displaying in timeline during zero-duration placement
2021-04-16 13:38:55 +09:00
Dean Herbert
c2340f1fe8
Move zoom settings back to run in a non-loaded state
2021-04-16 01:01:03 +09:00
Dean Herbert
15d48a924b
Set the timeline's height to a sane non-zero default
...
This isn't required but makes the initial appearance animation nicer.
2021-04-16 00:58:32 +09:00
Dean Herbert
7cf15fe729
Merge pull request #12412 from peppy/timeline-adjustments
...
Update timeline control point display
2021-04-15 22:43:26 +09:00
Andrei Zavatski
71b06d7e61
Simplify ExtendableCircle even more
2021-04-15 15:53:21 +03:00
Dan Balasescu
7beaf0ce55
Merge branch 'master' into timeline-adjustments
2021-04-15 21:51:00 +09:00
Dean Herbert
ad671ee07a
Merge branch 'master' into timeline-adjustments
2021-04-15 20:42:38 +09:00
Dean Herbert
0dc1577f68
Split out control point visualisation logic and add special kiai duration handling
2021-04-15 18:42:30 +09:00
Dean Herbert
153ee25510
Update base specifications to a more sane default
2021-04-15 18:42:07 +09:00
Dean Herbert
bf5af3310a
Update break colour to not look like kiai time
2021-04-15 17:04:11 +09:00