Add files via upload
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
-- Author: Travis
|
-- Author: Travis
|
||||||
|
|
||||||
local IGW = {}
|
local IGW = {}
|
||||||
IGW.VERSION = "3.1"
|
IGW.VERSION = "3.2"
|
||||||
|
|
||||||
-- Global function for keybind (must be defined early)
|
-- Global function for keybind (must be defined early)
|
||||||
function ImprovedGuildWindow_Toggle()
|
function ImprovedGuildWindow_Toggle()
|
||||||
@@ -480,7 +480,8 @@ function IGW:InitializeSavedVariables()
|
|||||||
sortAscending = true,
|
sortAscending = true,
|
||||||
showOffline = true,
|
showOffline = true,
|
||||||
opacity = 1.0,
|
opacity = 1.0,
|
||||||
bgColor = {r = 0.15, g = 0.15, b = 0.15} -- Default dark grey
|
bgColor = {r = 0.15, g = 0.15, b = 0.15}, -- Default dark grey
|
||||||
|
officerRankCount = 3 -- Default: Guild Master + top 2 officer ranks (threshold = 2)
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -489,6 +490,15 @@ function IGW:InitializeSavedVariables()
|
|||||||
ImprovedGuildWindowDB.bgColor = {r = 0.15, g = 0.15, b = 0.15}
|
ImprovedGuildWindowDB.bgColor = {r = 0.15, g = 0.15, b = 0.15}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Ensure officerRankCount exists (for existing saved variables)
|
||||||
|
if not ImprovedGuildWindowDB.officerRankCount then
|
||||||
|
ImprovedGuildWindowDB.officerRankCount = 3
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Apply saved officer rank count: rankCount includes the GM (rank 0),
|
||||||
|
-- so threshold = rankCount - 1 (e.g. 3 ranks → threshold 2 → indices 0,1,2)
|
||||||
|
OFFICER_RANK_THRESHOLD = ImprovedGuildWindowDB.officerRankCount - 1
|
||||||
|
|
||||||
-- Load saved opacity or use default
|
-- Load saved opacity or use default
|
||||||
IGW_BG_OPACITY = ImprovedGuildWindowDB.opacity or 0.95
|
IGW_BG_OPACITY = ImprovedGuildWindowDB.opacity or 0.95
|
||||||
|
|
||||||
@@ -3866,7 +3876,7 @@ function IGW:ToggleOptionsWindow()
|
|||||||
if not IGW.optionsFrame then
|
if not IGW.optionsFrame then
|
||||||
local of = CreateFrame("Frame", "IGW_OptionsFrame", UIParent)
|
local of = CreateFrame("Frame", "IGW_OptionsFrame", UIParent)
|
||||||
of:SetWidth(650) -- Same width as main window
|
of:SetWidth(650) -- Same width as main window
|
||||||
of:SetHeight(500) -- Same height as main window
|
of:SetHeight(580) -- Increased to accommodate officer rank setting
|
||||||
of:SetFrameStrata("DIALOG")
|
of:SetFrameStrata("DIALOG")
|
||||||
of:SetFrameLevel(50)
|
of:SetFrameLevel(50)
|
||||||
of:SetMovable(true)
|
of:SetMovable(true)
|
||||||
@@ -4122,6 +4132,44 @@ function IGW:ToggleOptionsWindow()
|
|||||||
rememberSortingLabel:SetText("Remember sorting (column and direction)")
|
rememberSortingLabel:SetText("Remember sorting (column and direction)")
|
||||||
|
|
||||||
of.rememberSortingCheck = rememberSortingCheck
|
of.rememberSortingCheck = rememberSortingCheck
|
||||||
|
yOffset = yOffset - 35
|
||||||
|
|
||||||
|
-- # of Officer Ranks in Guild Section
|
||||||
|
local officerRankHeader = content:CreateFontString(nil, "OVERLAY", "GameFontNormalLarge")
|
||||||
|
officerRankHeader:SetPoint("TOPLEFT", content, "TOPLEFT", 0, yOffset)
|
||||||
|
officerRankHeader:SetText("# of Officer Ranks in Guild")
|
||||||
|
yOffset = yOffset - 28
|
||||||
|
|
||||||
|
local officerRankLabel = content:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
|
officerRankLabel:SetPoint("TOPLEFT", content, "TOPLEFT", 10, yOffset)
|
||||||
|
officerRankLabel:SetText("Officer ranks (including Guild Master):")
|
||||||
|
|
||||||
|
local officerRankDropdown = CreateFrame("Button", "IGW_OfficerRankDropdown", content, "UIDropDownMenuTemplate")
|
||||||
|
officerRankDropdown:SetPoint("LEFT", officerRankLabel, "RIGHT", -10, -2)
|
||||||
|
UIDropDownMenu_SetWidth(60, officerRankDropdown)
|
||||||
|
|
||||||
|
local savedOfficerRankCount = (ImprovedGuildWindowDB and ImprovedGuildWindowDB.officerRankCount) or 3
|
||||||
|
UIDropDownMenu_SetText(savedOfficerRankCount, officerRankDropdown)
|
||||||
|
|
||||||
|
UIDropDownMenu_Initialize(officerRankDropdown, function()
|
||||||
|
local counts = {2, 3, 4}
|
||||||
|
for i = 1, table.getn(counts) do
|
||||||
|
local info = {}
|
||||||
|
info.text = counts[i]
|
||||||
|
info.value = counts[i]
|
||||||
|
info.func = function()
|
||||||
|
local val = this.value
|
||||||
|
UIDropDownMenu_SetText(val, officerRankDropdown)
|
||||||
|
of.officerRankCount = val
|
||||||
|
end
|
||||||
|
UIDropDownMenu_AddButton(info)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Store current value on the frame for SaveOptions to read
|
||||||
|
of.officerRankCount = savedOfficerRankCount
|
||||||
|
of.officerRankDropdown = officerRankDropdown
|
||||||
|
|
||||||
yOffset = yOffset - 30
|
yOffset = yOffset - 30
|
||||||
|
|
||||||
-- Divider
|
-- Divider
|
||||||
@@ -4292,6 +4340,12 @@ function IGW:SaveOptions()
|
|||||||
-- Save remember sorting setting
|
-- Save remember sorting setting
|
||||||
ImprovedGuildWindowDB.rememberSorting = of.rememberSortingCheck:GetChecked() == 1
|
ImprovedGuildWindowDB.rememberSorting = of.rememberSortingCheck:GetChecked() == 1
|
||||||
|
|
||||||
|
-- Save officer rank count and apply immediately
|
||||||
|
if of.officerRankCount then
|
||||||
|
ImprovedGuildWindowDB.officerRankCount = of.officerRankCount
|
||||||
|
OFFICER_RANK_THRESHOLD = of.officerRankCount - 1
|
||||||
|
end
|
||||||
|
|
||||||
-- Save which windows are currently open (if remember is enabled)
|
-- Save which windows are currently open (if remember is enabled)
|
||||||
if ImprovedGuildWindowDB.rememberWindows then
|
if ImprovedGuildWindowDB.rememberWindows then
|
||||||
ImprovedGuildWindowDB.windowStates = {
|
ImprovedGuildWindowDB.windowStates = {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
## Title: Improved Guild Window
|
## Title: Improved Guild Window
|
||||||
## Notes: Enhanced guild management for World of Warcraft 1.12.1 (Octo)
|
## Notes: Enhanced guild management for World of Warcraft 1.12.1 (Octo)
|
||||||
## Author: Olzon
|
## Author: Olzon
|
||||||
## Version: 3.1
|
## Version: 3.2
|
||||||
## SavedVariables: ImprovedGuildWindowDB
|
## SavedVariables: ImprovedGuildWindowDB
|
||||||
|
|
||||||
Bindings.xml
|
Bindings.xml
|
||||||
|
|||||||
@@ -77,6 +77,7 @@ Click the "Options" button to customize:
|
|||||||
- **Default View** - Set which tab opens by default
|
- **Default View** - Set which tab opens by default
|
||||||
- **Show Offline by Default** - Member Details tab offline visibility
|
- **Show Offline by Default** - Member Details tab offline visibility
|
||||||
- **Remember Sorting** - Persist column and direction across sessions
|
- **Remember Sorting** - Persist column and direction across sessions
|
||||||
|
- **# of Officer Ranks in Guild** - Choose how many top ranks count as officers (2, 3, or 4)
|
||||||
|
|
||||||
### Sorting & Filtering
|
### Sorting & Filtering
|
||||||
- Click column headers to sort
|
- Click column headers to sort
|
||||||
@@ -240,10 +241,12 @@ Detection requires:
|
|||||||
|
|
||||||
### Officer Detection
|
### Officer Detection
|
||||||
|
|
||||||
Edit `OFFICER_RANK_THRESHOLD` in the .lua file (default: 2)
|
Configure via **Options → # of Officer Ranks in Guild** (default: 3).
|
||||||
- 0 = Guild Master only
|
This controls which ranks are shown as online officers on Guild Info Page 2.
|
||||||
- 1 = Guild Master + first officer rank
|
|
||||||
- 2 = Guild Master + top 2 ranks (default)
|
- **2** = Guild Master + 1 officer rank
|
||||||
|
- **3** = Guild Master + 2 officer ranks (default)
|
||||||
|
- **4** = Guild Master + 3 officer ranks
|
||||||
|
|
||||||
### Alt Detection
|
### Alt Detection
|
||||||
|
|
||||||
@@ -252,10 +255,16 @@ Works bidirectionally - view any character to see their alts and main.
|
|||||||
|
|
||||||
## Version
|
## Version
|
||||||
|
|
||||||
**3.1** - Latest stable release
|
**3.2** - Latest stable release
|
||||||
|
|
||||||
### Changelog
|
### Changelog
|
||||||
|
|
||||||
|
**3.2**
|
||||||
|
- Added configurable officer rank count setting in Options menu
|
||||||
|
- New dropdown (2, 3, or 4 ranks) replaces the previous hardcoded value
|
||||||
|
- Setting is saved between sessions and applied immediately on save
|
||||||
|
- Increased Options window height to accommodate new setting
|
||||||
|
|
||||||
**3.1**
|
**3.1**
|
||||||
- Added clickable dungeon names on Guild Info Page 4
|
- Added clickable dungeon names on Guild Info Page 4
|
||||||
- Dungeon details popup window with:
|
- Dungeon details popup window with:
|
||||||
|
|||||||
Reference in New Issue
Block a user