fix(gui): Auto/Vælg og Saml-op som klonede Ja/Nej-rækker (faste BinaryOptions viste kun første valg grønt) (v1.12.17.0)
This commit is contained in:
@@ -84,7 +84,6 @@ function SmartPickupFrame:initialize()
|
|||||||
self.subCategoryBox:invalidateLayout()
|
self.subCategoryBox:invalidateLayout()
|
||||||
self.subCategoryPaging:setSize(self.subCategoryBox.maxFlowSize + 140 * g_pixelSizeScaledX)
|
self.subCategoryPaging:setSize(self.subCategoryBox.maxFlowSize + 140 * g_pixelSizeScaledX)
|
||||||
end
|
end
|
||||||
self.ingredientModeOption:setTexts({self.i18n:getText("spu_mode_auto"), self.i18n:getText("spu_mode_manual")})
|
|
||||||
local loopTexts = {self.i18n:getText("spu_loops_infinite")}
|
local loopTexts = {self.i18n:getText("spu_loops_infinite")}
|
||||||
for loops = 1, ADRuns.MAX_LOOPS do
|
for loops = 1, ADRuns.MAX_LOOPS do
|
||||||
table.insert(loopTexts, tostring(loops))
|
table.insert(loopTexts, tostring(loops))
|
||||||
@@ -109,7 +108,6 @@ function SmartPickupFrame:initialize()
|
|||||||
end
|
end
|
||||||
if self.sellAtOption ~= nil then self.sellAtOption:setTexts(sellTexts) end
|
if self.sellAtOption ~= nil then self.sellAtOption:setTexts(sellTexts) end
|
||||||
if self.storeAboveOption ~= nil then self.storeAboveOption:setTexts(storeTexts) end
|
if self.storeAboveOption ~= nil then self.storeAboveOption:setTexts(storeTexts) end
|
||||||
if self.collectRoundOption ~= nil then self.collectRoundOption:setTexts({self.i18n:getText("ui_no"), self.i18n:getText("ui_yes")}) end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Indeks i en trin-liste for en procent (største trin <= værdien).
|
-- Indeks i en trin-liste for en procent (største trin <= værdien).
|
||||||
@@ -255,8 +253,8 @@ function SmartPickupFrame:setStaticRowsVisible(tab)
|
|||||||
local visibility = {
|
local visibility = {
|
||||||
{self.runOption, isSupply or isOutbound},
|
{self.runOption, isSupply or isOutbound},
|
||||||
{self.waitPoolOption, isSupply or isOutbound},
|
{self.waitPoolOption, isSupply or isOutbound},
|
||||||
{self.ingredientModeOption, isSupply}, {self.loopsOption, isSupply}, {self.returnBelowOption, isSupply},
|
{self.loopsOption, isSupply}, {self.returnBelowOption, isSupply},
|
||||||
{self.sellAtOption, isOutbound}, {self.storeAboveOption, isOutbound}, {self.collectRoundOption, isOutbound},
|
{self.sellAtOption, isOutbound}, {self.storeAboveOption, isOutbound},
|
||||||
}
|
}
|
||||||
for _, entry in ipairs(visibility) do
|
for _, entry in ipairs(visibility) do
|
||||||
local option = entry[1]
|
local option = entry[1]
|
||||||
@@ -300,6 +298,18 @@ function SmartPickupFrame:clearRows()
|
|||||||
self.overviewRows = {}
|
self.overviewRows = {}
|
||||||
self.productRows, self.outboundStatusRows = {}, {}
|
self.productRows, self.outboundStatusRows = {}, {}
|
||||||
self.storageRows = {}
|
self.storageRows = {}
|
||||||
|
self.ingredientModeRowOption, self.collectRoundRowOption = nil, nil
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Ja/Nej-række som klon af ingredientPrefab (faste BinaryOption-elementer fra XML'en viser kun
|
||||||
|
-- første valg grønt i FS25; klonede rækker virker begge veje). texts = {venstre, højre}.
|
||||||
|
function SmartPickupFrame:addToggleRow(kind, title, texts, isOn)
|
||||||
|
local row = self:addRow(self.ingredientPrefab, {kind = kind})
|
||||||
|
local option = row:getDescendantByName("option")
|
||||||
|
option:setTexts(texts)
|
||||||
|
option:setState(isOn and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF, false)
|
||||||
|
row:getDescendantByName("title"):setText(title)
|
||||||
|
return option
|
||||||
end
|
end
|
||||||
|
|
||||||
function SmartPickupFrame:addRow(prefab, data)
|
function SmartPickupFrame:addRow(prefab, data)
|
||||||
@@ -376,7 +386,7 @@ function SmartPickupFrame:rebuild()
|
|||||||
self:fillRunOption(adEnv)
|
self:fillRunOption(adEnv)
|
||||||
local run = self:getRun()
|
local run = self:getRun()
|
||||||
local hasRun = run ~= nil and adEnv ~= nil
|
local hasRun = run ~= nil and adEnv ~= nil
|
||||||
for _, element in ipairs({self.ingredientModeOption, self.waitPoolOption, self.loopsOption, self.returnBelowOption, self.sellAtOption, self.storeAboveOption, self.collectRoundOption}) do
|
for _, element in ipairs({self.waitPoolOption, self.loopsOption, self.returnBelowOption, self.sellAtOption, self.storeAboveOption}) do
|
||||||
if element ~= nil then
|
if element ~= nil then
|
||||||
element:setDisabled(not hasRun)
|
element:setDisabled(not hasRun)
|
||||||
end
|
end
|
||||||
@@ -528,10 +538,10 @@ function SmartPickupFrame:syncOptionsFromModel(adEnv, run)
|
|||||||
if run.kind == "outbound" then
|
if run.kind == "outbound" then
|
||||||
sync(self.sellAtOption, SmartPickupFrame.getStepIndex(self.sellAtSteps, run.sellAtPercent, ADRuns.DEFAULT_SELL_AT_PERCENT))
|
sync(self.sellAtOption, SmartPickupFrame.getStepIndex(self.sellAtSteps, run.sellAtPercent, ADRuns.DEFAULT_SELL_AT_PERCENT))
|
||||||
sync(self.storeAboveOption, SmartPickupFrame.getStepIndex(self.storeAboveSteps, run.storeAbovePercent, ADRuns.DEFAULT_STORE_ABOVE_PERCENT))
|
sync(self.storeAboveOption, SmartPickupFrame.getStepIndex(self.storeAboveSteps, run.storeAbovePercent, ADRuns.DEFAULT_STORE_ABOVE_PERCENT))
|
||||||
sync(self.collectRoundOption, run.collectRound and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF)
|
sync(self.collectRoundRowOption, run.collectRound and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
sync(self.ingredientModeOption, run.ingredientMode == "manual" and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF)
|
sync(self.ingredientModeRowOption, run.ingredientMode == "manual" and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF)
|
||||||
sync(self.loopsOption, run.loops + 1)
|
sync(self.loopsOption, run.loops + 1)
|
||||||
sync(self.returnBelowOption, self:getReturnBelowIndex(run))
|
sync(self.returnBelowOption, self:getReturnBelowIndex(run))
|
||||||
end
|
end
|
||||||
@@ -740,6 +750,10 @@ function SmartPickupFrame:onClickIngredient(state, element)
|
|||||||
return self:onClickTarget(state, element)
|
return self:onClickTarget(state, element)
|
||||||
elseif data ~= nil and data.kind == "source" then
|
elseif data ~= nil and data.kind == "source" then
|
||||||
return self:onClickSource(state, element)
|
return self:onClickSource(state, element)
|
||||||
|
elseif data ~= nil and data.kind == "ingredientMode" then
|
||||||
|
return self:onClickIngredientMode(state)
|
||||||
|
elseif data ~= nil and data.kind == "collectRound" then
|
||||||
|
return self:onClickCollectRound(state)
|
||||||
end
|
end
|
||||||
self:safe(function(frame)
|
self:safe(function(frame)
|
||||||
local run, data = frame:getRun(), frame.rowData[element]
|
local run, data = frame:getRun(), frame.rowData[element]
|
||||||
|
|||||||
@@ -25,12 +25,6 @@
|
|||||||
</MultiTextOption>
|
</MultiTextOption>
|
||||||
<Text profile="fs25_settingsMultiTextOptionTitle" text="$l10n_spu_run"/>
|
<Text profile="fs25_settingsMultiTextOptionTitle" text="$l10n_spu_run"/>
|
||||||
</Bitmap>
|
</Bitmap>
|
||||||
<Bitmap profile="fs25_multiTextOptionContainer">
|
|
||||||
<BinaryOption profile="fs25_settingsBinaryOption" onClick="onClickIngredientMode" id="ingredientModeOption">
|
|
||||||
<Text profile="fs25_multiTextOptionTooltip" name="ignore" text="$l10n_spu_ingredientMode_tooltip"/>
|
|
||||||
</BinaryOption>
|
|
||||||
<Text profile="fs25_settingsMultiTextOptionTitle" text="$l10n_spu_ingredientMode"/>
|
|
||||||
</Bitmap>
|
|
||||||
<Bitmap profile="fs25_multiTextOptionContainer">
|
<Bitmap profile="fs25_multiTextOptionContainer">
|
||||||
<MultiTextOption profile="fs25_settingsMultiTextOption" onClick="onClickWaitPool" id="waitPoolOption">
|
<MultiTextOption profile="fs25_settingsMultiTextOption" onClick="onClickWaitPool" id="waitPoolOption">
|
||||||
<Text profile="fs25_multiTextOptionTooltip" name="ignore" text="$l10n_spu_waitPool_tooltip"/>
|
<Text profile="fs25_multiTextOptionTooltip" name="ignore" text="$l10n_spu_waitPool_tooltip"/>
|
||||||
@@ -62,12 +56,6 @@
|
|||||||
</MultiTextOption>
|
</MultiTextOption>
|
||||||
<Text profile="fs25_settingsMultiTextOptionTitle" text="$l10n_spu_storeAbove"/>
|
<Text profile="fs25_settingsMultiTextOptionTitle" text="$l10n_spu_storeAbove"/>
|
||||||
</Bitmap>
|
</Bitmap>
|
||||||
<Bitmap profile="fs25_multiTextOptionContainer">
|
|
||||||
<BinaryOption profile="fs25_settingsBinaryOption" onClick="onClickCollectRound" id="collectRoundOption">
|
|
||||||
<Text profile="fs25_multiTextOptionTooltip" name="ignore" text="$l10n_spu_collectRound_tooltip"/>
|
|
||||||
</BinaryOption>
|
|
||||||
<Text profile="fs25_settingsMultiTextOptionTitle" text="$l10n_spu_collectRound"/>
|
|
||||||
</Bitmap>
|
|
||||||
</ScrollingLayout>
|
</ScrollingLayout>
|
||||||
|
|
||||||
<!-- prefabs: klones pr. vare / traktor / tekstlinje og fjernes fra layoutet ved initialize -->
|
<!-- prefabs: klones pr. vare / traktor / tekstlinje og fjernes fra layoutet ved initialize -->
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ end
|
|||||||
function SmartPickupFrame:rebuildOutboundTab(adEnv, run)
|
function SmartPickupFrame:rebuildOutboundTab(adEnv, run)
|
||||||
self.sellAtOption:setState(SmartPickupFrame.getStepIndex(self.sellAtSteps, run.sellAtPercent, ADRuns.DEFAULT_SELL_AT_PERCENT), false)
|
self.sellAtOption:setState(SmartPickupFrame.getStepIndex(self.sellAtSteps, run.sellAtPercent, ADRuns.DEFAULT_SELL_AT_PERCENT), false)
|
||||||
self.storeAboveOption:setState(SmartPickupFrame.getStepIndex(self.storeAboveSteps, run.storeAbovePercent, ADRuns.DEFAULT_STORE_ABOVE_PERCENT), false)
|
self.storeAboveOption:setState(SmartPickupFrame.getStepIndex(self.storeAboveSteps, run.storeAbovePercent, ADRuns.DEFAULT_STORE_ABOVE_PERCENT), false)
|
||||||
self.collectRoundOption:setState(run.collectRound and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF, false)
|
self.collectRoundRowOption = self:addToggleRow("collectRound", self.i18n:getText("spu_collectRound"), {self.i18n:getText("ui_no"), self.i18n:getText("ui_yes")}, run.collectRound == true)
|
||||||
self:addTextRow(self.i18n:getText("spu_section_sources"))
|
self:addTextRow(self.i18n:getText("spu_section_sources"))
|
||||||
self:fillSourceRows(adEnv, run)
|
self:fillSourceRows(adEnv, run)
|
||||||
self:addTextRow(self.i18n:getText("spu_section_products"))
|
self:addTextRow(self.i18n:getText("spu_section_products"))
|
||||||
|
|||||||
@@ -3,10 +3,10 @@
|
|||||||
-- Funktionerne lægges på SmartPickupFrame (indlæses efter SmartPickupFrame.lua).
|
-- Funktionerne lægges på SmartPickupFrame (indlæses efter SmartPickupFrame.lua).
|
||||||
|
|
||||||
function SmartPickupFrame:rebuildSupplyTab(adEnv, run)
|
function SmartPickupFrame:rebuildSupplyTab(adEnv, run)
|
||||||
self.ingredientModeOption:setState(run.ingredientMode == "manual" and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF, false)
|
|
||||||
self.loopsOption:setState(run.loops + 1, false)
|
self.loopsOption:setState(run.loops + 1, false)
|
||||||
self.returnBelowOption:setState(self:getReturnBelowIndex(run), false)
|
self.returnBelowOption:setState(self:getReturnBelowIndex(run), false)
|
||||||
self:addTextRow(self.i18n:getText("spu_section_targets"))
|
self:addTextRow(self.i18n:getText("spu_section_targets"))
|
||||||
|
self.ingredientModeRowOption = self:addToggleRow("ingredientMode", self.i18n:getText("spu_ingredientMode"), {self.i18n:getText("spu_mode_auto"), self.i18n:getText("spu_mode_manual")}, run.ingredientMode == "manual")
|
||||||
self:addTextRow(self.i18n:getText("spu_targets"))
|
self:addTextRow(self.i18n:getText("spu_targets"))
|
||||||
self:fillTargetRows(adEnv, run)
|
self:fillTargetRows(adEnv, run)
|
||||||
self:fillIngredientRows(adEnv, run)
|
self:fillIngredientRows(adEnv, run)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
<modDesc descVersion="107">
|
<modDesc descVersion="107">
|
||||||
<author>masterdraco</author>
|
<author>masterdraco</author>
|
||||||
<version>1.12.16.0</version>
|
<version>1.12.17.0</version>
|
||||||
<title>
|
<title>
|
||||||
<en>AD Smart Pickup</en>
|
<en>AD Smart Pickup</en>
|
||||||
</title>
|
</title>
|
||||||
|
|||||||
Reference in New Issue
Block a user