MoveIt.GUI.Modules.Delay = {} function MoveIt.GUI.Modules.Delay:Create(container) MoveIt.GUI.Modules:CreateEnabledCheckbox(container, "Delay", 0.3, "Delay Apply") self.sliderMS = AceGUI:Create("Slider") self.sliderMS:SetLabel("Delay before applying changes in Milliseconds") self.sliderMS:SetSliderValues(1, 5000, 1) self.sliderMS:SetRelativeWidth(0.7) self.sliderMS:SetDisabled(true) self.sliderMS:SetValue(1, false) self.sliderMS:SetCallback("OnValueChanged", function() self:OnChangeSetting() end) container:AddChild(self.sliderMS) end function MoveIt.GUI.Modules.Delay:OnChangeSetting() local modSettings = MoveIt:GetFrameSettings(MoveIt.GUI.Options.selectedFrame, "Delay") modSettings.MS = self.sliderMS:GetValue() MoveIt.Modules.Delay:Apply(MoveIt.GUI.Options.selectedFrame) end function MoveIt.GUI.Modules.Delay:Update(frameName) local modSettings = MoveIt:GetFrameSettings(frameName, "Delay") self.checkboxEnabled:SetValue(modSettings.Enabled) self.sliderMS:SetValue(modSettings.MS) self.checkboxEnabled:SetDisabled(false) self.sliderMS:SetDisabled(not modSettings.Enabled) end function MoveIt.GUI.Modules.Delay:Disable() self.checkboxEnabled:SetValue(false, false) self.checkboxEnabled:SetDisabled(true) self.sliderMS:SetDisabled(true) end