peopleupdatepage.luac.lua
来自「htc manila 2 sourcecode」· LUA 代码 · 共 548 行 · 第 1/2 页
LUA
548 行
-- Decompiled using luadec 0.6 by sztupy (http://winmo.sztupy.hu)
-- Command line was: -l ;;;;;;;;;;0,1,1,1,1;;;;0,25,31,56,58,60;;;0,3,6,8;0,0,0,5,9,13,17,21,25,29,33,37,41,45,57,58,64,109,118;;0,0,0,9,13;;;0,12,82;0,0,34,37;;0,0,34,37;; 5d1338c0_manila.luac
require("scrollphysics")
require("transitions")
require("facebook_svc")
require("people\\PeopleImageLoader")
require("people\\PeopleGreetings")
PeopeUpdatesForm = class()
PeopeUpdatesForm.__init = function(l_1_0)
l_1_0._request = _request
l_1_0._request.NavigateInFrom:connect(l_1_0.OnNavigateIn, l_1_0)
l_1_0._request.PageInit:connect(l_1_0.OnPageInit, l_1_0)
l_1_0._request.NavigateOutTo:connect(l_1_0.OnNavigateOut, l_1_0)
l_1_0._application = _application
l_1_0._application:SetLeftSoftkey(Softkey(Locale:GetString("IDS_BACK"), OnLeftSoftKeyPress))
l_1_0._application:SetRightSoftkey(Softkey(Locale:GetString("IDS_MENU"), OnRightSoftKeyPress))
l_1_0.mode = "ShowMore"
end
PeopeUpdatesForm.OnNavigateIn = function(l_2_0, l_2_1)
objs3D = {}
objs3D[1] = Camera2D
setOffScreen()
FBmgr = FacebookManager_Instance()
FBmgr:CreateConnection()
_UpdateSummaryList = UpdateSummaryList(l_2_0:GetCollection())
FBmgr.OnContactCreated:connect(l_2_0.OnContactModified, l_2_0)
FBmgr.OnContactChanged:connect(l_2_0.OnContactModified22, l_2_0)
FBmgr.OnContactDeleted:connect(l_2_0.OnContactModified33, l_2_0)
Transition(l_2_1, "In")
end
PeopeUpdatesForm.OnPageInit = function(l_3_0, l_3_1)
if FBmgr:IsUpdating() then
EventHeaderElement._visible = true
UpdateHeaderElement._visible = true
FBmgr.OnUpdateComplete:connect(PeopeUpdatesForm_onUpdateComplete)
end
Transition(l_3_1, "In")
end
PeopeUpdatesForm.OnNavigateOut = function(l_4_0, l_4_1)
_UpdateSummaryList.PageIsDestroyed = true
_UpdateSummaryList:Finalize()
FBmgr.OnContactCreated:disconnect(l_4_0.OnContactModified, l_4_0)
FBmgr.OnContactChanged:disconnect(l_4_0.OnContactModified22, l_4_0)
FBmgr.OnContactDeleted:disconnect(l_4_0.OnContactModified33, l_4_0)
if EventHeaderElement ~= nil and EventHeaderElement._visible then
FBmgr.OnUpdateComplete:disconnect(PeopeUpdatesForm_onUpdateComplete)
end
l_4_0._request.NavigateInFrom:disconnect(l_4_0.OnNavigateIn, l_4_0)
l_4_0._request.PageInit:disconnect(l_4_0.OnPageInit, l_4_0)
l_4_0._request.NavigateOutTo:disconnect(l_4_0.OnNavigateOut, l_4_0)
Transition(l_4_1, "Out")
end
PeopeUpdatesForm.OnContactModified = function(l_5_0)
trace("11111")
_UpdateSummaryList:Reset(_PeopeUpdatesForm:GetCollection())
end
PeopeUpdatesForm.OnContactModified22 = function(l_6_0)
trace("22222")
_UpdateSummaryList:Reset(_PeopeUpdatesForm:GetCollection())
end
PeopeUpdatesForm.OnContactModified33 = function(l_7_0)
trace("33333")
_UpdateSummaryList:Reset(_PeopeUpdatesForm:GetCollection())
end
PeopeUpdatesForm.GetCollection = function(l_8_0)
UpdatesCollection = FBmgr:GetUpdateSummaryList()
EventsCollection = FBmgr:GetEventSummaryList()
UpdatesCount = UpdatesCollection:GetCount()
EventsCount = EventsCollection:GetCount()
local vni = VectorNotifyint()
if not FBmgr:IsLogin() then
TotalUpdatesCount = 1
vni:push_back(-3)
elseif l_8_0.mode == "ShowMore" then
vni:push_back(-1)
if UpdatesCount > 4 then
for i = 0, 3 do
vni:push_back(i)
end
vni:push_back(-4)
TotalUpdatesCount = 6
else
for i = 0, UpdatesCount - 1 do
vni:push_back(i)
end
TotalUpdatesCount = UpdatesCount + 1
end
else
vni:push_back(-1)
for i = 0, UpdatesCount - 1 do
vni:push_back(i)
end
TotalUpdatesCount = UpdatesCount + 1
end
if EventsCount == 0 then
EventsCount = 1
vni:push_back(-2)
else
for i = UpdatesCount, UpdatesCount + EventsCount - 1 do
vni:push_back(i)
end
end
return vni
end
OnLeftSoftKeyPress = function()
_application.Navigation:NavigateBack()
end
OnRightSoftKeyPress = function()
local l_10_0 = nil
if FBmgr:IsLogin() then
l_10_0 = _application.DialogManager:GetDialog(URL("Manila://people-update-menu.dialog"))
else
l_10_0 = _application.DialogManager:GetDialog(URL("Manila://people-update-nologin-menu.dialog"))
end
l_10_0.OnExit:connect(MenuExitCallback)
l_10_0:Show()
end
MenuExitCallback = function(l_11_0)
l_11_0.OnExit:disconnect(MenuExitCallback)
if l_11_0.Result.ExitType ~= DialogExitType_Cancel then
if l_11_0.Result.UserValue == "Data Connection Setting" then
_application.Navigation:Navigate(URL("Manila://people/facebooklogin/connectsetting.page"),true)
elseif l_11_0.Result.UserValue == "Update Now" then
if not FBmgr:IsUpdating() then
FBmgr:UpdateAll()
FBmgr.OnUpdateComplete:connect(PeopeUpdatesForm_onUpdateComplete)
if EventHeaderElement ~= nil then
EventHeaderElement._visible = true
end
if UpdateHeaderElement ~= nil then
UpdateHeaderElement._visible = true
end
end
elseif l_11_0.Result.UserValue == "Logout" then
FBmgr:Logout()
end
end
end
PeopeUpdatesForm_onUpdateComplete = function(l_12_0)
trace("[Facebook]Update complete")
if l_12_0 then
_UpdateSummaryList:Reset(_PeopeUpdatesForm:GetCollection())
else
trace("[Facebook]Download is failed")
end
if EventHeaderElement ~= nil then
EventHeaderElement._visible = false
end
if UpdateHeaderElement ~= nil then
UpdateHeaderElement._visible = false
end
FBmgr.OnUpdateComplete:disconnect(PeopeUpdatesForm_onUpdateComplete)
end
UpdateSummaryList = class()
UpdateSummaryList.__init = function(l_13_0, l_13_1)
l_13_0._request = _request
l_13_0.Collection = l_13_1
l_13_0.ListView = SummaryListView
l_13_0.Layout = SequentialLayout()
l_13_0.Layout:SetItemSize(480, 80, 0)
l_13_0.Layout:SetHeaderSize(480, 40, 0)
l_13_0.Layout.DisableVirtualization = true
l_13_0.ListView:SetLayout(l_13_0.Layout)
l_13_0.Generator = SequentialLibraryGeneratorint(l_13_0.Collection, l_13_0.ListView:GetMovie(), l_13_0.ListView.ComponentLibraryName, l_13_0.ListView.ComponentLibraryID)
l_13_0.Generator:SetHeaderComponent(l_13_0.ListView:GetMovie(), l_13_0.ListView.ComponentLibraryName, "SummaryHeader")
l_13_0.Generator.GroupFunction:connect(l_13_0.OnHeaderGroup, l_13_0)
l_13_0.Generator.HeaderCreated:connect(l_13_0.OnHeaderCreated, l_13_0)
l_13_0.Generator.ItemCreated:connect(l_13_0.OnItemCreated, l_13_0)
l_13_0.Generator.ItemDestroyed:connect(l_13_0.OnItemDestroyed, l_13_0)
l_13_0.ListView:SetGenerator(l_13_0.Generator)
l_13_0.ListPhysics = ScrollPhysics(l_13_0.ListView, l_13_0.ListView, HandleSelection)
l_13_0.ListPhysics:ConnectMouseEvents()
l_13_0.ListPhysics:SetBehaviorCallback(ListPhysicsScrollBehaviorCallback)
l_13_0.PageIsDestroyed = false
l_13_0.PicLoader = PicLoader_CreateInstance()
UpdateHeaderElement = nil
EventHeaderElement = nil
end
UpdateSummaryList.Finalize = function(l_14_0)
l_14_0.PageIsDestroyed = true
if nil ~= l_14_0.ListPhysics then
l_14_0.ListPhysics:DisconnectMouseEvents()
l_14_0.ListPhysics:CancelBehaviorCallback()
l_14_0.ListPhysics = nil
end
if nil ~= l_14_0.PicLoader then
l_14_0.PicLoader:StopThread()
l_14_0.PicLoader = nil
end
if nil == l_14_0.ListView then
return
end
local l_14_1 = l_14_0.ListView:GetLayout()
if nil == l_14_1 then
return
end
local l_14_2 = l_14_0.ListView:GetGenerator()
if nil == l_14_2 then
return
end
l_14_2.GroupFunction:disconnect(l_14_0.OnHeaderGroup, l_14_0)
l_14_2.HeaderCreated:disconnect(l_14_0.OnHeaderCreated, l_14_0)
l_14_2.ItemCreated:disconnect(l_14_0.OnItemCreated, l_14_0)
l_14_2.ItemDestroyed:disconnect(l_14_0.OnItemDestroyed, l_14_0)
local l_14_3 = l_14_1:GetVisibleHeadIndex()
local l_14_4 = l_14_1:GetVisibleCount()
local l_14_5 = l_14_3 + l_14_4 - 1
for i = l_14_3, l_14_5 do
local item = l_14_2:GetItem(i)
if item ~= nil then
l_14_0:OnItemDestroyed(item)
end
end
l_14_0.ListView = nil
end
UpdateSummaryList.Reset = function(l_15_0, l_15_1)
l_15_0:Finalize()
l_15_0.Collection = l_15_1
l_15_0.ListView = SummaryListView
l_15_0.Layout = SequentialLayout()
l_15_0.Layout:SetItemSize(480, 80, 0)
l_15_0.Layout:SetHeaderSize(480, 40, 0)
l_15_0.Layout.DisableVirtualization = true
l_15_0.ListView:SetLayout(l_15_0.Layout)
l_15_0.Generator = SequentialLibraryGeneratorint(l_15_0.Collection, l_15_0.ListView:GetMovie(), l_15_0.ListView.ComponentLibraryName, l_15_0.ListView.ComponentLibraryID)
l_15_0.Generator:SetHeaderComponent(l_15_0.ListView:GetMovie(), l_15_0.ListView.ComponentLibraryName, "SummaryHeader")
l_15_0.Generator.GroupFunction:connect(l_15_0.OnHeaderGroup, l_15_0)
l_15_0.Generator.HeaderCreated:connect(l_15_0.OnHeaderCreated, l_15_0)
l_15_0.Generator.ItemCreated:connect(l_15_0.OnItemCreated, l_15_0)
l_15_0.Generator.ItemDestroyed:connect(l_15_0.OnItemDestroyed, l_15_0)
l_15_0.ListView:SetGenerator(l_15_0.Generator)
l_15_0.ListPhysics = ScrollPhysics(l_15_0.ListView, l_15_0.ListView, HandleSelection)
l_15_0.ListPhysics:ConnectMouseEvents()
l_15_0.ListPhysics:SetBehaviorCallback(ListPhysicsScrollBehaviorCallback)
l_15_0.PageIsDestroyed = false
l_15_0.PicLoader = PicLoader_CreateInstance()
UpdateHeaderElement = nil
EventHeaderElement = nil
end
ListPhysicsScrollBehaviorCallback = function(l_16_0)
if _UpdateSummaryList.PageIsDestroyed then
return
end
if l_16_0 == GESTURE_PAN_END then
_UpdateSummaryList:PeopleAll_UpdatePicture()
end
collectgarbage("collect")
end
UpdateSummaryList.PeopleAll_UpdatePicture = function(l_17_0)
local l_17_1 = l_17_0.Layout:GetVisibleHeadIndex()
local l_17_2 = l_17_0.Layout:GetVisibleCount()
local l_17_3 = l_17_1 + l_17_2 - 1
for i = l_17_1, l_17_3 do
local item = l_17_0.Generator:GetItem(i)
if item ~= nil and item.Tag ~= nil and item.Tag.Oid ~= nil then
local oid = item.Tag.Oid
if item.Tag.Pic == nil then
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?