messaging.luac.lua

来自「htc manila 2 sourcecode」· LUA 代码 · 共 812 行 · 第 1/3 页

LUA
812
字号
-- Decompiled using luadec 0.6 by sztupy (http://winmo.sztupy.hu)
-- Command line was: -l ;;;;;;;;;;;;;;;;;;;0,1;0,1;0,1,2;0,5,8;0,1,2;0,5,6;;;;0,0,36,40;;;3,24;0,34;0,85;0,22;;;;;;;;;;;;;;;16;;; 09bd4ef2_manila.luac 

require("common")
require("messaging_svc")
require("machine_status_svc")
require("hitfeedback")
require("theme")
require("transitions")
MessageMachineStatus = MachineStatus()
OnNavigateIn = function(l_1_0)
   if _application.Store:GetStringValue(Lifetime_Permanent, "EnableLandscape") == "true" then
      require("Messaging\\Messaging_Landscape")
      _Message_ScreenRotation = Message_ScreenRotation()
   else
      SenderTextVector = Vector3(-13, -113, 0)
      SeperatorLineVector = Vector3(-13, -160, 0)
      DateTimeTextVector = Vector3(-13, -169, 0)
      MessageTextVector = Vector3(-13, -213, 0)
      AttachmentVector = Vector3(-13, -134, 0)
      InOutPostionX = 0
      InOutBottomY = -640
   end
   MessageForm_init()
   UpArrowDetector.onRelease:connect(HandleUpArrowRelease)
   DownArrowDetector.onRelease:connect(HandleDownArrowRelease)
   NewSMSIcon.onRelease:connect(HandleNewSMSRelease)
   NewSMSIcon.onReleaseOutside:connect(HandleNewSMSReleaseOutside)
   NewSMSIcon.onPress:connect(HandleNewSMSPress)
   NewSMSIcon.onRollOut:connect(HandleNewSMSRollOut)
   NewSMSIcon.onRollOver:connect(HandleNewSMSRollOver)
   HitTarget.onPress:connect(HandleHitTargetMousePress)
   HitTarget.onRelease:connect(HandleHitTargetMouseRelease)
   HitTarget.onReleaseOutside:connect(HandleHitTargetMouseReleaseOutside)
   HitTarget.onKeyDown:connect(HandleHitTargetKeyDown)
   _application:SetLeftSoftkey(Softkey(Locale:GetString("IDS_NAVTOMESSAGES"), OnLeftSoftKeyPress))
   _application:SetRightSoftkey(Softkey(Locale:GetString("IDS_MENU"), OnRightSoftKeyPress))
   Transition(l_1_0, "In")
end

OnNavigateOut = function(l_2_0)
   Messages.ItemsAdded:disconnect(HandleItemsAdded)
   Messages.ItemsRemoved:disconnect(HandleItemsRemoved)
   Messages.ItemsReplaced:disconnect(HandleItemsReplaced)
   NewSMSIcon.onRelease:disconnect(HandleNewSMSRelease)
   NewSMSIcon.onReleaseOutside:disconnect(HandleNewSMSReleaseOutside)
   NewSMSIcon.onPress:disconnect(HandleNewSMSPress)
   NewSMSIcon.onRollOut:disconnect(HandleNewSMSRollOut)
   NewSMSIcon.onRollOver:disconnect(HandleNewSMSRollOver)
   HitTarget.onPress:disconnect(HandleHitTargetMousePress)
   HitTarget.onRelease:disconnect(HandleHitTargetMouseRelease)
   HitTarget.onReleaseOutside:disconnect(HandleHitTargetMouseReleaseOutside)
   HitTarget.onKeyDown:disconnect(HandleHitTargetKeyDown)
   _request.NavigateInFrom:disconnect(OnNavigateIn)
   _request.NavigateOutTo:disconnect(OnNavigateOut)
   Transition(l_2_0, "Out")
end

OnLeftSoftKeyPress = function()
   Shell_NavigateTo(ShellLocation_Messaging)
end

OnRightSoftKeyPress = function()
   if Messages:GetCount() > 0 then
      local x = Messages:GetItem(SelectedMessageIndex)
      trace("[Messaging.m9] : _message:Forwardable() = " .. tostring(x:Forwardable()))
      if x:Forwardable() then
         MessagingGizmoDialogRequest = _application.DialogManager:GetDialog(URL("Manila://MessagesGizmoResponse_Forward.dialog"))
      else
         MessagingGizmoDialogRequest = _application.DialogManager:GetDialog(URL("Manila://MessagesGizmoResponse.dialog"))
      end
   else
      MessagingGizmoDialogRequest = _application.DialogManager:GetDialog(URL("Manila://MessagesGizmoResponseNoItems.dialog"))
   end
   MessagingGizmoDialogRequest.OnExit:connect(MessagingGizmoMenuExitCallback)
   MessagingGizmoDialogRequest:Show()
end

MessageForm_init = function()
   objs3D = {}
   objs3D[1] = Objects3D
   objs2D = {}
   objs2D[1] = Objects2D
   AnimateOutFunc = nil
   firstTime = true
   SetDirectionValues(nil)
   ResetPositions()
   Objects3DHitFeedback = HitFeedback(Objects3D)
   MaxMessageCount = 25
   SelectedMessageIndex = -1
   IsAnimatingOut = false
   IsPressed = false
   MessageSeparator = "/"
   MessageDatabase = MailDatabase("SMS", _application:GetScopedLog("Messaging"))
   MessagesSortBy = MailSortBy()
   MessagesSortBy:SORTBY("DeliveryTime", SortDirection_Descending)
   Messages = MessageDatabase:Select(nil, MessagesSortBy)
   Messages.ItemsAdded:connect(HandleItemsAdded)
   Messages.ItemsRemoved:connect(HandleItemsRemoved)
   Messages.ItemsReplaced:connect(HandleItemsReplaced)
   HitTarget:Focus()
   if Messages:GetCount() > 0 then
      SelectIndex(0)
   else
      UpdateDisplay()
   end
   if not MessageMachineStatus:RemoveSMSNotification() then
      trace("@@@@@@@@@Remove message notification failed!@@@@@@@@@")
   end
end

ResetPositions = function()
   MessageSenderText.Position.value = SenderTextStartTarget
   MessageSenderText.Opacity.value = SenderTextStartOpacity
   MessageSenderText.Rotation.value = SenderTextStartRotation
   MessageSenderText.Scale.value = SenderTextStartScale
   SeperatorLine.Position.value = SeperatorLineStartTarget
   SeperatorLine.Opacity.value = SeperatorLineStartOpacity
   SeperatorLine.Rotation.value = SeperatorLineStartRotation
   SeperatorLine.Scale.value = SeperatorLineStartScale
   DateTimeText.Position.value = DateTimeTextStartTarget
   DateTimeText.Opacity.value = DateTimeTextStartOpacity
   DateTimeText.Rotation.value = DateTimeTextStartRotation
   DateTimeText.Scale.value = DateTimeTextStartScale
   MessageText.Position.value = MessageTextStartTarget
   MessageText.Opacity.value = MessageTextStartOpacity
   MessageText.Rotation.value = MessageTextStartRotation
   MessageText.Scale.value = MessageTextStartScale
   MessageAttachment.Position.value = MessageAttachmentStartTarget
   MessageAttachment.Opacity.value = MessageAttachmentStartOpacity
   MessageAttachment.Rotation.value = MessageAttachmentStartRotation
   MessageAttachment.Scale.value = MessageAttachmentStartScale
end

AnimateSenderTextIn = function(l_7_0, l_7_1, l_7_2)
   if l_7_0 == 0 then
      l_7_1 = 0
   end
   if l_7_2 ~= nil then
      MessageSenderText.Position:Interpolate(SenderTextStartTarget, SenderTextInTarget, l_7_0, l_7_1, Interpolate_EaseOutCirc, l_7_2)
   else
      MessageSenderText.Position:Interpolate(SenderTextStartTarget, SenderTextInTarget, l_7_0, l_7_1, Interpolate_EaseOutCirc)
   end
   MessageSenderText.Opacity:Interpolate(SenderTextStartOpacity, SenderTextInOpacity, l_7_0, l_7_1, Interpolate_EaseOutCirc)
   MessageSenderText.Rotation:Interpolate(SenderTextStartRotation, SenderTextInRotation, l_7_0, l_7_1, Interpolate_EaseOutCirc)
   MessageSenderText.Scale:Interpolate(SenderTextStartScale, SenderTextInScale, l_7_0, l_7_1, Interpolate_EaseOutCirc)
end

AnimateSenderTextOut = function(l_8_0, l_8_1, l_8_2)
   if l_8_2 ~= nil then
      MessageSenderText.Position:Interpolate(SenderTextOutTarget, l_8_0, l_8_1, Interpolate_EaseInCirc, l_8_2)
   else
      MessageSenderText.Position:Interpolate(SenderTextOutTarget, l_8_0, l_8_1, Interpolate_EaseInCirc)
   end
   MessageSenderText.Opacity:Interpolate(SenderTextOutOpacity, l_8_0, l_8_1, Interpolate_EaseInCirc)
   MessageSenderText.Rotation:Interpolate(SenderTextOutRotation, l_8_0, l_8_1, Interpolate_EaseInCirc)
   MessageSenderText.Scale:Interpolate(SenderTextOutScale, l_8_0, l_8_1, Interpolate_EaseInCirc)
end

AnimateSeperatorIn = function(l_9_0, l_9_1, l_9_2)
   if l_9_0 == 0 then
      l_9_1 = 0
   end
   if l_9_2 ~= nil then
      SeperatorLine.Position:Interpolate(SeperatorLineStartTarget, SeperatorLineInTarget, l_9_0, l_9_1, Interpolate_EaseOutCirc, l_9_2)
   else
      SeperatorLine.Position:Interpolate(SeperatorLineStartTarget, SeperatorLineInTarget, l_9_0, l_9_1, Interpolate_EaseOutCirc)
   end
   SeperatorLine.Opacity:Interpolate(SeperatorLineStartOpacity, SeperatorLineInOpacity, l_9_0, l_9_1, Interpolate_EaseOutCirc)
   SeperatorLine.Rotation:Interpolate(SeperatorLineStartRotation, SeperatorLineInRotation, l_9_0, l_9_1, Interpolate_EaseOutCirc)
   SeperatorLine.Scale:Interpolate(SeperatorLineStartScale, SeperatorLineInScale, l_9_0, l_9_1, Interpolate_EaseOutCirc)
end

AnimateSeperatorOut = function(l_10_0, l_10_1, l_10_2)
   if l_10_2 ~= nil then
      SeperatorLine.Position:Interpolate(SeperatorLineOutTarget, l_10_0, l_10_1, Interpolate_EaseInCirc, l_10_2)
   else
      SeperatorLine.Position:Interpolate(SeperatorLineOutTarget, l_10_0, l_10_1, Interpolate_EaseInCirc)
   end
   SeperatorLine.Opacity:Interpolate(SeperatorLineOutOpacity, l_10_0, l_10_1, Interpolate_EaseInCirc)
   SeperatorLine.Rotation:Interpolate(SeperatorLineOutRotation, l_10_0, l_10_1, Interpolate_EaseInCirc)
   SeperatorLine.Scale:Interpolate(SeperatorLineOutScale, l_10_0, l_10_1, Interpolate_EaseInCirc)
end

AnimateDateTimeTextIn = function(l_11_0, l_11_1, l_11_2)
   if l_11_0 == 0 then
      l_11_1 = 0
   end
   if l_11_2 ~= nil then
      DateTimeText.Position:Interpolate(DateTimeTextStartTarget, DateTimeTextInTarget, l_11_0, l_11_1, Interpolate_EaseOutCirc, l_11_2)
   else
      DateTimeText.Position:Interpolate(DateTimeTextStartTarget, DateTimeTextInTarget, l_11_0, l_11_1, Interpolate_EaseOutCirc)
   end
   DateTimeText.Opacity:Interpolate(DateTimeTextStartOpacity, DateTimeTextInOpacity, l_11_0, l_11_1, Interpolate_EaseOutCirc)
   DateTimeText.Rotation:Interpolate(DateTimeTextStartRotation, DateTimeTextInRotation, l_11_0, l_11_1, Interpolate_EaseOutCirc)
   DateTimeText.Scale:Interpolate(DateTimeTextStartScale, DateTimeTextInScale, l_11_0, l_11_1, Interpolate_EaseOutCirc)
end

AnimateDateTimeTextOut = function(l_12_0, l_12_1, l_12_2)
   if l_12_2 ~= nil then
      DateTimeText.Position:Interpolate(DateTimeTextOutTarget, l_12_0, l_12_1, Interpolate_EaseInCirc, l_12_2)
   else
      DateTimeText.Position:Interpolate(DateTimeTextOutTarget, l_12_0, l_12_1, Interpolate_EaseInCirc)
   end
   DateTimeText.Opacity:Interpolate(DateTimeTextOutOpacity, l_12_0, l_12_1, Interpolate_EaseInCirc)
   DateTimeText.Rotation:Interpolate(DateTimeTextOutRotation, l_12_0, l_12_1, Interpolate_EaseInCirc)
   DateTimeText.Scale:Interpolate(DateTimeTextOutScale, l_12_0, l_12_1, Interpolate_EaseInCirc)
end

AnimateMessageTextIn = function(l_13_0, l_13_1, l_13_2)
   if l_13_0 == 0 then
      l_13_1 = 0
   end
   if l_13_2 ~= nil then
      MessageText.Position:Interpolate(MessageTextStartTarget, MessageTextInTarget, l_13_0, l_13_1, Interpolate_EaseOutCirc, l_13_2)
   else
      MessageText.Position:Interpolate(MessageTextStartTarget, MessageTextInTarget, l_13_0, l_13_1, Interpolate_EaseOutCirc)
   end
   MessageText.Opacity:Interpolate(MessageTextStartOpacity, MessageTextInOpacity, l_13_0, l_13_1, Interpolate_EaseOutCirc)
   MessageText.Rotation:Interpolate(MessageTextStartRotation, MessageTextInRotation, l_13_0, l_13_1, Interpolate_EaseOutCirc)
   MessageText.Scale:Interpolate(MessageTextStartScale, MessageTextInScale, l_13_0, l_13_1, Interpolate_EaseOutCirc)
end

AnimateMessageTextOut = function(l_14_0, l_14_1, l_14_2)
   if l_14_2 ~= nil then
      MessageText.Position:Interpolate(MessageTextOutTarget, l_14_0, l_14_1, Interpolate_EaseInCirc, l_14_2)
   else
      MessageText.Position:Interpolate(MessageTextOutTarget, l_14_0, l_14_1, Interpolate_EaseInCirc)
   end
   MessageText.Opacity:Interpolate(MessageTextOutOpacity, l_14_0, l_14_1, Interpolate_EaseInCirc)
   MessageText.Rotation:Interpolate(MessageTextOutRotation, l_14_0, l_14_1, Interpolate_EaseInCirc)
   MessageText.Scale:Interpolate(MessageTextOutScale, l_14_0, l_14_1, Interpolate_EaseInCirc)
end

AnimateBackDropIn = function(l_15_0, l_15_1)
   if l_15_0 == 0 then
      l_15_1 = 0
   end
   backdrop.Position:Interpolate(BackDropStartTarget, BackDropInTarget, l_15_0, l_15_1, Interpolate_EaseOutCirc)
   backdrop.Rotation:Interpolate(BackDropStartRotation, BackDropInRotation, l_15_0, l_15_1, Interpolate_EaseOutCirc)
   backdrop.Opacity:Interpolate(BackDropStartOpacity, BackDropInOpacity, l_15_0, l_15_1, Interpolate_EaseOutCirc)
   backdrop.Scale:Interpolate(BackDropStartScale, BackDropInScale, l_15_0, l_15_1, Interpolate_EaseOutCirc)
end

AnimateBackDropOut = function(l_16_0, l_16_1)
   backdrop.Position:Interpolate(BackDropOutTarget, l_16_0, l_16_1, Interpolate_EaseInCirc)
   backdrop.Rotation:Interpolate(BackDropOutRotation, l_16_0, l_16_1, Interpolate_EaseInCirc)
   backdrop.Opacity:Interpolate(BackDropOutOpacity, l_16_0, l_16_1, Interpolate_EaseInCirc)
   backdrop.Scale:Interpolate(BackDropOutScale, l_16_0, l_16_1, Interpolate_EaseInCirc)
end

AnimateAttachmentIn = function(l_17_0, l_17_1, l_17_2)
   if l_17_0 == 0 then
      l_17_1 = 0
   end
   if l_17_2 ~= nil then
      MessageAttachment.Position:Interpolate(MessageAttachmentStartTarget, MessageAttachmentInTarget, l_17_0, l_17_1, Interpolate_EaseOutCirc, l_17_2)
   else
      MessageAttachment.Position:Interpolate(MessageAttachmentStartTarget, MessageAttachmentInTarget, l_17_0, l_17_1, Interpolate_EaseOutCirc)
   end
   MessageAttachment.Rotation:Interpolate(MessageAttachmentStartRotation, MessageAttachmentInRotation, l_17_0, l_17_1, Interpolate_EaseOutCirc)
   MessageAttachment.Opacity:Interpolate(MessageAttachmentStartOpacity, MessageAttachmentInOpacity, l_17_0, l_17_1, Interpolate_EaseOutCirc)
   MessageAttachment.Scale:Interpolate(MessageAttachmentStartScale, MessageAttachmentInScale, l_17_0, l_17_1, Interpolate_EaseOutCirc)
end

AnimateAttachmentOut = function(l_18_0, l_18_1, l_18_2)
   if l_18_2 ~= nil then
      MessageAttachment.Position:Interpolate(MessageAttachmentOutTarget, l_18_0, l_18_1, Interpolate_EaseOutCirc, l_18_2)
   else
      MessageAttachment.Position:Interpolate(MessageAttachmentOutTarget, l_18_0, l_18_1, Interpolate_EaseOutCirc)
   end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?