📄 alarmedit.luac.lua
字号:
-- Decompiled using luadec 0.6 by sztupy (http://winmo.sztupy.hu)
-- Command line was: -l ;;12,14;;;;;;;0,192;;;0,0,4,8;0,5;0,4,8;;;;;1,2;;0,6,9,12,15,16,47;; 11b8059d_manila.luac
trace("Alarm Edit")
require("scrollphysics")
require("machine_status_svc")
require("OnOffButtonControl")
require("worldclock_svc")
require("transitions")
require("./WorldClock/TimeComponentUI")
FALSE = 0
TRUE = 1
IDOK = 1000
IDCANCEL = 1001
gMachineStatus = MachineStatus()
Now = gMachineStatus.CurrentTime.Value
RepeatWeekDay = {[0] = "S", [1] = "M", [2] = "T", [3] = "W", [4] = "T", [5] = "F", [6] = "S"}
FlagBitsToNumber = function()
local l_1_0 = 0
local l_1_1 = 1
for i = 0, 6 do
if Flag[i] then
l_1_0 = l_1_0 + l_1_1
end
l_1_1 = l_1_1 * 2
end
return l_1_0
end
OnLeftSoftKeyPress = function()
Pa_Repeat = FlagBitsToNumber()
Pa_Description = InputBox.WindowText
Pa_Hour = TimePicker_Hour
Pa_Minute = TimePicker_Minute
local l_2_0 = WorldClockManager()
local l_2_1 = l_2_0:GetAlarms()
if Pa_Index == -1 then
NewAlarm = AlarmItem()
NewAlarm.Enabled = Pa_Enable
NewAlarm.AlarmTime:SetHour(Pa_Hour)
NewAlarm.AlarmTime:SetMinute(Pa_Minute)
NewAlarm.Description = Pa_Description
NewAlarm.Days = Pa_Repeat
NewAlarm.RingtoneName = Pa_RingtoneName
NewAlarm.RingtoneFile = Pa_RingtoneFile
NewAlarm.Vibration = Pa_Vibrate
l_2_1:AddItem(NewAlarm)
else
AlarmData = l_2_1:GetItem(Pa_Index)
AlarmData.Enabled = Pa_Enable
AlarmData.AlarmTime:SetHour(Pa_Hour)
AlarmData.AlarmTime:SetMinute(Pa_Minute)
AlarmData.Description = Pa_Description
AlarmData.Days = Pa_Repeat
AlarmData.RingtoneName = Pa_RingtoneName
AlarmData.RingtoneFile = Pa_RingtoneFile
AlarmData.Vibration = Pa_Vibrate
end
l_2_0:SetAlarms(l_2_1)
AlarmEditForm_CleanStoreMemory()
_application.Navigation:NavigateBack()
end
OnRightSoftKeyPress = function()
AlarmEditForm_CleanStoreMemory()
_application.Navigation:NavigateBack()
end
AlarmEditForm_init = function()
_application:SetLeftSoftkey(Softkey(Locale:GetString("IDS_DONE"), OnLeftSoftKeyPress))
_application:SetRightSoftkey(Softkey(Locale:GetString("IDS_CANCEL"), OnRightSoftKeyPress))
SipFlag = false
_request.NavigateInFrom:connect(AlarmEditForm_OnNavigateIn)
_request.NavigateOutTo:connect(AlarmEditForm_OnNavigateOut)
end
AlarmEditForm_OnNavigateIn = function(l_5_0)
trace("function AlarmEditForm_OnNavigateIn(ObjSelf)")
AlarmEditForm_FakeCollection = VectorNotifyint()
AlarmEditForm_FakeCollection:push_back(0)
AlarmEditForm_SetInitValue(AlarmEditComp)
_application.OnSipPanelChanged:connect(OnSipEvent)
AlarmVibrateSender.String = Locale:GetString("IDS_VIBRATE")
AlarmRingtoneSender.String = Locale:GetString("IDS_RINGTONE")
AlarmVibrateHitArea.onRelease:connect(VibrateOnRelease)
AlarmRingtoneHitArea.onRelease:connect(RingtoneOnRelease)
DescriptionHitArea.onPress:connect(DescriptionOnPress)
InputBox.onFocusOut:connect(DescriptionOnFocusOut)
TimeUI_ConnectTimeUI()
if _application.Store:GetStringValue(Lifetime_Permanent, "EnableLandscape") == "true" then
trace("[AlarmView] : EnableLandscape")
require("WorldClock\\AlarmEdit_Landscape")
AlarmEdit_Landscape = AlarmEdit_ScreenRotation(Camera2D_AlarmEdit, AlarmEdit_Mask, RepeatListView, AlarmEditGroup)
end
Transition(l_5_0, "In")
end
AlarmEditForm_OnItemCreated = function(l_6_0, l_6_1)
end
AlarmEditForm_OnItemDestroyed = function(l_7_0)
end
AlarmEditForm_OnNavigateOut = function(l_8_0)
_application.OnSipPanelChanged:disconnect(OnSipEvent)
AlarmVibrateHitArea.onRelease:disconnect(VibrateOnRelease)
AlarmRingtoneHitArea.onRelease:disconnect(RingtoneOnRelease)
DescriptionHitArea.onPress:disconnect(DescriptionOnPress)
InputBox.onFocusOut:disconnect(DescriptionOnFocusOut)
AlarmEditSprite:Focus()
TimeUI_DisconnectTimeUI()
_request.NavigateInFrom:disconnect(AlarmEditForm_OnNavigateIn)
_request.NavigateOutTo:disconnect(AlarmEditForm_OnNavigateOut)
InputBox:SetShowWindowFlag(false)
Transition(l_8_0, "Out")
_application:HideInputPanel()
end
AlarmEditForm_SetInitValue = function(l_9_0)
Pa_Index = tonumber(_request.URL.Parameters:GetParameter("Index"))
trace("AlarmEditForm_SPa_Index is: \"" .. Pa_Index .. "\"")
if _application.Store:GetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneName") ~= "" then
Pa_Hour = _application.Store:GetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Hour")
Pa_Minute = _application.Store:GetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Minute")
Pa_Description = _application.Store:GetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.Description")
Pa_Repeat = _application.Store:GetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Repeat")
Pa_RingtoneName = _application.Store:GetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneName")
Pa_RingtoneFile = _application.Store:GetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneFile")
Pa_Vibrate = _application.Store:GetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Vibrate") == TRUE
Pa_Enable = _application.Store:GetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Enable") == TRUE
elseif Pa_Index == -1 then
trace("AlarmEditForm_SetInitValue Pa_Index == -1 ")
Pa_Hour = tonumber(Now:GetTimeString("HH"))
Pa_Minute = Now.Minute
Pa_Description = ""
Pa_Repeat = 0
Pa_RingtoneName = "Alarm-Beeps"
Pa_RingtoneFile = "\\Windows\\Rings\\Alarm-Beeps.wav"
Pa_Vibrate = false
Pa_Enable = true
else
local wc = WorldClockManager()
local ga = wc:GetAlarms()
local item = ga:GetItem(Pa_Index)
Pa_Hour = item.AlarmTime:GetActualHour()
Pa_Minute = item.AlarmTime:GetMinute()
Pa_Description = item.Description
Pa_Repeat = item.Days
if item.RingtoneName ~= "" then
Pa_RingtoneName = item.RingtoneName
Pa_RingtoneFile = item.RingtoneFile
else
Pa_RingtoneName = "Alarm5"
Pa_RingtoneFile = "\\Windows\\Alarm5.wav"
end
Pa_Vibrate = item.Vibration
Pa_Enable = item.Enabled
end
TimeUI_init(Pa_Hour, Pa_Minute, l_9_0)
InputBox.WindowText = Pa_Description
if Pa_Description == "" then
DiscriptNoteText._visible = true
else
DiscriptNoteText._visible = false
end
AlarmRingtone.String = Pa_RingtoneName
OnOffButton_Initialize(OnOffComponent, Pa_Vibrate)
Flag = {}
for i = 0, 6 do
Flag[i] = TestBit(Pa_Repeat, i)
end
local l_9_1 = VectorNotifyint()
for i = 0, 6 do
l_9_1:push_back(i)
end
RepeatList_init(RepeatListView, l_9_1)
end
AlarmEditForm_CleanStoreMemory = function()
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Hour", 0)
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Minute", 0)
_application.Store:SetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.Description", "")
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Repeat", 0)
_application.Store:SetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneFile", "")
_application.Store:SetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneName", "")
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Vibrate", 0)
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Enable", 0)
end
RepeatList_init = function(l_11_0, l_11_1)
RepeatList_Collection = l_11_1
RepeatList_ListView = l_11_0
RepeatList_ItemListLayout = TileLayout()
RepeatList_ItemListLayout:SetItemSize(64, 55, 0)
RepeatList_ListView:SetLayout(RepeatList_ItemListLayout)
RepeatList_ItemListGenerator = LibraryGeneratorint(RepeatList_Collection, RepeatList_ListView:GetMovie(), RepeatList_ListView.ComponentLibraryName, RepeatList_ListView.ComponentLibraryID)
RepeatList_ItemListGenerator.ItemCreated:connect(RepeatList_OnItemCreated, self)
l_11_0:SetGenerator(RepeatList_ItemListGenerator)
if AlarmEdit_Landscape ~= nil then
AlarmEdit_Landscape._generator = RepeatList_ItemListGenerator
end
RepeatList_ListView.onMouseDown:connect(RepeatList_OnRepeatMouseDown, self)
end
RepeatList_OnItemCreated = function(l_12_0, l_12_1)
local l_12_2 = l_12_1.Namespace:FindName("AlarmRepeatBg")
local l_12_3 = l_12_1.Namespace:FindName("AlarmRepeatText")
l_12_3.String = RepeatWeekDay[l_12_0]
if l_12_0 == 0 then
l_12_2.Position.x = l_12_2.Position.x - 3
end
RepeatList_RepeatListGetBg(l_12_0)
end
RepeatList_OnRepeatMouseDown = function(l_13_0)
local l_13_1 = RepeatList_ListView:GetIndexAtMousePoint(l_13_0._xmouse, l_13_0._ymouse)
if l_13_1 ~= -1 then
Flag[l_13_1] = not Flag[l_13_1]
RepeatList_RepeatListGetBg(l_13_1)
end
end
RepeatList_RepeatListGetBg = function(l_14_0)
local l_14_1 = RepeatList_ItemListGenerator:GetItem(l_14_0)
local l_14_2 = l_14_1.Namespace:FindName("AlarmRepeatBg")
local l_14_3 = l_14_1.Namespace:FindName("AlarmRepeatText")
if l_14_0 == 0 then
if Flag[l_14_0] then
l_14_2:SetTexture("\\windows\\HTC\\Assets\\Images\\WorldClock\\date_left_press.qtc")
l_14_3.Color = Color(255, 255, 255, 255)
else
l_14_2:SetTexture("\\windows\\HTC\\Assets\\Images\\WorldClock\\date_left_rest.qtc")
l_14_3.Color = Color(0, 0, 0, 255)
end
elseif l_14_0 == 6 then
if Flag[l_14_0] then
l_14_2:SetTexture("\\windows\\HTC\\Assets\\Images\\WorldClock\\date_right_press.qtc")
l_14_3.Color = Color(255, 255, 255, 255)
else
l_14_2:SetTexture("\\windows\\HTC\\Assets\\Images\\WorldClock\\date_right_rest.qtc")
l_14_3.Color = Color(0, 0, 0, 255)
end
else
if Flag[l_14_0] then
l_14_2:SetTexture("\\windows\\HTC\\Assets\\Images\\WorldClock\\date_center_press.qtc")
l_14_3.Color = Color(255, 255, 255, 255)
else
l_14_2:SetTexture("\\windows\\HTC\\Assets\\Images\\WorldClock\\date_center_rest.qtc")
l_14_3.Color = Color(0, 0, 0, 255)
end
end
end
VibrateOnRelease = function()
Pa_Vibrate = not Pa_Vibrate
OnOffButton_ToggleValue(OnOffComponent)
end
DescriptionOnPress = function()
_application:ShowInputPanel(0)
InputBox:SetShowWindowFlag(true)
DiscriptNoteText._visible = false
end
DescriptionOnFocusOut = function()
_application:HideInputPanel()
InputBox:SetShowWindowFlag(false)
if InputBox.WindowText == "" then
DiscriptNoteText._visible = true
end
end
OnSipEvent = function(l_18_0, l_18_1)
if l_18_0 then
if not SipFlag then
SipFlag = true
Camera2D_AlarmEdit.Position.y = Camera2D_AlarmEdit.Position.y + (l_18_1 - 170)
end
else
if SipFlag then
SipFlag = false
Camera2D_AlarmEdit.Position.y = Camera2D_AlarmEdit.Position.y - (l_18_1 - 170)
end
end
end
RingtoneOnRelease = function()
local l_19_0 = FALSE
local l_19_1 = FALSE
if Pa_Vibrate then
l_19_0 = TRUE
end
if Pa_Enable then
l_19_1 = TRUE
end
Pa_Description = InputBox.WindowText
Pa_Repeat = FlagBitsToNumber()
Pa_Minute = TimePicker_Minute
Pa_Hour = TimePicker_Hour
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Hour", Pa_Hour)
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Minute", Pa_Minute)
_application.Store:SetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.Description", Pa_Description)
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Repeat", Pa_Repeat)
_application.Store:SetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneFile", Pa_RingtoneFile)
_application.Store:SetStringValue(Lifetime_Application, "WorldClock.AlarmEdit.RingtoneName", Pa_RingtoneName)
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Vibrate", l_19_0)
_application.Store:SetIntValue(Lifetime_Application, "WorldClock.AlarmEdit.Enable", l_19_1)
_application.Store:SetIntValue(Lifetime_Application, "Component.Ringtone.Source", 2000)
_application.Navigation:Navigate(URL("Manila://WorldClock/SelectRingtone/selectringtone.page"))
end
OnPressArea = function(l_20_0)
PressLocation = l_20_0._ymouse
end
OnMouseMoveArea = function(l_21_0)
trace("+++++++[AlarmEdit] : OnMouseMoveArea")
local l_21_1 = AlarmEditSprite.Position.y
local l_21_2 = InputBox.Position.y
local l_21_3 = DescriptionBg.Position.y
local l_21_4 = DescriptionHitArea.Position.y
local l_21_5 = l_21_0._ymouse
l_21_5 = l_21_5 - PressLocation
if l_21_5 > -70 and l_21_5 < 70 then
l_21_5 = 0
end
AlarmEditSprite.Position.y = l_21_1 - l_21_5
if AlarmEditSprite.Position.y <= 0 then
AlarmEditSprite.Position.y = 0
end
if AlarmEditSprite.Position.y >= 270 then
AlarmEditSprite.Position.y = 270
end
local l_21_6 = AlarmEditSprite.Position.y - l_21_1
InputBox.Position.y = l_21_2 + l_21_6
DiscriptNoteText.Position.y = InputBox.Position.y - 4
trace("+++++++[AlarmEdit] : DiscriptNoteText.Position.y is " .. DiscriptNoteText.Position.y)
trace("+++++++[AlarmEdit] : InputBox.Position.y is " .. InputBox.Position.y)
end
main = function()
objs3D = {}
objs3D[1] = Camera2D_AlarmEdit
setOffScreen()
AlarmEditForm_init()
end
main()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -