annotate Devian.xml @ 14:5254d1ba6013 v1.2-r15

Multiple output windows can be created for different output prefixes, and prefixes can be designated to an existing or new "console" with /dvn <prefix> <console> Frame objects are generated directly from XML data, and their state information is stored in the object itself to resolve issues with GetWidth() returning old info in some cases. StackFrames and DistributeFrames methods can be invoked from /script to arrange the buffers.
author Nenue
date Sun, 20 Dec 2015 00:46:42 -0500
parents 080dfa4990fb
children 31ca76e04766
rev   line source
Nenue@4 1 <Ui>
Nenue@14 2
Nenue@14 3 <Texture name="DevianBorder" virtual="true" setAllPoints="false">
Nenue@14 4 <Color r="1" g="0" b="0" a="1" />
Nenue@14 5 <Size x="2" y="2" />
Nenue@14 6 </Texture>
Nenue@14 7
Nenue@13 8 <Frame
Nenue@13 9 name="DevianConsole"
Nenue@13 10 parent="UIParent"
Nenue@13 11 enableMouse="true"
Nenue@13 12 enableMouseWheel="true"
Nenue@13 13 clampedToScreen="true"
Nenue@13 14 movable="true"
Nenue@13 15 resizable="true"
Nenue@13 16 toplevel="true"
Nenue@13 17 hidden="true"
Nenue@13 18 virtual="true">
Nenue@5 19 <ResizeBounds>
Nenue@5 20 <minResize x="200" y="20" />
Nenue@5 21 <maxResize x="1920" y="1200" />
Nenue@5 22 </ResizeBounds>
Nenue@4 23 <Scripts>
Nenue@14 24 <OnShow></OnShow>
Nenue@4 25 <OnMouseDown>
Nenue@14 26 self:ToFront()
Nenue@4 27 if button == 'LeftButton' then
Nenue@14 28 if self.out.grip:IsMouseOver() then
Nenue@4 29 return self:StartSizing()
Nenue@4 30 end
Nenue@4 31 return self:StartMoving()
Nenue@4 32 end
Nenue@4 33 </OnMouseDown>
Nenue@4 34 <OnMouseUp>
Nenue@4 35 if button == 'RightButton' then
Nenue@13 36 return self:MinMax()
Nenue@4 37 end
Nenue@4 38 self:StopMovingOrSizing()
Nenue@14 39 self.x = nil -- free these up
Nenue@14 40 self.y = nil
Nenue@14 41 self.width = nil
Nenue@14 42 self.height = nil
Nenue@13 43 self:Save()
Nenue@4 44 </OnMouseUp>
Nenue@4 45 <OnMouseWheel>
Nenue@4 46 local up = delta > 0
Nenue@4 47 if IsControlKeyDown() then
Nenue@13 48 if up then self.out:ScrollToTop()
Nenue@13 49 else self.out:ScrollToBottom() end
Nenue@4 50 elseif IsShiftKeyDown() then
Nenue@13 51 if up then self.out:PageUp()
Nenue@13 52 else self.out:PageDown() end
Nenue@4 53 else
Nenue@13 54 if up then self.out:ScrollUp()
Nenue@13 55 else self.out:ScrollDown() end
Nenue@4 56 end
Nenue@4 57 </OnMouseWheel>
Nenue@4 58 <OnUpdate>
Nenue@4 59 if not self.throttle then
Nenue@4 60 self.throttle = GetTime()
Nenue@4 61 elseif (GetTime()-self.throttle &lt; 0.2) then
Nenue@4 62 return
Nenue@4 63 else
Nenue@4 64 self.throttle = GetTime()
Nenue@4 65 end
Nenue@14 66 local text = string.gsub(self.format, '%%t', GetTime(), 1)
Nenue@14 67 text = string.gsub(text, '%%n', self.signature, 1)
Nenue@14 68 self.header:SetText(text)
Nenue@4 69 </OnUpdate>
Nenue@4 70 </Scripts>
Nenue@4 71
Nenue@4 72 <Frames>
Nenue@13 73 <ScrollingMessageFrame
Nenue@13 74 name="$parentScrollFrame"
Nenue@13 75 parentkey="out"
Nenue@13 76 maxLines="500"
Nenue@13 77 fade="false"
Nenue@13 78 displayduration="2147483647"
Nenue@13 79 insertMode="BOTTOM">
Nenue@4 80 <Anchors>
Nenue@4 81 <Anchor point="TOPLEFT" y="-20" />
Nenue@4 82 <Anchor point="BOTTOMRIGHT" />
Nenue@4 83 </Anchors>
Nenue@5 84 <FontString font="Interface\Addons\Devian\font\SourceCodePro-Regular.ttf" wordwrap="true"
Nenue@4 85 justifyH="LEFT"
Nenue@4 86 indented="true"
Nenue@4 87 setAllPoints="true">
Nenue@4 88 <FontHeight>
Nenue@5 89 <AbsValue val="13"/>
Nenue@4 90 </FontHeight>
Nenue@4 91 </FontString>
Nenue@4 92
Nenue@4 93 <Layers>
Nenue@4 94 <Layer level="BACKGROUND">
Nenue@13 95 <Texture name="$parentbg" parentKey="backdrop" setAllPoints="true" alphaMode="BLEND">
Nenue@4 96 <Color r="1" g="1" b="1" a="1"/>
Nenue@7 97 <Gradient orientation="VERTICAL">
Nenue@7 98 <MinColor r="0" g="0" b="0" a="0.7"/>
Nenue@7 99 <MaxColor r="0" g="0" b="0" a="0.3"/>
Nenue@4 100 </Gradient>
Nenue@4 101 </Texture>
Nenue@4 102 </Layer>
Nenue@14 103 <Layer level="OVERLAY">
Nenue@14 104 <Texture name="DevianGripper" file="Interface\Addons\Devian\corner.blp" parentKey="grip" strata="HIGH" alphaMode="ADD">
Nenue@14 105 <Anchors>
Nenue@14 106 <Anchor point="BOTTOMRIGHT" x="-1" y="1" />
Nenue@14 107 </Anchors>
Nenue@14 108 <Size x="18" y="18" />
Nenue@14 109 <Color r="1" g="1" b="1" a="1"/>
Nenue@14 110 <Gradient orientation="VERTICAL">
Nenue@14 111 <MaxColor r="0.2" g="0.2" b="0.2" a="1"/>
Nenue@14 112 <MinColor r="0.5" g="0.5" b="0.5" a="1"/>
Nenue@14 113 </Gradient>
Nenue@14 114 </Texture>
Nenue@14 115 </Layer>
Nenue@4 116 </Layers>
Nenue@4 117 </ScrollingMessageFrame>
Nenue@4 118 </Frames>
Nenue@4 119 <Layers>
Nenue@13 120 <Layer level="BORDER">
Nenue@13 121 <Texture parentKey="titlebar" alphaMode="BLEND">
Nenue@4 122 <Anchors>
Nenue@4 123 <Anchor point="TOPLEFT" />
Nenue@4 124 <Anchor point="TOPRIGHT" />
Nenue@4 125 </Anchors>
Nenue@4 126 <Size y="20" />
Nenue@4 127 <Color r="0.3" g="0.3" b="0.3" a="1" />
Nenue@11 128 <Gradient orientation="VERTICAL">
Nenue@11 129 <MinColor r="0" g="0" b="0" a="0.7"/>
Nenue@11 130 <MaxColor r="0.3" g="0.3" b="0.3" a="0.7"/>
Nenue@11 131 </Gradient>
Nenue@4 132 </Texture>
Nenue@13 133 <FontString parentKey="header" font="Interface\Addons\Devian\font\SourceCodePro-Bold.ttf" wordwrap="true"
Nenue@4 134 justifyH="LEFT"
Nenue@4 135 indented="true">
Nenue@4 136 <Anchors>
Nenue@4 137 <Anchor point="TOPLEFT" x="4" y="-2" />
Nenue@4 138 <Anchor point="TOPRIGHT" x="-4" />
Nenue@4 139 </Anchors>
Nenue@4 140 <Size y="20" />
Nenue@4 141 <FontHeight>
Nenue@4 142 <AbsValue val="12"/>
Nenue@4 143 </FontHeight>
Nenue@4 144 </FontString>
Nenue@4 145 </Layer>
Nenue@14 146 <Layer level="BORDER">
Nenue@14 147 <Texture name="DevBorderUR" parentArray="border" inherits="DevianBorder">
Nenue@4 148 <Anchors>
Nenue@14 149 <Anchor point="BOTTOMLEFT" relativePoint="TOPRIGHT" />
Nenue@4 150 </Anchors>
Nenue@14 151 </Texture>
Nenue@14 152 <Texture name="DevBorderU" parentArray="border" inherits="DevianBorder">
Nenue@14 153 <Anchors>
Nenue@14 154 <Anchor point="TOPLEFT" y="2" />
Nenue@14 155 <Anchor point="BOTTOMRIGHT" relativePoint="TOPRIGHT" />
Nenue@14 156 </Anchors>
Nenue@14 157 </Texture>
Nenue@14 158 <Texture name="DevBorderUL" parentArray="border" inherits="DevianBorder">
Nenue@14 159 <Anchors>
Nenue@14 160 <Anchor point="BOTTOMRIGHT" parentArray="border" relativePoint="TOPLEFT" />
Nenue@14 161 </Anchors>
Nenue@14 162 </Texture>
Nenue@14 163 <Texture name="DevBorderL" parentArray="border" inherits="DevianBorder">
Nenue@14 164 <Anchors>
Nenue@14 165 <Anchor point="TOPLEFT" x="-2" />
Nenue@14 166 <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMLEFT" />
Nenue@14 167 </Anchors>
Nenue@14 168 </Texture>
Nenue@14 169 <Texture name="DevBorderBL" parentArray="border" inherits="DevianBorder">
Nenue@14 170 <Anchors>
Nenue@14 171 <Anchor point="TOPRIGHT" relativePoint="BOTTOMLEFT" />
Nenue@14 172 </Anchors>
Nenue@14 173 </Texture>
Nenue@14 174 <Texture name="DevBorderB" parentArray="border" inherits="DevianBorder">
Nenue@14 175 <Anchors>
Nenue@14 176 <Anchor point="TOPLEFT" relativePoint="BOTTOMLEFT" />
Nenue@14 177 <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" y="-2" />
Nenue@14 178 </Anchors>
Nenue@14 179 </Texture>
Nenue@14 180 <Texture name="DevBorderBR" parentArray="border" inherits="DevianBorder">
Nenue@14 181 <Anchors>
Nenue@14 182 <Anchor point="TOPLEFT" relativePoint="BOTTOMRIGHT" />
Nenue@14 183 </Anchors>
Nenue@14 184 </Texture>
Nenue@14 185 <Texture name="DevBorderR" parentArray="border" inherits="DevianBorder">
Nenue@14 186 <Anchors>
Nenue@14 187 <Anchor point="TOPLEFT" relativePoint="TOPRIGHT" />
Nenue@14 188 <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" x="2" />
Nenue@14 189 </Anchors>
Nenue@4 190 </Texture>
Nenue@4 191 </Layer>
Nenue@4 192 </Layers>
Nenue@4 193 </Frame>
Nenue@4 194 </Ui>