diff --git a/Bindings.xml b/Bindings.xml index 6ba0f4c..08fccc1 100644 --- a/Bindings.xml +++ b/Bindings.xml @@ -1,4 +1,4 @@ -<!-- $Revision$ --> +<!-- $Revision: 194 $ --> <Bindings> <Binding name="TOGGLE_CAULDRONSHOPPINGLIST" header="CAULDRON"> Cauldron:ShoppingList_Toggle(); diff --git a/Cauldron.toc b/Cauldron.toc index 1162454..6ed5d53 100755 --- a/Cauldron.toc +++ b/Cauldron.toc @@ -1,5 +1,5 @@ -## Interface: 30300 -## Title: Cauldron |cff7fff7f -Ace3-|r +## Interface: 40000 +## Title: Cauldron2 |cff7fff7f -Ace3-|r ## Version: @project-revision@ ## Author: Caendra of Silver Hand ## Notes: An improved interface for your trade skills @@ -10,7 +10,7 @@ ## DefaultState: enabled ## X-Name: Cauldron ## X-Category: Tradeskill -## X-eMail: dm AT critical DASH failure DOT org +## X-eMail: caendra AT critical DASH failure DOT org ## X-Embeds: Ace3 #@no-lib-strip@ @@ -36,8 +36,6 @@ CauldronShoppingListUI.lua CauldronMain.xml CauldronShoppingList.xml -CauldronLSW.lua - #@alpha@ CauldronUnitTests.lua #@end-alpha@ diff --git a/CauldronData.lua b/CauldronData.lua index 8144471..d574623 100644 --- a/CauldronData.lua +++ b/CauldronData.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 194 $ -- Cauldron data -- tools diff --git a/CauldronMain.lua b/CauldronMain.lua index 52fbc1b..086b2d8 100644 --- a/CauldronMain.lua +++ b/CauldronMain.lua @@ -1,11 +1,13 @@ --- $Revision$ +-- $Revision: 212 $ -- Cauldron main file +UIPanelWindows["CauldronQueueWindowFrame"] = { area = "left", pushable = 3 }; + Cauldron = LibStub("AceAddon-3.0"):NewAddon("Cauldron", "AceEvent-3.0", "AceTimer-3.0", "AceConsole-3.0", "AceHook-3.0", "LibLogger-1.0"); local L = LibStub("AceLocale-3.0"):GetLocale("Cauldron"); Cauldron.version = "@project-revision@"; -Cauldron.date = string.sub("$Date$", 8, 17); +Cauldron.date = string.sub("$Date: 2010-08-27 21:03:36 -0700 (Fri, 27 Aug 2010) $", 8, 17); -- key binding names BINDING_HEADER_CAULDRON = "Cauldron"; @@ -69,7 +71,6 @@ function Cauldron:OnInitialize() options = { AutoOpenShoppingList = true, ModifyTooltip = true, - EnableLilSparkysWorkshop = true, }, } }; @@ -279,6 +280,7 @@ function Cauldron:OnEnable() self:RegisterEvent("TRADE_SKILL_SHOW", "OnTradeShow"); self:RegisterEvent("TRADE_SKILL_UPDATE", "OnSkillUpdate"); self:RegisterEvent("TRADE_SKILL_CLOSE", "OnTradeClose"); + self:RegisterEvent("TRADE_TARGET_ITEM_CHANGED", "OnTradeItemChanged"); self:RegisterEvent("SKILL_LINES_CHANGED", "OnSkillUpdate"); self:RegisterEvent("ADDON_LOADED", "OnAddonLoaded"); self:RegisterEvent("UNIT_PORTRAIT_UPDATE", "OnEvent"); @@ -321,7 +323,6 @@ end function Cauldron:OnAddonLoaded(event, addon) - --[[ -- show the shopping list? if self.db.profile.showShoppingList then Cauldron:ShowShoppingList(); @@ -330,31 +331,25 @@ function Cauldron:OnAddonLoaded(event, addon) Cauldron:ShowShoppingList(); end end - --]] end function Cauldron:OnEvent(event, ...) - + + --[[ if event == "UNIT_PORTRAIT_UPDATE" then local arg1 = ...; if arg1 == "player" then - SetPortraitTexture(CauldronFramePortrait, "player"); + SetPortraitTexture(CauldronQueueWindowFramePortrait, "player"); end end + --]] end function Cauldron:OnTradeShow() self:debug("OnTradeShow enter"); - -- register with LSW - --[[ - if Cauldron.db.global.options.EnableLilSparkysWorkshop then - CauldronLSW:Register(); - end - --]] - -- update our known skills self:debug("OnTradeShow: update known skills"); -- self:ScheduleTimer(self.UpdateSkills,1,self); @@ -400,6 +395,10 @@ function Cauldron:OnTradeClose() end +function Cauldron:OnTradeItemChanged() +self:debug("trade item changed"); +end + function Cauldron:OnSkillUpdate() if CURRENT_TRADESKILL ~= "" then @@ -409,7 +408,7 @@ function Cauldron:OnSkillUpdate() -- TODO check if the skill rank has changed, and unselect -- Cauldron.db.realm.userdata[Cauldron.vars.playername].skills[CURRENT_TRADESKILL].window.selected = 0; - + if not Cauldron.updatingSkills then Cauldron.updatingSkills = true; Cauldron:UpdateSkills(); @@ -429,7 +428,7 @@ function Cauldron:OnTradeSkillRecast() self:UpdateSkills(); - CauldronAmountInputBox:SetNumber(GetTradeskillRepeatCount()); +-- CauldronAmountInputBox:SetNumber(GetTradeskillRepeatCount()); self:Frame_Update(); @@ -444,6 +443,7 @@ function Cauldron:OnBagUpdate(event, bagid) local queue = self.db.realm.userdata[self.vars.playername].queue; +--[==[ -- check if the item acquired is in the intermediate list or shopping list local items = Cauldron:GetItemDeltas(bagid); self:debug("items="..tostring(items)); @@ -522,7 +522,7 @@ function Cauldron:OnBagUpdate(event, bagid) -- update the bags Cauldron:ScanBags(); - + --]==] end function Cauldron:OnCraftShow() @@ -624,6 +624,7 @@ function Cauldron:OnSpellcastSucceed(event, unit, spell, rank) local queue = self.db.realm.userdata[self.vars.playername].queue; +--[[ -- adjust queue, but only if window is open if CauldronFrame:IsShown() then self:debug("makingItemSpell: "..tostring(self.makingItemSpell)); @@ -633,6 +634,7 @@ function Cauldron:OnSpellcastSucceed(event, unit, spell, rank) CauldronQueue:AdjustItemCount(queue, self.makingItem, -1); end end +--]] end @@ -668,7 +670,11 @@ function Cauldron:GetSelectedSkill() return; end - local selected = self.db.realm.userdata[self.vars.playername].skills[skillName].window.selected; +-- local selected = self.db.realm.userdata[self.vars.playername].skills[skillName].window.selected; + local selected = TradeSkillFrame.selectedSkill; + if not selected then + return nil; + end for name, info in pairs(self.db.realm.userdata[self.vars.playername].skills[skillName].recipes) do if selected == info.index then @@ -718,7 +724,7 @@ function Cauldron:QueueTradeSkillItem() local skillInfo = Cauldron:GetSelectedSkill(); if skillInfo then - local amount = CauldronAmountInputBox:GetNumber(); + local amount = TradeSkillInputBox:GetNumber(); if not amount or amount < 1 then amount = 1; end diff --git a/CauldronMain.xml b/CauldronMain.xml old mode 100644 new mode 100755 index a3a7358..e756d2c --- a/CauldronMain.xml +++ b/CauldronMain.xml @@ -1,9 +1,9 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\..\FrameXML\UI.xsd"> + xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd"> <!-- Template: Button --> - <Button name="CauldronButtonTemplate" inherits="UIPanelButtonTemplate" virtual="true"> + <Button name="CauldronButtonTemplate" inherits="MagicButtonTemplate" virtual="true"> <Size x="80" y="20" /> <NormalText inherits="GameFontHighlightSmall" /> <DisabledText inherits="GameFontDisableSmall" /> @@ -24,300 +24,6 @@ </Scripts> </Button> - <!-- Template: Reagent detail --> - <Button name="CauldronReagentDetailTemplate" inherits="QuestItemTemplate" virtual="true"> - <Scripts> - <OnEnter> - GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT"); - -- GameTooltip:SetHyperlink(self.link); - GameTooltip:SetTradeSkillItem(self.skillIndex, self.reagentIndex); - CursorUpdate(self); - </OnEnter> - <OnLeave> - GameTooltip:Hide(); - ResetCursor(); - </OnLeave> - <OnUpdate> - CursorOnUpdate(self); - </OnUpdate> - <OnClick> - HandleModifiedItemClick(self.link); - </OnClick> - </Scripts> - </Button> - - <!-- Template: Skill item frame --> - <Button name="CauldronSkillItemFrameTemplate" virtual="true"> - <Size x="300" y="50" /> - <Layers> - <Layer level="OVERLAY"> - <FontString name="$parentSkillName" inherits="GameFontNormal" - text="(name)" justifyH="LEFT" justifyV="CENTER"> - <Size x="250" y="12"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="62" y="-4"/> - </Anchor> - </Anchors> - </FontString> - <FontString name="$parentSkillCategory" inherits="GameFontNormalSmall" - text="(category)" justifyH="LEFT" justifyV="CENTER"> - <Size x="250" y="12"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="62" y="-20"/> - </Anchor> - </Anchors> - </FontString> - <FontString name="$parentSkillCooldown" inherits="GameFontRedSmall" - text="(cooldown)" justifyH="RIGHT" nonSpaceWrap="true" maxLines="3" - hidden="true"> - <Size x="75" y="50"/> - <Anchors> - <Anchor point="TOPRIGHT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - </FontString> - </Layer> - <Layer level="HIGHLIGHT" setAllPoints="true"> - <Texture file="Interface\QuestFrame\UI-QuestLogTitleHighlight" alphaMode="ADD"> - <Color r="0.7" g="0.7" b="0.7" a="0.5" /> - </Texture> - </Layer> - </Layers> - <Frames> - <!-- - <Frame name="$parentSkillNameTooltipFrame"> - <Size x="250" y="12"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="62" y="-4"/> - </Anchor> - </Anchors> - <Scripts> - <OnClick> - HandleModifiedItemClick(GetTradeSkillItemLink(self.skillIndex)); - Cauldron:SkillItem_OnClick(self, button, down); - </OnClick> - <OnEnter> - GameTooltip:SetOwner(self, "ANCHOR_RIGHT"); - GameTooltip:SetTradeSkillItem(self.skillIndex); - CursorUpdate(self); - </OnEnter> - <OnLeave> - GameTooltip:Hide(); - ResetCursor(); - </OnLeave> - <OnUpdate> - if GameTooltip:IsOwned(self) then - GameTooltip:SetOwner(self, "ANCHOR_RIGHT"); - GameTooltip:SetTradeSkillItem(self.skillIndex); - CursorUpdate(self); - end - CursorOnUpdate(self); - </OnUpdate> - </Scripts> - </Frame> - --> - <Button name="$parentSkillIcon"> - <Size x="37" y="37"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="24" y="-3"/> - </Anchor> - </Anchors> - <Layers> - <Layer level="ARTWORK"> - <FontString name="$parentCount" inherits="NumberFontNormal" justifyH="RIGHT" hidden="false"> - <Anchors> - <Anchor point="BOTTOMRIGHT"> - <Offset x="-2" y="2"/> - </Anchor> - </Anchors> - </FontString> - </Layer> - </Layers> - <Scripts> - <OnLoad> - self.isCompact = false; - -- self.hasItem = 1; - </OnLoad> - <OnClick> - HandleModifiedItemClick(GetTradeSkillItemLink(self.skillIndex)); - Cauldron:SkillItem_OnClick(self, button, down); - </OnClick> - <OnEnter> - GameTooltip:SetOwner(self, "ANCHOR_RIGHT"); - GameTooltip:SetTradeSkillItem(self.skillIndex); - -- Cauldron:AppendToTooltip(GameTooltip, self.skillIndex); - CursorUpdate(self); - </OnEnter> - <OnLeave> - GameTooltip:Hide(); - ResetCursor(); - </OnLeave> - <OnUpdate> - if GameTooltip:IsOwned(self) then - GameTooltip:SetOwner(self, "ANCHOR_RIGHT"); - GameTooltip:SetTradeSkillItem(self.skillIndex); - CursorUpdate(self); - end - CursorOnUpdate(self); - </OnUpdate> - </Scripts> - </Button> - <Button name="$parentDiscloseButton" hidden="false" inherits="ClassTrainerSkillButtonTemplate"> - <Size x="20" y="22"/> - <Anchors> - <Anchor point="RIGHT" relativeTo="$parentSkillIcon" relativePoint="LEFT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - self:SetText(""); - </OnLoad> - <OnClick> - Cauldron:CollapseItemButton_OnClick(self); - </OnClick> - </Scripts> - </Button> - <CheckButton name="$parentFavoriteButton" hidden="false" inherits="UICheckButtonTemplate" text=""> - <Size x="20" y="22"/> - <Anchors> - <Anchor point="TOPRIGHT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - self:SetScale(0.625); - self:SetText(Cauldron:LocaleString("Favorite?")); - </OnLoad> - <OnEnter> - GameTooltip:SetOwner(self, "ANCHOR_RIGHT"); - GameTooltip:ClearLines(); - GameTooltip:AddLine(Cauldron:LocaleString("Mark this skill as a favorite")); - GameTooltip:Show(); - CursorUpdate(self); - </OnEnter> - <OnLeave> - GameTooltip:Hide(); - ResetCursor(); - </OnLeave> - <OnClick> - PlaySound("igMainMenuOptionCheckBoxOn"); - Cauldron:FavoriteItemButton_OnClick(self); - Cauldron:UpdateSkillList(); - </OnClick> - </Scripts> - </CheckButton> - <Frame name="$parentReagents"> - <Size x="40" y="100" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="$parentSkillIcon" relativePoint="BOTTOMLEFT"> - <Offset x="10" y="-3"/> - </Anchor> - </Anchors> - <Layers> - <Layer level="OVERLAY"> - <FontString name="$parentToolsInfo" inherits="GameFontNormal" - text="(tools info)" justifyH="LEFT"> - <Size x="250" y="12" /> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - <Color r="1.0" g="1.0" b="1.0" /> - </FontString> - </Layer> - </Layers> - <Frames> - <Button name="$parentItemDetail1" inherits="CauldronReagentDetailTemplate" id="1"> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="$parentToolsInfo" relativePoint="BOTTOMLEFT"> - <Offset x="0" y="-2"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail2" inherits="CauldronReagentDetailTemplate" id="2"> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentItemDetail1" relativePoint="RIGHT"> - <Offset x="5" y="0"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail3" inherits="CauldronReagentDetailTemplate" id="3"> - <Anchors> - <Anchor point="TOP" relativeTo="$parentItemDetail1" relativePoint="BOTTOM"> - <Offset x="0" y="-3"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail4" inherits="CauldronReagentDetailTemplate" id="4"> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentItemDetail3" relativePoint="RIGHT"> - <Offset x="5" y="0"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail5" inherits="CauldronReagentDetailTemplate" id="5"> - <Anchors> - <Anchor point="TOP" relativeTo="$parentItemDetail3" relativePoint="BOTTOM"> - <Offset x="0" y="-3"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail6" inherits="CauldronReagentDetailTemplate" id="6"> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentItemDetail5" relativePoint="RIGHT"> - <Offset x="5" y="0"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail7" inherits="CauldronReagentDetailTemplate" id="7"> - <Anchors> - <Anchor point="TOP" relativeTo="$parentItemDetail7" relativePoint="BOTTOM"> - <Offset x="0" y="-3"/> - </Anchor> - </Anchors> - </Button> - <Button name="$parentItemDetail8" inherits="CauldronReagentDetailTemplate" id="8"> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentItemDetail7" relativePoint="RIGHT"> - <Offset x="5" y="0"/> - </Anchor> - </Anchors> - </Button> - </Frames> - </Frame> - <Frame name="$parentSelection" setAllPoints="true" enableMouse="true" hidden="true" frameStrata="LOW" frameLevel="1"> - <Layers> - <Layer level="OVERLAY"> - <Texture name="$parentSelection" file="Interface\QuestFrame\UI-QuestLogTitleHighlight" alphaMode="ADD"> - <Color r="0.5" g="0.5" b="0.5" a="0.5" /> - </Texture> - </Layer> - </Layers> - </Frame> - </Frames> - <Scripts> - <OnEnter> - Cauldron:SkillItem_OnEnter(self); - </OnEnter> - <OnLeave> - Cauldron:SkillItem_OnLeave(self); - </OnLeave> - <OnClick> - PlaySound("igMainMenuOptionCheckBoxOn"); - HandleModifiedItemClick(GetTradeSkillRecipeLink(self.skillIndex)); - Cauldron:SkillItem_OnClick(self, button, down); - </OnClick> - </Scripts> - </Button> - <!-- Template: Queue item frame --> <Button name="CauldronQueueItemFrameTemplate" virtual="true" enableMouse="true"> <Size x="300" y="39" /> @@ -332,7 +38,7 @@ <Offset x="40" y="-4"/> </Anchor> </Anchors> - <Color r="0.2" g="0.2" b="0.2" /> + <Color r="0.8" g="0.8" b="0.8" /> </FontString> <!-- quantity info --> <FontString name="$parentInfo" inherits="GameFontNormal" @@ -398,7 +104,7 @@ </OnUpdate> </Scripts> </Button> - <Button name="$parentRemoveItem" inherits="UIPanelCloseButton" hidden="true"> + <Button name="$parentRemoveItem" inherits="UIPanelCloseButton"> <Anchors> <Anchor point="TOPRIGHT"> <Offset x="0" y="0"/> @@ -427,6 +133,7 @@ </OnClick> </Scripts> </Button> + <!-- <Button name="$parentAddToShoppingList" inherits="UIPanelCloseButton" hidden="true"> <Anchors> <Anchor point="TOPRIGHT"> @@ -529,12 +236,10 @@ Cauldron:UpdateButtons(); </OnClick> </Scripts> - <!-- <NormalTexture file="Interface\Buttons\UI-MinusButton-Up" /> <PushedTexture file="Interface\Buttons\UI-MinusButton-Down" /> <DisabledTexture file="Interface\Buttons\UI-MinusButton-Disabled" /> <HighlightTexture file="Interface\Buttons\UI-ScrollBar-ScrollUpButton-Highlight" alphaMode="ADD" /> - --> </Button> <Button name="$parentIncreasePriority" hidden="true"> <Size x="23" y="22" /> @@ -612,11 +317,13 @@ <DisabledTexture file="Interface\Buttons\UI-ScrollBar-ScrollDownButton-Disabled" /> <HighlightTexture file="Interface\Buttons\UI-ScrollBar-ScrollDownButton-Highlight" alphaMode="ADD" /> </Button> + --> </Frames> <Scripts> <OnClick> HandleModifiedItemClick(self.link); </OnClick> + <!-- <OnEnter> if self.removeable then _G[self:GetName().."RemoveItem"]:Show(); @@ -640,25 +347,57 @@ _G[self:GetName().."AddToShoppingList"]:Hide(); end </OnLeave> + --> </Scripts> </Button> - <!-- Main frame --> - <Frame name="CauldronFrame" toplevel="true" frameStrata="MEDIUM" - movable="true" resizable="false" parent="UIParent" enableMouse="true" - hidden="true"> - <TitleRegion setAllPoints="true" /> + <!-- Queue frame --> + <Frame name="CauldronQueueWindowFrame" inherits="ButtonFrameTemplate" + parent="UIParent" enableMouse="true" + toplevel="true" hidden="true" > + <!-- TitleRegion setAllPoints="true" / --> + <!-- <Size> - <AbsDimension x="692" y="465" /> + <AbsDimension x="357" y="465" /> </Size> <Anchors> <Anchor point="TOPLEFT" /> </Anchors> - + --> + <!-- Window border and background --> <Layers> + <!-- + <Layer level="ARTWORK"> + <Texture name="$parentTabardBackground" file="Interface\GuildFrame\GuildFrame"> + <Size x="62" y="62"/> + <Anchors> + <Anchor point="TOPLEFT" x="-6" y="7"/> + </Anchors> + <TexCoords left="0.63183594" right="0.69238281" top="0.61914063" bottom="0.74023438"/> + </Texture> + </Layer> + <Layer level="ARTWORK" textureSubLevel="1"> + <Texture name="$parentTabardEmblem" file="Interface\GuildFrame\GuildEmblemsLG_01"> + <Size x="64" y="64"/> + <Anchors> + <Anchor point="TOPLEFT" x="-8" y="9"/> + </Anchors> + </Texture> + </Layer> + <Layer level="ARTWORK" textureSubLevel="2"> + <Texture name="$parentTabardBorder" file="Interface\GuildFrame\GuildFrame"> + <Size x="61" y="60"/> + <Anchors> + <Anchor point="TOPLEFT" x="-6" y="7"/> + </Anchors> + <TexCoords left="0.63183594" right="0.69238281" top="0.74414063" bottom="0.86523438"/> + </Texture> + </Layer> + --> + <!-- <Layer level="BACKGROUND"> - <Texture name="CauldronFramePortrait" file="Interface\Spellbook\Spellbook-Icon"> + <Texture name="CauldronQueueFramePortrait" file="Interface\Spellbook\Spellbook-Icon"> <Size x="60" y="60"/> <Anchors> <Anchor point="TOPLEFT"> @@ -675,408 +414,44 @@ <Size x="0" y="0"/> </FontString> </Layer> - <Layer level="BORDER"> - <Texture name="CauldronFrameBorderTopLeft" - file="Interface\AddOns\Cauldron\Artwork\Cauldron-Main-TopLeft"> + <Texture name="CauldronQueueWindowFrameBorderTopLeft" + file="Interface\AddOns\Cauldron\Artwork\Cauldron-QueueFrame"> <Anchors> <Anchor point="TOPLEFT"> <Offset x="0" y="0" /> </Anchor> </Anchors> </Texture> - <Texture name="CauldronFrameBorderTopMiddle" - file="Interface\AddOns\Cauldron\Artwork\Cauldron-Main-TopMiddle"> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="256" y="0" /> - </Anchor> - </Anchors> - </Texture> - <Texture name="CauldronFrameBorderTopRight" - file="Interface\AddOns\Cauldron\Artwork\Cauldron-Main-TopRight"> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="512" y="0" /> - </Anchor> - </Anchors> - </Texture> - <Texture name="CauldronFrameBorderBottomLeft" - file="Interface\AddOns\Cauldron\Artwork\Cauldron-Main-BottomLeft"> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="0" y="-256" /> - </Anchor> - </Anchors> - </Texture> - <Texture name="CauldronFrameBorderBottomMiddle" - file="Interface\AddOns\Cauldron\Artwork\Cauldron-Main-BottomMiddle"> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="256" y="-256" /> - </Anchor> - </Anchors> - </Texture> - <Texture name="CauldronFrameBorderBottomRight" - file="Interface\AddOns\Cauldron\Artwork\Cauldron-Main-BottomRight"> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="512" y="-256" /> - </Anchor> - </Anchors> - </Texture> </Layer> + --> +<!-- <Layer level="ARTWORK"> - <FontString name="CauldronFrameTitleText" inherits="GameFontNormal" text="Cauldron"> + <FontString name="CauldronQueueWindowFrameTitleText" inherits="GameFontNormal" text="Tradeskill Queue"> <Anchors> - <Anchor point="TOP" relativeTo="CauldronFrame" relativePoint="TOP"> - <Offset x="0" y="-18" /> + <Anchor point="TOP" relativeTo="CauldronQueueWindowFrame" relativePoint="TOP"> + <Offset x="10" y="-18" /> </Anchor> </Anchors> + <Size x="300" y="14" /> </FontString> </Layer> + --> </Layers> - + <Frames> - <!-- Link button --> - <Button name="CauldronTradeSkillLinkButton"> - <Size x="32" y="16" /> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronFrameTitleText" relativePoint="RIGHT"> - <Offset x="5" y="0" /> - </Anchor> - </Anchors> - <Scripts> - <OnClick> - local link=GetTradeSkillListLink(); - if (not ChatEdit_InsertLink(link) ) then - ChatFrameEditBox:Show(); - ChatEdit_InsertLink(link); - end - </OnClick> - <OnEnter> - GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT"); - GameTooltip:SetText(LINK_TRADESKILL_TOOLTIP, nil, nil, nil, nil, 1); - GameTooltip:Show(); - </OnEnter> - <OnLeave> - GameTooltip:Hide(); - </OnLeave> - </Scripts> - <NormalTexture file="Interface\TradeSkillFrame\UI-TradeSkill-LinkButton"> - <TexCoords left="0" right="1.0" top="0" bottom="0.5" /> - </NormalTexture> - <HighlightTexture file="Interface\TradeSkillFrame\UI-TradeSkill-LinkButton" alphaMode="ADD"> - <TexCoords left="0" right="1.0" top="0.5" bottom="1.0" /> - </HighlightTexture> - </Button> - - <!-- Filters frame --> - <Frame name="CauldronFiltersFrame"> - <Size x="300" y="60" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronFrame" relativePoint="TOPLEFT"> - <Offset x="54" y="-35" /> - </Anchor> - </Anchors> - - <Frames> - <!-- filter dropdown --> - <Frame name="CauldronFiltersFilterDropDown" inherits="UIDropDownMenuTemplate" id="1"> - <Size x="140" y="20" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronFiltersFrame" relativePoint="TOPLEFT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - Cauldron:FilterDropDown_OnLoad(self); - </OnLoad> - </Scripts> - </Frame> - - <!-- search text box --> - <EditBox name="CauldronFiltersSearchEditBox" autoFocus="false"> - <Size x="130" y="20"/> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronFiltersFrame" relativePoint="TOPLEFT"> - <Offset x="155" y="-2" /> - </Anchor> - </Anchors> - - <Layers> - <Layer level="BACKGROUND"> - <Texture name="$parentLeft" file="Interface\Common\Common-Input-Border"> - <Size x="8" y="20"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="-5" y="0"/> - </Anchor> - </Anchors> - <TexCoords left="0" right="0.0625" top="0" bottom="0.625"/> - </Texture> - <Texture name="$parentRight" file="Interface\Common\Common-Input-Border"> - <Size x="8" y="20"/> - <Anchors> - <Anchor point="RIGHT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - <TexCoords left="0.9375" right="1.0" top="0" bottom="0.625"/> - </Texture> - <Texture name="$parentMiddle" file="Interface\Common\Common-Input-Border"> - <Size x="0" y="20"/> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentLeft" relativePoint="RIGHT"/> - <Anchor point="RIGHT" relativeTo="$parentRight" relativePoint="LEFT"/> - </Anchors> - <TexCoords left="0.0625" right="0.9375" top="0" bottom="0.625"/> - </Texture> - </Layer> - </Layers> - <Scripts> - <OnLoad> - self:SetText(SEARCH); - </OnLoad> - <OnEnterPressed> - self:ClearFocus(); - </OnEnterPressed> - <OnEscapePressed> - self:ClearFocus(); - </OnEscapePressed> - <OnTextChanged> - Cauldron:TradeSkillFilter_OnTextChanged(self); - </OnTextChanged> - <OnEditFocusLost> - self:HighlightText(0, 0); - if self:GetText() == "" then - self:SetText(SEARCH); - end - </OnEditFocusLost> - <OnEditFocusGained> - if self:GetText() == SEARCH then - self:SetText(""); - end - self:HighlightText(); - </OnEditFocusGained> - </Scripts> - <FontString inherits="ChatFontSmall"/> - </EditBox> - - <!-- category dropdown --> - <Frame name="CauldronFiltersCategoryDropDown" inherits="UIDropDownMenuTemplate" id="4"> - <Size x="140" y="20" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronFiltersFrame" relativePoint="TOPLEFT"> - <Offset x="0" y="-25"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - Cauldron:CategoryDropDown_OnLoad(self); - </OnLoad> - </Scripts> - </Frame> - - <!-- slot dropdown --> - <Frame name="CauldronFiltersInvSlotDropDown" inherits="UIDropDownMenuTemplate" id="3"> - <Size x="140" y="20" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronFiltersFrame" relativePoint="TOPLEFT"> - <Offset x="137" y="-25"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - Cauldron:InvSlotDropDown_OnLoad(self); - </OnLoad> - </Scripts> - </Frame> - - </Frames> - </Frame> - - <!-- List frame --> - <Frame name="CauldronSkillListFrame"> - <Size x="342" y="100" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronFrame" relativePoint="TOPLEFT"> - <Offset x="14" y="-90" /> - </Anchor> - </Anchors> - - <Frames> - <Frame name="$parentExpandButtonFrame"> - <Size x="54" y="33"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="-3" y="20"/> - </Anchor> - </Anchors> - <Layers> - <Layer level="BACKGROUND"> - <Texture name="$parentExpandTabLeft" file="Interface\ClassTrainerFrame\UI-ClassTrainer-ExpandTab-Left"> - <Size x="8" y="32"/> - <Anchors> - <Anchor point="TOPLEFT"/> - </Anchors> - </Texture> - <Texture name="$parentExpandTabMiddle" file="Interface\QuestFrame\UI-QuestLogSortTab-Middle"> - <Size x="38" y="32"/> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentExpandTabLeft" relativePoint="RIGHT"> - <Offset x="0" y="6"/> - </Anchor> - </Anchors> - </Texture> - <Texture name="$parentExpandTabRight" file="Interface\QuestFrame\UI-QuestLogSortTab-Right"> - <Size x="8" y="32"/> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentExpandTabMiddle" relativePoint="RIGHT"/> - </Anchors> - </Texture> - </Layer> - </Layers> - <Frames> - <Button name="$parentCollapseAllButton" hidden="false" inherits="ClassTrainerSkillButtonTemplate"> - <Size x="40" y="22"/> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentExpandTabLeft" relativePoint="RIGHT"> - <Offset x="0" y="3"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - getglobal(self:GetName()):SetText(ALL); - </OnLoad> - <OnClick> - Cauldron:CollapseAllButton_OnClick(self); - </OnClick> - </Scripts> - </Button> - </Frames> - </Frame> - <ScrollFrame name="$parentScrollFrame" inherits="ClassTrainerDetailScrollFrameTemplate"> - <Size x="300" y="338" /> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="CauldronSkillListFrame" relativePoint="TOPLEFT"> - <Offset x="0" y="-8"/> - </Anchor> - </Anchors> - <ScrollChild> - <Frame name="$parentScrollChild"> - <Size x="300" y="338" /> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="0" y="0"/> - </Anchor> - </Anchors> - <Frames> - </Frames> - </Frame> - </ScrollChild> - </ScrollFrame> - </Frames> - </Frame> - - <!-- Skill Info frame --> - <Frame name="CauldronSkillInfoFrame"> - <Size x="330" y="100" /> - <Anchors> - <Anchor point="TOPRIGHT" relativeTo="CauldronFrame" relativePoint="TOPRIGHT"> - <Offset x="-10" y="-36" /> - </Anchor> - </Anchors> - - <Layers> - <Layer level="OVERLAY"> - <FontString name="$parentQueueLabel" inherits="GameFontNormal" text="Queue"> - <Anchors> - <Anchor point="TOP" relativeTo="CauldronSkillInfoFrame" relativePoint="TOP"> - <Offset x="0" y="-18" /> - </Anchor> - </Anchors> - </FontString> - </Layer> - </Layers> - - <Frames> - <StatusBar name="CauldronRankFrame" drawLayer="ARTWORK" - minValue="0" maxValue="1" defaultValue="0" - enableMouse="false"> - <Size x="325" y="14"/> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="0" y="-2"/> - </Anchor> - </Anchors> - <Layers> - <Layer level="OVERLAY"> - <FontString name="$parentSkillName" inherits="GameFontHighlightSmall" justifyH="LEFT"> - <Size x="320" y="9"/> - <Anchors> - <Anchor point="TOP" relativeTo="CauldronRankFrame"> - <Offset x="0" y="-2"/> - </Anchor> - </Anchors> - <Color r="1.0" g="1.0" b="0.0" a="1.0" /> - </FontString> - <FontString name="$parentSkillRank" inherits="GameFontHighlightSmall" justifyH="RIGHT"> - <Size x="320" y="9"/> - <Anchors> - <Anchor point="TOP" relativeTo="CauldronRankFrame"> - <Offset x="0" y="-2"/> - </Anchor> - </Anchors> - </FontString> - </Layer> - <Layer level="BORDER"> - <Texture name="$parentBorder" file="Interface\PaperDollInfoFrame\UI-Character-Skills-BarBorder"> - <Size x="334" y="27"/> - <Anchors> - <Anchor point="LEFT"> - <Offset x="-5" y="0"/> - </Anchor> - </Anchors> - </Texture> - </Layer> - <Layer level="BACKGROUND"> - <Texture name="$parentBackground"> - <Color r="1.0" g="1.0" b="1.0" a="0.2"/> - </Texture> - </Layer> - </Layers> - <Scripts> - <!-- - <OnLoad> - self:RegisterEvent("SKILL_LINES_CHANGED"); - </OnLoad> - <OnEvent> - if event == "SKILL_LINES_CHANGED" then - Cauldron:Frame_Update(); - end - </OnEvent> - --> - </Scripts> - <BarTexture name="$parentBar" file="Interface\PaperDollInfoFrame\UI-Character-Skills-Bar" drawLayer="ARTWORK" /> - <BarColor r="0.25" g="0.25" b="0.75" /> - </StatusBar> - </Frames> - </Frame> - <!-- Queue frame --> <Frame name="CauldronQueueFrame"> - <Size x="320" y="400" /> + <Size x="300" y="332" /> <Anchors> - <Anchor point="TOPRIGHT" relativeTo="CauldronFrame" relativePoint="TOPRIGHT"> - <Offset x="-20" y="-76" /> + <Anchor point="TOPLEFT" relativeTo="CauldronQueueWindowFrame" relativePoint="TOPLEFT"> + <Offset x="10" y="-64" /> </Anchor> </Anchors> <Frames> - <Frame name="$parentQueueEmpty"> + <Frame name="CauldronQueueFrameQueueEmpty"> <Size x="302" y="360" /> <Anchors> <Anchor point="TOPLEFT"> @@ -1100,23 +475,53 @@ </Layers> </Frame> - <ScrollFrame name="$parentScrollFrame" inherits="ClassTrainerDetailScrollFrameTemplate" hidden="true"> - <Size x="302" y="360" /> + <ScrollFrame name="CauldronQueueFrameScrollFrame" inherits="UIPanelScrollFrameTemplate" hidden="true"> + <Size x="297" y="332" /> <Anchors> <Anchor point="TOPLEFT"> <Offset x="0" y="0"/> </Anchor> </Anchors> + <Layers> + <Layer level="BACKGROUND"> + <Texture name="CauldronQueueFrameScrollBackgroundTopLeft" file="Interface\PaperDollInfoFrame\UI-Character-ScrollBar"> + <Size> + <AbsDimension x="31" y="256"/> + </Size> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPRIGHT"> + <Offset> + <AbsDimension x="-2" y="5"/> + </Offset> + </Anchor> + </Anchors> + <TexCoords left="0" right="0.484375" top="0" bottom="1.0"/> + </Texture> + <Texture name="CauldronQueueFrameScrollBackgroundBottomRight" file="Interface\PaperDollInfoFrame\UI-Character-ScrollBar"> + <Size> + <AbsDimension x="31" y="106"/> + </Size> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMRIGHT"> + <Offset> + <AbsDimension x="-2" y="-2"/> + </Offset> + </Anchor> + </Anchors> + <TexCoords left="0.515625" right="1.0" top="0" bottom="0.4140625"/> + </Texture> + </Layer> + </Layers> <ScrollChild> - <Frame name="$parentQueueSections"> - <Size x="302" y="360" /> + <Frame name="CauldronQueueFrameScrollFrameQueueSections"> + <Size x="300" y="332" /> <Anchors> <Anchor point="TOPLEFT"> <Offset x="0" y="0"/> </Anchor> </Anchors> <Frames> - <Frame name="$parentMainItemsHeader"> + <Frame name="CauldronQueueFrameScrollFrameQueueSectionsMainItemsHeader"> <Size x="300" y="12" /> <Anchors> <Anchor point="TOPLEFT"> @@ -1131,12 +536,12 @@ <Offset x="0" y="0" /> </Anchor> </Anchors> - <Color r="0.2" g="0.2" b="0.2" /> + <Color r="0.6" g="0.6" b="0.6" /> </FontString> </Layer> </Layers> </Frame> - <Frame name="$parentMainItems"> + <Frame name="CauldronQueueFrameScrollFrameQueueSectionsMainItems"> <Size x="300" y="1" /> <Anchors> <Anchor point="TOPLEFT" relativeTo="$parentMainItemsHeader" relativePoint="BOTTOMLEFT"> @@ -1144,7 +549,7 @@ </Anchor> </Anchors> </Frame> - <Frame name="$parentSecondaryItemsHeader"> + <Frame name="CauldronQueueFrameScrollFrameQueueSectionsSecondaryItemsHeader"> <Size x="300" y="12" /> <Anchors> <Anchor point="TOPLEFT" relativeTo="$parentMainItems" relativePoint="BOTTOMLEFT"> @@ -1159,12 +564,12 @@ <Offset x="0" y="0" /> </Anchor> </Anchors> - <Color r="0.2" g="0.2" b="0.2" /> + <Color r="0.6" g="0.6" b="0.6" /> </FontString> </Layer> </Layers> </Frame> - <Frame name="$parentSecondaryItems"> + <Frame name="CauldronQueueFrameScrollFrameQueueSectionsSecondaryItems"> <Size x="300" y="1" /> <Anchors> <Anchor point="TOPLEFT" relativeTo="$parentSecondaryItemsHeader" relativePoint="BOTTOMLEFT"> @@ -1172,7 +577,7 @@ </Anchor> </Anchors> </Frame> - <Frame name="$parentReagentsHeader"> + <Frame name="CauldronQueueFrameScrollFrameQueueSectionsReagentsHeader"> <Size x="300" y="12" /> <Anchors> <Anchor point="TOPLEFT" relativeTo="$parentSecondaryItems" relativePoint="BOTTOMLEFT"> @@ -1187,12 +592,12 @@ <Offset x="0" y="0" /> </Anchor> </Anchors> - <Color r="0.2" g="0.2" b="0.2" /> + <Color r="0.6" g="0.6" b="0.6" /> </FontString> </Layer> </Layers> </Frame> - <Frame name="$parentReagents"> + <Frame name="CauldronQueueFrameScrollFrameQueueSectionsReagents"> <Size x="300" y="1" /> <Anchors> <Anchor point="TOPLEFT" relativeTo="$parentReagentsHeader" relativePoint="BOTTOMLEFT"> @@ -1203,31 +608,52 @@ </Frames> </Frame> </ScrollChild> + <!-- + <Frames> + <Slider name="$parentScrollBar" inherits="MinimalHybridScrollBarTemplate"> + <Anchors> + <Anchor point="TOPRIGHT" relativeTo="CauldronQueueFrame" relativePoint="TOPRIGHT"> + <Offset> + <AbsDimension x="-47" y="-114"/> + </Offset> + </Anchor> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMRIGHT"> + <Offset> + <AbsDimension x="6" y="14"/> + </Offset> + </Anchor> + </Anchors> + </Slider> + </Frames> + --> </ScrollFrame> </Frames> </Frame> <!-- Close button --> - <Button name="CauldronFrameCloseButton" inherits="UIPanelCloseButton"> + <!-- + <Button name="CauldronQueueWindowFrameCloseButton" inherits="UIPanelCloseButton"> <Anchors> - <Anchor point="TOPRIGHT" relativeTo="CauldronFrame" relativePoint="TOPRIGHT"> - <Offset x="-2" y="-8"/> + <Anchor point="TOPRIGHT" relativeTo="CauldronQueueWindowFrame" relativePoint="TOPRIGHT"> + <Offset x="4" y="-8"/> </Anchor> </Anchors> <Scripts> <OnClick> - HideUIPanel(TradeSkillFrame); + HideUIPanel(CauldronQueueWindowFrame); + - - TODO: record that queue is closed PlaySound("igCharacterInfoClose"); </OnClick> </Scripts> </Button> + --> <!-- Buttons frame --> - <Frame name="CauldronButtonsFrame"> - <Size x="684" y="25" /> + <Frame name="CauldronQueueButtonsFrame"> + <Size x="357" y="25" /> <Anchors> - <Anchor point="BOTTOMLEFT" relativeTo="CauldronFrame" relativePoint="BOTTOMLEFT"> - <Offset x="13" y="0" /> + <Anchor point="BOTTOMLEFT" relativeTo="CauldronQueueWindowFrame" relativePoint="BOTTOMLEFT"> + <Offset x="2" y="0" /> </Anchor> </Anchors> @@ -1242,7 +668,7 @@ </Anchors> <Scripts> <OnLoad> - getglobal(self:GetName()):Disable(); + -- getglobal(self:GetName()):Disable(); </OnLoad> <OnEnter> GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT"); @@ -1263,149 +689,16 @@ </Scripts> </Button> - <!-- Create All button (disabled) --> - <Button name="CauldronCreateAllButton" inherits="CauldronButtonTemplate" text="CREATE_ALL"> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronQueueAllButton" relativePoint="RIGHT"> - <Offset x="0" y="0" /> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - getglobal(self:GetName()):Disable(); - </OnLoad> - <OnClick> - Cauldron:CreateAllTradeSkillItem(); - </OnClick> - </Scripts> - </Button> - - <!-- Number input --> - <Button name="CauldronAmountDecrementButton"> - <Size x="23" y="22" /> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronCreateAllButton" relativePoint="RIGHT"> - <Offset x="0" y="0" /> - </Anchor> - </Anchors> - <Scripts> - <OnClick> - Cauldron:AmountDecrement_OnClick(); - CauldronAmountInputBox:ClearFocus(); - </OnClick> - </Scripts> - <NormalTexture file="Interface\Buttons\UI-SpellbookIcon-PrevPage-Up" /> - <PushedTexture file="Interface\Buttons\UI-SpellbookIcon-PrevPage-Down" /> - <DisabledTexture file="Interface\Buttons\UI-SpellbookIcon-PrevPage-Disabled" /> - <HighlightTexture file="Interface\Buttons\UI-Common-MouseHilight" alphaMode="ADD" /> - </Button> - <EditBox name="CauldronAmountInputBox" letters="3" numeric="true" autoFocus="false"> - <Size x="30" y="20" /> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronAmountDecrementButton" relativePoint="RIGHT"> - <Offset x="4" y="0" /> - </Anchor> - </Anchors> - <Layers> - <Layer level="BACKGROUND"> - <Texture name="$parentLeft" file="Interface\Common\Common-Input-Border"> - <Size x="8" y="20" /> - <Anchors> - <Anchor point="TOPLEFT"> - <Offset x="-5" y="0" /> - </Anchor> - </Anchors> - <TexCoords left="0" right="0.0625" top="0" bottom="0.625" /> - </Texture> - <Texture name="$parentRight" file="Interface\Common\Common-Input-Border"> - <Size x="8" y="20" /> - <Anchors> - <Anchor point="RIGHT"> - <Offset x="0" y="0" /> - </Anchor> - </Anchors> - <TexCoords left="0.9375" right="1.0" top="0" bottom="0.625" /> - </Texture> - <Texture name="$parentMiddle" file="Interface\Common\Common-Input-Border"> - <Size x="10" y="20" /> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentLeft" relativePoint="RIGHT" /> - <Anchor point="RIGHT" relativeTo="$parentRight" relativePoint="LEFT" /> - </Anchors> - <TexCoords left="0.0625" right="0.9375" top="0" bottom="0.625" /> - </Texture> - </Layer> - </Layers> - <Scripts> - <OnLoad> - self:SetText("1"); - </OnLoad> - <OnEnterPressed> - self:ClearFocus(); - </OnEnterPressed> - <OnEscapePressed> - self:ClearFocus(); - </OnEscapePressed> - <OnTextChanged> - if ( self:GetText() == "0" ) then - self:SetText("1"); - end - </OnTextChanged> - <OnEditFocusLost> - self:HighlightText(0, 0); - </OnEditFocusLost> - <OnEditFocusGained> - self:HighlightText(); - </OnEditFocusGained> - </Scripts> - <FontString inherits="ChatFontNormal" /> - </EditBox> - <Button name="CauldronAmountIncrementButton"> - <Size x="23" y="22" /> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronAmountInputBox" relativePoint="RIGHT"> - <Offset x="-3" y="0" /> - </Anchor> - </Anchors> - <Scripts> - <OnClick> - Cauldron:AmountIncrement_OnClick(); - CauldronAmountInputBox:ClearFocus(); - </OnClick> - </Scripts> - <NormalTexture file="Interface\Buttons\UI-SpellbookIcon-NextPage-Up" /> - <PushedTexture file="Interface\Buttons\UI-SpellbookIcon-NextPage-Down" /> - <DisabledTexture file="Interface\Buttons\UI-SpellbookIcon-NextPage-Disabled" /> - <HighlightTexture file="Interface\Buttons\UI-Common-MouseHilight" alphaMode="ADD" /> - </Button> - - <!-- Create button (disabled) --> - <Button name="CauldronCreateButton" inherits="CauldronButtonTemplate" text="CREATE"> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronAmountIncrementButton" relativePoint="RIGHT"> - <Offset x="0" y="0" /> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - getglobal(self:GetName()):Disable(); - </OnLoad> - <OnClick> - Cauldron:CreateTradeSkillItem(); - </OnClick> - </Scripts> - </Button> - <!-- Queue button --> <Button name="CauldronQueueButton" inherits="CauldronButtonTemplate" text="Queue"> <Anchors> - <Anchor point="LEFT" relativeTo="CauldronCreateButton" relativePoint="RIGHT"> + <Anchor point="LEFT" relativeTo="CauldronQueueAllButton" relativePoint="RIGHT"> <Offset x="0" y="0" /> </Anchor> </Anchors> <Scripts> <OnLoad> - getglobal(self:GetName()):Disable(); + -- getglobal(self:GetName()):Disable(); </OnLoad> <OnClick> Cauldron:QueueTradeSkillItem(); @@ -1420,7 +713,7 @@ <Button name="CauldronProcessButton" inherits="CauldronButtonTemplate" text="Process"> <Anchors> <Anchor point="LEFT" relativeTo="CauldronQueueButton" relativePoint="RIGHT"> - <Offset x="10" y="0" /> + <Offset x="2" y="0" /> </Anchor> </Anchors> <Scripts> @@ -1453,33 +746,13 @@ </Scripts> </Button> - <!-- spacer --> - - <!-- Close button --> - <Button name="CauldronCloseButton" inherits="CauldronButtonTemplate" text="CLOSE"> - <Anchors> - <Anchor point="LEFT" relativeTo="CauldronClearQueueButton" relativePoint="RIGHT"> - <Offset x="12" y="0" /> - </Anchor> - </Anchors> - <Scripts> - <OnClick> - HideUIPanel(TradeSkillFrame); - PlaySound("igCharacterInfoClose"); - </OnClick> - </Scripts> - </Button> </Frames> </Frame> - </Frames> + + </Frames> <Scripts> - <OnLoad> - self:SetBackdropColor(.05,.05,.05,.8); - self:SetBackdropBorderColor(.4,.4,.4,1); - -- tinsert(UISpecialFrames, self:GetName()); - CauldronFrameTitleText:SetText(Cauldron:LocaleString("Cauldron").." "..Cauldron.version); - </OnLoad> + <OnLoad function="CauldronQueueWindowFrame_OnLoad" /> <OnShow> PlaySound("igCharacterInfoOpen"); </OnShow> @@ -1492,5 +765,5 @@ </OnMouseWheel> </Scripts> </Frame> - + </Ui> diff --git a/CauldronMainUI.lua b/CauldronMainUI.lua index 6619235..606277a 100644 --- a/CauldronMainUI.lua +++ b/CauldronMainUI.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 213 $ -- Cauldron user interface logic local L = LibStub("AceLocale-3.0"):GetLocale("Cauldron") @@ -11,11 +11,39 @@ function CauldronFrame_Show() Cauldron:Frame_Show(); end +--[==[ +function CauldronQueueWindowFrame_UpdateQueue() +end + +function CauldronQueueWindowFrame_GetTopButton() +end + +function CauldronQueueWindowFrame_OnLoad() + + --[[ + self:SetBackdropColor(.05,.05,.05,.8); + self:SetBackdropBorderColor(.4,.4,.4,1); + --]] + -- tinsert(UISpecialFrames, self:GetName()); + -- CauldronQueueWindowFrameTitleText:SetText(Cauldron:LocaleString("Tradeskill Queue").." "..Cauldron.version); + + local scrollFrame = CauldronQueueFrameScrollFrame; + scrollFrame.update = CauldronQueueWindowFrame_UpdateQueue; + scrollFrame.dynamic = CauldronQueueWindowFrame_GetTopButton; +-- CauldronQueueFrameScrollFrameScrollBarTrack:Hide(); +-- CauldronQueueFrameScrollFrameScrollBar.doNotHide = true; + HybridScrollFrame_CreateButtons(scrollFrame, "CauldronQueueFrameButtonTemplate"); +end +--]==] + function Cauldron:Frame_Show() +self:debug("frame show: "..tostring(CauldronQueueWindowFrame)); + if Cauldron.vars.enabled and not(IsShiftKeyDown() and IsControlKeyDown()) then - CloseDropDownMenus(); +-- CloseDropDownMenus(); +--[==[ if TradeSkillFrame then -- place our frame over the original frame -- CauldronFrame:SetPoint("TOPLEFT", TradeSkillFrame:GetLeft(), TradeSkillFrame:GetTop()); @@ -48,16 +76,19 @@ function Cauldron:Frame_Show() --]] end - + -- put localized text in various labels CauldronSkillInfoFrameQueueLabel:SetText(L["Queue"]); CauldronQueueAllButton:SetText(L["Queue All"]); CauldronQueueButton:SetText(L["Queue"]); CauldronProcessButton:SetText(L["Process"]); CauldronClearQueueButton:SetText(L["Clear Queue"]); +--]==] - ShowUIPanel(CauldronFrame); --- tinsert(UISpecialFrames, CauldronFrame:GetName()); + ShowUIPanel(CauldronQueueWindowFrame); + SetPortraitToTexture(CauldronQueueWindowFramePortrait, GetTradeSkillTexture()); +-- table.insert(UISpecialFrames, CauldronQueueWindowFrame:GetName()); + CauldronQueueWindowFrameTitleText:SetText(L["Queue"]); self:RegisterMessage("Cauldron_Update", "OnCauldronUpdate"); @@ -69,19 +100,21 @@ end function Cauldron:Frame_Hide() self:UnregisterEvent("Cauldron_Update") - HideUIPanel(CauldronFrame); + HideUIPanel(CauldronQueueWindowFrame); + --[[ if TradeSkillFrame then TradeSkillFrame:SetAlpha(1.0); TradeSkillFrame:SetFrameStrata(Cauldron.vars.origFrameStrata or "MEDIUM"); TradeSkillFrame:SetFrameLevel(Cauldron.vars.origFrameLevel or 5); end + --]] end function Cauldron:Frame_Toggle() - if CauldronFrame:IsVisible() then + if CauldronQueueWindowFrame:IsVisible() then Cauldron:Frame_Hide(); else Cauldron:Frame_Show(); @@ -101,7 +134,8 @@ function Cauldron:Frame_Update() if name == "UNKNOWN" then return; end - + +--[==[ Cauldron:UpdateSkills(); if CURRENT_TRADESKILL ~= name then @@ -130,6 +164,7 @@ function Cauldron:Frame_Update() -- display list of matching skills self:UpdateSkillList(); +--]==] -- display queue self:UpdateQueue(); @@ -144,6 +179,7 @@ function Cauldron:UpdateSkillInfo(skillName, rank, maxRank) self:debug("UpdateSkillInfo enter"); --@end-alpha@ +--[==[ local skillCount = Cauldron:GetSkillCount(skillName); CauldronRankFrameSkillName:SetText(skillName.." ("..skillCount.." "..L["skills"]..")"); @@ -152,11 +188,13 @@ function Cauldron:UpdateSkillInfo(skillName, rank, maxRank) CauldronRankFrame:SetMinMaxValues(0, maxRank); CauldronRankFrame:SetValue(rank); CauldronRankFrameSkillRank:SetText(rank.."/"..maxRank); +--]==] end function Cauldron:UpdateSearchText() - + +--[==[ local skillName = CURRENT_TRADESKILL; if IsTradeSkillLinked() then skillName = "Linked-"..skillName; @@ -174,7 +212,8 @@ function Cauldron:UpdateSearchText() searchText = SEARCH; end CauldronFiltersSearchEditBox:SetText(searchText); - +--]==] + end function Cauldron:UpdateFilterDropDowns() @@ -186,7 +225,8 @@ end function Cauldron:UpdateSkillList() -- Cauldron:info("Updating skill list: "..debugstack()); - + +--[==[ local skillName = CURRENT_TRADESKILL; if IsTradeSkillLinked() then skillName = "Linked-"..skillName; @@ -442,36 +482,38 @@ function Cauldron:UpdateSkillList() j = j + 1; end - +--]==] + end function Cauldron:UpdateButtons() - + if IsTradeSkillLinked() then - CauldronQueueAllButton:Hide(); - CauldronQueueButton:Hide(); - CauldronAmountDecrementButton:Hide(); - CauldronAmountInputBox:Hide(); - CauldronAmountIncrementButton:Hide(); - CauldronCreateAllButton:Hide(); - CauldronCreateButton:Hide(); - CauldronProcessButton:Hide(); - CauldronClearQueueButton:Hide(); + CauldronQueueAllButton:Disable(); + CauldronQueueButton:Disable(); + -- CauldronAmountDecrementButton:Hide(); + -- CauldronAmountInputBox:Hide(); + -- CauldronAmountIncrementButton:Hide(); + -- CauldronCreateAllButton:Hide(); + -- CauldronCreateButton:Hide(); + CauldronProcessButton:Disable(); + -- CauldronClearQueueButton:(); return; - else - CauldronQueueAllButton:Show(); - CauldronQueueButton:Show(); - CauldronAmountDecrementButton:Show(); - CauldronAmountInputBox:Show(); - CauldronAmountIncrementButton:Show(); - CauldronCreateAllButton:Show(); - CauldronCreateButton:Show(); - CauldronProcessButton:Show(); - CauldronClearQueueButton:Show(); end + + CauldronQueueAllButton:Enable(); + CauldronQueueButton:Enable(); + -- CauldronAmountDecrementButton:Show(); + -- CauldronAmountInputBox:Show(); + -- CauldronAmountIncrementButton:Show(); + -- CauldronCreateAllButton:Show(); + -- CauldronCreateButton:Show(); + -- CauldronProcessButton:(); + -- CauldronClearQueueButton:Show(); local skillInfo = Cauldron:GetSelectedSkill(); - + +--[[ if skillInfo then CauldronCreateButton:SetText(skillInfo.verb or CREATE); if skillInfo.verb then @@ -496,6 +538,7 @@ function Cauldron:UpdateButtons() CauldronCreateAllButton:Disable(); CauldronCreateButton:Disable(); end +--]] if not IsTradeSkillLinked() then if #CauldronQueue:GetItems(self.db.realm.userdata[self.vars.playername].queue, CURRENT_TRADESKILL) > 0 then @@ -506,12 +549,12 @@ function Cauldron:UpdateButtons() CauldronClearQueueButton:Disable(); end end - + end function Cauldron:UpdateQueue() - if (not CauldronFrame) or (not CauldronFrame:IsShown()) then + if (not CauldronQueueWindowFrame) or (not CauldronQueueWindowFrame:IsShown()) then return; end @@ -579,8 +622,9 @@ function Cauldron:UpdateQueue() queueItemFrame.shoppable = false; queueItemFrame.inHoverButtons = false; - _G["CauldronQueueItem"..i.."RemoveItem"]:Hide(); + -- _G["CauldronQueueItem"..i.."RemoveItem"]:Hide(); _G["CauldronQueueItem"..i.."RemoveItem"]:SetScale(0.75); + --[[ _G["CauldronQueueItem"..i.."IncreasePriority"]:Hide(); _G["CauldronQueueItem"..i.."DecreasePriority"]:Hide(); _G["CauldronQueueItem"..i.."DecrementCount"]:Hide(); @@ -588,6 +632,7 @@ function Cauldron:UpdateQueue() _G["CauldronQueueItem"..i.."IncrementCount"]:SetScale(0.75); _G["CauldronQueueItem"..i.."AddToShoppingList"]:Hide(); _G["CauldronQueueItem"..i.."AddToShoppingList"]:SetScale(0.5); + --]] local skillInfo = Cauldron:GetSkillInfo(queueInfo.tradeskill, queueInfo.name); if not skillInfo then @@ -716,8 +761,9 @@ function Cauldron:UpdateQueue() queueItemFrame.inHoverButtons = false; -- don't show the "hover" buttons - _G["CauldronQueueIntItem"..i.."RemoveItem"]:Hide(); + _G["CauldronQueueIntItem"..i.."RemoveItem"]:Hide(); _G["CauldronQueueIntItem"..i.."RemoveItem"]:SetScale(0.75); + --[[ _G["CauldronQueueIntItem"..i.."IncreasePriority"]:Hide(); _G["CauldronQueueIntItem"..i.."DecreasePriority"]:Hide(); _G["CauldronQueueIntItem"..i.."DecrementCount"]:Hide(); @@ -725,6 +771,7 @@ function Cauldron:UpdateQueue() _G["CauldronQueueIntItem"..i.."IncrementCount"]:SetScale(0.75); _G["CauldronQueueIntItem"..i.."AddToShoppingList"]:Hide(); _G["CauldronQueueIntItem"..i.."AddToShoppingList"]:SetScale(0.5); + --]] local skillInfo = Cauldron:GetSkillInfo(queueInfo.tradeskill, queueInfo.name); if not skillInfo then @@ -777,7 +824,7 @@ function Cauldron:UpdateQueue() end --]] -- alts/bank/etc. frame:SetText(infoText); - frame:SetTextColor(0.1, 0.1, 0.1, 1.0); + frame:SetTextColor(0.6, 0.6, 0.6, 1.0); frame:SetShadowOffset(0, 0); -- set the icon @@ -867,6 +914,7 @@ function Cauldron:UpdateQueue() -- don't show the "hover" buttons _G["CauldronQueueReagentItem"..i.."RemoveItem"]:Hide(); _G["CauldronQueueReagentItem"..i.."RemoveItem"]:SetScale(0.75); + --[[ _G["CauldronQueueReagentItem"..i.."IncreasePriority"]:Hide(); _G["CauldronQueueReagentItem"..i.."DecreasePriority"]:Hide(); _G["CauldronQueueReagentItem"..i.."DecrementCount"]:Hide(); @@ -874,6 +922,7 @@ function Cauldron:UpdateQueue() _G["CauldronQueueReagentItem"..i.."IncrementCount"]:SetScale(0.75); _G["CauldronQueueReagentItem"..i.."AddToShoppingList"]:Hide(); _G["CauldronQueueReagentItem"..i.."AddToShoppingList"]:SetScale(0.5); + --]] local skillInfo = Cauldron:GetSkillInfo(queueInfo.tradeskill, queueInfo.name); if not skillInfo then @@ -888,7 +937,7 @@ function Cauldron:UpdateQueue() frame:SetText(queueInfo.name); frame:SetShadowOffset(0, 0); frame:SetFont("GameFontNormal", 12); - frame:SetTextColor(0.1, 0.1, 0.1, 1.0); + frame:SetTextColor(0.8, 0.8, 0.8, 1.0); frame.r = 1.0; frame.g = 1.0; frame.b = 1.0; diff --git a/CauldronQueue.lua b/CauldronQueue.lua index a1ac3c1..d1c8f40 100644 --- a/CauldronQueue.lua +++ b/CauldronQueue.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 206 $ -- Cauldron queue management functions local L = LibStub("AceLocale-3.0"):GetLocale("Cauldron") diff --git a/CauldronShoppingList.lua b/CauldronShoppingList.lua index b32de82..2f21324 100644 --- a/CauldronShoppingList.lua +++ b/CauldronShoppingList.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 194 $ -- Cauldron shopping list functions CauldronShopping = {}; diff --git a/CauldronShoppingList.xml b/CauldronShoppingList.xml index 7e66af2..dae2f38 100644 --- a/CauldronShoppingList.xml +++ b/CauldronShoppingList.xml @@ -1,7 +1,7 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\..\FrameXML\UI.xsd"> - <!-- $Revision$ --> + <!-- $Revision: 194 $ --> <!-- templates --> <Frame name="CauldronShoppingListRequestorTemplate" virtual="true"> diff --git a/CauldronShoppingListUI.lua b/CauldronShoppingListUI.lua index c3b26e9..eaa699b 100644 --- a/CauldronShoppingListUI.lua +++ b/CauldronShoppingListUI.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 194 $ -- Cauldron shopping list UI functions local L = LibStub("AceLocale-3.0"):GetLocale("Cauldron") diff --git a/CauldronTradeskill.lua b/CauldronTradeskill.lua index 58a4745..f1f6f15 100644 --- a/CauldronTradeskill.lua +++ b/CauldronTradeskill.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 212 $ -- Cauldron tradeskill functions local L = LibStub("AceLocale-3.0"):GetLocale("Cauldron") @@ -363,6 +363,7 @@ function Cauldron:GetSkillList(playername, skillName) local skills = {}; +--[====[ for name, recipe in pairs(self.db.realm.userdata[playername].skills[skillName].recipes) do self:debug("GetSkillList: name="..name); @@ -582,6 +583,7 @@ function Cauldron:GetSkillList(playername, skillName) --@alpha@ self:debug("GetSkillList exit"); +--]====] return skills; end diff --git a/CauldronUnitTests.lua b/CauldronUnitTests.lua index 716a839..cd80e05 100644 --- a/CauldronUnitTests.lua +++ b/CauldronUnitTests.lua @@ -1,5 +1,5 @@ -- unit tests --- $Revision$ +-- $Revision: 194 $ --@alpha@ local CauldronTestSuite = { diff --git a/CauldronUtil.lua b/CauldronUtil.lua index 7e23eae..4bb5262 100644 --- a/CauldronUtil.lua +++ b/CauldronUtil.lua @@ -1,4 +1,4 @@ --- $Revision$ +-- $Revision: 206 $ -- Cauldron utility functions local L = LibStub("AceLocale-3.0"):GetLocale("Cauldron") @@ -262,7 +262,8 @@ end function Cauldron:CreateAchievementSkillMap() Cauldron.vars.achievementMap = {}; - + +--[[ -- TODO: get all achievement categories that have 169 (Professions) as parent -- currently: 171 (Fishing), 170 (Cooking), 172 (First Aid) local categories = { 170, 171, 172 }; @@ -294,7 +295,8 @@ function Cauldron:CreateAchievementSkillMap() end end end - +--]] + end function Cauldron:GetAchievementsForSkill(skillInfo) diff --git a/Instructions.txt b/Instructions.txt index 75413e5..8381d0e 100644 --- a/Instructions.txt +++ b/Instructions.txt @@ -5,7 +5,7 @@ An enhanced tradeskill addon. Cauldron provides: * more sorting and filtering options; * the ability to mark skills as a favorite, and shows in reagent tooltips that the reagent is need for that favorite; * a queuing system that can be arbitrarily ordered, and displays all the intermediate items and reagents required to make the desired items; -* and a shopping list that allows you to mark which items need to retrieved from alts, and who they need to be sent to, with the option to automatically buy needed items when visiting vendors/merchants. +* and a shopping list that allows you to mark which items need to be retrieved from alts, and who they need to be sent to, with the option to automatically buy needed items when visiting vendors/merchants. == Release Notes == @@ -37,7 +37,7 @@ Cauldron is a replacement for the default tradeskill/profession window provided === Main Interface === -The main interface for Cauldron is made up of a double-width window separated into two major sections and a set of widgets for managing the skill list. When a tradeskill/profession is opened by clicking on its button, Cauldron will open its window as a replacement for the standard interface, and hide the standard interface. (If you wish to suppress Cauldron and use the regular interface, see the instructions below.) +The main interface for Cauldron is made up of a double-width window separated into two major sections and a set of widgets for managing the skill list. When a tradeskill/profession is opened by clicking on its button, Cauldron will open its window as a replacement for the standard interface, and hides the standard interface. (If you wish to suppress Cauldron and use the regular interface, see the instructions below.) The Cauldron window is movable; you can grab the title bar and move it around anywhere on the UI. It will remember its position and appear there the next time it is opened, even across logins. diff --git a/embeds.xml b/embeds.xml old mode 100644 new mode 100755 index d13d80b..3d126ed --- a/embeds.xml +++ b/embeds.xml @@ -25,8 +25,8 @@ <Script file="Libs\LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua" /> <Include file="Libs\LibPeriodicTable-3.1\modules.xml" /> --> - <!-- @alpha@ --> + <!-- @alpha@ <Script file="Libs\WoWUnit-1.0.9\WoWUnit.lua" /> - <!-- @end-alpha@ --> + @end-alpha@ --> </Ui> \ No newline at end of file