|
|
@ -712,7 +712,6 @@ function QualityAndMaterialsPage:init()
|
|
|
|
scroll_keys={},
|
|
|
|
scroll_keys={},
|
|
|
|
icon_width=2,
|
|
|
|
icon_width=2,
|
|
|
|
cursor_pen=COLOR_CYAN,
|
|
|
|
cursor_pen=COLOR_CYAN,
|
|
|
|
on_double_click=self:callback('toggle_category'),
|
|
|
|
|
|
|
|
on_submit=self:callback('toggle_category'),
|
|
|
|
on_submit=self:callback('toggle_category'),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
widgets.List{
|
|
|
|
widgets.List{
|
|
|
@ -818,21 +817,17 @@ function QualityAndMaterialsPage:init()
|
|
|
|
},
|
|
|
|
},
|
|
|
|
widgets.HotkeyLabel{
|
|
|
|
widgets.HotkeyLabel{
|
|
|
|
frame={l=30, t=0},
|
|
|
|
frame={l=30, t=0},
|
|
|
|
label='Select all',
|
|
|
|
|
|
|
|
auto_width=true,
|
|
|
|
|
|
|
|
key='CUSTOM_SHIFT_A',
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
widgets.HotkeyLabel{
|
|
|
|
|
|
|
|
frame={l=30, t=1},
|
|
|
|
|
|
|
|
label='Invert selection',
|
|
|
|
label='Invert selection',
|
|
|
|
auto_width=true,
|
|
|
|
auto_width=true,
|
|
|
|
key='CUSTOM_SHIFT_I',
|
|
|
|
key='CUSTOM_SHIFT_I',
|
|
|
|
|
|
|
|
on_activate=self:callback('invert_materials'),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
widgets.HotkeyLabel{
|
|
|
|
widgets.HotkeyLabel{
|
|
|
|
frame={l=30, t=2},
|
|
|
|
frame={l=30, t=2},
|
|
|
|
label='Clear selection',
|
|
|
|
label='Reset filter',
|
|
|
|
auto_width=true,
|
|
|
|
auto_width=true,
|
|
|
|
key='CUSTOM_SHIFT_C',
|
|
|
|
key='CUSTOM_SHIFT_X',
|
|
|
|
|
|
|
|
on_activate=self:callback('clear_filter'),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -952,6 +947,23 @@ function QualityAndMaterialsPage:toggle_material(_, choice)
|
|
|
|
self.dirty = true
|
|
|
|
self.dirty = true
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function QualityAndMaterialsPage:invert_materials()
|
|
|
|
|
|
|
|
local mats = {}
|
|
|
|
|
|
|
|
for _,c in ipairs(self.subviews.materials_mats:getChoices()) do
|
|
|
|
|
|
|
|
if not c.icon then return end
|
|
|
|
|
|
|
|
if not c.enabled then
|
|
|
|
|
|
|
|
table.insert(mats, c.name)
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
setMaterialFilter(uibs.building_type, uibs.building_subtype, uibs.custom_type, self.index-1, mats)
|
|
|
|
|
|
|
|
self.dirty = true
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function QualityAndMaterialsPage:clear_filter()
|
|
|
|
|
|
|
|
clearFilter(uibs.building_type, uibs.building_subtype, uibs.custom_type, self.index-1)
|
|
|
|
|
|
|
|
self.dirty = true
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function QualityAndMaterialsPage:set_decorated(decorated)
|
|
|
|
function QualityAndMaterialsPage:set_decorated(decorated)
|
|
|
|
local subviews = self.subviews
|
|
|
|
local subviews = self.subviews
|
|
|
|
setQualityFilter(uibs.building_type, uibs.building_subtype, uibs.custom_type, self.index-1,
|
|
|
|
setQualityFilter(uibs.building_type, uibs.building_subtype, uibs.custom_type, self.index-1,
|
|
|
|