Checkbox also update settings
This commit is contained in:
parent
414aef6924
commit
b6d64d65b5
6 changed files with 45 additions and 40 deletions
|
@ -29,29 +29,20 @@ local function RegisterProxySettings(name, title, setter)
|
|||
)
|
||||
end
|
||||
|
||||
local function CreateCheckbox(name, title)
|
||||
Settings.CreateCheckbox(
|
||||
Options.category,
|
||||
RegisterAddOnSettings(name, title)
|
||||
)
|
||||
local function CreateCheckbox(name, title, setter)
|
||||
local register = RegisterAddOnSettings(name, title)
|
||||
register:SetValueChangedCallback(setter)
|
||||
Settings.CreateCheckbox(Options.category, register)
|
||||
end
|
||||
|
||||
local function CreateDropdown(name, title, items, setter)
|
||||
Settings.CreateDropdown(
|
||||
Options.category,
|
||||
RegisterProxySettings(name, title, setter),
|
||||
items
|
||||
)
|
||||
Settings.CreateDropdown(Options.category, RegisterProxySettings(name, title, setter), items)
|
||||
end
|
||||
|
||||
local function CreateSlider(name, title, min, max, step, setter)
|
||||
local options = Settings.CreateSliderOptions(min, max, step)
|
||||
options:SetLabelFormatter(MinimalSliderWithSteppersMixin.Label.Right);
|
||||
Settings.CreateSlider(
|
||||
Options.category,
|
||||
RegisterProxySettings(name, title, setter),
|
||||
options
|
||||
)
|
||||
Settings.CreateSlider(Options.category, RegisterProxySettings(name, title, setter), options)
|
||||
end
|
||||
|
||||
local function CreateButton(title, label, setter)
|
||||
|
@ -61,27 +52,30 @@ local function CreateButton(title, label, setter)
|
|||
end
|
||||
|
||||
local function InitQuests()
|
||||
local function Update(name, value)
|
||||
CzechQuestsAddon_Store.config[name] = value
|
||||
addon.QuestFrame:UpdateSettings()
|
||||
end
|
||||
|
||||
local function CreateQuestCheckbox(name, title)
|
||||
CreateCheckbox(name, title, function (_, value) Update(name, value) end)
|
||||
end
|
||||
|
||||
local function CreateQuestDropdown(name, title, items)
|
||||
CreateDropdown(name, title, items, function (value)
|
||||
CzechQuestsAddon_Store.config[name] = value
|
||||
addon.QuestFrame:UpdateSettings()
|
||||
end)
|
||||
CreateDropdown(name, title, items, function (value) Update(name, value) end)
|
||||
end
|
||||
|
||||
local function CreateQuestSlider(name, title, min, max, step)
|
||||
CreateSlider(name, title, min, max, step, function (value)
|
||||
CzechQuestsAddon_Store.config[name] = value
|
||||
addon.QuestFrame:UpdateSettings()
|
||||
end)
|
||||
CreateSlider(name, title, min, max, step, function (value) Update(name, value) end)
|
||||
end
|
||||
|
||||
local layout = Options.layout
|
||||
layout:AddInitializer(CreateSettingsListSectionHeaderInitializer("Questy"))
|
||||
|
||||
CreateCheckbox("QUEST_ENABLED", "Zapnout")
|
||||
CreateQuestCheckbox("QUEST_ENABLED", "Zapnout")
|
||||
|
||||
if (WOW_PROJECT_ID == WOW_PROJECT_CLASSIC) then
|
||||
CreateCheckbox("QUEST_DARK_MODE", "Pouzit tmavy rezim")
|
||||
CreateQuestCheckbox("QUEST_DARK_MODE", "Pouzit tmavy rezim")
|
||||
end
|
||||
|
||||
CreateQuestDropdown("QUEST_HEADER_FONT_NAME", "Pismo nadpisu", addon.API.GetFontContainer)
|
||||
|
@ -90,11 +84,18 @@ local function InitQuests()
|
|||
CreateQuestSlider("QUEST_HEADER_FONT_SIZE", "Velikost nadpisu", 10, 30, 1)
|
||||
CreateQuestSlider("QUEST_TEXT_FONT_SIZE", "Velikost textu", 10, 30, 1)
|
||||
|
||||
CreateSlider("QUEST_TEXTURE_ALPHA", "Pruhlednost pozadi", 10, 100, 10)
|
||||
CreateCheckbox("QUEST_TEXTURE_ALPHA_ONLY_MOVING", "Pruhlednost pouze pri chuzi")
|
||||
CreateQuestSlider("QUEST_TEXTURE_ALPHA", "Pruhlednost pozadi", 10, 100, 10)
|
||||
CreateQuestCheckbox("QUEST_TEXTURE_ALPHA_ONLY_MOVING", "Pruhlednost pouze pri chuzi")
|
||||
end
|
||||
|
||||
local function InitSpeeches()
|
||||
local function CreateSpeechCheckbox(name, title)
|
||||
CreateCheckbox(name, title, function (_, value)
|
||||
CzechQuestsAddon_Store.config[name] = value
|
||||
addon.SpeechFrame:UpdateSettings()
|
||||
end)
|
||||
end
|
||||
|
||||
local function CreateSpeechDropdown(name, title, items)
|
||||
CreateDropdown(name, title, items, function (value)
|
||||
CzechQuestsAddon_Store.config[name] = value
|
||||
|
@ -112,14 +113,14 @@ local function InitSpeeches()
|
|||
local layout = Options.layout
|
||||
layout:AddInitializer(CreateSettingsListSectionHeaderInitializer("Bubliny"))
|
||||
|
||||
CreateCheckbox("SPEECH_ENABLED", "Zapnout")
|
||||
CreateSpeechCheckbox("SPEECH_ENABLED", "Zapnout")
|
||||
|
||||
CreateSpeechDropdown("SPEECH_TEXT_FONT_NAME", "Pismo *", addon.API.GetFontContainer)
|
||||
CreateSpeechSlider("SPEECH_TEXT_FONT_SIZE", "Velikost pisma *", 10, 30, 1)
|
||||
|
||||
CreateSpeechSlider("SPEECH_FRAME_WIDTH", "Sirka okna", 200, 1000, 10)
|
||||
|
||||
CreateCheckbox("SPEECH_ORIGINAL_WHEN_MISSING", "Original pokud není preklad ")
|
||||
CreateSpeechCheckbox("SPEECH_ORIGINAL_WHEN_MISSING", "Original pokud není preklad ")
|
||||
|
||||
CreateButton('Resetovat pozici okna', "RESET", function()
|
||||
CzechQuestsAddon_Store.config.SPEECH_FRAME_POSITION = { x = 0, y = 0}
|
||||
|
@ -135,7 +136,7 @@ local function InitOthers()
|
|||
local layout = Options.layout
|
||||
layout:AddInitializer(CreateSettingsListSectionHeaderInitializer("Ostatni"))
|
||||
|
||||
CreateCheckbox("DEBUG_MODE", "Zapnout DEBUG")
|
||||
CreateCheckbox("DEBUG_MODE", "Zapnout DEBUG", function() end)
|
||||
end
|
||||
|
||||
local function InitOptions()
|
||||
|
|
|
@ -19,6 +19,10 @@ local function SplitSentences(paragraph)
|
|||
return sentences
|
||||
end
|
||||
|
||||
local function ReplaceMultipleBreakLines(text)
|
||||
return text:gsub("\r?\n+", "\n\n")
|
||||
end
|
||||
|
||||
local function ParseParagraphs(original_text, translation_text)
|
||||
if original_text == "" or original_text == nil then
|
||||
return translation_text
|
||||
|
@ -54,8 +58,8 @@ local function ParseParagraphs(original_text, translation_text)
|
|||
table.insert(translation_paragraphs, table.concat(collected, " "))
|
||||
end
|
||||
|
||||
local final_text = table.concat(translation_paragraphs, "\n")
|
||||
|
||||
return final_text
|
||||
return ReplaceMultipleBreakLines(
|
||||
table.concat(translation_paragraphs, "\n")
|
||||
)
|
||||
end
|
||||
addon.API.ParseParagraphs = ParseParagraphs
|
|
@ -17,7 +17,7 @@ local function ShowQuestTranslation(event)
|
|||
local data = CzechQuestsAddon:GetData("quest", questId)
|
||||
if data then
|
||||
local title = GetQuestTitle(data.title, questId)
|
||||
frame:SetData(title, data.objective, "Popis", data.description, QuestLogFrame, 0, 0)
|
||||
frame:SetData(title, data.objective, "Popis", data.description, QuestLogFrame, -20, -20)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -71,7 +71,7 @@ function QuestFrame:ApplyTheme()
|
|||
self.Texture:SetTexture("Interface/QUESTFRAME/QuestBG");
|
||||
self.Texture:SetTexCoord(0, .58, 0.005, 0.66)
|
||||
self:SetTextColor(0, 0, 0, 1)
|
||||
if not CzechQuestsAddon_Store.config.QUEST_DARK_MODE then
|
||||
if CzechQuestsAddon_Store.config.QUEST_DARK_MODE then
|
||||
self:SetBackdropColor(0, 0, 0, 1)
|
||||
self.Texture:SetColorTexture(0, 0, 0, 1)
|
||||
self:SetTextColor(255, 255, 255, 1)
|
||||
|
|
|
@ -24,9 +24,9 @@ local function ReflowMessages()
|
|||
addon.SpeechFrame.ContentFrame:SetHeight(offsetY)
|
||||
|
||||
-- Scroll down
|
||||
addon.SpeechFrame:UpdateScrollChildRect()
|
||||
local maxScroll = addon.SpeechFrame:GetVerticalScrollRange()
|
||||
addon.SpeechFrame:SetVerticalScroll(maxScroll)
|
||||
--addon.SpeechFrame:UpdateScrollChildRect()
|
||||
--local maxScroll = addon.SpeechFrame:GetVerticalScrollRange()
|
||||
--addon.SpeechFrame:SetVerticalScroll(maxScroll)
|
||||
end
|
||||
|
||||
local function RemoveMessage(frame)
|
||||
|
|
4
sync.sh
4
sync.sh
|
@ -4,7 +4,7 @@ src_folder="."
|
|||
|
||||
wow_source_folder="retail"
|
||||
wow_destiny_folder="retail"
|
||||
#wow_destiny_folder="beta"
|
||||
wow_destiny_folder="beta"
|
||||
|
||||
#wow_source_folder="classic_era"
|
||||
#wow_destiny_folder="classic_era"
|
||||
|
@ -16,4 +16,4 @@ fswatch -o "$src_folder" | while read -r change; do
|
|||
rsync -avu --delete "$src_folder" "$dest_folder" --exclude={'.*','*.png','*.sh','*.md','Addon/Data/**','downloader/**'}
|
||||
rsync -au --delete "$src_folder/Addon/Data/$wow_source_folder/" "$dest_folder/Addon/Data/"
|
||||
cp "$src_folder/Addon/Data/other.lua" "$dest_folder/Addon/Data/"
|
||||
done
|
||||
done
|
||||
|
|
Loading…
Add table
Reference in a new issue