Skip to content

Commit a74147b

Browse files
committed
admin2: fixed sorting issues in several widget gridlists
fixed disappearing text and incorrectly displayed sections for aVehicle aWeapon and aSkin widget gridlists if the user used gridlist sorting; fixed incorrectly set aSetting used to remember 'sort by groups' for aVehicle; unified .Refresh function for aVehicle and aSkin to match aWeapon
1 parent d3f44e3 commit a74147b

File tree

3 files changed

+21
-16
lines changed

3 files changed

+21
-16
lines changed

[admin]/admin2/client/widgets/admin_skin.lua

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -145,10 +145,13 @@ function aSkin.Load()
145145
end
146146

147147
function aSkin.Refresh()
148-
aSetSetting("skinsGroup", guiCheckBoxGetSelected(aSkin.Groups))
149-
guiGridListClear(aSkin.List)
148+
local groups = guiCheckBoxGetSelected(aSkin.Groups)
150149
local filter = guiGetText(aSkin.Edit):lower()
151-
if (guiCheckBoxGetSelected(aSkin.Groups)) then
150+
local sortDirection = guiGetProperty(aSkin.List, "SortDirection")
151+
aSetSetting("skinsGroup", groups)
152+
guiGridListClear(aSkin.List)
153+
guiSetProperty(aSkin.List, "SortDirection", "None")
154+
if (groups) then
152155
local skins = {}
153156
for name, group in pairs(aSkin.skins) do
154157
for _, skin in ipairs(group) do
@@ -164,9 +167,7 @@ function aSkin.Refresh()
164167
local row = guiGridListAddRow(aSkin.List)
165168
guiGridListSetItemText(aSkin.List, row, 2, name, true, false)
166169
for id, skin in ipairs(group) do
167-
row = guiGridListAddRow(aSkin.List)
168-
guiGridListSetItemText(aSkin.List, row, 1, skin.model, false, true)
169-
guiGridListSetItemText(aSkin.List, row, 2, skin.name, false, false)
170+
guiGridListAddRow(aSkin.List, skin.model, skin.name)
170171
end
171172
end
172173
guiGridListSetSortingEnabled(aSkin.List, false)
@@ -185,5 +186,6 @@ function aSkin.Refresh()
185186
end
186187
end
187188
guiGridListSetSortingEnabled(aSkin.List, true)
189+
guiSetProperty(aSkin.List, "SortDirection", sortDirection)
188190
end
189191
end

[admin]/admin2/client/widgets/admin_vehicle.lua

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ function aVehicle.Show(player)
2727
guiCreateInnerImage("client\\images\\search.png", aVehicle.Edit)
2828

2929
aVehicle.Groups = guiCreateCheckBox(0.03, 0.90, 0.70, 0.09, "Sort by groups", false, true, aVehicle.Form)
30-
if (aGetSetting("weaponsGroup")) then
30+
if (aGetSetting("vehiclesGroup")) then
3131
guiCheckBoxSetSelected(aVehicle.Groups, true)
3232
end
3333

@@ -141,10 +141,13 @@ function aVehicle.Load()
141141
end
142142

143143
function aVehicle.Refresh()
144-
aSetSetting("weaponsGroup", guiCheckBoxGetSelected(aVehicle.Groups))
145-
guiGridListClear(aVehicle.List)
144+
local groups = guiCheckBoxGetSelected(aVehicle.Groups)
146145
local filter = guiGetText(aVehicle.Edit):lower()
147-
if (guiCheckBoxGetSelected(aVehicle.Groups)) then
146+
local sortDirection = guiGetProperty(aVehicle.List, "SortDirection")
147+
aSetSetting("vehiclesGroup", groups)
148+
guiGridListClear(aVehicle.List)
149+
guiSetProperty(aVehicle.List, "SortDirection", "None")
150+
if (groups) then
148151
local vehicles = {}
149152
for name, group in pairs(aVehicle.vehicles) do
150153
for _, vehicle in ipairs(group) do
@@ -160,9 +163,7 @@ function aVehicle.Refresh()
160163
local row = guiGridListAddRow(aVehicle.List)
161164
guiGridListSetItemText(aVehicle.List, row, 2, name, true, false)
162165
for id, vehicle in ipairs(group) do
163-
row = guiGridListAddRow(aVehicle.List)
164-
guiGridListSetItemText(aVehicle.List, row, 1, vehicle.id, false, true)
165-
guiGridListSetItemText(aVehicle.List, row, 2, vehicle.name, false, false)
166+
guiGridListAddRow(aVehicle.List, vehicle.id, vehicle.name)
166167
end
167168
end
168169
guiGridListSetSortingEnabled(aVehicle.List, false)
@@ -181,5 +182,6 @@ function aVehicle.Refresh()
181182
end
182183
end
183184
guiGridListSetSortingEnabled(aVehicle.List, true)
185+
guiSetProperty(aVehicle.List, "SortDirection", sortDirection)
184186
end
185187
end

[admin]/admin2/client/widgets/admin_weapon.lua

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -154,8 +154,10 @@ end
154154
function aWeapon.Refresh()
155155
local groups = guiCheckBoxGetSelected(aWeapon.Groups)
156156
local filter = guiGetText(aWeapon.Edit):lower()
157+
local sortDirection = guiGetProperty(aWeapon.List, "SortDirection")
157158
aSetSetting("weaponsGroup", groups)
158159
guiGridListClear(aWeapon.List)
160+
guiSetProperty(aWeapon.List, "SortDirection", "None")
159161
if (groups) then
160162
local weapons = {}
161163
for name, group in pairs(aWeapon.weapons) do
@@ -172,9 +174,7 @@ function aWeapon.Refresh()
172174
local row = guiGridListAddRow(aWeapon.List)
173175
guiGridListSetItemText(aWeapon.List, row, 2, name, true, false)
174176
for id, weapon in ipairs(group) do
175-
row = guiGridListAddRow(aWeapon.List)
176-
guiGridListSetItemText(aWeapon.List, row, 1, weapon.id, false, true)
177-
guiGridListSetItemText(aWeapon.List, row, 2, weapon.name, false, false)
177+
guiGridListAddRow(aWeapon.List, weapon.id, weapon.name)
178178
end
179179
end
180180
guiGridListSetSortingEnabled(aWeapon.List, false)
@@ -193,5 +193,6 @@ function aWeapon.Refresh()
193193
end
194194
end
195195
guiGridListSetSortingEnabled(aWeapon.List, true)
196+
guiSetProperty(aWeapon.List, "SortDirection", sortDirection)
196197
end
197198
end

0 commit comments

Comments
 (0)