2b59f76b2d
Merge pull request #17596 from peppy/skin-editor-sprites
...
Allow importing sprites into a skin via drag-and-drop
2022-04-05 17:38:58 +09:00
d1be229d74
Combine SkinSprite
into SkinnableSprite
2022-04-01 16:01:33 +09:00
762de3cc97
Replace invalidation logic with local realm notification subscription
2022-04-01 16:01:33 +09:00
9c3dad9fbf
Add proof of concept flow to ensure RealmBackedResourceStore
is invalidated on realm file changes
...
I'm not at all happy with this, but it does work so let's go with it for
now.
2022-04-01 16:01:33 +09:00
01829cf2d8
Move SkinnableInfo
error handling to lower level
...
Handling was recently added to handle the usage in
`Skin.GetDrawableCompoent`, but it turns out this is also required for
`DrawableExtensions.ApplySkinnableInfo` which can throw in a similar
fashion.
Found while working on sprite support for the editor, where this becomes
an actual issue (ie. switching to a branch where the new sprite support
is not present can cause unexpected crashes).
2022-04-01 14:30:04 +09:00
6c172bac3c
Merge pull request #17448 from peppy/fix-skin-component-crash-on-instantiation-failure
...
Avoid crashing if a skin component cannot be instantiated correctly
2022-03-25 19:41:52 +09:00
a0a3bba46e
Avoid crashing if a skin component cannot be instantiated correctly
2022-03-25 18:31:26 +09:00
23c4f9910e
Apply notnull constraint
2022-03-25 15:54:01 +09:00
2d8d177807
Merge branch 'master' into skin-nullable
2022-03-25 15:36:21 +09:00
e243a7c55d
Reword storage
param xmldoc to use stronger and better defined langauge
2022-03-24 12:45:11 +09:00
0cd29a73b9
Fix typo in xmldocs
2022-03-24 12:39:47 +09:00
3e020073c5
Convert Skin
to use nullable
2022-03-24 00:23:55 +09:00
05c7e09d79
Make Textures
and Samples
read-only
2022-03-24 00:02:38 +09:00
078288a616
Make "skin.ini" the default skin filename and remove redundant parameters
2022-03-23 15:05:01 +09:00
d0ea1739b4
Remove skin configuration stream logic as it is no longer required
2022-03-23 14:57:42 +09:00
e56d13d8be
Fix realm backed store not being initialised for some tests
2022-03-23 14:57:42 +09:00
3c38b14228
Documentation improvements
2022-03-23 14:57:42 +09:00
e1236e07ad
Fix extensions not being specified in time for realm file caching
2022-03-23 14:57:42 +09:00
35d2f973a3
Prefer provided resource store over realm backed to keep tests working
2022-03-23 14:57:42 +09:00
5c4a74378d
Remove Textures
and Samples
initialisation to Skin
2022-03-23 14:57:42 +09:00
cd71ec0edd
Remove ILive<>
interface (and use abstract Live<>
instead)
2022-01-26 13:38:56 +09:00
6eb2c28e41
Rename RealmContextFactory
to RealmAccess
2022-01-24 20:38:07 +09:00
9d85beddbe
Fix null reference in some tests due to missing realm context factory
2021-12-15 11:16:37 +09:00
441b7baa93
Provide a realm factory to usages of ToLive
/RealmLive
2021-12-14 14:26:34 +09:00
6b55de2845
Use ILive
for Skin.SkinInfo
2021-11-29 18:28:25 +09:00
2a9c7c00c8
Update tests and file access code
2021-11-29 18:28:25 +09:00
99a139dc98
Initialise all file lists at construction time (and remove setter)
2021-11-24 13:56:21 +09:00
59e763467f
Move StoragePath
implementation to an extension method
2021-11-19 16:08:38 +09:00
5bfb16efe2
Ignore case when searching for existing skin.ini
2021-11-01 14:24:38 +09:00
add39fbd4f
Merge branch 'master' into fix-skin-layout-editor-crash
2021-10-28 06:24:24 +09:00
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
5303cae044
Add mention of stream close logic
2021-10-24 23:43:37 +09:00
93482414d6
Remove SkinConfiguration
subclasses and allow configuration parsing for all skin types
2021-10-22 14:42:23 +09:00
adff418fd2
Guard against exception in skin deserialisation
2021-10-01 22:17:38 +09:00
69fc072429
Ignore skin component json data if deserialisation fails instead
...
Crashing was not really the best thing to do there given the preceding
code that already allowed a few continues in case of a missing file.
2021-05-15 01:08:11 +02:00
fa6b5515b7
Ignore possible null from JsonConvert.DeserializeObject()
...
Nothing better can be done if a `null` is indeed returned.
2021-05-15 00:09:34 +02:00
2f025f1967
SkinnableTargetWrapper -> SkinnableTargetComponentsContainer
2021-05-13 18:54:30 +09:00
3ea469813c
Use interface in place of SkinnableTargetContainer
2021-05-13 17:25:51 +09:00
106fa97a11
Rename SkinnableElementTargetContainer
to SkinnableTargetContainer
2021-05-13 17:07:38 +09:00
3b862798e9
Standardise naming of methods related to SkinnableInfo
2021-05-13 13:14:49 +09:00
c93ed541f3
Add xmldoc and tidy up logic in Skin
2021-05-13 13:09:33 +09:00
992a052426
Remove stray comment
2021-05-13 13:07:06 +09:00
117d6d731d
Move cross-component layout dependencies for legacy skin to LegacySkin
2021-05-11 18:39:14 +09:00
bf65547eec
Allow some serialised components to not be mutable by the user
2021-05-11 18:39:14 +09:00
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
b248b2e5e3
Hook up full save/load flow
2021-05-11 18:39:14 +09:00
aec859b4d1
Merge branch 'master' into fix-unsafe-skinnable-sample-play
2021-03-18 19:51:46 +01:00
c4ba045df1
Add note about finalizers required for audio store clean-up
2021-03-02 16:07:51 +09:00
00574a5288
Use ISample everywhere in Skin GetSample lookup path
2021-02-18 18:32:28 +09:00
de9d075f94
Initial sample + samplechannel rework
2021-01-19 17:11:40 +09:00