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
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