режим предателя + UI референсы и DragonUI
This commit is contained in:
@@ -0,0 +1,635 @@
|
||||
|
||||
TRADE_SKILLS_DISPLAYED = 8;
|
||||
MAX_TRADE_SKILL_REAGENTS = 8;
|
||||
TRADE_SKILL_HEIGHT = 16;
|
||||
TRADE_SKILL_TEXT_WIDTH = 275;
|
||||
|
||||
TradeSkillTypePrefix = {
|
||||
["optimal"] = " [+++] ",
|
||||
["medium"] = " [++] ",
|
||||
["easy"] = " [+] ",
|
||||
["trivial"] = " ",
|
||||
["header"] = " ",
|
||||
}
|
||||
|
||||
TradeSkillTypeColor = { };
|
||||
TradeSkillTypeColor["optimal"] = { r = 1.00, g = 0.50, b = 0.25, font = GameFontNormalLeftOrange };
|
||||
TradeSkillTypeColor["medium"] = { r = 1.00, g = 1.00, b = 0.00, font = GameFontNormalLeftYellow };
|
||||
TradeSkillTypeColor["easy"] = { r = 0.25, g = 0.75, b = 0.25, font = GameFontNormalLeftLightGreen };
|
||||
TradeSkillTypeColor["trivial"] = { r = 0.50, g = 0.50, b = 0.50, font = GameFontNormalLeftGrey };
|
||||
TradeSkillTypeColor["header"] = { r = 1.00, g = 0.82, b = 0, font = GameFontNormalLeft };
|
||||
|
||||
UIPanelWindows["TradeSkillFrame"] = { area = "left", pushable = 3, showFailedFunc = "TradeSkillFrame_ShowFailed" };
|
||||
|
||||
CURRENT_TRADESKILL = "";
|
||||
|
||||
|
||||
function TradeSkillFrame_Show()
|
||||
ShowUIPanel(TradeSkillFrame);
|
||||
TradeSkillCreateButton:Disable();
|
||||
TradeSkillCreateAllButton:Disable();
|
||||
if ( GetTradeSkillSelectionIndex() == 0 ) then
|
||||
TradeSkillFrame_SetSelection(GetFirstTradeSkill());
|
||||
else
|
||||
TradeSkillFrame_SetSelection(GetTradeSkillSelectionIndex());
|
||||
end
|
||||
FauxScrollFrame_SetOffset(TradeSkillListScrollFrame, 0);
|
||||
TradeSkillListScrollFrameScrollBar:SetMinMaxValues(0, 0);
|
||||
TradeSkillListScrollFrameScrollBar:SetValue(0);
|
||||
SetPortraitTexture(TradeSkillFramePortrait, "player");
|
||||
TradeSkillOnlyShowMakeable(TradeSkillFrameAvailableFilterCheckButton:GetChecked());
|
||||
TradeSkillFrame_Update();
|
||||
|
||||
-- Moved to the bottom to prevent addons which hook it from blocking tradeskills
|
||||
CloseDropDownMenus();
|
||||
end
|
||||
|
||||
function TradeSkillFrame_Hide()
|
||||
HideUIPanel(TradeSkillFrame);
|
||||
end
|
||||
|
||||
function TradeSkillFrame_ShowFailed(self)
|
||||
CloseTradeSkill();
|
||||
end
|
||||
|
||||
function TradeSkillFrame_OnLoad(self)
|
||||
self:RegisterEvent("TRADE_SKILL_UPDATE");
|
||||
self:RegisterEvent("TRADE_SKILL_FILTER_UPDATE");
|
||||
self:RegisterEvent("UNIT_PORTRAIT_UPDATE");
|
||||
self:RegisterEvent("UPDATE_TRADESKILL_RECAST");
|
||||
end
|
||||
|
||||
function TradeSkillFrame_OnEvent(self, event, ...)
|
||||
if ( not TradeSkillFrame:IsShown() ) then
|
||||
return;
|
||||
end
|
||||
if ( event == "TRADE_SKILL_UPDATE" or event == "TRADE_SKILL_FILTER_UPDATE" ) then
|
||||
TradeSkillCreateButton:Disable();
|
||||
TradeSkillCreateAllButton:Disable();
|
||||
if ( (event ~= "TRADE_SKILL_FILTER_UPDATE") and (GetTradeSkillSelectionIndex() > 1) and (GetTradeSkillSelectionIndex() <= GetNumTradeSkills()) ) then
|
||||
TradeSkillFrame_SetSelection(GetTradeSkillSelectionIndex());
|
||||
else
|
||||
TradeSkillFrame_SetSelection(GetFirstTradeSkill());
|
||||
FauxScrollFrame_SetOffset(TradeSkillListScrollFrame, 0);
|
||||
TradeSkillListScrollFrameScrollBar:SetValue(0);
|
||||
end
|
||||
TradeSkillFrame_Update();
|
||||
elseif ( event == "UNIT_PORTRAIT_UPDATE" ) then
|
||||
local arg1 = ...;
|
||||
if ( arg1 == "player" ) then
|
||||
SetPortraitTexture(TradeSkillFramePortrait, "player");
|
||||
end
|
||||
elseif ( event == "UPDATE_TRADESKILL_RECAST" ) then
|
||||
TradeSkillInputBox:SetNumber(GetTradeskillRepeatCount());
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillFrame_Update()
|
||||
local numTradeSkills = GetNumTradeSkills();
|
||||
local skillOffset = FauxScrollFrame_GetOffset(TradeSkillListScrollFrame);
|
||||
local name, rank, maxRank = GetTradeSkillLine();
|
||||
|
||||
if ( CURRENT_TRADESKILL ~= name ) then
|
||||
StopTradeSkillRepeat();
|
||||
if ( CURRENT_TRADESKILL ~= "" ) then
|
||||
-- To fix problem with switching between two tradeskills
|
||||
UIDropDownMenu_Initialize(TradeSkillInvSlotDropDown, TradeSkillInvSlotDropDown_Initialize);
|
||||
UIDropDownMenu_SetSelectedID(TradeSkillInvSlotDropDown, 1);
|
||||
|
||||
UIDropDownMenu_Initialize(TradeSkillSubClassDropDown, TradeSkillSubClassDropDown_Initialize);
|
||||
UIDropDownMenu_SetSelectedID(TradeSkillSubClassDropDown, 1);
|
||||
end
|
||||
CURRENT_TRADESKILL = name;
|
||||
end
|
||||
|
||||
-- If no tradeskills
|
||||
if ( numTradeSkills == 0 ) then
|
||||
TradeSkillFrameTitleText:SetFormattedText(TRADE_SKILL_TITLE, GetTradeSkillLine());
|
||||
TradeSkillSkillName:Hide();
|
||||
-- TradeSkillSkillLineName:Hide();
|
||||
TradeSkillSkillIcon:Hide();
|
||||
TradeSkillRequirementLabel:Hide();
|
||||
TradeSkillRequirementText:SetText("");
|
||||
TradeSkillCollapseAllButton:Disable();
|
||||
for i=1, MAX_TRADE_SKILL_REAGENTS, 1 do
|
||||
_G["TradeSkillReagent"..i]:Hide();
|
||||
end
|
||||
else
|
||||
TradeSkillSkillName:Show();
|
||||
-- TradeSkillSkillLineName:Show();
|
||||
TradeSkillSkillIcon:Show();
|
||||
TradeSkillCollapseAllButton:Enable();
|
||||
end
|
||||
|
||||
if ( rank < 75 ) and ( not IsTradeSkillLinked() ) then
|
||||
TradeSkillFrameEditBox:Hide();
|
||||
SetTradeSkillItemNameFilter(""); --In case they are switching from an inspect WITH a filter directly to their own without.
|
||||
else
|
||||
TradeSkillFrameEditBox:Show();
|
||||
end
|
||||
-- ScrollFrame update
|
||||
FauxScrollFrame_Update(TradeSkillListScrollFrame, numTradeSkills, TRADE_SKILLS_DISPLAYED, TRADE_SKILL_HEIGHT, nil, nil, nil, TradeSkillHighlightFrame, 293, 316 );
|
||||
|
||||
TradeSkillHighlightFrame:Hide();
|
||||
local skillName, skillType, numAvailable, isExpanded, altVerb;
|
||||
local skillIndex, skillButton, skillButtonText, skillButtonCount;
|
||||
local nameWidth, countWidth;
|
||||
|
||||
local skillNamePrefix = " ";
|
||||
for i=1, TRADE_SKILLS_DISPLAYED, 1 do
|
||||
skillIndex = i + skillOffset;
|
||||
skillName, skillType, numAvailable, isExpanded, altVerb = GetTradeSkillInfo(skillIndex);
|
||||
skillButton = _G["TradeSkillSkill"..i];
|
||||
skillButtonText = _G["TradeSkillSkill"..i.."Text"];
|
||||
skillButtonCount = _G["TradeSkillSkill"..i.."Count"];
|
||||
if ( skillIndex <= numTradeSkills ) then
|
||||
-- Set button widths if scrollbar is shown or hidden
|
||||
if ( TradeSkillListScrollFrame:IsShown() ) then
|
||||
skillButton:SetWidth(293);
|
||||
else
|
||||
skillButton:SetWidth(323);
|
||||
end
|
||||
local color = TradeSkillTypeColor[skillType];
|
||||
if ( color ) then
|
||||
skillButton:SetNormalFontObject(color.font);
|
||||
skillButtonCount:SetVertexColor(color.r, color.g, color.b);
|
||||
skillButton.r = color.r;
|
||||
skillButton.g = color.g;
|
||||
skillButton.b = color.b;
|
||||
end
|
||||
|
||||
if ( ENABLE_COLORBLIND_MODE == "1" ) then
|
||||
skillNamePrefix = TradeSkillTypePrefix[skillType] or " ";
|
||||
end
|
||||
|
||||
skillButton:SetID(skillIndex);
|
||||
skillButton:Show();
|
||||
-- Handle headers
|
||||
if ( skillType == "header" ) then
|
||||
skillButton:SetText(skillName);
|
||||
skillButtonText:SetWidth(TRADE_SKILL_TEXT_WIDTH);
|
||||
skillButtonCount:SetText("");
|
||||
if ( isExpanded ) then
|
||||
skillButton:SetNormalTexture("Interface\\Buttons\\UI-MinusButton-Up");
|
||||
else
|
||||
skillButton:SetNormalTexture("Interface\\Buttons\\UI-PlusButton-Up");
|
||||
end
|
||||
_G["TradeSkillSkill"..i.."Highlight"]:SetTexture("Interface\\Buttons\\UI-PlusButton-Hilight");
|
||||
_G["TradeSkillSkill"..i]:UnlockHighlight();
|
||||
else
|
||||
if ( not skillName ) then
|
||||
return;
|
||||
end
|
||||
skillButton:SetNormalTexture("");
|
||||
_G["TradeSkillSkill"..i.."Highlight"]:SetTexture("");
|
||||
if ( numAvailable <= 0 ) then
|
||||
skillButton:SetText(skillNamePrefix..skillName);
|
||||
skillButtonText:SetWidth(TRADE_SKILL_TEXT_WIDTH);
|
||||
skillButtonCount:SetText(skillCountPrefix);
|
||||
else
|
||||
skillName = skillNamePrefix..skillName;
|
||||
skillButtonCount:SetText("["..numAvailable.."]");
|
||||
TradeSkillFrameDummyString:SetText(skillName);
|
||||
nameWidth = TradeSkillFrameDummyString:GetWidth();
|
||||
countWidth = skillButtonCount:GetWidth();
|
||||
skillButtonText:SetText(skillName);
|
||||
if ( nameWidth + 2 + countWidth > TRADE_SKILL_TEXT_WIDTH ) then
|
||||
skillButtonText:SetWidth(TRADE_SKILL_TEXT_WIDTH-2-countWidth);
|
||||
else
|
||||
skillButtonText:SetWidth(0);
|
||||
end
|
||||
end
|
||||
|
||||
-- Place the highlight and lock the highlight state
|
||||
if ( GetTradeSkillSelectionIndex() == skillIndex ) then
|
||||
TradeSkillHighlightFrame:SetPoint("TOPLEFT", "TradeSkillSkill"..i, "TOPLEFT", 0, 0);
|
||||
TradeSkillHighlightFrame:Show();
|
||||
skillButtonCount:SetVertexColor(HIGHLIGHT_FONT_COLOR.r, HIGHLIGHT_FONT_COLOR.g, HIGHLIGHT_FONT_COLOR.b);
|
||||
skillButton:LockHighlight();
|
||||
skillButton.isHighlighted = true;
|
||||
else
|
||||
skillButton:UnlockHighlight();
|
||||
skillButton.isHighlighted = false;
|
||||
end
|
||||
end
|
||||
|
||||
else
|
||||
skillButton:Hide();
|
||||
end
|
||||
end
|
||||
|
||||
-- Set the expand/collapse all button texture
|
||||
local numHeaders = 0;
|
||||
local notExpanded = 0;
|
||||
for i=1, numTradeSkills, 1 do
|
||||
local skillName, skillType, numAvailable, isExpanded, altVerb = GetTradeSkillInfo(i);
|
||||
if ( skillName and skillType == "header" ) then
|
||||
numHeaders = numHeaders + 1;
|
||||
if ( not isExpanded ) then
|
||||
notExpanded = notExpanded + 1;
|
||||
end
|
||||
end
|
||||
if ( GetTradeSkillSelectionIndex() == i ) then
|
||||
-- Set the max makeable items for the create all button
|
||||
TradeSkillFrame.numAvailable = math.abs(numAvailable);
|
||||
end
|
||||
end
|
||||
-- If all headers are not expanded then show collapse button, otherwise show the expand button
|
||||
if ( notExpanded ~= numHeaders ) then
|
||||
TradeSkillCollapseAllButton.collapsed = nil;
|
||||
TradeSkillCollapseAllButton:SetNormalTexture("Interface\\Buttons\\UI-MinusButton-Up");
|
||||
else
|
||||
TradeSkillCollapseAllButton.collapsed = 1;
|
||||
TradeSkillCollapseAllButton:SetNormalTexture("Interface\\Buttons\\UI-PlusButton-Up");
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillFrame_SetSelection(id)
|
||||
local skillName, skillType, numAvailable, isExpanded, altVerb = GetTradeSkillInfo(id);
|
||||
local creatable = 1;
|
||||
if ( not skillName ) then
|
||||
creatable = nil;
|
||||
end
|
||||
TradeSkillHighlightFrame:Show();
|
||||
if ( skillType == "header" ) then
|
||||
TradeSkillHighlightFrame:Hide();
|
||||
if ( isExpanded ) then
|
||||
CollapseTradeSkillSubClass(id);
|
||||
else
|
||||
ExpandTradeSkillSubClass(id);
|
||||
end
|
||||
return;
|
||||
end
|
||||
TradeSkillFrame.selectedSkill = id;
|
||||
SelectTradeSkill(id);
|
||||
if ( GetTradeSkillSelectionIndex() > GetNumTradeSkills() ) then
|
||||
return;
|
||||
end
|
||||
local color = TradeSkillTypeColor[skillType];
|
||||
if ( color ) then
|
||||
TradeSkillHighlight:SetVertexColor(color.r, color.g, color.b);
|
||||
end
|
||||
|
||||
-- General Info
|
||||
local skillLineName, skillLineRank, skillLineMaxRank = GetTradeSkillLine();
|
||||
TradeSkillFrameTitleText:SetFormattedText(TRADE_SKILL_TITLE, skillLineName);
|
||||
-- Set statusbar info
|
||||
TradeSkillRankFrame:SetStatusBarColor(0.0, 0.0, 1.0, 0.5);
|
||||
TradeSkillRankFrameBackground:SetVertexColor(0.0, 0.0, 0.75, 0.5);
|
||||
TradeSkillRankFrame:SetMinMaxValues(0, skillLineMaxRank);
|
||||
TradeSkillRankFrame:SetValue(skillLineRank);
|
||||
TradeSkillRankFrameSkillRank:SetText(skillLineRank.."/"..skillLineMaxRank);
|
||||
|
||||
TradeSkillSkillName:SetText(skillName);
|
||||
if ( GetTradeSkillCooldown(id) ) then
|
||||
TradeSkillSkillCooldown:SetText(COOLDOWN_REMAINING.." "..SecondsToTime(GetTradeSkillCooldown(id)));
|
||||
else
|
||||
TradeSkillSkillCooldown:SetText("");
|
||||
end
|
||||
TradeSkillSkillIcon:SetNormalTexture(GetTradeSkillIcon(id));
|
||||
local minMade,maxMade = GetTradeSkillNumMade(id);
|
||||
if ( maxMade > 1 ) then
|
||||
if ( minMade == maxMade ) then
|
||||
TradeSkillSkillIconCount:SetText(minMade);
|
||||
else
|
||||
TradeSkillSkillIconCount:SetText(minMade.."-"..maxMade);
|
||||
end
|
||||
if ( TradeSkillSkillIconCount:GetWidth() > 39 ) then
|
||||
TradeSkillSkillIconCount:SetText("~"..floor((minMade + maxMade)/2));
|
||||
end
|
||||
else
|
||||
TradeSkillSkillIconCount:SetText("");
|
||||
end
|
||||
|
||||
-- Reagents
|
||||
|
||||
local numReagents = GetTradeSkillNumReagents(id);
|
||||
if(numReagents > 0) then
|
||||
TradeSkillReagentLabel:Show();
|
||||
else
|
||||
TradeSkillReagentLabel:Hide();
|
||||
end
|
||||
for i=1, numReagents, 1 do
|
||||
local reagentName, reagentTexture, reagentCount, playerReagentCount = GetTradeSkillReagentInfo(id, i);
|
||||
local reagent = _G["TradeSkillReagent"..i]
|
||||
local name = _G["TradeSkillReagent"..i.."Name"];
|
||||
local count = _G["TradeSkillReagent"..i.."Count"];
|
||||
if ( not reagentName or not reagentTexture ) then
|
||||
reagent:Hide();
|
||||
else
|
||||
reagent:Show();
|
||||
SetItemButtonTexture(reagent, reagentTexture);
|
||||
name:SetText(reagentName);
|
||||
-- Grayout items
|
||||
if ( playerReagentCount < reagentCount ) then
|
||||
SetItemButtonTextureVertexColor(reagent, 0.5, 0.5, 0.5);
|
||||
name:SetTextColor(GRAY_FONT_COLOR.r, GRAY_FONT_COLOR.g, GRAY_FONT_COLOR.b);
|
||||
creatable = nil;
|
||||
else
|
||||
SetItemButtonTextureVertexColor(reagent, 1.0, 1.0, 1.0);
|
||||
name:SetTextColor(HIGHLIGHT_FONT_COLOR.r, HIGHLIGHT_FONT_COLOR.g, HIGHLIGHT_FONT_COLOR.b);
|
||||
end
|
||||
if ( playerReagentCount >= 100 ) then
|
||||
playerReagentCount = "*";
|
||||
end
|
||||
count:SetText(playerReagentCount.." /"..reagentCount);
|
||||
end
|
||||
end
|
||||
-- Place reagent label
|
||||
local reagentToAnchorTo = numReagents;
|
||||
if ( (numReagents > 0) and (mod(numReagents, 2) == 0) ) then
|
||||
reagentToAnchorTo = reagentToAnchorTo - 1;
|
||||
end
|
||||
|
||||
for i=numReagents + 1, MAX_TRADE_SKILL_REAGENTS, 1 do
|
||||
_G["TradeSkillReagent"..i]:Hide();
|
||||
end
|
||||
|
||||
local spellFocus = BuildColoredListString(GetTradeSkillTools(id));
|
||||
if ( spellFocus ) then
|
||||
TradeSkillRequirementLabel:Show();
|
||||
TradeSkillRequirementText:SetText(spellFocus);
|
||||
else
|
||||
TradeSkillRequirementLabel:Hide();
|
||||
TradeSkillRequirementText:SetText("");
|
||||
end
|
||||
|
||||
if ( creatable ) then
|
||||
TradeSkillCreateButton:Enable();
|
||||
TradeSkillCreateAllButton:Enable();
|
||||
else
|
||||
TradeSkillCreateButton:Disable();
|
||||
TradeSkillCreateAllButton:Disable();
|
||||
end
|
||||
|
||||
if ( GetTradeSkillDescription(id) ) then
|
||||
TradeSkillDescription:SetText(GetTradeSkillDescription(id))
|
||||
TradeSkillReagentLabel:SetPoint("TOPLEFT", "TradeSkillDescription", "BOTTOMLEFT", 0, -10);
|
||||
else
|
||||
TradeSkillDescription:SetText(" ");
|
||||
TradeSkillReagentLabel:SetPoint("TOPLEFT", "TradeSkillDescription", "TOPLEFT", 0, 0);
|
||||
end
|
||||
-- Reset the number of items to be created
|
||||
TradeSkillInputBox:SetNumber(GetTradeskillRepeatCount());
|
||||
|
||||
--Hide inapplicable buttons if we are inspecting. Otherwise show them
|
||||
if ( IsTradeSkillLinked() ) then
|
||||
TradeSkillCreateButton:Hide();
|
||||
TradeSkillCreateAllButton:Hide();
|
||||
TradeSkillDecrementButton:Hide();
|
||||
TradeSkillInputBox:Hide();
|
||||
TradeSkillIncrementButton:Hide();
|
||||
TradeSkillLinkButton:Hide();
|
||||
TradeSkillFrameBottomLeftTexture:SetTexture([[Interface\PaperDollInfoFrame\SkillFrame-BotLeft]]);
|
||||
TradeSkillFrameBottomRightTexture:SetTexture([[Interface\PaperDollInfoFrame\SkillFrame-BotRight]]);
|
||||
else
|
||||
--Change button names and show/hide them depending on if this tradeskill creates an item or casts something
|
||||
if ( not altVerb ) then
|
||||
--Its an item with 'Create'
|
||||
TradeSkillCreateAllButton:Show();
|
||||
TradeSkillDecrementButton:Show();
|
||||
TradeSkillInputBox:Show();
|
||||
TradeSkillIncrementButton:Show();
|
||||
|
||||
TradeSkillFrameBottomLeftTexture:SetTexture([[Interface\TradeSkillFrame\UI-TradeSkill-BotLeft]]);
|
||||
TradeSkillFrameBottomRightTexture:SetTexture([[Interface\ClassTrainerFrame\UI-ClassTrainer-BotRight]])
|
||||
else
|
||||
--Its something else
|
||||
TradeSkillCreateAllButton:Hide();
|
||||
TradeSkillDecrementButton:Hide();
|
||||
TradeSkillInputBox:Hide();
|
||||
TradeSkillIncrementButton:Hide();
|
||||
|
||||
TradeSkillFrameBottomLeftTexture:SetTexture([[Interface\ClassTrainerFrame\UI-ClassTrainer-BotLeft]]);
|
||||
TradeSkillFrameBottomRightTexture:SetTexture([[Interface\ClassTrainerFrame\UI-ClassTrainer-BotRight]]);
|
||||
end
|
||||
if ( GetTradeSkillListLink() ) then
|
||||
TradeSkillLinkButton:Show();
|
||||
else
|
||||
TradeSkillLinkButton:Hide();
|
||||
end
|
||||
TradeSkillCreateButton:SetText(altVerb or CREATE);
|
||||
TradeSkillCreateButton:Show();
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillSkillButton_OnClick(self, button)
|
||||
if ( button == "LeftButton" ) then
|
||||
TradeSkillFrame_SetSelection(self:GetID());
|
||||
TradeSkillFrame_Update();
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillFilter_OnTextChanged(self)
|
||||
local text = self:GetText();
|
||||
|
||||
if ( text == SEARCH ) then
|
||||
SetTradeSkillItemNameFilter("");
|
||||
return;
|
||||
end
|
||||
|
||||
local minLevel, maxLevel;
|
||||
local approxLevel = strmatch(text, "^~(%d+)");
|
||||
if ( approxLevel ) then
|
||||
minLevel = approxLevel - 2;
|
||||
maxLevel = approxLevel + 2;
|
||||
else
|
||||
minLevel, maxLevel = strmatch(text, "^(%d+)%s*-*%s*(%d*)$");
|
||||
end
|
||||
if ( minLevel ) then
|
||||
if ( maxLevel == "" or maxLevel < minLevel ) then
|
||||
maxLevel = minLevel;
|
||||
end
|
||||
SetTradeSkillItemNameFilter(nil);
|
||||
SetTradeSkillItemLevelFilter(minLevel, maxLevel);
|
||||
else
|
||||
SetTradeSkillItemLevelFilter(0, 0);
|
||||
SetTradeSkillItemNameFilter(text);
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillCollapseAllButton_OnClick(self)
|
||||
if (self.collapsed) then
|
||||
self.collapsed = nil;
|
||||
ExpandTradeSkillSubClass(0);
|
||||
else
|
||||
self.collapsed = 1;
|
||||
TradeSkillListScrollFrameScrollBar:SetValue(0);
|
||||
CollapseTradeSkillSubClass(0);
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillSubClassDropDown_OnLoad(self)
|
||||
SetTradeSkillSubClassFilter(0, 1, 1);
|
||||
UIDropDownMenu_Initialize(self, TradeSkillSubClassDropDown_Initialize);
|
||||
UIDropDownMenu_SetWidth(self, 120);
|
||||
UIDropDownMenu_SetSelectedID(self, 1);
|
||||
end
|
||||
|
||||
function TradeSkillSubClassDropDown_Initialize()
|
||||
TradeSkillFilterFrame_LoadSubClasses(GetTradeSkillSubClasses());
|
||||
end
|
||||
|
||||
function TradeSkillFilterFrame_LoadSubClasses(...)
|
||||
local selectedID = UIDropDownMenu_GetSelectedID(TradeSkillSubClassDropDown);
|
||||
local numSubClasses = select("#", ...);
|
||||
local allChecked = GetTradeSkillSubClassFilter(0);
|
||||
|
||||
-- the first button in the list is going to be an "all subclasses" button
|
||||
local info = UIDropDownMenu_CreateInfo();
|
||||
info.text = ALL_SUBCLASSES;
|
||||
info.func = TradeSkillSubClassDropDownButton_OnClick;
|
||||
-- select this button if nothing else was selected
|
||||
info.checked = allChecked and (selectedID == nil or selectedID == 1);
|
||||
UIDropDownMenu_AddButton(info);
|
||||
if ( info.checked ) then
|
||||
UIDropDownMenu_SetText(TradeSkillSubClassDropDown, ALL_SUBCLASSES);
|
||||
end
|
||||
|
||||
local checked;
|
||||
for i=1, select("#", ...), 1 do
|
||||
-- if there are no filters then don't check any individual subclasses
|
||||
if ( allChecked ) then
|
||||
checked = nil;
|
||||
else
|
||||
checked = GetTradeSkillSubClassFilter(i);
|
||||
if ( checked ) then
|
||||
UIDropDownMenu_SetText(TradeSkillSubClassDropDown, select(i, ...));
|
||||
end
|
||||
end
|
||||
info.text = select(i, ...);
|
||||
info.func = TradeSkillSubClassDropDownButton_OnClick;
|
||||
info.checked = checked;
|
||||
UIDropDownMenu_AddButton(info);
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillInvSlotDropDown_OnLoad(self)
|
||||
SetTradeSkillInvSlotFilter(0, 1, 1);
|
||||
UIDropDownMenu_Initialize(self, TradeSkillInvSlotDropDown_Initialize);
|
||||
UIDropDownMenu_SetWidth(self, 120);
|
||||
UIDropDownMenu_SetSelectedID(self, 1);
|
||||
end
|
||||
|
||||
function TradeSkillInvSlotDropDown_Initialize()
|
||||
TradeSkillFilterFrame_LoadInvSlots(GetTradeSkillInvSlots());
|
||||
end
|
||||
|
||||
function TradeSkillFilterFrame_LoadInvSlots(...)
|
||||
UIDropDownMenu_SetSelectedID(TradeSkillInvSlotDropDown, nil);
|
||||
local allChecked = GetTradeSkillInvSlotFilter(0);
|
||||
local info = UIDropDownMenu_CreateInfo();
|
||||
local filterCount = select("#", ...);
|
||||
info.text = ALL_INVENTORY_SLOTS;
|
||||
info.func = TradeSkillInvSlotDropDownButton_OnClick;
|
||||
info.checked = allChecked;
|
||||
UIDropDownMenu_AddButton(info);
|
||||
local checked;
|
||||
for i=1, filterCount, 1 do
|
||||
if ( allChecked and filterCount > 1 ) then
|
||||
checked = nil;
|
||||
UIDropDownMenu_SetText(TradeSkillInvSlotDropDown, ALL_INVENTORY_SLOTS);
|
||||
else
|
||||
checked = GetTradeSkillInvSlotFilter(i);
|
||||
if ( checked ) then
|
||||
UIDropDownMenu_SetText(TradeSkillInvSlotDropDown, select(i, ...));
|
||||
end
|
||||
end
|
||||
info.text = select(i, ...);
|
||||
info.func = TradeSkillInvSlotDropDownButton_OnClick;
|
||||
info.checked = checked;
|
||||
|
||||
UIDropDownMenu_AddButton(info);
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillFilterFrame_InvSlotName(...)
|
||||
for i=1, select("#", ...), 1 do
|
||||
if ( GetTradeSkillInvSlotFilter(i) ) then
|
||||
return select(i, ...);
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillSubClassDropDownButton_OnClick(self)
|
||||
UIDropDownMenu_SetSelectedID(TradeSkillSubClassDropDown, self:GetID());
|
||||
SetTradeSkillSubClassFilter(self:GetID() - 1, 1, 1);
|
||||
if ( self:GetID() ~= 1 ) then
|
||||
if ( TradeSkillFilterFrame_InvSlotName(GetTradeSkillInvSlots()) ~= TradeSkillInvSlotDropDown.selected ) then
|
||||
SetTradeSkillInvSlotFilter(0, 1, 1);
|
||||
UIDropDownMenu_SetSelectedID(TradeSkillInvSlotDropDown, 1);
|
||||
UIDropDownMenu_SetText(TradeSkillInvSlotDropDown, ALL_INVENTORY_SLOTS);
|
||||
end
|
||||
end
|
||||
TradeSkillListScrollFrameScrollBar:SetValue(0);
|
||||
FauxScrollFrame_SetOffset(TradeSkillListScrollFrame, 0);
|
||||
TradeSkillFrame_Update();
|
||||
end
|
||||
|
||||
function TradeSkillInvSlotDropDownButton_OnClick(self)
|
||||
UIDropDownMenu_SetSelectedID(TradeSkillInvSlotDropDown, self:GetID());
|
||||
SetTradeSkillInvSlotFilter(self:GetID() - 1, 1, 1);
|
||||
TradeSkillInvSlotDropDown.selected = TradeSkillFilterFrame_InvSlotName(GetTradeSkillInvSlots());
|
||||
TradeSkillListScrollFrameScrollBar:SetValue(0);
|
||||
FauxScrollFrame_SetOffset(TradeSkillListScrollFrame, 0);
|
||||
TradeSkillFrame_Update();
|
||||
end
|
||||
|
||||
function TradeSkillFrameIncrement_OnClick()
|
||||
if ( TradeSkillInputBox:GetNumber() < 100 ) then
|
||||
TradeSkillInputBox:SetNumber(TradeSkillInputBox:GetNumber() + 1);
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillFrameDecrement_OnClick()
|
||||
if ( TradeSkillInputBox:GetNumber() > 0 ) then
|
||||
TradeSkillInputBox:SetNumber(TradeSkillInputBox:GetNumber() - 1);
|
||||
end
|
||||
end
|
||||
|
||||
function TradeSkillItem_OnEnter(self)
|
||||
if ( TradeSkillFrame.selectedSkill ~= 0 ) then
|
||||
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
|
||||
GameTooltip:SetTradeSkillItem(TradeSkillFrame.selectedSkill);
|
||||
end
|
||||
CursorUpdate(self);
|
||||
end
|
||||
|
||||
function TradeSkillFrame_PlaytimeUpdate()
|
||||
if ( PartialPlayTime() ) then
|
||||
TradeSkillCreateButton:Disable();
|
||||
if (not TradeSkillCreateButtonMask:IsShown()) then
|
||||
TradeSkillCreateButtonMask:Show();
|
||||
TradeSkillCreateButtonMask.tooltip = format(PLAYTIME_TIRED_ABILITY, REQUIRED_REST_HOURS - floor(GetBillingTimeRested()/60));
|
||||
end
|
||||
|
||||
TradeSkillCreateAllButton:Disable();
|
||||
if (not TradeSkillCreateAllButtonMask:IsShown()) then
|
||||
TradeSkillCreateAllButtonMask:Show();
|
||||
TradeSkillCreateAllButtonMask.tooltip = format(PLAYTIME_TIRED_ABILITY, REQUIRED_REST_HOURS - floor(GetBillingTimeRested()/60));
|
||||
end
|
||||
elseif ( NoPlayTime() ) then
|
||||
TradeSkillCreateButton:Disable();
|
||||
if (not TradeSkillCreateButtonMask:IsShown()) then
|
||||
TradeSkillCreateButtonMask:Show();
|
||||
TradeSkillCreateButtonMask.tooltip = format(PLAYTIME_UNHEALTHY_ABILITY, REQUIRED_REST_HOURS - floor(GetBillingTimeRested()/60));
|
||||
end
|
||||
|
||||
TradeSkillCreateAllButton:Disable();
|
||||
if (not TradeSkillCreateAllButtonMask:IsShown()) then
|
||||
TradeSkillCreateAllButtonMask:Show();
|
||||
TradeSkillCreateAllButtonMask.tooltip = format(PLAYTIME_UNHEALTHY_ABILITY, REQUIRED_REST_HOURS - floor(GetBillingTimeRested()/60));
|
||||
end
|
||||
else
|
||||
if (TradeSkillCreateButtonMask:IsShown() or TradeSkillCreateAllButtonMask:IsShown()) then
|
||||
TradeSkillCreateButtonMask:Hide();
|
||||
TradeSkillCreateButtonMask.tooltip = nil;
|
||||
|
||||
TradeSkillCreateAllButtonMask:Hide();
|
||||
TradeSkillCreateAllButtonMask.tooltip = nil;
|
||||
|
||||
TradeSkillFrame_SetSelection(TradeSkillFrame.selectedSkill);
|
||||
TradeSkillFrame_Update()
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,6 @@
|
||||
## Interface: 30300
|
||||
## Title: Blizzard Trade Skill UI
|
||||
## Secure: 1
|
||||
## LoadOnDemand: 1
|
||||
Blizzard_TradeSkillUI.xml
|
||||
Localization.lua
|
||||
@@ -0,0 +1,989 @@
|
||||
<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">
|
||||
<Script file="Blizzard_TradeSkillUI.lua"/>
|
||||
<Button name="TradeSkillSkillButtonTemplate" inherits="ClassTrainerSkillButtonTemplate" hidden="false" virtual="true">
|
||||
<Layers>
|
||||
<Layer level="OVERLAY">
|
||||
<FontString name="$parentCount" inherits="GameFontNormal">
|
||||
<Size x="0" y="13"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset x="0" y="0"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
if ( IsModifiedClick() ) then
|
||||
HandleModifiedItemClick(GetTradeSkillRecipeLink(self:GetID()));
|
||||
else
|
||||
TradeSkillSkillButton_OnClick(self, button);
|
||||
end
|
||||
</OnClick>
|
||||
<OnLoad>
|
||||
_G[self:GetName().."Count"]:SetPoint("LEFT", self:GetName().."Text", "RIGHT", 2, 0);
|
||||
</OnLoad>
|
||||
<OnEnter>
|
||||
_G[self:GetName().."Count"]:SetVertexColor(HIGHLIGHT_FONT_COLOR.r, HIGHLIGHT_FONT_COLOR.g, HIGHLIGHT_FONT_COLOR.b);
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
if ( not self.isHighlighted ) then
|
||||
_G[self:GetName().."Count"]:SetVertexColor(self.r, self.g, self.b);
|
||||
end
|
||||
</OnLeave>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Button name="TradeSkillItemTemplate" inherits="QuestItemTemplate" virtual="true">
|
||||
<Scripts>
|
||||
<OnEnter>
|
||||
GameTooltip:SetOwner(self, "ANCHOR_TOPLEFT");
|
||||
GameTooltip:SetTradeSkillItem(TradeSkillFrame.selectedSkill, self:GetID());
|
||||
CursorUpdate(self);
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
GameTooltip:Hide();
|
||||
ResetCursor();
|
||||
</OnLeave>
|
||||
<OnUpdate>
|
||||
CursorOnUpdate(self, elapsed);
|
||||
</OnUpdate>
|
||||
<OnClick>
|
||||
HandleModifiedItemClick(GetTradeSkillReagentItemLink(TradeSkillFrame.selectedSkill, self:GetID()));
|
||||
</OnClick>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Frame name="TradeSkillFrame" toplevel="true" movable="true" parent="UIParent" enableMouse="true" hidden="true">
|
||||
<Size>
|
||||
<AbsDimension x="384" y="512"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-104"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<HitRectInsets>
|
||||
<AbsInset left="0" right="34" top="0" bottom="75"/>
|
||||
</HitRectInsets>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="TradeSkillFramePortrait">
|
||||
<Size>
|
||||
<AbsDimension x="60" y="60"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="7" y="-6"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<FontString name="$parentDummyString" inherits="GameFontNormal" hidden="true">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset x="0" y="0"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Size x="0" y="0"/>
|
||||
</FontString>
|
||||
</Layer>
|
||||
<Layer level="BORDER">
|
||||
<Texture file="Interface\ClassTrainerFrame\UI-ClassTrainer-TopLeft">
|
||||
<Size>
|
||||
<AbsDimension x="256" y="256"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<Texture file="Interface\ClassTrainerFrame\UI-ClassTrainer-TopRight">
|
||||
<Size>
|
||||
<AbsDimension x="128" y="256"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPRIGHT"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<Texture name="TradeSkillFrameBottomLeftTexture" file="Interface\TradeSkillFrame\UI-TradeSkill-BotLeft">
|
||||
<Size>
|
||||
<AbsDimension x="256" y="256"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOMLEFT"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<Texture name="TradeSkillFrameBottomRightTexture" file="Interface\ClassTrainerFrame\UI-ClassTrainer-BotRight">
|
||||
<Size>
|
||||
<AbsDimension x="128" y="256"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOMRIGHT"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<FontString name="TradeSkillFrameTitleText" inherits="GameFontNormal" text="Trade Skills">
|
||||
<Anchors>
|
||||
<Anchor point="TOP" relativeTo="TradeSkillFrame" relativePoint="TOP">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-17"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
<Layer level="ARTWORK">
|
||||
<Texture name="TradeSkillHorizontalBarLeft" file="Interface\ClassTrainerFrame\UI-ClassTrainer-HorizontalBar">
|
||||
<Size>
|
||||
<AbsDimension x="256" y="16"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="15" y="-221"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<TexCoords left="0" right="1.0" top="0" bottom="0.25"/>
|
||||
</Texture>
|
||||
<Texture file="Interface\ClassTrainerFrame\UI-ClassTrainer-HorizontalBar">
|
||||
<Size>
|
||||
<AbsDimension x="75" y="16"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillHorizontalBarLeft" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<TexCoords left="0" right="0.29296875" top="0.25" bottom="0.5"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Frames>
|
||||
<Button name="TradeSkillLinkButton">
|
||||
<Size>
|
||||
<AbsDimension x="32" y="16"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillFrameTitleText" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="5" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
local link=GetTradeSkillListLink();
|
||||
if (not ChatEdit_InsertLink(link) ) then
|
||||
ChatEdit_GetLastActiveWindow():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 function="GameTooltip_Hide"/>
|
||||
</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>
|
||||
<CheckButton name="TradeSkillFrameAvailableFilterCheckButton" inherits="UICheckButtonTemplate">
|
||||
<Size>
|
||||
<AbsDimension x="24" y="24"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="70" y="-46"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnLoad>
|
||||
TradeSkillFrameAvailableFilterCheckButtonText:SetText(CRAFT_IS_MAKEABLE);
|
||||
</OnLoad>
|
||||
<OnClick>
|
||||
TradeSkillOnlyShowMakeable(self:GetChecked());
|
||||
</OnClick>
|
||||
<OnEnter>
|
||||
GameTooltip:SetOwner(self, "ANCHOR_LEFT");
|
||||
GameTooltip:SetText(CRAFT_IS_MAKEABLE_TOOLTIP, nil, nil, nil, nil, 1);
|
||||
</OnEnter>
|
||||
<OnLeave function="GameTooltip_Hide"/>
|
||||
</Scripts>
|
||||
<HitRectInsets>
|
||||
<AbsInset left="0" right="-75" top="0" bottom="0"/>
|
||||
</HitRectInsets>
|
||||
</CheckButton>
|
||||
<StatusBar name="TradeSkillRankFrame" drawLayer="BACKGROUND" minValue="0" maxValue="1" defaultValue="0" enableMouse="false">
|
||||
<Size>
|
||||
<AbsDimension x="265" y="14"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="75" y="-36"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<FontString name="$parentSkillRank" inherits="GameFontHighlightSmall" justifyH="CENTER">
|
||||
<Size>
|
||||
<AbsDimension x="0" y="9"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOP" relativeTo="TradeSkillFrameTitleText">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-20"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<Texture name="$parentBorder" file="Interface\PaperDollInfoFrame\UI-Character-Skills-BarBorder">
|
||||
<Size>
|
||||
<AbsDimension x="274" y="27"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="-5" y="0"/>
|
||||
</Offset>
|
||||
</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 function="TradeSkillFrame_Update"/>
|
||||
</Scripts>
|
||||
<BarTexture name="$parentBar" file="Interface\PaperDollInfoFrame\UI-Character-Skills-Bar" />
|
||||
<BarColor r="0.25" g="0.25" b="0.75" />
|
||||
</StatusBar>
|
||||
<EditBox name="$parentEditBox" autoFocus="false">
|
||||
<Size>
|
||||
<AbsDimension x="128" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPRIGHT" relativeTo="TradeSkillRankFrame" relativePoint="BOTTOMRIGHT">
|
||||
<Offset x="2" y="2"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="$parentLeft" file="Interface\Common\Common-Input-Border">
|
||||
<Size>
|
||||
<AbsDimension x="8" y="20"/>
|
||||
</Size>
|
||||
<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>
|
||||
<AbsDimension x="8" y="20"/>
|
||||
</Size>
|
||||
<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>
|
||||
<AbsDimension x="0" y="20"/>
|
||||
</Size>
|
||||
<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>
|
||||
<OnShow>
|
||||
self:SetText(SEARCH);
|
||||
</OnShow>
|
||||
<OnEnterPressed function="EditBox_ClearFocus"/>
|
||||
<OnEscapePressed function="EditBox_ClearFocus"/>
|
||||
<OnTextChanged function="TradeSkillFilter_OnTextChanged"/>
|
||||
<OnEditFocusLost>
|
||||
self:HighlightText(0, 0);
|
||||
if ( self:GetText() == "" ) then
|
||||
self:SetText(SEARCH);
|
||||
end
|
||||
</OnEditFocusLost>
|
||||
<OnEditFocusGained>
|
||||
self:HighlightText();
|
||||
if ( self:GetText() == SEARCH ) then
|
||||
self:SetText("");
|
||||
end
|
||||
</OnEditFocusGained>
|
||||
</Scripts>
|
||||
<FontString inherits="ChatFontSmall"/>
|
||||
</EditBox>
|
||||
<Frame name="TradeSkillExpandButtonFrame">
|
||||
<Size>
|
||||
<AbsDimension x="54" y="32"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="15" y="-71"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="TradeSkillExpandTabLeft" file="Interface\ClassTrainerFrame\UI-ClassTrainer-ExpandTab-Left">
|
||||
<Size>
|
||||
<AbsDimension x="8" y="32"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<Texture name="TradeSkillExpandTabMiddle" file="Interface\QuestFrame\UI-QuestLogSortTab-Middle">
|
||||
<Size>
|
||||
<AbsDimension x="38" y="32"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillExpandTabLeft" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="6"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<Texture name="TradeSkillExpandTabRight" file="Interface\QuestFrame\UI-QuestLogSortTab-Right">
|
||||
<Size>
|
||||
<AbsDimension x="8" y="32"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillExpandTabMiddle" relativePoint="RIGHT"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Frames>
|
||||
<Button name="TradeSkillCollapseAllButton" hidden="false" inherits="ClassTrainerSkillButtonTemplate">
|
||||
<Size>
|
||||
<AbsDimension x="40" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillExpandTabLeft" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="3"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnLoad>
|
||||
_G[self:GetName()]:SetText(ALL);
|
||||
</OnLoad>
|
||||
<OnClick function="TradeSkillCollapseAllButton_OnClick"/>
|
||||
</Scripts>
|
||||
</Button>
|
||||
</Frames>
|
||||
</Frame>
|
||||
<Frame name="TradeSkillInvSlotDropDown" inherits="UIDropDownMenuTemplate" id="2">
|
||||
<Anchors>
|
||||
<Anchor point="TOPRIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="-25" y="-66"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnLoad function="TradeSkillInvSlotDropDown_OnLoad"/>
|
||||
</Scripts>
|
||||
</Frame>
|
||||
<Frame name="TradeSkillSubClassDropDown" inherits="UIDropDownMenuTemplate" id="1">
|
||||
<Anchors>
|
||||
<Anchor point="RIGHT" relativeTo="TradeSkillInvSlotDropDown" relativePoint="LEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="35" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnLoad function="TradeSkillSubClassDropDown_OnLoad"/>
|
||||
</Scripts>
|
||||
</Frame>
|
||||
|
||||
<Frame name="TradeSkillHighlightFrame" hidden="true">
|
||||
<Size>
|
||||
<AbsDimension x="293" y="16"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT"/>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<Texture name="TradeSkillHighlight" file="Interface\Buttons\UI-Listbox-Highlight2"/>
|
||||
</Layer>
|
||||
</Layers>
|
||||
</Frame>
|
||||
<Button name="TradeSkillSkill1" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillFrame">
|
||||
<Offset>
|
||||
<AbsDimension x="22" y="-96"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill2" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill1" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill3" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill2" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill4" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill3" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill5" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill4" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill6" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill5" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill7" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill6" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillSkill8" inherits="TradeSkillSkillButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkill7" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<ScrollFrame name="TradeSkillListScrollFrame" inherits="ClassTrainerListScrollFrameTemplate">
|
||||
<Size>
|
||||
<AbsDimension x="296" y="130"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPRIGHT" relativeTo="TradeSkillFrame" relativePoint="TOPRIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="-67" y="-96"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnVerticalScroll>
|
||||
FauxScrollFrame_OnVerticalScroll(self, offset, TRADE_SKILL_HEIGHT, TradeSkillFrame_Update);
|
||||
</OnVerticalScroll>
|
||||
</Scripts>
|
||||
</ScrollFrame>
|
||||
<ScrollFrame name="TradeSkillDetailScrollFrame" inherits="ClassTrainerDetailScrollFrameTemplate">
|
||||
<Size>
|
||||
<AbsDimension x="297" y="176"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="20" y="-234"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<ScrollChild>
|
||||
<Frame name="TradeSkillDetailScrollChildFrame">
|
||||
<Size>
|
||||
<AbsDimension x="297" y="150"/>
|
||||
</Size>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<FontString name="TradeSkillSkillName" inherits="GameFontNormal" text="Skill Name" justifyH="LEFT">
|
||||
<Size>
|
||||
<AbsDimension x="244" y="0"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="50" y="-5"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<FontString name="TradeSkillRequirementLabel" inherits="GameFontHighlightSmall" text="REQUIRES_LABEL">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkillName" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<FontString name="TradeSkillRequirementText" inherits="GameFontHighlightSmall" justifyV="TOP" justifyH="LEFT">
|
||||
<Size>
|
||||
<AbsDimension x="180" y="0"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillRequirementLabel" relativePoint="TOPRIGHT" >
|
||||
<Offset>
|
||||
<AbsDimension x="4" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<!--
|
||||
<FontString name="TradeSkillSkillLineName" inherits="GameFontHighlightSmall" text="Skill Line">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillSkillName" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
-->
|
||||
<FontString name="TradeSkillSkillCooldown" inherits="GameFontRedSmall">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillRequirementLabel" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<Texture name="TradeSkillDetailHeaderLeft" file="Interface\ClassTrainerFrame\UI-ClassTrainer-DetailHeaderLeft">
|
||||
<Size>
|
||||
<AbsDimension x="256" y="64"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="3"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<Texture file="Interface\ClassTrainerFrame\UI-ClassTrainer-DetailHeaderRight">
|
||||
<Size>
|
||||
<AbsDimension x="64" y="64"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillDetailHeaderLeft" relativePoint="TOPRIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
<FontString name="TradeSkillDescription" inherits="GameFontHighlightSmall" justifyH="LEFT">
|
||||
<Size>
|
||||
<AbsDimension x="290" y="0"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="5" y="-50"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<FontString name="TradeSkillReagentLabel" inherits="GameFontNormalSmall" text="SPELL_REAGENTS">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillDescription" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-10"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Frames>
|
||||
<Button name="TradeSkillSkillIcon">
|
||||
<Size>
|
||||
<AbsDimension x="37" y="37"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="8" y="-3"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<FontString name="TradeSkillSkillIconCount" inherits="NumberFontNormal" justifyH="RIGHT" hidden="false">
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOMRIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="-5" y="2"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Scripts>
|
||||
<OnLoad>
|
||||
self.hasItem = 1;
|
||||
</OnLoad>
|
||||
<OnClick>
|
||||
HandleModifiedItemClick(GetTradeSkillItemLink(TradeSkillFrame.selectedSkill));
|
||||
</OnClick>
|
||||
<OnEnter function="TradeSkillItem_OnEnter"/>
|
||||
<OnLeave function="GameTooltip_HideResetCursor"/>
|
||||
<OnUpdate>
|
||||
if ( GameTooltip:IsOwned(self) ) then
|
||||
TradeSkillItem_OnEnter(self);
|
||||
end
|
||||
CursorOnUpdate(self);
|
||||
</OnUpdate>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent1" inherits="TradeSkillItemTemplate" id="1">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillReagentLabel" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="-2" y="-3"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent2" inherits="TradeSkillItemTemplate" id="2">
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillReagent1" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent3" inherits="TradeSkillItemTemplate" id="3">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillReagent1" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-2"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent4" inherits="TradeSkillItemTemplate" id="4">
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillReagent3" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent5" inherits="TradeSkillItemTemplate" id="5">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillReagent3" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-2"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent6" inherits="TradeSkillItemTemplate" id="6">
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillReagent5" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent7" inherits="TradeSkillItemTemplate" id="7">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="TradeSkillReagent6" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-2"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
<Button name="TradeSkillReagent8" inherits="TradeSkillItemTemplate" id="8">
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillReagent7" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
</Frames>
|
||||
</Frame>
|
||||
</ScrollChild>
|
||||
</ScrollFrame>
|
||||
<Button name="TradeSkillCreateButton" inherits="UIPanelButtonTemplate" text="CREATE">
|
||||
<Size>
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="CENTER" relativeTo="TradeSkillFrame" relativePoint="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="224" y="-422"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Frames>
|
||||
<Frame name="$parentMask" setAllPoints="true" enableMouse="true" hidden="true">
|
||||
<Scripts>
|
||||
<OnEnter>
|
||||
if (self.tooltip) then
|
||||
GameTooltip:SetOwner(self, "ANCHOR_LEFT");
|
||||
GameTooltip:SetText(self.tooltip, nil, nil, nil, nil, 1);
|
||||
end
|
||||
</OnEnter>
|
||||
<OnLeave function="GameTooltip_Hide"/>
|
||||
</Scripts>
|
||||
</Frame>
|
||||
</Frames>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
if ( (not PartialPlayTime()) and (not NoPlayTime()) ) then
|
||||
DoTradeSkill(TradeSkillFrame.selectedSkill, TradeSkillInputBox:GetNumber());
|
||||
TradeSkillInputBox:ClearFocus();
|
||||
end
|
||||
</OnClick>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Button name="TradeSkillCancelButton" inherits="UIPanelButtonTemplate" text="EXIT">
|
||||
<Size>
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="CENTER" relativeTo="TradeSkillFrame" relativePoint="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="305" y="-422"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnClick function="HideParentPanel"/>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Button name="TradeSkillCreateAllButton" inherits="UIPanelButtonTemplate" text="CREATE_ALL">
|
||||
<Size>
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="RIGHT" relativeTo="TradeSkillCreateButton" relativePoint="LEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="-86" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Frames>
|
||||
<Frame name="$parentMask" setAllPoints="true" enableMouse="true" hidden="true">
|
||||
<Scripts>
|
||||
<OnEnter>
|
||||
if (self.tooltip) then
|
||||
GameTooltip:SetOwner(self, "ANCHOR_LEFT");
|
||||
GameTooltip:SetText(self.tooltip, nil, nil, nil, nil, 1);
|
||||
end
|
||||
</OnEnter>
|
||||
<OnLeave function="GameTooltip_Hide"/>
|
||||
</Scripts>
|
||||
</Frame>
|
||||
</Frames>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
if ( (not PartialPlayTime()) and (not NoPlayTime()) ) then
|
||||
TradeSkillInputBox:SetNumber(TradeSkillFrame.numAvailable);
|
||||
DoTradeSkill(TradeSkillFrame.selectedSkill, TradeSkillFrame.numAvailable);
|
||||
TradeSkillInputBox:ClearFocus();
|
||||
end
|
||||
</OnClick>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Button name="TradeSkillDecrementButton">
|
||||
<Size>
|
||||
<AbsDimension x="23" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillCreateAllButton" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="3" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
TradeSkillFrameDecrement_OnClick();
|
||||
TradeSkillInputBox: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="TradeSkillInputBox" letters="3" numeric="true" autoFocus="false">
|
||||
<Size>
|
||||
<AbsDimension x="30" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="TradeSkillDecrementButton" relativePoint="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="4" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="$parentLeft" file="Interface\Common\Common-Input-Border">
|
||||
<Size>
|
||||
<AbsDimension x="8" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="-5" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<TexCoords left="0" right="0.0625" top="0" bottom="0.625"/>
|
||||
</Texture>
|
||||
<Texture name="$parentRight" file="Interface\Common\Common-Input-Border">
|
||||
<Size>
|
||||
<AbsDimension x="8" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="RIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="0"/>
|
||||
</Offset>
|
||||
</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>
|
||||
<AbsDimension x="10" y="20"/>
|
||||
</Size>
|
||||
<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>
|
||||
<OnEnterPressed function="EditBox_ClearFocus"/>
|
||||
<OnEscapePressed function="EditBox_ClearFocus"/>
|
||||
<OnTextChanged>
|
||||
if ( self:GetText() == "0" ) then
|
||||
self:SetText("1");
|
||||
end
|
||||
</OnTextChanged>
|
||||
<OnEditFocusLost function="EditBox_ClearHighlight"/>
|
||||
<OnEditFocusGained function="EditBox_HighlightText"/>
|
||||
</Scripts>
|
||||
<FontString inherits="ChatFontNormal"/>
|
||||
</EditBox>
|
||||
<Button name="TradeSkillIncrementButton">
|
||||
<Size>
|
||||
<AbsDimension x="23" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="RIGHT" relativeTo="TradeSkillCreateButton" relativePoint="LEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="-3" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
TradeSkillFrameIncrement_OnClick();
|
||||
TradeSkillInputBox: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>
|
||||
<Button name="TradeSkillFrameCloseButton" inherits="UIPanelCloseButton">
|
||||
<Anchors>
|
||||
<Anchor point="TOPRIGHT" relativeTo="TradeSkillFrame" relativePoint="TOPRIGHT">
|
||||
<Offset>
|
||||
<AbsDimension x="-29" y="-8"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Button>
|
||||
</Frames>
|
||||
<Scripts>
|
||||
<OnLoad function="TradeSkillFrame_OnLoad"/>
|
||||
<OnEvent function="TradeSkillFrame_OnEvent"/>
|
||||
<OnShow>
|
||||
TradeSkillInputBox:SetNumber(1);
|
||||
PlaySound("igCharacterInfoOpen");
|
||||
</OnShow>
|
||||
<OnHide>
|
||||
CloseTradeSkill();
|
||||
PlaySound("igCharacterInfoClose");
|
||||
</OnHide>
|
||||
<OnUpdate function="TradeSkillFrame_PlaytimeUpdate"/>
|
||||
</Scripts>
|
||||
</Frame>
|
||||
</Ui>
|
||||
@@ -0,0 +1 @@
|
||||
-- This file is executed at the end of addon load
|
||||
Reference in New Issue
Block a user