peopleupdatepage.luac.lua

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

LUA
548
字号
         item.Tag.Pic = PeopleImageLoader(AsyncPicLoader_CreateInstance(l_17_0.PicLoader), item.Namespace:FindName("SummaryPhoto"), oid)
        end
      end
   end
end

UpdateSummaryList.OnItemCreated = function(l_18_0, l_18_1, l_18_2)
   l_18_2.Focusable = true
   local l_18_3 = l_18_2.Namespace:FindName("SummaryName")
   local l_18_4 = l_18_2.Namespace:FindName("SummaryDetail")
   local l_18_5 = l_18_2.Namespace:FindName("SummaryPhoto")
   local l_18_6 = l_18_2.Namespace:FindName("SummaryTime")
   local l_18_7 = l_18_2.Namespace:FindName("SummaryMoreText")
   local l_18_8 = l_18_2.Namespace:FindName("SummaryEventsIcon")
   local l_18_9 = l_18_2.Namespace:FindName("FirstIcon")
   local l_18_10 = l_18_2.Namespace:FindName("SecondIcon")
   local l_18_11 = l_18_2.Namespace:FindName("ThirdIcon")
   local l_18_12 = l_18_2.Namespace:FindName("ForthIcon")
   local l_18_13 = l_18_2.Namespace:FindName("FifthIcon")
   l_18_2.Tag = {}
   l_18_2.Tag.Data = l_18_1
   if l_18_1 == -1 then
      FBmgr:LoadMyInfo()
      local l_18_14 = FBmgr:GetMyInformation()
      local l_18_15 = {[0] = l_18_9,[1] = l_18_10,[2] = l_18_11,[3] = l_18_12,[4] = l_18_13}
      local l_18_16 = {}
      l_18_16[0] = l_18_14.UnReadMessages > 0
      l_18_16[1] = l_18_14.GroupInvitesCount > 0
      l_18_16[2] = l_18_14.EventInvitesCount > 0
      l_18_16[3] = l_18_14.FriendRequestCount > 0
      l_18_16[4] = l_18_14.FriendAcceptedCount > 0
      l_18_16[5] = l_18_14.IsWallUpdated
      l_18_16[6] = l_18_14.UnReadShares > 0
      l_18_16[7] = l_18_14.UnReadPokes > 0
      local l_18_17 = {[0] = "Icon_UnreadMessage",[1] = "Icon_UnreadFriendInvites",[2] = "Icon_UnreadEventInvites",
                       [3] = "Icon_UnreadFriendRequest",[4] = "Icon_NewFriend",[5] = "Icon_WallUpdate",
                       [6] = "Icon_UnreadShare",[7] = "Icon_UnreadPoke"}
      local l_18_18 = 0
      for i = 0, 7 do
         if l_18_16[i] then
            l_18_15[l_18_18]:SetTexture("\\Windows\\HTC\\Assets\\Images\\People\\VGA\\" .. l_18_17[i] .. ".qtc")
            l_18_15[l_18_18]._visible = true
            if l_18_18 == 4 then
               break
            end
            l_18_18 = l_18_18 + 1
         end
      end
      l_18_3.String = Locale:GetString("IDS_ME")
      l_18_4.String = Locale:GetString("IDS_ME_DETAIL")
      local gm = FBmgr:GetMyPicture()
      if gm:GetValue():IsEmpty() then
         l_18_5:SetTexture("\\Windows\\HTC\\Assets\\Images\\People\\VGA\\PeoplePlaceholder.qtc")
         l_18_5.TextureCoords:set(0, 0, 0.92578125, 0.92578125)
      else
         l_18_5:SetTexture(gm:GetValue().Texture)
         l_18_5.TextureCoords.value = gm:GetValue().UV
      end
   elseif l_18_1 == -2 then
      l_18_3.String = Locale:GetString("IDS_NOEVENTSDATA")
      l_18_4._visible = false
      l_18_5._visible = false
      l_18_3.Position.x = 16
      l_18_4.Position.x = 16
   elseif l_18_1 == -3 then
      l_18_3.String = Locale:GetString("IDS_LINK")
      l_18_4.String = Locale:GetString("IDS_NOLOGIN_MESSAGE")
      l_18_5._visible = false
      l_18_3.Position.x = 16
      l_18_4.Position.x = 16
   elseif l_18_1 == -4 then
      l_18_3._visible = false
      l_18_4._visible = false
      l_18_5._visible = false
      l_18_7._visible = true
   else
      if l_18_1 < UpdatesCount then
         local l_18_14 = UpdatesCollection:GetItem(l_18_1)
         l_18_2.Tag.Oid = l_18_14.StrOid
         l_18_3.String = l_18_14.FileAs
         if l_18_14.Count == 0 then
            l_18_4.String = Locale:GetString(l_18_14.Description)
         else
            l_18_4.String = l_18_14.Count .. " " .. Locale:GetString(l_18_14.Description)
         end
         if l_18_14.Time:IsToday() then
            l_18_6.String = l_18_14.Time:ToLocal():GetTimeString("HH:mm")
         else
            l_18_6.String = l_18_14.Time:GetDateString("MMM d")
         end
         local l_18_15 = FBmgr:GetThumbnail()
         if l_18_15:HasValue() then
            if l_18_15:GetValue():IsValid() then
               l_18_5:SetTexture(l_18_15:GetValue().Texture)
               l_18_5.TextureCoords.value = l_18_15:GetValue().UV
               l_18_15:GetValue():Clear()
            end
         end
         if not _UpdateSummaryList:ListPhysicsIsScrolling() then
            l_18_2.Tag.Pic = PeopleImageLoader(AsyncPicLoader_CreateInstance(l_18_0.PicLoader), l_18_5, l_18_14.StrOid)
         end
      else
         local l_18_14 = EventsCollection:GetItem(l_18_1 - UpdatesCount)
         l_18_2.Tag.Oid = l_18_14.StrOid
         l_18_3.String = l_18_14.FileAs
         l_18_4.String = Locale:GetString(l_18_14.Description)
         if l_18_14.Type == EventType_Birthday then
            l_18_6.String = l_18_14.Time:GetDateString("MMM d")
            l_18_8._visible = true
            l_18_8:SetTexture("\\Windows\\HTC\\Assets\\Images\\People\\VGA\\Icon_12_aquarius.qtc")
         else
            if l_18_14.Type == EventType_Anniversary then
               l_18_6.String = l_18_14.Time:GetDateString("MMM d")
               l_18_8._visible = true
               l_18_8:SetTexture("\\Windows\\HTC\\Assets\\Images\\People\\VGA\\Icon_Anniversary.qtc")
            else
               if l_18_14.Time:IsToday() then
                  l_18_6.String = l_18_14.Time:ToLocal():GetTimeString("HH:mm")
               else
                  l_18_6.String = l_18_14.Time:GetDateString("MMM d")
               end
            end
         end
         local l_18_15 = FBmgr:GetThumbnail()
         if l_18_15:HasValue() then
            if l_18_15:GetValue():IsValid() then
               l_18_5:SetTexture(l_18_15:GetValue().Texture)
               l_18_5.TextureCoords.value = l_18_15:GetValue().UV
               l_18_15:GetValue():Clear()
            end
         end
         if not _UpdateSummaryList:ListPhysicsIsScrolling() then
            l_18_2.Tag.Pic = PeopleImageLoader(AsyncPicLoader_CreateInstance(l_18_0.PicLoader), l_18_5, l_18_14.StrOid)
         end
      end
   end
end


UpdateSummaryList.OnItemDestroyed = function(l_19_0, l_19_1)
   if l_19_1.Tag == nil then
      return 
   end
   if l_19_1.Tag.Data >= 0 and nil ~= l_19_1.Tag.Pic then
      local l_19_2 = l_19_1.Tag.Pic     
      l_19_2.Loader:Cancel()
      l_19_2.Loader = nil
      l_19_1.Tag.Pic = nil
   end
   l_19_1.Tag.Oid = nil
   l_19_1.Tag.Pic = nil
   if UpdateHeaderElement == l_19_1 then
      UpdateHeaderElement = nil
   else
      if EventHeaderElement == l_19_1 then
         EventHeaderElement = nil
      end
   end
end

UpdateSummaryList.OnHeaderCreated = function(l_20_0, l_20_1, l_20_2)
   trace("Header:" .. l_20_1)
   local l_20_3 = l_20_2.Namespace:FindName("UpdateHeaderText")
   local l_20_4 = l_20_2.Namespace:FindName("UpdatingText")
   if l_20_1 == UpdatesCount or l_20_1 == -2 then
      l_20_3.String = Locale:GetString("IDS_EVENTS")
      EventHeaderElement = l_20_4
      EventHeaderElement._visible = FBmgr:IsUpdating()
   else
      l_20_3.String = Locale:GetString("IDS_UPDATES")
      UpdateHeaderElement = l_20_4
      UpdateHeaderElement._visible = FBmgr:IsUpdating()
   end
end

UpdateSummaryList.OnHeaderGroup = function(l_21_0, l_21_1, l_21_2)
   if l_21_2 == UpdatesCount or l_21_2 == -2 then
      return -1
   else
      return 0
   end
end

UpdateSummaryList.ListPhysicsIsScrolling = function(l_22_0)
   if l_22_0.ListPhysics == nil then
     return false
   end
   return l_22_0.ListPhysics:IsScrolling()
end

HandleSelection = function(l_23_0)
   if l_23_0 == 0 or l_23_0 == TotalUpdatesCount + 1 then
      return 
   end
   local l_23_1 = _UpdateSummaryList.Generator:GetDataByRealizedIndex(l_23_0)
   if l_23_1 == -3 then
     _application.Navigation:Navigate(URL("Manila://people/facebooklogin/summarylogin.page"), true)
   elseif l_23_1 == -1 then
      FBmgr:GoToURL("http://m.facebook.com/home.php")
   elseif l_23_1 == -2 then
   elseif l_23_1 == -4 then
      _PeopeUpdatesForm.mode = "ShowALL"
      _UpdateSummaryList:Reset(_PeopeUpdatesForm:GetCollection())
   elseif l_23_1 < UpdatesCount then
      local item = UpdatesCollection:GetItem(l_23_1)
      if item.Type ~= UpdateType_Multiple then
         FBmgr:GoToURL(item.URL)
      else
         FBmgr:SetOidToStore(UpdatesCollection:GetItem(l_23_1).StrOid)
         _application.Navigation:Navigate(URL("Manila://PeopleDetail/peopleView.page"), true)
      end
   else
      local l_23_2 = EventsCollection:GetItem(l_23_1 - UpdatesCount)
      if l_23_2.Type == EventType_Birthday then
         BirthdayItem = BirthdayObj(l_23_2)
      else
         if l_23_2.Type == EventType_Anniversary then
            AnniversaryItem = AnniversaryObj(l_23_2)
         else
            FBmgr:GoToURL(l_23_2.URL)
         end
      end
   end
end

BirthdayObj = class(PeopleGreetingComponent)
BirthdayObj.__init = function(l_24_0, l_24_1)
   PeopleGreetingComponent.__init(l_24_0)
   _UpdateSummaryList.ListPhysics:DisconnectMouseEvents()
   WindowTitleText.String = Locale:GetString("IDS_BIRTHDAY_GREETINGS")
   _application:SetLeftSoftkey(Softkey("", nil))
   _application:SetRightSoftkey(Softkey("", nil))
   _application.Navigation.TabVisibility = false
   local l_24_2 = FBmgr:GetFriendList()
   local l_24_3 = l_24_2:FindByOid(l_24_1.StrOid)
   l_24_0:SetAllElement(l_24_1.FileAs .. " " .. Locale:GetString("IDS_FACEBOOK_EVENT_BIRTHDAY"), l_24_1.Time:GetDateString("MMM d"), FBmgr:GetPhoneNumber(l_24_1.StrOid), l_24_1.StrOid)
end

BirthdayObj.Destroy = function(l_25_0)
   PeopleGreetingComponent.Destroy(l_25_0)
   if _UpdateSummaryList.ListPhysics ~= nil then
      _UpdateSummaryList.ListPhysics:ConnectMouseEvents()
   end
   _application.Navigation.TabVisibility = true
   _application:SetLeftSoftkey(Softkey(Locale:GetString("IDS_BACK"), OnLeftSoftKeyPress))
   _application:SetRightSoftkey(Softkey(Locale:GetString("IDS_MENU"), OnRightSoftKeyPress))
end

AnniversaryObj = class(PeopleGreetingComponent)
AnniversaryObj.__init = function(l_26_0, l_26_1)
   PeopleGreetingComponent.__init(l_26_0)
   _UpdateSummaryList.ListPhysics:DisconnectMouseEvents()
   WindowTitleText.String = Locale:GetString("IDS_ANNIVERSARY_GREETINGS")
   _application:SetLeftSoftkey(Softkey("", nil))
   _application:SetRightSoftkey(Softkey("", nil))
   _application.Navigation.TabVisibility = false
   local l_26_2 = FBmgr:GetFriendList()
   local l_26_3 = l_26_2:FindByOid(l_26_1.StrOid)
   l_26_0:SetAllElement(l_26_1.FileAs .. " " .. Locale:GetString("IDS_FACEBOOK_EVENT_ANNIVERSARY"), l_26_1.Time:GetDateString("MMM d"), FBmgr:GetPhoneNumber(l_26_1.StrOid), l_26_1.StrOid)
end

AnniversaryObj.Destroy = function(l_27_0)
   PeopleGreetingComponent.Destroy(l_27_0)
   if _UpdateSummaryList.ListPhysics ~= nil then
      _UpdateSummaryList.ListPhysics:ConnectMouseEvents()
   end
   _application.Navigation.TabVisibility = true
   _application:SetLeftSoftkey(Softkey(Locale:GetString("IDS_BACK"), OnLeftSoftKeyPress))
   _application:SetRightSoftkey(Softkey(Locale:GetString("IDS_MENU"), OnRightSoftKeyPress))
end

_PeopeUpdatesForm = PeopeUpdatesForm()

⌨️ 快捷键说明

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