File src/ChorusAuraButtonTemplate.lua changed (mode: 100644) (index 26f2742..921ac56) |
... |
... |
local function apply(auraButton, unitDesignation, auraIndex, filter) |
400 |
400 |
applyChargeQuantity(auraButton, chargeQuantity) |
applyChargeQuantity(auraButton, chargeQuantity) |
401 |
401 |
end |
end |
402 |
402 |
|
|
|
403 |
|
local function saneUnit(frame) |
|
404 |
|
assert(frame ~= nil) |
|
405 |
|
|
|
406 |
|
--[[-- @warning Insecure aura buttons access protected properties, like |
|
407 |
|
"unit" via `SecureButton_GetUnit`. This may or may not cause issues, |
|
408 |
|
like aura buttons not updating property. ]] |
|
409 |
|
|
|
410 |
|
local u = frame.unit or SecureButton_GetUnit(frame) or 'none' |
|
411 |
|
|
|
412 |
|
assert(u ~= nil) |
|
413 |
|
|
|
414 |
|
assert('string' == type(u)) |
|
415 |
|
u = string.lower(strtrim(u)) |
|
416 |
|
assert(string.len(u) >= 1) |
|
417 |
|
assert(string.len(u) <= 256) |
|
418 |
|
|
|
419 |
|
return u |
|
420 |
|
end |
|
421 |
|
|
|
422 |
|
local function saneUnitAuraFilter(auraButton) |
|
423 |
|
assert(auraButton ~= nil) |
|
424 |
|
|
|
425 |
|
local filter = auraButton.filter or SecureButton_GetAttribute(auraButton, 'filter') |
|
426 |
|
|
|
427 |
|
assert(filter ~= nil) |
|
428 |
|
|
|
429 |
|
assert('string' == type(filter)) |
|
430 |
|
filter = string.upper(strtrim(filter)) |
|
431 |
|
assert(string.len(filter) >= 1) |
|
432 |
|
assert(string.len(filter) <= 256) |
|
433 |
|
|
|
434 |
|
return filter |
|
435 |
|
end |
|
436 |
|
|
|
437 |
|
local function saneUnitAuraIndex(auraButton) |
|
438 |
|
assert(auraButton ~= nil) |
|
439 |
|
|
|
440 |
|
local i = auraButton.index or 0 |
|
441 |
|
assert(i ~= nil) |
|
442 |
|
assert('number' == type(i)) |
|
443 |
|
i = math.min(math.max(0, math.abs(math.floor(i))), 8192) |
|
444 |
|
|
|
445 |
|
return i |
|
446 |
|
end |
|
447 |
|
|
|
448 |
|
local function saneEvent(eventCategory) |
|
449 |
|
assert(eventCategory ~= nil) |
|
450 |
|
|
|
451 |
|
assert('string' == type(eventCategory)) |
|
452 |
|
eventCategory = string.upper(strtrim(eventCategory)) |
|
453 |
|
assert(string.len(eventCategory) >= 1) |
|
454 |
|
assert(string.len(eventCategory) <= 256) |
|
455 |
|
|
|
456 |
|
return eventCategory |
|
457 |
|
end |
|
458 |
|
|
403 |
459 |
--[[-- |
--[[-- |
404 |
460 |
Process stream of events, filter events only relevant to the aura button. |
Process stream of events, filter events only relevant to the aura button. |
405 |
461 |
|
|
|
... |
... |
function Chorus.auraButtonEventProcessor(self, eventCategory, ...) |
468 |
524 |
apply(self, thisUnit, i, filter) |
apply(self, thisUnit, i, filter) |
469 |
525 |
end |
end |
470 |
526 |
|
|
|
527 |
|
local function auraTinyButtonApply(auraTinyButton, artworkFile) |
|
528 |
|
assert(auraTinyButton ~= nil) |
|
529 |
|
|
|
530 |
|
artworkFile = artworkFile or "Interface\\Icons\\INV_Misc_QuestionMark" |
|
531 |
|
assert(artworkFile ~= nil) |
|
532 |
|
|
|
533 |
|
local artwork = auraTinyButton.artwork |
|
534 |
|
assert(artwork ~= nil) |
|
535 |
|
|
|
536 |
|
artwork:SetTexture(artworkFile) |
|
537 |
|
end |
|
538 |
|
|
|
539 |
|
local function auraTinyButtonUnapply(auraTinyButton) |
|
540 |
|
assert(auraTinyButton ~= nil) |
|
541 |
|
|
|
542 |
|
auraTinyButton.index = nil |
|
543 |
|
auraTinyButton.spell = nil |
|
544 |
|
|
|
545 |
|
local artwork = auraTinyButton.artwork |
|
546 |
|
|
|
547 |
|
if artwork then |
|
548 |
|
artwork:SetTexture(nil) |
|
549 |
|
end |
|
550 |
|
end |
|
551 |
|
|
|
552 |
|
local function auraTinyButtonRefresh(auraTinyButton) |
|
553 |
|
assert(auraTinyButton ~= nil) |
|
554 |
|
|
|
555 |
|
local u = saneUnit(auraTinyButton) |
|
556 |
|
local filter = saneUnitAuraFilter(auraTinyButton) |
|
557 |
|
local i = saneUnitAuraIndex(auraTinyButton) |
|
558 |
|
|
|
559 |
|
local auraName, _, artworkFile = UnitAura(u, i, filter) |
|
560 |
|
|
|
561 |
|
if UnitExists(u) and UnitIsConnected(u) and auraName then |
|
562 |
|
auraTinyButtonApply(auraTinyButton, artworkFile) |
|
563 |
|
else |
|
564 |
|
auraTinyButtonUnapply(auraTinyButton) |
|
565 |
|
end |
|
566 |
|
end |
|
567 |
|
|
|
568 |
|
local function auraTinyButtonEventProcessor(auraTinyButton, eventCategory, ...) |
|
569 |
|
assert(auraTinyButton ~= nil) |
|
570 |
|
|
|
571 |
|
--[[ Only refresh for the relevant unit. ]]-- |
|
572 |
|
|
|
573 |
|
if 'UNIT_AURA' == eventCategory then |
|
574 |
|
local eventUnit = select(1, ...) |
|
575 |
|
local thisUnit = saneUnit(auraTinyButton) |
|
576 |
|
if UnitIsUnit(thisUnit, eventUnit) then |
|
577 |
|
auraTinyButtonRefresh(auraTinyButton) |
|
578 |
|
end |
|
579 |
|
else |
|
580 |
|
auraTinyButtonRefresh(auraTinyButton) |
|
581 |
|
end |
|
582 |
|
end |
|
583 |
|
|
471 |
584 |
--[[-- |
--[[-- |
472 |
585 |
Process the state of given aura button, then apply the details to the native |
Process the state of given aura button, then apply the details to the native |
473 |
586 |
`GameTooltip`. |
`GameTooltip`. |
|
... |
... |
end |
527 |
640 |
--[[-- |
--[[-- |
528 |
641 |
Initialize the aura button frame with callbacks and children. |
Initialize the aura button frame with callbacks and children. |
529 |
642 |
|
|
530 |
|
@function auraButtonMain |
|
|
643 |
|
@function auraLargeButtonMain |
531 |
644 |
@tparam frame self |
@tparam frame self |
532 |
645 |
@return nothing |
@return nothing |
533 |
646 |
]] |
]] |
534 |
|
function Chorus.auraButtonMain(self) |
|
|
647 |
|
function Chorus.auraLargeButtonMain(self) |
535 |
648 |
local n = self:GetName() |
local n = self:GetName() |
536 |
649 |
if n then |
if n then |
537 |
650 |
self.artwork = _G[n .. 'Artwork'] |
self.artwork = _G[n .. 'Artwork'] |
|
... |
... |
function Chorus.auraButtonMain(self) |
548 |
661 |
|
|
549 |
662 |
auraButtonTextScale(self) |
auraButtonTextScale(self) |
550 |
663 |
end |
end |
|
664 |
|
|
|
665 |
|
function Chorus.auraTinyButtonMain(auraTinyButton) |
|
666 |
|
assert(auraTinyButton ~= nil) |
|
667 |
|
|
|
668 |
|
local b = auraTinyButton |
|
669 |
|
|
|
670 |
|
local n = b:GetName() |
|
671 |
|
assert(n ~= nil) |
|
672 |
|
|
|
673 |
|
assert('string' == type(n)) |
|
674 |
|
n = strtrim(n) |
|
675 |
|
assert(string.len(n) >= 1) |
|
676 |
|
assert(string.len(n) <= 256) |
|
677 |
|
|
|
678 |
|
local artwork = _G[n .. 'Artwork'] |
|
679 |
|
assert(artwork ~= nil) |
|
680 |
|
|
|
681 |
|
b.artwork = artwork |
|
682 |
|
|
|
683 |
|
b:RegisterEvent('UNIT_AURA') |
|
684 |
|
b:RegisterEvent('PLAYER_ENTERING_WORLD') |
|
685 |
|
|
|
686 |
|
--[[-- @todo Clean up large and tiny aura button event processors, to |
|
687 |
|
reuse code. ]] |
|
688 |
|
|
|
689 |
|
b:SetScript('OnEvent', auraTinyButtonEventProcessor) |
|
690 |
|
end |
File src/ChorusAuraButtonTemplate.xml changed (mode: 100644) (index 45e99c5..521a5c5) |
1 |
1 |
<?xml version="1.0" encoding="UTF-8"?> |
<?xml version="1.0" encoding="UTF-8"?> |
2 |
2 |
<Ui xmlns="http://www.blizzard.com/wow/ui/"> |
<Ui xmlns="http://www.blizzard.com/wow/ui/"> |
3 |
|
<Script file="ChorusAuraButtonTemplate.lua"/> |
|
|
3 |
|
<Script file="ChorusAuraButtonTemplate.lua"/> |
4 |
4 |
<Frame name="ChorusAuraButtonTemplate" virtual="true"> |
<Frame name="ChorusAuraButtonTemplate" virtual="true"> |
|
5 |
|
<Scripts> |
|
6 |
|
<OnEnter>Chorus.auraButtonGameTooltipShow(self);</OnEnter> |
|
7 |
|
<OnLeave>Chorus.auraButtonGameTooltipHide(self);</OnLeave> |
|
8 |
|
</Scripts> |
|
9 |
|
<Attributes> |
|
10 |
|
<Attribute name="useparent-unit" type="boolean" value="true"/> |
|
11 |
|
<Attribute name="useparent-filter" type="boolean" value="true"/> |
|
12 |
|
</Attributes> |
|
13 |
|
</Frame> |
|
14 |
|
<Frame name="ChorusAuraLargeButtonTemplate" inherits="ChorusAuraButtonTemplate" virtual="true"> |
5 |
15 |
<Size> |
<Size> |
6 |
16 |
<AbsDimension x="30" y="30" /> |
<AbsDimension x="30" y="30" /> |
7 |
17 |
</Size> |
</Size> |
|
66 |
76 |
</Layer> |
</Layer> |
67 |
77 |
</Layers> |
</Layers> |
68 |
78 |
<Scripts> |
<Scripts> |
69 |
|
<OnLoad>Chorus.auraButtonMain(self);</OnLoad> |
|
70 |
|
<OnEnter>Chorus.auraButtonGameTooltipShow(self);</OnEnter> |
|
71 |
|
<OnLeave>Chorus.auraButtonGameTooltipHide(self);</OnLeave> |
|
|
79 |
|
<OnLoad>Chorus.auraLargeButtonMain(self);</OnLoad> |
|
80 |
|
</Scripts> |
|
81 |
|
</Frame> |
|
82 |
|
<Frame name="ChorusAuraTinyButtonTemplate" inherits="ChorusAuraButtonTemplate" virtual="true"> |
|
83 |
|
<Size> |
|
84 |
|
<AbsDimension x="12" y="12" /> |
|
85 |
|
</Size> |
|
86 |
|
<Layers> |
|
87 |
|
<Layer level="ARTWORK"> |
|
88 |
|
<Texture file="Interface\Icons\INV_Misc_QuestionMark" name="$parentArtwork" nonBlocking="true"> |
|
89 |
|
<Size> |
|
90 |
|
<AbsDimension x="10" y="10"/> |
|
91 |
|
</Size> |
|
92 |
|
<Anchors> |
|
93 |
|
<Anchor point="TOPLEFT"> |
|
94 |
|
<Offset> |
|
95 |
|
<AbsDimension x="1" y="-1"/> |
|
96 |
|
</Offset> |
|
97 |
|
</Anchor> |
|
98 |
|
</Anchors> |
|
99 |
|
<TexCoords left="0.30" right="0.70" top="0.12" bottom="0.82"/> |
|
100 |
|
</Texture> |
|
101 |
|
</Layer> |
|
102 |
|
</Layers> |
|
103 |
|
<Scripts> |
|
104 |
|
<OnLoad>Chorus.auraTinyButtonMain(self);</OnLoad> |
72 |
105 |
</Scripts> |
</Scripts> |
73 |
|
<Attributes> |
|
74 |
|
<Attribute name="useparent-unit" type="boolean" value="true"/> |
|
75 |
|
<Attribute name="useparent-filter" type="boolean" value="true"/> |
|
76 |
|
</Attributes> |
|
77 |
106 |
</Frame> |
</Frame> |
78 |
107 |
</Ui> |
</Ui> |
File src/ChorusAuraFrameTemplate.lua changed (mode: 100644) (index e93d6a8..b396732) |
... |
... |
buttons are handled by `ChorusAuraButtonTemplate`. |
7 |
7 |
|
|
8 |
8 |
local Chorus = Chorus |
local Chorus = Chorus |
9 |
9 |
|
|
10 |
|
local auraButtonEventProcessor = Chorus.auraButtonEventProcessor |
|
11 |
|
|
|
12 |
10 |
local SecureButton_GetUnit = Chorus.test.SecureButton_GetUnit or SecureButton_GetUnit |
local SecureButton_GetUnit = Chorus.test.SecureButton_GetUnit or SecureButton_GetUnit |
13 |
11 |
|
|
14 |
12 |
--[[ See `FrameXML/BuffFrame.lua:BUFF_MAX_DISPLAY`. ]]-- |
--[[ See `FrameXML/BuffFrame.lua:BUFF_MAX_DISPLAY`. ]]-- |
|
... |
... |
local function auraFrameEventProcessor(self, eventCategory, ...) |
111 |
109 |
assert(q ~= nil) |
assert(q ~= nil) |
112 |
110 |
assert('table' == type(q)) |
assert('table' == type(q)) |
113 |
111 |
|
|
|
112 |
|
|
114 |
113 |
local i = 0 |
local i = 0 |
115 |
114 |
local t = {self:GetChildren()} |
local t = {self:GetChildren()} |
116 |
115 |
while (i < #q) do |
while (i < #q) do |
|
... |
... |
local function auraFrameEventProcessor(self, eventCategory, ...) |
128 |
127 |
assert(k >= 0) |
assert(k >= 0) |
129 |
128 |
b.index = k |
b.index = k |
130 |
129 |
|
|
131 |
|
auraButtonEventProcessor(b, eventCategory, ...) |
|
|
130 |
|
local callback = b:GetScript('OnEvent') |
|
131 |
|
assert(callback ~= nil) |
|
132 |
|
callback(b, eventCategory, ...) |
132 |
133 |
end |
end |
133 |
134 |
|
|
134 |
135 |
while (i < #t) do |
while (i < #t) do |
|
... |
... |
local function auraFrameEventProcessor(self, eventCategory, ...) |
137 |
138 |
assert(b ~= nil) |
assert(b ~= nil) |
138 |
139 |
b.index = 0 |
b.index = 0 |
139 |
140 |
|
|
140 |
|
auraButtonEventProcessor(b, eventCategory, ...) |
|
|
141 |
|
local callback = b:GetScript('OnEvent') |
|
142 |
|
assert(callback ~= nil) |
|
143 |
|
callback(b, eventCategory, ...) |
141 |
144 |
end |
end |
142 |
145 |
end |
end |
143 |
146 |
|
|
|
... |
... |
local function createEveryAuraButton(auraFrame) |
158 |
161 |
i = i + 1 |
i = i + 1 |
159 |
162 |
|
|
160 |
163 |
local m = string.format('%sAuraButton%02d', n, i) |
local m = string.format('%sAuraButton%02d', n, i) |
161 |
|
local b = CreateFrame('FRAME', m, self, 'ChorusAuraButtonTemplate') |
|
|
164 |
|
local b = CreateFrame('FRAME', m, self, 'ChorusAuraLargeButtonTemplate') |
162 |
165 |
b:SetPoint('TOPLEFT', x, -y) |
b:SetPoint('TOPLEFT', x, -y) |
163 |
166 |
x = x + b:GetWidth() |
x = x + b:GetWidth() |
164 |
167 |
bmaxh = math.max(bmaxh, b:GetHeight()) |
bmaxh = math.max(bmaxh, b:GetHeight()) |
File src/ChorusAuraFrameTemplate.xml changed (mode: 100644) (index 7a78e48..3a28bb5) |
12 |
12 |
</Frame> |
</Frame> |
13 |
13 |
<Frame name="ChorusLargeAuraFrameTemplate" inherits="ChorusAuraFrameTemplate" virtual="true"> |
<Frame name="ChorusLargeAuraFrameTemplate" inherits="ChorusAuraFrameTemplate" virtual="true"> |
14 |
14 |
<Size> |
<Size> |
15 |
|
<AbsDimension x="240" y="30"/> |
|
|
15 |
|
<AbsDimension x="240" y="42"/> |
16 |
16 |
</Size> |
</Size> |
17 |
17 |
<Frames> |
<Frames> |
18 |
|
<Frame name="$parentAuraButton1" inherits="ChorusAuraButtonTemplate" id="1"> |
|
|
18 |
|
<Frame name="$parentAuraButton1" inherits="ChorusAuraLargeButtonTemplate" id="1"> |
19 |
19 |
<Anchors> |
<Anchors> |
20 |
20 |
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
21 |
21 |
<Offset> |
<Offset> |
|
24 |
24 |
</Anchor> |
</Anchor> |
25 |
25 |
</Anchors> |
</Anchors> |
26 |
26 |
</Frame> |
</Frame> |
27 |
|
<Frame name="$parentAuraButton2" inherits="ChorusAuraButtonTemplate" id="2"> |
|
|
27 |
|
<Frame name="$parentAuraButton2" inherits="ChorusAuraLargeButtonTemplate" id="2"> |
28 |
28 |
<Anchors> |
<Anchors> |
29 |
29 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton1" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton1" relativePoint="BOTTOMRIGHT"> |
30 |
30 |
<Offset> |
<Offset> |
|
33 |
33 |
</Anchor> |
</Anchor> |
34 |
34 |
</Anchors> |
</Anchors> |
35 |
35 |
</Frame> |
</Frame> |
36 |
|
<Frame name="$parentAuraButton3" inherits="ChorusAuraButtonTemplate" id="3"> |
|
|
36 |
|
<Frame name="$parentAuraButton3" inherits="ChorusAuraLargeButtonTemplate" id="3"> |
37 |
37 |
<Anchors> |
<Anchors> |
38 |
38 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton2" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton2" relativePoint="BOTTOMRIGHT"> |
39 |
39 |
<Offset> |
<Offset> |
|
42 |
42 |
</Anchor> |
</Anchor> |
43 |
43 |
</Anchors> |
</Anchors> |
44 |
44 |
</Frame> |
</Frame> |
45 |
|
<Frame name="$parentAuraButton4" inherits="ChorusAuraButtonTemplate" id="4"> |
|
|
45 |
|
<Frame name="$parentAuraButton4" inherits="ChorusAuraLargeButtonTemplate" id="4"> |
46 |
46 |
<Anchors> |
<Anchors> |
47 |
47 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton3" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton3" relativePoint="BOTTOMRIGHT"> |
48 |
48 |
<Offset> |
<Offset> |
|
51 |
51 |
</Anchor> |
</Anchor> |
52 |
52 |
</Anchors> |
</Anchors> |
53 |
53 |
</Frame> |
</Frame> |
54 |
|
<Frame name="$parentAuraButton5" inherits="ChorusAuraButtonTemplate" id="5"> |
|
|
54 |
|
<Frame name="$parentAuraButton5" inherits="ChorusAuraLargeButtonTemplate" id="5"> |
55 |
55 |
<Anchors> |
<Anchors> |
56 |
56 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton4" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton4" relativePoint="BOTTOMRIGHT"> |
57 |
57 |
<Offset> |
<Offset> |
|
60 |
60 |
</Anchor> |
</Anchor> |
61 |
61 |
</Anchors> |
</Anchors> |
62 |
62 |
</Frame> |
</Frame> |
63 |
|
<Frame name="$parentAuraButton6" inherits="ChorusAuraButtonTemplate" id="6"> |
|
|
63 |
|
<Frame name="$parentAuraButton6" inherits="ChorusAuraLargeButtonTemplate" id="6"> |
64 |
64 |
<Anchors> |
<Anchors> |
65 |
65 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton5" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton5" relativePoint="BOTTOMRIGHT"> |
66 |
66 |
<Offset> |
<Offset> |
|
69 |
69 |
</Anchor> |
</Anchor> |
70 |
70 |
</Anchors> |
</Anchors> |
71 |
71 |
</Frame> |
</Frame> |
|
72 |
|
<Frame name="$parentAuraButton7" inherits="ChorusAuraTinyButtonTemplate" id="7"> |
|
73 |
|
<Anchors> |
|
74 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
|
75 |
|
<Offset> |
|
76 |
|
<AbsDimension x="6" y="30"/> |
|
77 |
|
</Offset> |
|
78 |
|
</Anchor> |
|
79 |
|
</Anchors> |
|
80 |
|
</Frame> |
|
81 |
|
<Frame name="$parentAuraButton8" inherits="ChorusAuraTinyButtonTemplate" id="8"> |
|
82 |
|
<Anchors> |
|
83 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton7" relativePoint="BOTTOMRIGHT"> |
|
84 |
|
<Offset> |
|
85 |
|
<AbsDimension x="0" y="0"/> |
|
86 |
|
</Offset> |
|
87 |
|
</Anchor> |
|
88 |
|
</Anchors> |
|
89 |
|
</Frame> |
|
90 |
|
<Frame name="$parentAuraButton9" inherits="ChorusAuraTinyButtonTemplate" id="9"> |
|
91 |
|
<Anchors> |
|
92 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton8" relativePoint="BOTTOMRIGHT"> |
|
93 |
|
<Offset> |
|
94 |
|
<AbsDimension x="0" y="0"/> |
|
95 |
|
</Offset> |
|
96 |
|
</Anchor> |
|
97 |
|
</Anchors> |
|
98 |
|
</Frame> |
|
99 |
|
<Frame name="$parentAuraButton10" inherits="ChorusAuraTinyButtonTemplate" id="10"> |
|
100 |
|
<Anchors> |
|
101 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton9" relativePoint="BOTTOMRIGHT"> |
|
102 |
|
<Offset> |
|
103 |
|
<AbsDimension x="0" y="0"/> |
|
104 |
|
</Offset> |
|
105 |
|
</Anchor> |
|
106 |
|
</Anchors> |
|
107 |
|
</Frame> |
|
108 |
|
<Frame name="$parentAuraButton11" inherits="ChorusAuraTinyButtonTemplate" id="11"> |
|
109 |
|
<Anchors> |
|
110 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton10" relativePoint="BOTTOMRIGHT"> |
|
111 |
|
<Offset> |
|
112 |
|
<AbsDimension x="0" y="0"/> |
|
113 |
|
</Offset> |
|
114 |
|
</Anchor> |
|
115 |
|
</Anchors> |
|
116 |
|
</Frame> |
|
117 |
|
<Frame name="$parentAuraButton12" inherits="ChorusAuraTinyButtonTemplate" id="12"> |
|
118 |
|
<Anchors> |
|
119 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton11" relativePoint="BOTTOMRIGHT"> |
|
120 |
|
<Offset> |
|
121 |
|
<AbsDimension x="0" y="0"/> |
|
122 |
|
</Offset> |
|
123 |
|
</Anchor> |
|
124 |
|
</Anchors> |
|
125 |
|
</Frame> |
|
126 |
|
<Frame name="$parentAuraButton13" inherits="ChorusAuraTinyButtonTemplate" id="13"> |
|
127 |
|
<Anchors> |
|
128 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton12" relativePoint="BOTTOMRIGHT"> |
|
129 |
|
<Offset> |
|
130 |
|
<AbsDimension x="0" y="0"/> |
|
131 |
|
</Offset> |
|
132 |
|
</Anchor> |
|
133 |
|
</Anchors> |
|
134 |
|
</Frame> |
|
135 |
|
<Frame name="$parentAuraButton14" inherits="ChorusAuraTinyButtonTemplate" id="14"> |
|
136 |
|
<Anchors> |
|
137 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton13" relativePoint="BOTTOMRIGHT"> |
|
138 |
|
<Offset> |
|
139 |
|
<AbsDimension x="0" y="0"/> |
|
140 |
|
</Offset> |
|
141 |
|
</Anchor> |
|
142 |
|
</Anchors> |
|
143 |
|
</Frame> |
|
144 |
|
<Frame name="$parentAuraButton15" inherits="ChorusAuraTinyButtonTemplate" id="15"> |
|
145 |
|
<Anchors> |
|
146 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton14" relativePoint="BOTTOMRIGHT"> |
|
147 |
|
<Offset> |
|
148 |
|
<AbsDimension x="0" y="0"/> |
|
149 |
|
</Offset> |
|
150 |
|
</Anchor> |
|
151 |
|
</Anchors> |
|
152 |
|
</Frame> |
|
153 |
|
<Frame name="$parentAuraButton16" inherits="ChorusAuraTinyButtonTemplate" id="16"> |
|
154 |
|
<Anchors> |
|
155 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton15" relativePoint="BOTTOMRIGHT"> |
|
156 |
|
<Offset> |
|
157 |
|
<AbsDimension x="0" y="0"/> |
|
158 |
|
</Offset> |
|
159 |
|
</Anchor> |
|
160 |
|
</Anchors> |
|
161 |
|
</Frame> |
|
162 |
|
<Frame name="$parentAuraButton17" inherits="ChorusAuraTinyButtonTemplate" id="17"> |
|
163 |
|
<Anchors> |
|
164 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton16" relativePoint="BOTTOMRIGHT"> |
|
165 |
|
<Offset> |
|
166 |
|
<AbsDimension x="0" y="0"/> |
|
167 |
|
</Offset> |
|
168 |
|
</Anchor> |
|
169 |
|
</Anchors> |
|
170 |
|
</Frame> |
|
171 |
|
<Frame name="$parentAuraButton18" inherits="ChorusAuraTinyButtonTemplate" id="18"> |
|
172 |
|
<Anchors> |
|
173 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton17" relativePoint="BOTTOMRIGHT"> |
|
174 |
|
<Offset> |
|
175 |
|
<AbsDimension x="0" y="0"/> |
|
176 |
|
</Offset> |
|
177 |
|
</Anchor> |
|
178 |
|
</Anchors> |
|
179 |
|
</Frame> |
|
180 |
|
<Frame name="$parentAuraButton19" inherits="ChorusAuraTinyButtonTemplate" id="19"> |
|
181 |
|
<Anchors> |
|
182 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton18" relativePoint="BOTTOMRIGHT"> |
|
183 |
|
<Offset> |
|
184 |
|
<AbsDimension x="0" y="0"/> |
|
185 |
|
</Offset> |
|
186 |
|
</Anchor> |
|
187 |
|
</Anchors> |
|
188 |
|
</Frame> |
|
189 |
|
<Frame name="$parentAuraButton20" inherits="ChorusAuraTinyButtonTemplate" id="20"> |
|
190 |
|
<Anchors> |
|
191 |
|
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton19" relativePoint="BOTTOMRIGHT"> |
|
192 |
|
<Offset> |
|
193 |
|
<AbsDimension x="0" y="0"/> |
|
194 |
|
</Offset> |
|
195 |
|
</Anchor> |
|
196 |
|
</Anchors> |
|
197 |
|
</Frame> |
72 |
198 |
</Frames> |
</Frames> |
73 |
199 |
</Frame> |
</Frame> |
74 |
200 |
<Frame name="ChorusSmallAuraFrameTemplate" inherits="ChorusAuraFrameTemplate" virtual="true"> |
<Frame name="ChorusSmallAuraFrameTemplate" inherits="ChorusAuraFrameTemplate" virtual="true"> |
|
76 |
202 |
<AbsDimension x="120" y="30"/> |
<AbsDimension x="120" y="30"/> |
77 |
203 |
</Size> |
</Size> |
78 |
204 |
<Frames> |
<Frames> |
79 |
|
<Frame name="$parentAuraButton1" inherits="ChorusAuraButtonTemplate" id="1"> |
|
|
205 |
|
<Frame name="$parentAuraButton1" inherits="ChorusAuraLargeButtonTemplate" id="1"> |
80 |
206 |
<Anchors> |
<Anchors> |
81 |
207 |
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
82 |
208 |
<Offset> |
<Offset> |
|
85 |
211 |
</Anchor> |
</Anchor> |
86 |
212 |
</Anchors> |
</Anchors> |
87 |
213 |
</Frame> |
</Frame> |
88 |
|
<Frame name="$parentAuraButton2" inherits="ChorusAuraButtonTemplate" id="2"> |
|
|
214 |
|
<Frame name="$parentAuraButton2" inherits="ChorusAuraLargeButtonTemplate" id="2"> |
89 |
215 |
<Anchors> |
<Anchors> |
90 |
216 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton1" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton1" relativePoint="BOTTOMRIGHT"> |
91 |
217 |
<Offset> |
<Offset> |
|
94 |
220 |
</Anchor> |
</Anchor> |
95 |
221 |
</Anchors> |
</Anchors> |
96 |
222 |
</Frame> |
</Frame> |
97 |
|
<Frame name="$parentAuraButton3" inherits="ChorusAuraButtonTemplate" id="3"> |
|
|
223 |
|
<Frame name="$parentAuraButton3" inherits="ChorusAuraLargeButtonTemplate" id="3"> |
98 |
224 |
<Anchors> |
<Anchors> |
99 |
225 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton2" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton2" relativePoint="BOTTOMRIGHT"> |
100 |
226 |
<Offset> |
<Offset> |
|
103 |
229 |
</Anchor> |
</Anchor> |
104 |
230 |
</Anchors> |
</Anchors> |
105 |
231 |
</Frame> |
</Frame> |
106 |
|
<Frame name="$parentAuraButton4" inherits="ChorusAuraButtonTemplate" id="4"> |
|
|
232 |
|
<Frame name="$parentAuraButton4" inherits="ChorusAuraLargeButtonTemplate" id="4"> |
107 |
233 |
<Anchors> |
<Anchors> |
108 |
234 |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton3" relativePoint="BOTTOMRIGHT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parentAuraButton3" relativePoint="BOTTOMRIGHT"> |
109 |
235 |
<Offset> |
<Offset> |
|
119 |
245 |
<AbsDimension x="30" y="30"/> |
<AbsDimension x="30" y="30"/> |
120 |
246 |
</Size> |
</Size> |
121 |
247 |
<Frames> |
<Frames> |
122 |
|
<Frame name="$parentAuraButton1" inherits="ChorusAuraButtonTemplate" id="1"> |
|
|
248 |
|
<Frame name="$parentAuraButton1" inherits="ChorusAuraLargeButtonTemplate" id="1"> |
123 |
249 |
<Anchors> |
<Anchors> |
124 |
250 |
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
<Anchor point="BOTTOMLEFT" relativeTo="$parent" relativePoint="BOTTOMLEFT"> |
125 |
251 |
<Offset> |
<Offset> |