Robin Avery
6b127f50f2
Inline updateDrawableAnchorIfUsingClosest
2021-06-08 09:14:04 -04:00
Robin Avery
dc50ae40b9
Rename OverridesClosestAnchor
to UsesFixedAnchor
2021-06-08 08:28:42 -04:00
Robin Avery
65f594f860
Rename applyAnchor
to applyCustomAnchor
2021-06-07 05:08:18 -04:00
Robin Avery
6c9594ee35
Simplify and rearrange SkinSelectionHandler
...
The file has been restructured and reworded such that there are as few
differences as possible from b36b40cb34
.
2021-06-07 02:40:15 -04:00
Robin Avery
29fa4fdf57
Refactor unacceptable syntax
2021-06-07 01:08:39 -04:00
Robin Avery
133d72a8c0
Rename UsingClosestAnchor
...
It is now "OverridesClosestAnchor". The logic is inverted accordingly.
2021-06-07 00:14:36 -04:00
Robin Avery
f28916e30f
Remove all UsingClosestAnchor() extension logic
...
It is replaced with ISkinnableDrawable.UsingClosestAnchor.
2021-06-07 00:04:53 -04:00
Robin Avery
6a456e53f4
Rename overly long method
2021-06-06 13:28:17 -04:00
Robin Avery
888882ac63
Remove first-person comment
2021-06-06 13:27:13 -04:00
Robin Avery
da1c38d5a9
Uninvert logic of SkinnableInfo.UsingClosestAnchor
...
Also rename "IsUsingClosestAnchor" to simply "UsingClosestAnchor".
2021-06-06 10:13:35 -04:00
Robin Avery
63346f6b75
Refactor getTieredComponent
2021-06-06 09:40:58 -04:00
Robin Avery
c9f5808bf2
Move lookup logic to DrawableExtensions
...
This is now a global lookup to be shared by serialization and editor.
2021-06-06 06:58:21 -04:00
Robin Avery
4aee76456f
Replace localised strings with static English
2021-06-06 05:34:32 -04:00
Robin Avery
c452715bf1
Allow skin elements to find closest anchor
...
- Resolves ppy/osu#13252
- Add localisation strings for the context menu instead of using enum
2021-06-06 01:32:04 -04:00
Dean Herbert
b36b40cb34
Remove unnecessary double specification
2021-05-26 15:20:47 +09:00
kamp
65649e5a62
Prevent skin editor crash when scaling 0 area drawables
...
Some skinnable drawables can have 0 width or height in certain
cases, leading to division by 0 and a crash when the position is
updated.
2021-05-24 21:36:42 +02:00
Dean Herbert
45c6a9ca91
Merge branch 'refactor-selection-rotate-logic' into fix-flip-logic-discrepancy
2021-05-22 21:17:58 +09:00
Dean Herbert
7d88a19d7f
Remove unnecessary field storage of origin reference
2021-05-22 21:03:40 +09:00
Dean Herbert
34a5b22b79
Merge branch 'master' into refactor-selection-rotate-logic
2021-05-22 20:52:28 +09:00
Dean Herbert
485728ca4e
Merge pull request #12866 from peppy/refactor-selection-scale-logic
...
Add proper scaling support to skin editor
2021-05-22 20:07:03 +09:00
Dean Herbert
bb2fae55ce
Merge branch 'master' into refactor-selection-rotate-logic
2021-05-21 19:19:54 +09:00
Dean Herbert
0d575f5728
Remove incorrect (and unintended) modulus logic
2021-05-21 15:06:53 +09:00
Dean Herbert
f9d51656b6
Fix scaling of rotated items not behaving in an understandable way
2021-05-21 15:02:36 +09:00
Dean Herbert
df5970fab4
Create base implementations of the two most common TernaryStateMenuItem
s
2021-05-20 19:34:53 +09:00
Dean Herbert
20f1ef4318
Extract common implementation of updating drawable position from screen space pos
2021-05-20 18:35:13 +09:00
Dean Herbert
6f75c59760
Fix flip logic not using the full selection quad
2021-05-20 18:31:51 +09:00
Dean Herbert
95c78b9185
Split out common selection quad logic
2021-05-20 18:24:25 +09:00
Dean Herbert
27e81d6504
Implement proper rotation algorithm for skin editor
2021-05-20 18:21:16 +09:00
Dean Herbert
a55879e511
Fix oversights in scale algorithm
2021-05-20 01:47:31 +09:00
Dean Herbert
14af86d6c5
Use the same code path for all scaling
2021-05-19 21:46:41 +09:00
Dean Herbert
6a3c58b9ad
Implement proper scaling algorithms
2021-05-19 19:58:55 +09:00
Dean Herbert
d661e98fa6
Move common functionality out of OsuSelectionHandler
and implement flip support
2021-05-18 18:34:06 +09:00
Dean Herbert
d09da02673
Fix deleting skin elements not saving out to skin
...
Closes https://github.com/ppy/osu/issues/12786 .
2021-05-14 16:03:22 +09:00
Bartłomiej Dach
25b1443c50
Remove dead branch and mark implementation as temporary
...
The previous implementation was checking if the `x0` or `x2` anchors
were selected to decide on which way to transfer the drawable's scale,
but that check actually ends up being always true for corner anchors. To
visualise, this is how the corner anchors correspond to `Anchor` flags:
x0 x1 x2
| | |
y0 -O---O---O-
| | |
y1 -O---+---O-
| | |
y2 -O---O---O-
| | |
The Os indicate where the reference anchors are on a selection box.
The first conditional eliminates the middle ones, which makes sense.
But after excluding them from further deliberations (marking via X):
x0 x1 x2
| | |
y0 -O---X---O-
| | |
y1 -X---+---X-
| | |
y2 -O---X---O-
| | |
The remaining anchors always have `x0` or `x2` set. So to avoid
confusion, just always transfer one way for now. At some point this
should be torn out in favour of an actual implementation of the desired
behaviour.
2021-05-13 17:50:12 +02:00
Dean Herbert
0fa90a80d4
Merge branch 'master' into skin-blueprint-aspect-lock
2021-05-13 23:38:53 +09:00
smoogipoo
4cf4817ad2
Remove redundant parens
2021-05-13 22:11:58 +09:00
Dan Balasescu
d2fdd1e521
Merge branch 'master' into stable-anchor-origin
2021-05-13 22:06:21 +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
7921dc7ece
Rename ISkinnableComponent
to ISkinnableDrawable
2021-05-13 17:06:00 +09:00
Dean Herbert
05e0c57a6a
Keep component positions stable when changing anchor/origin
2021-05-12 15:30:52 +09:00
Dean Herbert
12684de66e
Add ability to adjust origin in skin editor
2021-05-11 18:39:14 +09:00
Dean Herbert
aff32b0d19
Merge branch 'master' into skin-components-list
2021-05-06 14:17:33 +09:00
Dean Herbert
15603de6e9
Change scale multiplier to be closer to expectations
2021-05-03 15:25:18 +09:00
Dean Herbert
51f4077b27
Reorder methods in SkinSelectionHandler
to follow standards
2021-05-03 15:15:00 +09:00
Dean Herbert
a2faa0b74c
Remove dead code
2021-05-03 15:13:53 +09:00
Dean Herbert
01984de9c7
Use existing GetStateFromSelection
helper function
2021-05-03 15:13:32 +09:00
Dean Herbert
8b82a07914
Move skin-related interfaces out of HUD namespace
2021-04-30 13:10:42 +09:00
Dean Herbert
cdef07b2ee
Fix blueprints not hiding when deleting elements
2021-04-30 13:09:57 +09:00
Dean Herbert
b460181f15
Add note about rotation not working as expected
2021-04-29 16:16:52 +09:00
Dean Herbert
1516e2ffef
Update blueprint implementation in line with #12625 .
2021-04-29 16:12:31 +09:00