smoogipoo
ffb6135a1b
Rework hitobject blueprints to take in hitobject models
2021-05-13 19:53:32 +09:00
Dan Balasescu
3c471837f8
Merge branch 'master' into skin-serialisation
2021-05-13 19:49:55 +09:00
Dan Balasescu
a3869c02f4
Merge branch 'master' into fix-two-hovered-handles
2021-05-13 19:24:42 +09:00
Dean Herbert
b939318922
Merge branch 'skin-serialisation' into skin-editor-default-placement-location
2021-05-13 19:09:34 +09:00
Dean Herbert
e5f765d1a8
Fix broken exception message
2021-05-13 19:06:58 +09:00
Dean Herbert
bda0ea463a
Merge branch 'skin-serialisation' into save-on-forced-exit
2021-05-13 19:05:47 +09:00
Dean Herbert
c8b7cfc753
Merge branch 'skin-serialisation' into remove-skinnable-hud-classes
2021-05-13 19:05:08 +09:00
Dean Herbert
07e475cd13
Fix skin blueprint box drawing incorrectly when both scale and rotation are applied
2021-05-13 18:54:40 +09:00
smoogipoo
2f025f1967
SkinnableTargetWrapper -> SkinnableTargetComponentsContainer
2021-05-13 18:54:30 +09:00
Dean Herbert
01bc71acd2
Improve ability to parse xmldoc of SkinnableTargetWrapper
...
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-05-13 18:40:28 +09:00
Dean Herbert
df77b28b48
Add a flimsy guard against null parent to avoid crashes on exit sequence
2021-05-13 18:39:21 +09:00
Naxess
19800f5f7f
Move IBeatmap
arg into context
2021-05-13 11:24:22 +02:00
Lucas A
eee3cd7c57
Disallow selecting storage root as a valid directory.
2021-05-13 11:14:05 +02:00
Lucas A
d3cc418961
Privatize DirectorySelector.
2021-05-13 11:08:04 +02:00
Lucas A
4bb0e6b7d5
Create InitialPath property.
2021-05-13 11:07:52 +02:00
Lucas A
9a061ad80b
Extract directory selection logic of migration screen to DirectorySelectScreen.
2021-05-13 11:07:26 +02:00
Dean Herbert
9f8e6979dd
Fix display of skin blueprints when flipped
2021-05-13 18:00:25 +09:00
Dean Herbert
1cda55393e
Add aspect ratio locking and flip support to skin editor
2021-05-13 17:51:57 +09:00
Dean Herbert
ebce3fd3c7
Use ScheduleAfterChildren
to better match comment
2021-05-13 17:29:11 +09:00
Dean Herbert
3ea469813c
Use interface in place of SkinnableTargetContainer
2021-05-13 17:25:51 +09:00
Dean Herbert
0959e7156a
Remove outdated TODO
2021-05-13 17:22:05 +09:00
Dean Herbert
106fa97a11
Rename SkinnableElementTargetContainer
to SkinnableTargetContainer
2021-05-13 17:07:38 +09:00
Dean Herbert
7921dc7ece
Rename ISkinnableComponent
to ISkinnableDrawable
2021-05-13 17:06:00 +09:00
Dean Herbert
cdcd31b546
Replace ISkinSerialisable
with IsEditable
property
2021-05-13 17:03:17 +09:00
Dean Herbert
dd6a06a302
Reword xmldoc to read better
2021-05-13 16:43:42 +09:00
Dean Herbert
9dfa48b22e
Fix incorrect exception text
2021-05-13 16:42:43 +09:00
Dean Herbert
19223ba013
Remove left-over debug logging
2021-05-13 16:42:13 +09:00
Dean Herbert
5818ed4c8c
Remove unused DI resolution
2021-05-13 16:41:36 +09: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
5b71d8ca37
Merge pull request #12758 from Naxesss/verify-settings-ui
...
Add setting UI components to the verify screen
2021-05-13 14:35:35 +09: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
Dean Herbert
23e284b8b3
Change default skin editor shortcut to Ctrl+Shift+S
...
Avoids a conflict with song select's random rewind functionality. As
mentioned in #12776 .
2021-05-13 13:34:04 +09:00
Dean Herbert
db19617b8b
Add JsonConstructor
attribute to SkinnableTargetWrapper
2021-05-13 13:16:20 +09:00
Dean Herbert
3b862798e9
Standardise naming of methods related to SkinnableInfo
2021-05-13 13:14:49 +09:00
Dean Herbert
581e7940c7
Add xmldoc to SkinnableElementTargetContainer
2021-05-13 13:13:22 +09:00
Dean Herbert
c93ed541f3
Add xmldoc and tidy up logic in Skin
2021-05-13 13:09:33 +09:00
Naxess
47948d7b34
Set default for bindable in object initializer
...
Fixes the CI failure.
2021-05-13 06:08:48 +02:00
Dean Herbert
992a052426
Remove stray comment
2021-05-13 13:07:06 +09:00
Dean Herbert
469a7f5d2a
Reorder fields in SkinEditor
2021-05-13 13:04:17 +09:00
Dean Herbert
2bf8635ffd
Move field upwards in class
2021-05-13 13:03:23 +09:00
Dean Herbert
a38cb61b08
Remove duplicated call to base.GetDrawableComponent
2021-05-13 13:02:55 +09: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
Dean Herbert
6caf4e3879
Add xmldoc to SkinnableInfo
2021-05-13 12:57:28 +09: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
Dean Herbert
8b9ac86d4b
Merge branch 'master' into skin-serialisation
2021-05-13 12:35:06 +09: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
Bartłomiej Dach
27ca7d0f4f
Actually annotate the correct ctor
2021-05-12 23:53:39 +02:00
Bartłomiej Dach
a6aec6e007
Fix missed InstantiationInfo
setter usages
2021-05-12 23:34:25 +02:00
Bartłomiej Dach
d31fa20e92
Merge branch 'master' into skin-instantiation-info
2021-05-12 23:23:57 +02:00
Bartłomiej Dach
1b579dd838
Extract invariant instantiation info extension method
2021-05-12 23:23:51 +02:00
Bartłomiej Dach
4464204e33
Mark all skin ctors used via reflection in SkinInfo.CreateInstance()
2021-05-12 23:23:42 +02:00
Dean Herbert
7bac81f394
Fix incorrect inline comments
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-05-12 19:37:00 +09:00
Dan Balasescu
4e7c079560
Merge pull request #12753 from peppy/health-bar-hud-overlay-dependency
...
Remove downwards dependency from `HUDOverlay` to `HealthDisplay`
2021-05-12 19:27:02 +09:00
Dean Herbert
55e1f97f59
Remove unused using statement
2021-05-12 19:06:40 +09:00
Dean Herbert
75227e5a70
Change default skin to use component lookup for conformity
2021-05-12 18:55:48 +09:00
Dean Herbert
0a895fff15
Remove remaining test usage of SkinnableXXX
HUD components
2021-05-12 18:53:25 +09:00
Dean Herbert
088335a035
Revert "Also save on skin switch"
...
This reverts commit 2f55d1e5ab
.
2021-05-12 17:45:51 +09: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
2f55d1e5ab
Also save on skin switch
2021-05-12 17:42:12 +09:00
Dean Herbert
be187e8ebd
Avoid hard crash if Save()
is called before preparing for mutation
2021-05-12 17:42:04 +09:00
Dean Herbert
c6f0a6aed3
Merge pull request #12538 from smoogipoo/multiplayer-spectator-screen
...
Implement the multiplayer spectator screen
2021-05-12 17:24:35 +09: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
Dean Herbert
9df08560b6
Save skin editor changes on forced exit
2021-05-12 16:07:00 +09:00
Dean Herbert
494a1b01a5
Move SkinnableElementTargetContainer
out of HUD namespace
2021-05-12 15:59:33 +09:00
Dean Herbert
29e6f6b6b6
Remove public
prefixes from interface type and add Components
list for future use
2021-05-12 15:58:21 +09:00
Dean Herbert
05e0c57a6a
Keep component positions stable when changing anchor/origin
2021-05-12 15:30:52 +09:00
Dean Herbert
d55f42dc2e
Show anchor and origin in skin blueprints when selected
2021-05-12 15:12:17 +09:00
smoogipoo
e1dacde314
Add combo to test streaming client
2021-05-12 14:22:15 +09:00
Dean Herbert
42e6795251
Place new skin components at the centre of the screen by default
2021-05-12 14:11:40 +09:00
Dean Herbert
96d4011de2
Use pattern matching to tidy up instance construction
2021-05-12 14:02:24 +09:00
Dean Herbert
1d383024e2
Improve the visual appearance of skin editor blueprints
2021-05-12 13:54:30 +09:00
smoogipoo
f4c96b2675
Only update playing user states when users are watched
2021-05-12 13:10:59 +09:00
smoogipoo
e0e8f5ab80
Fix ordering + threading issues
2021-05-12 13:06:28 +09:00
smoogipoo
ad11818868
Remove watched users on stop watching
2021-05-12 13:05:02 +09:00
Dean Herbert
4aad7b96ea
Merge branch 'health-bar-hud-overlay-dependency' into skin-serialisation
2021-05-12 12:54:37 +09:00
Dean Herbert
184dbaf202
Improve safety of bindings in HealthDisplay
2021-05-12 12:53:30 +09:00
smoogipoo
9b09361cc9
Add testable spectator streaming client
2021-05-12 12:16:41 +09:00
Naxess
b7bc42e0d3
Rename "playableBeatmap" check arg to "beatmap"
...
The working beatmap is now in the context, so it's easier to distinguish beatmap type, hence no need for this prefix.
2021-05-12 02:34:16 +02: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
75adec57eb
Remove negligible default hidden TODO
2021-05-12 01:31:16 +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
77e422409c
Add SkinInfo.InstantiationInfo
to allow creating different skin types
2021-05-11 23:37:06 +09:00
Dean Herbert
8e226319e2
Remove downwards dependency from HUDOverlay
to HealthDisplay
2021-05-11 23:18:23 +09:00
Dean Herbert
048677846b
Change HealthDisplay
to be a CompositeDrawable
2021-05-11 23:10:30 +09:00
smoogipoo
9ad1e5067e
Fix spectate being entered while not having the beatmap
2021-05-11 19:22:09 +09:00
smoogipoo
811282a975
Add failing test
2021-05-11 19:01:41 +09:00
Dean Herbert
1231c08a07
Rename mismatching file
2021-05-11 18:58:26 +09:00
Dean Herbert
4bb933e4b1
Add missing base lookup call to DefaultSkin
2021-05-11 18:55:45 +09:00
Dean Herbert
f55407f871
Show a message when attempting to customisse a screen which doesn't support it
2021-05-11 18:39:15 +09:00
Dean Herbert
6d587dc392
Adjust target size slightly to better align with the screen
2021-05-11 18:39:15 +09:00
Dean Herbert
1831f581aa
Add basic metadata display and remove outdated message about not saving
2021-05-11 18:39:15 +09:00
Dean Herbert
a4e0529617
Replace polling logic with direct bindable reactions
2021-05-11 18:39:15 +09:00
Dean Herbert
a88a8b7d8d
Use ISkinnableComponent
wherever possible (and expose as BindableList
)
2021-05-11 18:39:15 +09:00
Dean Herbert
a7e83aacfb
Ensure default skins are copied before modifying
2021-05-11 18:39:15 +09:00
Dean Herbert
a67cead0b3
Add SkinInfo.InstantiationInfo
to allow creating different skin types
2021-05-11 18:39:15 +09:00
Dean Herbert
f6f4b90d2b
Add customisation support for LegacyHealthDisplay
2021-05-11 18:39:14 +09:00
Dean Herbert
0cf3efa16b
Remove customisation support for SongProgressDisplay
2021-05-11 18:39:14 +09:00
Dean Herbert
d5fe4f0f72
Remove unused skin resolution in LegacyScoreCounter
2021-05-11 18:39:14 +09:00
Dean Herbert
03d5f10744
Fix default health bar not being considered for top-right flow layout
2021-05-11 18:39:14 +09:00
Dean Herbert
944f09ec98
Move default skin cross-component dependencies out to default specifications
2021-05-11 18:39:14 +09:00
Dean Herbert
12684de66e
Add ability to adjust origin in skin editor
2021-05-11 18:39:14 +09:00
Dean Herbert
c94df672e5
Also serialise Origin
out
2021-05-11 18:39:14 +09:00
Dean Herbert
f53ce951dc
Remove DefaultScoreCounter
animation for the time being
...
May add this back in the future, but for now it's causing issues as it
operates on `this`. The default skin may be changing quite a bit in the
near future, so we can decide what to do about animation at that point
in time.
2021-05-11 18:39:14 +09:00
Dean Herbert
117d6d731d
Move cross-component layout dependencies for legacy skin to LegacySkin
2021-05-11 18:39:14 +09:00
Dean Herbert
4c4d75e6f9
Remove AccuracyCounter
sizing dependency in HUDOverlay
2021-05-11 18:39:14 +09:00
Dean Herbert
2396ba42a6
Change HealthDisplay
to be a CompositeDrawable
2021-05-11 18:39:14 +09:00
Dean Herbert
bf65547eec
Allow some serialised components to not be mutable by the user
2021-05-11 18:39:14 +09:00
Dean Herbert
81902ad6a6
Add the ability to revert all skin changes
2021-05-11 18:39:14 +09:00
Dean Herbert
4769a95b49
Fix encapsulation and remove target lookup overhead
2021-05-11 18:39:14 +09:00
Dean Herbert
c957293ec3
Load json from disk store at skin construction for now
...
This allows for easier mutation without worrying about changes being
re-read from disk unexpectedly.
2021-05-11 18:39:14 +09:00
Dean Herbert
1bb3c609ae
Centralise implementation of cancel button logic
2021-05-11 18:39:14 +09:00
Dean Herbert
b248b2e5e3
Hook up full save/load flow
2021-05-11 18:39:14 +09:00
Dean Herbert
004798d61d
Update Legacy components to not require skin in ctor
2021-05-11 18:39:14 +09:00
Dean Herbert
b54eb56169
Move new judgement binding to LoadComplete
to ensure containers are loaded
2021-05-11 18:39:14 +09:00
Dean Herbert
6a88b8888b
Add basic support for child serialisation
2021-05-11 18:39:14 +09:00
Dean Herbert
1742ee89e0
Fix incorrect xmldoc for DeleteFile
2021-05-11 18:39:14 +09:00
Dean Herbert
df72656aa1
Remove downwards dependency from HUDOverlay
to HealthDisplay
2021-05-11 18:39:14 +09:00
Dean Herbert
95a497e9df
Remove unused interface class for simplicity
2021-05-11 18:39:14 +09:00
Dean Herbert
95a8f21ab2
Add the concept of skinnable target containers and mark a basic one for HUD elements
2021-05-11 18:39:14 +09:00
Dean Herbert
67ea4a7e97
Read from skin config
2021-05-11 18:39:14 +09:00
Dean Herbert
b9ab9342fa
Setup basics to allow extracting serializable content from skinnable Drawable
s
2021-05-11 18:39:14 +09:00
smoogipoo
10a4a5decb
Merge branch 'master' into multiplayer-spectator-screen
2021-05-11 17:33:09 +09:00
Dan Balasescu
7d9cdd3bc2
Merge branch 'master' into skin-components-list
2021-05-11 17:27:48 +09:00
Salman Ahmed
004ce95f33
Merge branch 'current-star-rating' into player-loader-star-rating
2021-05-11 09:53:10 +03:00
Joseph Madamba
4bee8c23f0
Fix idle tracker not accounting global actions
2021-05-10 21:40:29 -07:00
smoogipoo
0f00ee8640
Change failure text
...
Although this is not visible anywhere.
2021-05-11 11:35:08 +09:00
smoogipoo
8c9390dc75
Remove replay condition
2021-05-11 11:33:21 +09:00
smoogipoo
6db9e26d48
Fix score submission failures with autoplay
2021-05-11 11:28:09 +09:00
smoogipoo
32f7691349
Fix token failure preventing base.LoadAsyncComplete()
2021-05-11 11:24:35 +09:00
Bartłomiej Dach
f5aff780ca
Merge branch 'master' into text-flow-md
2021-05-10 22:34:20 +02:00