feat: icons tab added and option to turn on/off unused item to red

This commit is contained in:
Salikh Gurgenidze
2026-01-04 21:49:13 +04:00
parent 7661625803
commit 1ceccc9875
8 changed files with 302 additions and 150 deletions
+4
View File
@@ -47,6 +47,7 @@ function DB:Initialize()
bgTransparency = 0.15, bgTransparency = 0.15,
showTrackedItems = true, showTrackedItems = true,
showTooltipCounts = true, showTooltipCounts = true,
markUnusableItems = true,
bagViewType = "single", -- single, category bagViewType = "single", -- single, category
bankViewType = "single", -- single, category bankViewType = "single", -- single, category
trackedItems = {}, trackedItems = {},
@@ -117,6 +118,9 @@ function DB:Initialize()
if Guda_CharDB.settings.questBarPinnedItems == nil then if Guda_CharDB.settings.questBarPinnedItems == nil then
Guda_CharDB.settings.questBarPinnedItems = {} Guda_CharDB.settings.questBarPinnedItems = {}
end end
if Guda_CharDB.settings.markUnusableItems == nil then
Guda_CharDB.settings.markUnusableItems = true
end
-- Initialize this character's data -- Initialize this character's data
if not Guda_DB.characters[fullName] then if not Guda_DB.characters[fullName] then
+1 -1
View File
@@ -2,7 +2,7 @@
## Title: Guda ## Title: Guda
## Notes: All-in-one bag and bank addon for World of Warcraft 1.12.1 (Turtle WoW) ## Notes: All-in-one bag and bank addon for World of Warcraft 1.12.1 (Turtle WoW)
## Author: Vati ## Author: Vati
## Version: 1.5.6 ## Version: 1.5.7
## SavedVariables: Guda_DB ## SavedVariables: Guda_DB
## SavedVariablesPerCharacter: Guda_CharDB ## SavedVariablesPerCharacter: Guda_CharDB
+15
View File
@@ -6,6 +6,9 @@ local addon = Guda
local SortEngine = {} local SortEngine = {}
addon.Modules.SortEngine = SortEngine addon.Modules.SortEngine = SortEngine
-- Flag to track if sorting is currently in progress
SortEngine.sortingInProgress = false
--=========================================================================== --===========================================================================
-- CONSTANTS -- CONSTANTS
--=========================================================================== --===========================================================================
@@ -1386,6 +1389,12 @@ end
--=========================================================================== --===========================================================================
function SortEngine:ExecuteSort(sortFunction, analyzeFunction, updateFrame, sortType) function SortEngine:ExecuteSort(sortFunction, analyzeFunction, updateFrame, sortType)
-- Check if sorting is already in progress
if self.sortingInProgress then
addon:Print("Sorting already in progress, please wait...")
return false, "sorting in progress"
end
-- Clear property cache at the start of a sort operation -- Clear property cache at the start of a sort operation
self:ClearCache() self:ClearCache()
@@ -1397,6 +1406,9 @@ function SortEngine:ExecuteSort(sortFunction, analyzeFunction, updateFrame, sort
return false, "already sorted" return false, "already sorted"
end end
-- Set sorting flag
self.sortingInProgress = true
-- Print analysis results -- Print analysis results
addon:Print("Sorting %s... (%d/%d items need sorting, estimated %d passes)", addon:Print("Sorting %s... (%d/%d items need sorting, estimated %d passes)",
sortType, analysis.itemsOutOfPlace, analysis.totalItems, analysis.passes) sortType, analysis.itemsOutOfPlace, analysis.totalItems, analysis.passes)
@@ -1429,6 +1441,7 @@ function SortEngine:ExecuteSort(sortFunction, analyzeFunction, updateFrame, sort
frame:SetScript("OnUpdate", function() frame:SetScript("OnUpdate", function()
if GetTime() - startTime >= 0.7 then if GetTime() - startTime >= 0.7 then
frame:SetScript("OnUpdate", nil) frame:SetScript("OnUpdate", nil)
SortEngine.sortingInProgress = false
updateFrame() updateFrame()
end end
end) end)
@@ -1443,6 +1456,7 @@ function SortEngine:ExecuteSort(sortFunction, analyzeFunction, updateFrame, sort
frame:SetScript("OnUpdate", function() frame:SetScript("OnUpdate", function()
if GetTime() - startTime >= 0.7 then if GetTime() - startTime >= 0.7 then
frame:SetScript("OnUpdate", nil) frame:SetScript("OnUpdate", nil)
SortEngine.sortingInProgress = false
updateFrame() updateFrame()
end end
end) end)
@@ -1463,6 +1477,7 @@ function SortEngine:ExecuteSort(sortFunction, analyzeFunction, updateFrame, sort
frame:SetScript("OnUpdate", function() frame:SetScript("OnUpdate", function()
if GetTime() - startTime >= 0.7 then if GetTime() - startTime >= 0.7 then
frame:SetScript("OnUpdate", nil) frame:SetScript("OnUpdate", nil)
SortEngine.sortingInProgress = false
updateFrame() updateFrame()
end end
end) end)
+10
View File
@@ -1358,6 +1358,12 @@ function Guda_BagFrame_MergeStacks()
return return
end end
-- Check if sorting is already in progress
if addon.Modules.SortEngine.sortingInProgress then
addon:Print("Sorting already in progress, please wait...")
return
end
local bagIDs = addon.Constants.BAGS local bagIDs = addon.Constants.BAGS
local moveQueue = {} local moveQueue = {}
@@ -1450,6 +1456,9 @@ function Guda_BagFrame_MergeStacks()
return return
end end
-- Set sorting flag
addon.Modules.SortEngine.sortingInProgress = true
-- Process queue with delays -- Process queue with delays
local queueIndex = 1 local queueIndex = 1
local retryCount = 0 local retryCount = 0
@@ -1458,6 +1467,7 @@ function Guda_BagFrame_MergeStacks()
local function ProcessNextMove() local function ProcessNextMove()
if queueIndex > table.getn(moveQueue) then if queueIndex > table.getn(moveQueue) then
addon:Print("Merged " .. totalMoves .. " stack(s)") addon:Print("Merged " .. totalMoves .. " stack(s)")
addon.Modules.SortEngine.sortingInProgress = false
BagFrame:Update() BagFrame:Update()
return return
end end
+10
View File
@@ -998,6 +998,12 @@ function Guda_BankFrame_MergeStacks()
return return
end end
-- Check if sorting is already in progress
if addon.Modules.SortEngine.sortingInProgress then
addon:Print("Sorting already in progress, please wait...")
return
end
local bagIDs = addon.Constants.BANK_BAGS local bagIDs = addon.Constants.BANK_BAGS
local moveQueue = {} local moveQueue = {}
@@ -1090,6 +1096,9 @@ function Guda_BankFrame_MergeStacks()
return return
end end
-- Set sorting flag
addon.Modules.SortEngine.sortingInProgress = true
-- Process queue with delays -- Process queue with delays
local queueIndex = 1 local queueIndex = 1
local retryCount = 0 local retryCount = 0
@@ -1098,6 +1107,7 @@ function Guda_BankFrame_MergeStacks()
local function ProcessNextMove() local function ProcessNextMove()
if queueIndex > table.getn(moveQueue) then if queueIndex > table.getn(moveQueue) then
addon:Print("Merged " .. totalMoves .. " stack(s)") addon:Print("Merged " .. totalMoves .. " stack(s)")
addon.Modules.SortEngine.sortingInProgress = false
BankFrame:Update() BankFrame:Update()
return return
end end
+19 -1
View File
@@ -193,6 +193,20 @@ local function Guda_ItemButton_UpdateUsableTint(self)
SetItemButtonTextureVertexColor(self, 1.0, 1.0, 1.0) SetItemButtonTextureVertexColor(self, 1.0, 1.0, 1.0)
end end
-- Check if feature is enabled
local markUnusable = true
if Guda and Guda.Modules and Guda.Modules.DB then
markUnusable = Guda.Modules.DB:GetSetting("markUnusableItems")
if markUnusable == nil then
markUnusable = true
end
end
-- If feature is disabled, just return after clearing
if not markUnusable then
return
end
-- Only evaluate for live (player) items; DB cached items from other chars cannot be scanned -- Only evaluate for live (player) items; DB cached items from other chars cannot be scanned
if not self or not self.hasItem or not self.bagID or not self.slotID or self.isReadOnly or self.otherChar then if not self or not self.hasItem or not self.bagID or not self.slotID or self.isReadOnly or self.otherChar then
return return
@@ -1100,7 +1114,11 @@ function Guda_ItemButton_OnEnter(self)
GameTooltip:Show() GameTooltip:Show()
-- Handle merchant sell cursor (same approach as BagShui) -- TESTING: Print item info to console for debugging
--local name, link, itemQuality, iLevel, itemCategory, itemType, itemStackCount, itemSubType, itemTexture, itemEquipLoc, itemSellPrice = addon.Modules.Utils:GetItemInfo(self.itemData.link)
--addon:Print("name:" .. tostring(name) .. " link:" .. tostring(link) .. " quality:" .. tostring(itemQuality) .. " iLevel:" .. tostring(iLevel) .. " category:" .. tostring(itemCategory) .. " type:" .. tostring(itemType) .. " subType:" .. tostring(itemSubType) .. " stackCount:" .. tostring(itemStackCount) .. " equipLoc:" .. tostring(itemEquipLoc) .. " sellPrice:" .. tostring(itemSellPrice))
-- Handle merchant sell cursor (same approach as BagShui)
if MerchantFrame:IsShown() and not self.isBank and not self.otherChar and self.hasItem then if MerchantFrame:IsShown() and not self.isBank and not self.otherChar and self.hasItem then
ShowContainerSellCursor(self.bagID, self.slotID) ShowContainerSellCursor(self.bagID, self.slotID)
else else
+59 -4
View File
@@ -28,9 +28,10 @@ function Guda_SettingsPopup_OnLoad(self)
end end
-- Set tab names -- Set tab names
PanelTemplates_SetNumTabs(self, 2) PanelTemplates_SetNumTabs(self, 3)
getglobal(self:GetName().."Tab1"):SetText("General") getglobal(self:GetName().."Tab1"):SetText("General")
getglobal(self:GetName().."Tab2"):SetText("Quick Guide") getglobal(self:GetName().."Tab2"):SetText("Icons")
getglobal(self:GetName().."Tab3"):SetText("Quick Guide")
PanelTemplates_SetTab(self, 1) PanelTemplates_SetTab(self, 1)
-- Set How to Use text -- Set How to Use text
@@ -58,11 +59,17 @@ function Guda_SettingsPopup_Tab_OnClick(id)
local frame = Guda_SettingsPopup local frame = Guda_SettingsPopup
PanelTemplates_SetTab(frame, id) PanelTemplates_SetTab(frame, id)
-- Hide all tabs
getglobal(frame:GetName().."_GeneralTab"):Hide()
getglobal(frame:GetName().."_IconsTab"):Hide()
getglobal(frame:GetName().."_HowToUseTab"):Hide()
-- Show selected tab
if id == 1 then if id == 1 then
getglobal(frame:GetName().."_GeneralTab"):Show() getglobal(frame:GetName().."_GeneralTab"):Show()
getglobal(frame:GetName().."_HowToUseTab"):Hide() elseif id == 2 then
getglobal(frame:GetName().."_IconsTab"):Show()
else else
getglobal(frame:GetName().."_GeneralTab"):Hide()
getglobal(frame:GetName().."_HowToUseTab"):Show() getglobal(frame:GetName().."_HowToUseTab"):Show()
end end
end end
@@ -948,6 +955,54 @@ function Guda_SettingsPopup_ShowTooltipCountsCheckbox_OnClick(self)
end end
end end
-- Mark Unusable Items Checkbox OnLoad
function Guda_SettingsPopup_MarkUnusableCheckbox_OnLoad(self)
local text = getglobal(self:GetName().."Text")
if text then
text:SetText("Mark Unusable Items")
-- Increase font size
local font, _, flags = text:GetFont()
if font then
text:SetFont(font, 13, flags)
end
end
-- Tooltip
self.tooltipText = "Show a red tint on items that your character cannot use (wrong class, level, etc.)."
local markUnusable = true
if Guda and Guda.Modules and Guda.Modules.DB then
markUnusable = Guda.Modules.DB:GetSetting("markUnusableItems")
if markUnusable == nil then
markUnusable = true
end
end
self:SetChecked(markUnusable and 1 or 0)
end
-- Mark Unusable Items Checkbox OnClick
function Guda_SettingsPopup_MarkUnusableCheckbox_OnClick(self)
local isChecked = self:GetChecked() == 1
-- Save setting
if Guda and Guda.Modules and Guda.Modules.DB then
Guda.Modules.DB:SetSetting("markUnusableItems", isChecked)
end
-- Update bag and bank frames to apply/remove the red tint
local bagFrame = getglobal("Guda_BagFrame")
if bagFrame and bagFrame:IsShown() then
Guda.Modules.BagFrame:Update()
end
local bankFrame = getglobal("Guda_BankFrame")
if bankFrame and bankFrame:IsShown() then
Guda.Modules.BankFrame:Update()
end
end
-- Bag View Type Button OnClick -- Bag View Type Button OnClick
function Guda_SettingsPopup_BagViewTypeButton_OnClick() function Guda_SettingsPopup_BagViewTypeButton_OnClick()
local current = Guda.Modules.DB:GetSetting("bagViewType") or "single" local current = Guda.Modules.DB:GetSetting("bagViewType") or "single"
+181 -141
View File
@@ -3,7 +3,7 @@
<!-- Settings Popup Frame --> <!-- Settings Popup Frame -->
<Frame name="Guda_SettingsPopup" toplevel="true" movable="true" enableMouse="true" hidden="true" parent="UIParent" frameStrata="DIALOG"> <Frame name="Guda_SettingsPopup" toplevel="true" movable="true" enableMouse="true" hidden="true" parent="UIParent" frameStrata="DIALOG">
<Size> <Size>
<AbsDimension x="550" y="590"/> <AbsDimension x="510" y="590"/>
</Size> </Size>
<Anchors> <Anchors>
@@ -72,6 +72,20 @@
</OnClick> </OnClick>
</Scripts> </Scripts>
</Button> </Button>
<Button name="$parentTab3" inherits="CharacterFrameTabButtonTemplate" id="3">
<Anchors>
<Anchor point="LEFT" relativeTo="$parentTab2" relativePoint="RIGHT">
<Offset>
<AbsDimension x="-16" y="0"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnClick>
Guda_SettingsPopup_Tab_OnClick(3)
</OnClick>
</Scripts>
</Button>
<!-- Close Button --> <!-- Close Button -->
<Button name="$parent_CloseButton" inherits="UIPanelCloseButton"> <Button name="$parent_CloseButton" inherits="UIPanelCloseButton">
@@ -95,7 +109,7 @@
<!-- Bag Columns Slider --> <!-- Bag Columns Slider -->
<Slider name="Guda_SettingsPopup_BagColumnsSlider" inherits="OptionsSliderTemplate"> <Slider name="Guda_SettingsPopup_BagColumnsSlider" inherits="OptionsSliderTemplate">
<Size> <Size>
<AbsDimension x="500" y="17"/> <AbsDimension x="460" y="17"/>
</Size> </Size>
<Anchors> <Anchors>
<Anchor point="TOP"> <Anchor point="TOP">
@@ -117,7 +131,7 @@
<!-- Bank Columns Slider --> <!-- Bank Columns Slider -->
<Slider name="Guda_SettingsPopup_BankColumnsSlider" inherits="OptionsSliderTemplate"> <Slider name="Guda_SettingsPopup_BankColumnsSlider" inherits="OptionsSliderTemplate">
<Size> <Size>
<AbsDimension x="500" y="17"/> <AbsDimension x="460" y="17"/>
</Size> </Size>
<Anchors> <Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_BagColumnsSlider"> <Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_BagColumnsSlider">
@@ -136,79 +150,13 @@
</Scripts> </Scripts>
</Slider> </Slider>
<!-- Icon Size Slider -->
<Slider name="Guda_SettingsPopup_IconSizeSlider" inherits="OptionsSliderTemplate">
<Size>
<AbsDimension x="500" y="17"/>
</Size>
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_BankColumnsSlider">
<Offset>
<AbsDimension x="0" y="-40"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_IconSizeSlider_OnLoad(this)
</OnLoad>
<OnValueChanged>
Guda_SettingsPopup_IconSizeSlider_OnValueChanged(this)
</OnValueChanged>
</Scripts>
</Slider>
<!-- Icon Font Size Slider -->
<Slider name="Guda_SettingsPopup_IconFontSizeSlider" inherits="OptionsSliderTemplate">
<Size>
<AbsDimension x="500" y="17"/>
</Size>
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_IconSizeSlider">
<Offset>
<AbsDimension x="0" y="-40"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_IconFontSizeSlider_OnLoad(this)
</OnLoad>
<OnValueChanged>
Guda_SettingsPopup_IconFontSizeSlider_OnValueChanged(this)
</OnValueChanged>
</Scripts>
</Slider>
<!-- Icon Spacing Slider -->
<Slider name="Guda_SettingsPopup_IconSpacingSlider" inherits="OptionsSliderTemplate">
<Size>
<AbsDimension x="500" y="17"/>
</Size>
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_IconFontSizeSlider">
<Offset>
<AbsDimension x="0" y="-40"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_IconSpacingSlider_OnLoad(this)
</OnLoad>
<OnValueChanged>
Guda_SettingsPopup_IconSpacingSlider_OnValueChanged(this)
</OnValueChanged>
</Scripts>
</Slider>
<!-- Background Transparency Slider --> <!-- Background Transparency Slider -->
<Slider name="Guda_SettingsPopup_BgTransparencySlider" inherits="OptionsSliderTemplate"> <Slider name="Guda_SettingsPopup_BgTransparencySlider" inherits="OptionsSliderTemplate">
<Size> <Size>
<AbsDimension x="500" y="17"/> <AbsDimension x="460" y="17"/>
</Size> </Size>
<Anchors> <Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_IconSpacingSlider"> <Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_BankColumnsSlider">
<Offset> <Offset>
<AbsDimension x="0" y="-40"/> <AbsDimension x="0" y="-40"/>
</Offset> </Offset>
@@ -229,7 +177,7 @@
<Anchors> <Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_BgTransparencySlider"> <Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_BgTransparencySlider">
<Offset> <Offset>
<AbsDimension x="-240" y="-30"/> <AbsDimension x="-215" y="-30"/>
</Offset> </Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
@@ -248,7 +196,7 @@
<Anchors> <Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_LockBagsCheckbox"> <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_LockBagsCheckbox">
<Offset> <Offset>
<AbsDimension x="145" y="0"/> <AbsDimension x="185" y="0"/>
</Offset> </Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
@@ -262,27 +210,8 @@
</Scripts> </Scripts>
</CheckButton> </CheckButton>
<!-- Quality Border Equipment Checkbox --> <!-- Show Search Bar Checkbox -->
<CheckButton name="Guda_SettingsPopup_QualityBorderEquipmentCheckbox" inherits="OptionsCheckButtonTemplate"> <CheckButton name="Guda_SettingsPopup_ShowSearchBarCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_HideBordersCheckbox">
<Offset>
<AbsDimension x="145" y="0"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_QualityBorderEquipmentCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_QualityBorderEquipmentCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
<!-- Quality Border Other Checkbox -->
<CheckButton name="Guda_SettingsPopup_QualityBorderOtherCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors> <Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_LockBagsCheckbox"> <Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_LockBagsCheckbox">
<Offset> <Offset>
@@ -290,25 +219,6 @@
</Offset> </Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_QualityBorderOtherCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_QualityBorderOtherCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
<!-- Show Search Bar Checkbox -->
<CheckButton name="Guda_SettingsPopup_ShowSearchBarCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_QualityBorderOtherCheckbox">
<Offset>
<AbsDimension x="145" y="0"/>
</Offset>
</Anchor>
</Anchors>
<Scripts> <Scripts>
<OnLoad> <OnLoad>
Guda_SettingsPopup_ShowSearchBarCheckbox_OnLoad(this) Guda_SettingsPopup_ShowSearchBarCheckbox_OnLoad(this)
@@ -324,7 +234,7 @@
<Anchors> <Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_ShowSearchBarCheckbox"> <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_ShowSearchBarCheckbox">
<Offset> <Offset>
<AbsDimension x="145" y="0"/> <AbsDimension x="185" y="0"/>
</Offset> </Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
@@ -341,7 +251,7 @@
<!-- Hover Bagline Checkbox --> <!-- Hover Bagline Checkbox -->
<CheckButton name="Guda_SettingsPopup_HoverBaglineCheckbox" inherits="OptionsCheckButtonTemplate"> <CheckButton name="Guda_SettingsPopup_HoverBaglineCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors> <Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_QualityBorderOtherCheckbox"> <Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_ShowSearchBarCheckbox">
<Offset> <Offset>
<AbsDimension x="0" y="-8"/> <AbsDimension x="0" y="-8"/>
</Offset> </Offset>
@@ -362,7 +272,7 @@
<Anchors> <Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_HoverBaglineCheckbox"> <Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_HoverBaglineCheckbox">
<Offset> <Offset>
<AbsDimension x="145" y="0"/> <AbsDimension x="185" y="0"/>
</Offset> </Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
@@ -376,25 +286,6 @@
</Scripts> </Scripts>
</CheckButton> </CheckButton>
<!-- Show Tooltip Counts Checkbox -->
<CheckButton name="Guda_SettingsPopup_ShowTooltipCountsCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_HideFooterCheckbox">
<Offset>
<AbsDimension x="145" y="0"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_ShowTooltipCountsCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_ShowTooltipCountsCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
<!-- Reverse Stack Sort Checkbox --> <!-- Reverse Stack Sort Checkbox -->
<CheckButton name="Guda_SettingsPopup_ReverseStackSortCheckbox" inherits="OptionsCheckButtonTemplate"> <CheckButton name="Guda_SettingsPopup_ReverseStackSortCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors> <Anchors>
@@ -414,12 +305,12 @@
</Scripts> </Scripts>
</CheckButton> </CheckButton>
<!-- View Types - Same row as Reverse Stack Sort --> <!-- View Types - Row below Reverse Stack Sort -->
<Button name="Guda_SettingsPopup_BagViewTypeButton" inherits="UIPanelButtonTemplate"> <Button name="Guda_SettingsPopup_BagViewTypeButton" inherits="UIPanelButtonTemplate">
<Size><AbsDimension x="140" y="22"/></Size> <Size><AbsDimension x="200" y="22"/></Size>
<Anchors> <Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_ReverseStackSortCheckbox"> <Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_ReverseStackSortCheckbox">
<Offset><AbsDimension x="147" y="0"/></Offset> <Offset><AbsDimension x="85" y="-8"/></Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
<Scripts> <Scripts>
@@ -428,10 +319,10 @@
</Button> </Button>
<Button name="Guda_SettingsPopup_BankViewTypeButton" inherits="UIPanelButtonTemplate"> <Button name="Guda_SettingsPopup_BankViewTypeButton" inherits="UIPanelButtonTemplate">
<Size><AbsDimension x="140" y="22"/></Size> <Size><AbsDimension x="200" y="22"/></Size>
<Anchors> <Anchors>
<Anchor point="LEFT" relativeTo="Guda_SettingsPopup_BagViewTypeButton" relativePoint="RIGHT"> <Anchor point="LEFT" relativeTo="Guda_SettingsPopup_BagViewTypeButton" relativePoint="RIGHT">
<Offset><AbsDimension x="10" y="0"/></Offset> <Offset><AbsDimension x="20" y="0"/></Offset>
</Anchor> </Anchor>
</Anchors> </Anchors>
<Scripts> <Scripts>
@@ -460,6 +351,155 @@
</Layer> </Layer>
</Layers> </Layers>
</Frame> </Frame>
<!-- Icons Tab Content -->
<Frame name="$parent_IconsTab" setAllPoints="true" hidden="true">
<Frames>
<!-- Icon Size Slider -->
<Slider name="Guda_SettingsPopup_IconSizeSlider" inherits="OptionsSliderTemplate">
<Size>
<AbsDimension x="460" y="17"/>
</Size>
<Anchors>
<Anchor point="TOP">
<Offset>
<AbsDimension x="0" y="-90"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_IconSizeSlider_OnLoad(this)
</OnLoad>
<OnValueChanged>
Guda_SettingsPopup_IconSizeSlider_OnValueChanged(this)
</OnValueChanged>
</Scripts>
</Slider>
<!-- Icon Font Size Slider -->
<Slider name="Guda_SettingsPopup_IconFontSizeSlider" inherits="OptionsSliderTemplate">
<Size>
<AbsDimension x="460" y="17"/>
</Size>
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_IconSizeSlider">
<Offset>
<AbsDimension x="0" y="-40"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_IconFontSizeSlider_OnLoad(this)
</OnLoad>
<OnValueChanged>
Guda_SettingsPopup_IconFontSizeSlider_OnValueChanged(this)
</OnValueChanged>
</Scripts>
</Slider>
<!-- Icon Spacing Slider -->
<Slider name="Guda_SettingsPopup_IconSpacingSlider" inherits="OptionsSliderTemplate">
<Size>
<AbsDimension x="460" y="17"/>
</Size>
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_IconFontSizeSlider">
<Offset>
<AbsDimension x="0" y="-40"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_IconSpacingSlider_OnLoad(this)
</OnLoad>
<OnValueChanged>
Guda_SettingsPopup_IconSpacingSlider_OnValueChanged(this)
</OnValueChanged>
</Scripts>
</Slider>
<!-- Quality Border Equipment Checkbox -->
<CheckButton name="Guda_SettingsPopup_QualityBorderEquipmentCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_IconSpacingSlider">
<Offset>
<AbsDimension x="-215" y="-30"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_QualityBorderEquipmentCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_QualityBorderEquipmentCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
<!-- Quality Border Other Checkbox -->
<CheckButton name="Guda_SettingsPopup_QualityBorderOtherCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_QualityBorderEquipmentCheckbox">
<Offset>
<AbsDimension x="185" y="0"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_QualityBorderOtherCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_QualityBorderOtherCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
<!-- Mark Unusable Items Checkbox -->
<CheckButton name="Guda_SettingsPopup_MarkUnusableCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="TOP" relativePoint="BOTTOM" relativeTo="Guda_SettingsPopup_QualityBorderEquipmentCheckbox">
<Offset>
<AbsDimension x="0" y="-8"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_MarkUnusableCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_MarkUnusableCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
<!-- Show Tooltip Counts Checkbox -->
<CheckButton name="Guda_SettingsPopup_ShowTooltipCountsCheckbox" inherits="OptionsCheckButtonTemplate">
<Anchors>
<Anchor point="LEFT" relativePoint="RIGHT" relativeTo="Guda_SettingsPopup_MarkUnusableCheckbox">
<Offset>
<AbsDimension x="185" y="0"/>
</Offset>
</Anchor>
</Anchors>
<Scripts>
<OnLoad>
Guda_SettingsPopup_ShowTooltipCountsCheckbox_OnLoad(this)
</OnLoad>
<OnClick>
Guda_SettingsPopup_ShowTooltipCountsCheckbox_OnClick(this)
</OnClick>
</Scripts>
</CheckButton>
</Frames>
</Frame>
</Frames> </Frames>
<Scripts> <Scripts>