diff BuffFrame.xml @ 14:ed642234f017

ObjectiveFrame - implement proper tracker name text - expanded tracker prototypes to cover "objective lines" formatting and accommodation of widget variables - implement the progress bars for bonus objectives ObjectiveStyle - moved `UpdateWrapperStyle` over and renamed it to fit semantics - change the formula for block.`height` to measure non-widget content only - allows widgets to position relative to text - size FontString `status` to match block.`height` - full block height is acquired by adding block.`height` and block.`attachmentHeight` which is calculated during objective parsing ObjectiveWidgets - use string keys for generated widgets to deal with multiple objectives under the same questID, and maybe dungeon objectives - wrapper buttons use a common code path - specialized handlers for wheel scrolling moved over to fit semantics
author Nenue
date Mon, 04 Apr 2016 03:16:22 -0400
parents 3dbcad2b387d
children
line wrap: on
line diff
--- a/BuffFrame.xml	Sat Apr 02 17:46:52 2016 -0400
+++ b/BuffFrame.xml	Mon Apr 04 03:16:22 2016 -0400
@@ -3,6 +3,267 @@
   Veneer
   BuffFrame module
   -->
+
+
+  <!-- Buff-button underlay  -->
+  <Frame name="VeneerDecorTemplate" virtual="true" enableMouse="true" movable="true" frameStrata="BACKGROUND" hidden="true">
+    <Size x="30" y="30" />
+    <Layers>
+      <Layer level="BACKGROUND">
+        <Texture name="$parentButtonArea" setAllPoints="true" parentKey="background" alphaMode="BLEND">
+          <Color r="1" g="1" b="1" a="1" />
+        </Texture>
+        <Texture name="$parentButtonBackdrop" parentKey="backgroundFill" alphaMode="BLEND">
+          <Anchors>
+            <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" x="1" y="1" relativeKey="$parent.background" />
+            <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" x="-1" y="-1" relativeKey="$parent.background" />
+          </Anchors>
+          <Color r="0" g="0" b="0" a="1" />
+        </Texture>
+      </Layer>
+    </Layers>
+  </Frame>
+
+  <!-- Buff button overlay, and positioning anchor -->
+  <Frame name="VeneerGuideTemplate" virtual="true" movable="true" frameStrata="LOW">
+    <Scripts>
+      <OnShow>
+        self.mouseover = self:IsMouseOver()
+      </OnShow>
+      <OnUpdate>
+        if self:IsMouseOver() and not self.contains then
+          self.caster:Show()
+        else
+          self.caster:Hide()
+        end
+      </OnUpdate>
+    </Scripts>
+    <Layers>
+      <Layer level="ARTWORK">
+        <Texture name="$parentLegend" parentKey="legend" parentArray="config" setAllPoints="true" hidden="true">
+          <Color a="0.5" r="0" g="1" b="0" />
+        </Texture>
+        <Texture name="$parentCountLegend" parentKey="count" parentArray="config" hidden="true">
+          <Color a="0.75" r="1" g=".5" b="0" />
+        </Texture>
+
+
+        <Texture name="$parentIconArea" parentKey="icon" alphaMode="ADD">
+          <Color r="0" g="0" b="0" a="0" />
+        </Texture>
+        <Texture name="$parentTextLegend" parentKey="duration" parentArray="config" hidden="true" alphaMode="BLEND">
+          <Color a="0.25" r="1" g="1" b="1" />
+        </Texture>
+      </Layer>
+      <Layer level="OVERLAY">
+        <FontString inherits="VeneerFontNormal" parentArray="config" name="$parentID" parentKey="idText" hidden="true" outline="NORMAL">
+          <Anchors>
+            <Anchor point="CENTER" />
+          </Anchors>
+        </FontString>
+        <FontString inherits="VeneerFontNormal" parentKey="caster" outline="NORMAL">
+          <Anchors>
+            <Anchor point="TOPLEFT" relativePoint="TOPLEFT" relativeKey="$parent.icon" />
+          </Anchors>
+        </FontString>
+      </Layer>
+      <Layer level="HIGHLIGHT">
+
+      </Layer>
+    </Layers>
+  </Frame>
+
+
+  <!-- Anchor frame orientation-setting widget; click handler copies frame anchors over to buff buttons -->
+  <Button name="VeneerAnchorButton" virtual="true" parentArray="anchorButton" hidden="true">
+    <Scripts>
+      <OnClick>
+        self:GetParent():SetChildAnchors(self)
+      </OnClick>
+    </Scripts>
+    <Size x="15" y="15" />
+    <Layers>
+      <Layer level="BACKGROUND">
+        <Texture setAllPoints="true">
+          <Color r="0" g="0" b="0" a="1" />
+        </Texture>
+      </Layer>
+      <Layer level="OVERLAY">
+        <Texture>
+          <Color r="0" g="1" b="0.5" a="1" />
+          <Anchors>
+            <Anchor point="BOTTOMLEFT" x="1" y="1" />
+            <Anchor point="TOPRIGHT" x="-1" y="-1" />
+          </Anchors>
+        </Texture>
+      </Layer>
+    </Layers>
+  </Button>
+
+  <Frame name="VeneerAnchorTemplate" virtual="true" enableMouse="false" movable="true" sizable="true" clampedToScreen="true">
+    <Layers>
+      <Layer level="BACKGROUND">
+        <Texture name="$parentBackground" setAllPoints="true" parentArray="config" hidden="true">
+          <Color r="0" g="0.2" b="1" a="0.2" />
+        </Texture>
+        <FontString name="$parentHeading" inherits="VeneerFontHighlight" parentArray="config" parentKey="heading" hidden="true">
+          <Anchors>
+            <Anchor point="BOTTOMLEFT" relativePoint="TOPLEFT" />
+          </Anchors>
+        </FontString>
+        <FontString name="$parentDebug" inherits="VeneerFontNormal" parentArray="debug" parentKey="debug">
+          <Anchors>
+            <Anchor point="BOTTOMLEFT" relativePoint="TOPLEFT" />
+          </Anchors>
+        </FontString>
+      </Layer>
+      <Layer level="OVERLAY">
+
+        <Texture name="$parentCutJoint" parentKey="alignedJoint" hidden="true">
+          <Size x="4" y="4" />
+          <Color r="1" g="0" b="0" a="1" />
+        </Texture>
+        <Texture name="$parentCutY" parentKey="cuttingJointX" hidden="true">
+          <Size x="4" y="48" />
+          <Color r="1" g="1" b="0" a="1" />
+        </Texture>
+        <Texture name="$parentCutX" parentKey="cuttingJointY" hidden="true">
+          <Size x="48" y="4" />
+          <Color r="1" g="1" b="0" a="1" />
+        </Texture>
+        <Texture name="$parentPoppedY" parentKey="poppingJointX" hidden="true">
+          <Size x="4" y="48" />
+          <Color r="0" g="1" b="1" a="1" />
+        </Texture>
+        <Texture name="$parentPoppedX" parentKey="poppingJointY" hidden="true">
+          <Size x="48" y="4" />
+          <Color r="0" g="1" b="1" a="1" />
+        </Texture>
+        <Texture name="$parentChildSpace" parentKey="childSpace" hidden="true">
+          <Color r="0" g=".5" b="1" a="0.5" />
+        </Texture>
+      </Layer>
+      <Layer level="HIGHLIGHT">
+        <Texture name="$parentHighlight" setAllPoints="true" parentArray="config" hidden="true">
+          <Color r="1" g="1" b="0" a="0.2" />
+        </Texture>
+      </Layer>
+    </Layers>
+    <Frames>
+      <Button name="$parentAnchorUL" inherits="VeneerAnchorButton">
+        <Anchors>
+          <Anchor point="TOPLEFT" />
+        </Anchors>
+      </Button>
+      <Button name="$parentAnchorUR" inherits="VeneerAnchorButton">
+        <Anchors>
+          <Anchor point="TOPRIGHT" />
+        </Anchors>
+      </Button>
+      <Button name="$parentAnchorUR" inherits="VeneerAnchorButton">
+        <Anchors>
+          <Anchor point="BOTTOMRIGHT" />
+        </Anchors>
+      </Button>
+      <Button name="$parentAnchorUR" inherits="VeneerAnchorButton">
+        <Anchors>
+          <Anchor point="BOTTOMLEFT" />
+        </Anchors>
+      </Button>
+    </Frames>
+  </Frame>
+
+  <Frame name="VeneerConsolidatedBuffsAnchor" inherits="VeneerAnchorTemplate" virtual="true">
+    <Layers>
+      <Layer level="OVERLAY">
+        <!-- need to make our own number label since the original is buried under secure layer -->
+        <FontString inherits="VeneerFontNormal" name="$parentLabel" parentKey="label">
+          <Anchors>
+            <Anchor point="TOP" relativePoint="BOTTOM" x="0" y="-2" />
+          </Anchors>
+        </FontString>
+        <!--
+        <Texture name="$parentBackdrop" parentKey="background" setAllPoints="true" alphaMode="BLEND">
+          <Color r="0" g="0" b="0" a="1" />
+          <Anchors>
+            <Anchor point="BOTTOMLEFT" x="1" y="1" />
+            <Anchor point="TOPRIGHT" x="-1" y="-1" />
+          </Anchors>
+        </Texture>
+        <Texture name="$parentIcon" parentKey="border" setAllPoints="true" alphaMode="BLEND">
+          <Color r="1" g="1" b="1" a="1" />
+        </Texture>
+        -->
+      </Layer>
+    </Layers>
+  </Frame>
+
+  <Frame name="VeneerRaidBuffTemplate" virtual="true" enableMouse="false">
+    <Layers>
+      <Layer level="ARTWORK">
+        <Texture name="$parentLegend" parentKey="legend" parentArray="config" setAllPoints="true" hidden="true">
+          <Color a="0.5" r="0" g="1" b="0" />
+        </Texture>
+        <Texture name="$parentCountLegend" parentKey="count" parentArray="config" hidden="true">
+          <Color a="0.75" r="1" g=".5" b="0" />
+        </Texture>
+
+
+        <Texture name="$parentIconArea" parentKey="icon" alphaMode="ADD">
+          <Color r="0" g="0" b="0" a="0" />
+        </Texture>
+        <Texture name="$parentTextLegend" parentKey="duration" parentArray="config" hidden="true" alphaMode="BLEND">
+          <Color a="0.25" r="1" g="1" b="1" />
+        </Texture>
+      </Layer>
+      <Layer level="OVERLAY">
+        <FontString inherits="VeneerFontNormal" parentArray="config" name="$parentSymbol" parentKey="symbol">
+          <Anchors>
+            <Anchor point="TOP" />
+          </Anchors>
+        </FontString>
+        <FontString inherits="VeneerFontNormal" parentArray="config" name="$parentID" parentKey="idText" hidden="true">
+          <Anchors>
+            <Anchor point="BOTTOM" />
+          </Anchors>
+        </FontString>
+      </Layer>
+    </Layers>
+  </Frame>
+
+  <Button name="VeneerMissingBuffTemplate" virtual="true">
+    <Scripts>
+      <OnClick>
+        if self.spell and not InCombatLockdown() then
+          CastSpellByID(self.spell)
+        end
+      </OnClick>
+    </Scripts>
+    <Layers>
+      <Layer level="BORDER">
+        <Texture setAllPoints="true">
+          <Color r="1" g="1" b="1" a="0.25" />
+        </Texture>
+      </Layer>
+      <Layer level="ARTWORK">
+        <Texture name="$parentIcon" parentKey="icon">
+          <Size x="20" y="20" />
+          <Anchors>
+            <Anchor point="LEFT" />
+          </Anchors>
+        </Texture>
+      </Layer>
+      <Layer level="OVERLAY">
+        <FontString name="$parentLabel" parentKey="label" inherits="VeneerFontNormal" justifyH="LEFT">
+          <Anchors>
+            <Anchor point="LEFT" relativePoint="RIGHT" relativeKey="icon" />
+          </Anchors>
+        </FontString>
+      </Layer>
+    </Layers>
+  </Button>
+
+
   <Script file="BuffAnchors.lua" />
   <Script file="RaidBuffTray.lua" />
   <Script file="BuffButton.lua" />