⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 20.lua

📁 htc manila 2 sourcecode
💻 LUA
📖 第 1 页 / 共 2 页
字号:
CommunicationsSettings_UpdateTextToValue = function(l_16_0)
   local l_16_1 = l_16_0.Namespace:FindName("DetailText")
   local l_16_2 = l_16_0.Namespace:FindName("OnOffButtonComponent")
   local l_16_3 = l_16_0.Tag.Data
   if _config_os == "windowsmobile" then
      l_16_3 = l_16_0.Tag.Data.Type
   end
   if l_16_2.Tag.Value then
      l_16_1.String = CommunicationsSettings_MapSettingsItemUI[l_16_3].DetailTextOn
   else
      l_16_1.String = CommunicationsSettings_MapSettingsItemUI[l_16_3].DetailTextOff
   end
end

CommunicationsSettings_HandleItemCreated = function(l_17_0, l_17_1)
   FreeUnusedAssets(l_17_1, false, true, true, false, true, false, false)
   local l_17_2 = l_17_1.Namespace:FindName("MainText")
   local l_17_3 = l_17_1.Namespace:FindName("Icon")
   local l_17_4 = l_17_1.Namespace:FindName("IconBox")
   local l_17_5 = l_17_1.Namespace:FindName("TextWithDetailComponent")
   local l_17_6 = l_17_1.Namespace:FindName("IconComponent")
   local l_17_7 = l_17_1.Namespace:FindName("OnOffButtonComponent")
   l_17_6._visible = true
   l_17_7._visible = true
   l_17_5.Position.x = 60
   local l_17_8 = l_17_0
   if _config_os == "windowsmobile" then
      l_17_8 = l_17_0.Type
   end
   l_17_2.String = CommunicationsSettings_MapSettingsItemUI[l_17_8].Text
   l_17_3:SetTextureRef(CommunicationsSettings_MapSettingsItemUI[l_17_8].Texture)
   local l_17_9 = CommunicationsSettings_MapSettingsItemUI[l_17_8].IconWidth / CommunicationsSettings_MapSettingsItemUI[l_17_8].TextureWidth
   local l_17_10 = CommunicationsSettings_MapSettingsItemUI[l_17_8].IconHeight / CommunicationsSettings_MapSettingsItemUI[l_17_8].TextureHeight
   l_17_3.TextureCoords:set(0, 0, l_17_9, l_17_10)
   l_17_3.Size.width = CommunicationsSettings_MapSettingsItemUI[l_17_8].IconWidth
   l_17_3.Size.height = CommunicationsSettings_MapSettingsItemUI[l_17_8].IconHeight
   l_17_3.Position.x = (l_17_4.Size.width - l_17_3.Size.width) / 2
   l_17_3.Position.y = l_17_4.Position.y - (l_17_4.Size.height - l_17_3.Size.height) / 2
   local l_17_11 = false
   if _config_os == "windowsmobile" then
      l_17_11 = CommunicationsSettings_GetRealSettingValue(l_17_0)
   end
   local l_17_12 = true
   if _config_os == "windowsmobile" then
      l_17_12 = CommunicationsSettings_Manager:GetEnabled(l_17_0.Type)
   end
   UpdateDisabledUI(l_17_1, not l_17_12)
   if not l_17_12 then
     l_17_11 = false
   end
   OnOffButton_Initialize(l_17_7, l_17_11)
   l_17_1.Tag = {}
   l_17_1.Tag.Data = l_17_0
   CommunicationsSettings_MapVisibleElements[l_17_8] = l_17_1
   CommunicationsSettings_UpdateTextToValue(l_17_1)
   l_17_1.onKeyDown:connect(CommunicationSettings_HandleOnOffKey)
   l_17_1.Focusable = true
   l_17_1.OnSelected:connect(CommunicationSettings_HandleSelected)
   l_17_1.OnDeselected:connect(CommunicationSettings_HandleDeselected)
   l_17_1.Namespace:FindName("Selector")._visible = false
   if CommunicationsSettings_HandleItemCreated_Operator ~= nil then
      CommunicationsSettings_HandleItemCreated_Operator(l_17_1)
   end
end

CommunicationsSettings_HandleItemDestroyed = function(l_18_0)
   local l_18_1 = l_18_0.Tag.Data
   if _config_os == "windowsmobile" then
      l_18_1 = l_18_0.Tag.Data.Type
   end
   l_18_0.onKeyDown:disconnect(CommunicationSettings_HandleOnOffKey)
   l_18_0.OnSelected:disconnect(CommunicationSettings_HandleSelected)
   l_18_0.OnDeselected:disconnect(CommunicationSettings_HandleDeselected)
   CommunicationsSettings_MapVisibleElements[l_18_1] = nil
end

CommunicationsSettings_OnFlightModeOffValueChanged = function()
   trace(CommunicationsSettings_MapSettingsItemUI[SettingType_AirplaneMode].Text .. " Value Changed\n")
   local l_19_0 = CommunicationsSettings_MapVisibleElements[SettingType_AirplaneMode]
   CommunicationsSettings_SyncUIToRealValue(l_19_0)
end

CommunicationsSettings_OnPhoneValueChanged = function()
   trace(CommunicationsSettings_MapSettingsItemUI[SettingType_Phone].Text .. " Value Changed\n")
   local l_20_0 = CommunicationsSettings_MapVisibleElements[SettingType_Phone]
   CommunicationsSettings_SyncUIToRealValue(l_20_0)
end

CommunicationsSettings_OnBluetoothValueChanged = function()
   trace(CommunicationsSettings_MapSettingsItemUI[SettingType_Bluetooth].Text .. " Value Changed\n")
   local l_21_0 = CommunicationsSettings_MapVisibleElements[SettingType_Bluetooth]
   CommunicationsSettings_SyncUIToRealValue(l_21_0)
end

CommunicationsSettings_OnWiFiValueChanged = function()
   trace(CommunicationsSettings_MapSettingsItemUI[SettingType_WiFi].Text .. " Value Changed\n")
   local l_22_0 = CommunicationsSettings_MapVisibleElements[SettingType_WiFi]
   CommunicationsSettings_SyncUIToRealValue(l_22_0)
end

CommunicationsSettings_OnDataConnectionsValueChanged = function()
   trace(CommunicationsSettings_MapSettingsItemUI[SettingType_DataConnections].Text .. " Value Changed\n")
   local l_23_0 = CommunicationsSettings_MapVisibleElements[SettingType_DataConnections]
   CommunicationsSettings_SyncUIToRealValue(l_23_0)
end

CommunicationsSettings_OnPushMailValueChanged = function()
   trace(CommunicationsSettings_MapSettingsItemUI[SettingType_MicrosoftPush].Text .. " Value Changed\n")
   local l_24_0 = CommunicationsSettings_MapVisibleElements[SettingType_MicrosoftPush]
   CommunicationsSettings_SyncUIToRealValue(l_24_0)
end

OnSyncTimer = function()
   trace("Synchronizing\n")
   SyncTimer:Stop()
   local l_25_0 = nil
   if CommunicationsSettings_MapSettingsItemUI[SettingType_AirplaneMode].RefreshNeeded then
      l_25_0 = CommunicationsSettings_MapVisibleElements[SettingType_AirplaneMode]
      CommunicationsSettings_SyncUIToRealValue(l_25_0)
   end
   if CommunicationsSettings_MapSettingsItemUI[SettingType_Phone].RefreshNeeded then
      l_25_0 = CommunicationsSettings_MapVisibleElements[SettingType_Phone]
      CommunicationsSettings_SyncUIToRealValue(l_25_0)
   end
   if CommunicationsSettings_MapSettingsItemUI[SettingType_WiFi].RefreshNeeded then
      l_25_0 = CommunicationsSettings_MapVisibleElements[SettingType_WiFi]
      CommunicationsSettings_SyncUIToRealValue(l_25_0)
   end
   if CommunicationsSettings_MapSettingsItemUI[SettingType_DataConnections].RefreshNeeded then
      l_25_0 = CommunicationsSettings_MapVisibleElements[SettingType_DataConnections]
      CommunicationsSettings_SyncUIToRealValue(l_25_0)
   end
   if CommunicationsSettings_MapSettingsItemUI[SettingType_Bluetooth].RefreshNeeded then
      l_25_0 = CommunicationsSettings_MapVisibleElements[SettingType_Bluetooth]
      CommunicationsSettings_SyncUIToRealValue(l_25_0)
   end
   if CommunicationsSettings_MapSettingsItemUI[SettingType_MicrosoftPush].RefreshNeeded then
      l_25_0 = CommunicationsSettings_MapVisibleElements[SettingType_MicrosoftPush]
      CommunicationsSettings_SyncUIToRealValue(l_25_0)
   end
end

CommunicationsSettings_RegisterEventCallbacks = function()
   CommunicationsSettings_MachineStatus.FlightModeOff.OnValueChanged:connect(CommunicationsSettings_OnFlightModeOffValueChanged)
   CommunicationsSettings_MachineStatus.PhoneRadioOn.OnValueChanged:connect(CommunicationsSettings_OnPhoneValueChanged)
   CommunicationsSettings_MachineStatus.BluetoothStatus.OnValueChanged:connect(CommunicationsSettings_OnBluetoothValueChanged)
   CommunicationsSettings_MachineStatus.WifiOn.OnValueChanged:connect(CommunicationsSettings_OnWiFiValueChanged)
   CommunicationsSettings_MachineStatus.DataRadioOn.OnValueChanged:connect(CommunicationsSettings_OnDataConnectionsValueChanged)
   CommunicationsSettings_MachineStatus.PushMailOn.OnValueChanged:connect(CommunicationsSettings_OnPushMailValueChanged)
   CommunicationsSettings_Manager.OnEnabledChanged:connect(CommunicationsSettings_OnEnabledChanged)
end

CommunicationsSettings_DoneSoftkeyCallback = function()
   _application.Navigation:NavigateBack()
end

CommunicationsSettings_MenuExitCallback = function(l_28_0)
   trace("Dialog Exit\n")
   if l_28_0.Result.ExitType ~= DialogExitType_Cancel then
      trace("Dialog UserValue: " .. l_28_0.Result.UserValue .. "\n")
      if l_28_0.Result.UserValue == "Phone" then
         trace("Shell out to load phone dialog\n")
         if _config_os == "windowsmobile" then
            Shell_NavigateTo(ShellLocation_PhoneSettings)
         end
      elseif l_28_0.Result.UserValue == "Bluetooth" then
         trace("Shell out to load bluetooth dialog\n")
         if _config_os == "windowsmobile" then
             Shell_NavigateTo(ShellLocation_Bluetooth)
         end
      elseif l_28_0.Result.UserValue == "WiFi" then
         trace("Shell out to load wifi dialog\n")
         if _config_os == "windowsmobile" then
             Shell_NavigateTo(ShellLocation_WiFi)
         end
      end
   end
end

CommunicationsSettings_MenuSoftkeyCallback = function()
   DialogRequest = _application.DialogManager:GetDialog(URL("Manila://Communications.dialog"))
   DialogRequest.OnExit:connect(CommunicationsSettings_MenuExitCallback)
   DialogRequest:Show()
end

CommunicationsPage_Create = function()
   AirplaneSettingsItemUI = SettingsItemUI("[[IDS_AIRPLANEMODE]]", "[[IDS_AIRPLANE_DETAIL_ENABLE]]", "[[IDS_AIRPLANE_DETAIL]]", "icon_airplane", 64, 64, 35, 35)
   PhoneSettingsItemUI = SettingsItemUI("[[IDS_PHONE]]", "[[IDS_PHONE_DETAIL]]", "[[IDS_PHONE_DETAIL_ENABLE]]", "icon_phone", 32, 64, 19, 33)
   BluetoothSettingsItemUI = SettingsItemUI("[[IDS_BLUETOOTH]]", "[[IDS_BLUETOOTH_DETAIL]]", "[[IDS_BLUETOOTH_DETAIL_ENABLE]]", "icon_bluetooth", 32, 64, 24, 33)
   WiFiSettingsItemUI = SettingsItemUI("[[IDS_WIFI]]", "[[IDS_WIFI_DETAIL]]", "[[IDS_WIFI_DETAIL_ENABLE]]", "icon_wifi", 32, 32, 26, 31)
   DataSettingsItemUI = SettingsItemUI("[[IDS_DATACONNECTIONS]]", "[[IDS_DATACONNECTIONS_DETAIL]]", "[[IDS_DATACONNECTIONS_DETAIL_ENABLE]]", "icon_data", 32, 32, 31, 26)
   PushSettingsItemUI = SettingsItemUI("[[IDS_MICROSOFTPUSH]]", "[[IDS_MICROSOFTPUSH_DETAIL]]", "[[IDS_MICROSOFTPUSH_DETAIL_ENABLE]]", "icon_push", 32, 32, 32, 31)
   if _config_os == "windowsmobile" then
      CommunicationsSettings_MapSettingsItemUI = {[SettingType_AirplaneMode] = AirplaneSettingsItemUI, [SettingType_Phone] = PhoneSettingsItemUI, [SettingType_Bluetooth] = BluetoothSettingsItemUI, [SettingType_WiFi] = WiFiSettingsItemUI, [SettingType_DataConnections] = DataSettingsItemUI, [SettingType_MicrosoftPush] = PushSettingsItemUI}
      CommunicationsSettings_RegisterEventCallbacks()
   else
      CommunicationsSettings_MapSettingsItemUI = {[0] = AirplaneSettingsItemUI, [1] = PhoneSettingsItemUI, [2] = BluetoothSettingsItemUI, [3] = WiFiSettingsItemUI, [4] = PushSettingsItemUI}
   end
   CommunicationsSettings_ItemListLayout = TileLayout()
   CommunicationsSettings_ItemListLayout.SelectionNode = Selector
   CommunicationsSettings_ItemListLayout:SetItemSize(480, 72, 0)
   CommunicationsSettings_ItemListLayout.DisableVirtualization = false
   SettingsItemListView:SetLayout(CommunicationsSettings_ItemListLayout)
   if _config_os == "windowsmobile" then
      Collection = CommunicationsSettings_Manager:GetAllSettingsItems()
      CommunicationsSettings_ItemListGenerator = LibraryGeneratorSettingsItem(Collection, SettingsItemListView:GetMovie(), SettingsItemListView.ComponentLibraryName, SettingsItemListView.ComponentLibraryID)
   else
      FakeCollection = VectorNotifyint()
      for i = 0, 4 do
         FakeCollection:push_back(i)
      end
      CommunicationsSettings_ItemListGenerator = LibraryGeneratorint(FakeCollection, SettingsItemListView:GetMovie(), SettingsItemListView.ComponentLibraryName, SettingsItemListView.ComponentLibraryID)
   end
   CommunicationsSettings_ItemListGenerator.RecycleItems = true
   CommunicationsSettings_ItemListGenerator.ItemCreated:connect(CommunicationsSettings_HandleItemCreated)
   CommunicationsSettings_ItemListGenerator.ItemDestroyed:connect(CommunicationsSettings_HandleItemDestroyed)
   SettingsItemListView:SetGenerator(CommunicationsSettings_ItemListGenerator)
   SettingsItemListView.onMouseDown:connect(CommunicationsSettings_HandleMouseDown)
   SettingsItemListView.onMouseUp:connect(CommunicationsSettings_HandleMouseRelease)
   SettingsItemListView:Focus()
   if _config_os == "windowsmobile" then
      _application:SetLeftSoftkey(Softkey(Locale:GetString("IDS_BACK"), CommunicationsSettings_DoneSoftkeyCallback))
      _application:SetRightSoftkey(Softkey(Locale:GetString("IDS_MENU"), CommunicationsSettings_MenuSoftkeyCallback))
      SyncTimer = timer(10)
      SyncTimer:Stop()
      SyncTimer.OnElapsed:connect(OnSyncTimer)
   end
   CommunicationsSettings_MachineStatus:ForceRegistrySync()
end

CommunicationsPage_Create()

⌨️ 快捷键说明

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