7 protected bool m_MouseKeyboardControlled
32 m_Root =
g_Game.GetWorkspace().CreateWidgets(
"gui/layouts/new_ui/server_browser/xbox/server_browser_tab_console_pages.layout", parent);
66 #ifdef PLATFORM_MSSTORE
68 Widget keyboard_button =
m_Root.FindAnyWidget(
"keyboard_button");
70 keyboard_button.Show(
false);
79 m_Root.FindAnyWidget(
"servers_navigation_page_prev_icon_xbox").Show(
false);
80 m_Root.FindAnyWidget(
"servers_navigation_page_next_icon_xbox").Show(
false);
84 m_Root.FindAnyWidget(
"servers_navigation_page_prev_icon_ps4" ).Show(
false);
85 m_Root.FindAnyWidget(
"servers_navigation_page_next_icon_ps4" ).Show(
false);
97 m_Filters =
new ServerBrowserFilterContainer(
m_Root.FindAnyWidget(
"filters_content"),
this);
115 m_Details =
new ServerBrowserDetailsContainer(
m_Root.FindAnyWidget(
"details_content"),
this);
117 #ifdef DIAG_DEVELOPER
131 m_Root.FindAnyWidget(
"filters_root_nav_img_lb_xbox" ).Show( is_xbox );
132 m_Root.FindAnyWidget(
"filters_root_nav_img_rb_xbox" ).Show( is_xbox );
133 m_Root.FindAnyWidget(
"server_list_root_nav_img_lb_xbox" ).Show( is_xbox );
134 m_Root.FindAnyWidget(
"server_list_root_nav_img_rb_xbox" ).Show( is_xbox );
136 m_Root.FindAnyWidget(
"filters_root_nav_img_l1_ps4" ).Show( !is_xbox );
137 m_Root.FindAnyWidget(
"filters_root_nav_img_r1_ps4" ).Show( !is_xbox );
138 m_Root.FindAnyWidget(
"server_list_root_nav_img_l1_ps4" ).Show( !is_xbox );
139 m_Root.FindAnyWidget(
"server_list_root_nav_img_r1_ps4" ).Show( !is_xbox );
144 switch (pInputDeviceType)
148 m_MouseKeyboardControlled =
false;
161 m_Root.FindAnyWidget(
"spacer2").Show(
false);
162 m_Root.FindAnyWidget(
"spacer5").Show(
false);
163 m_Menu.GetLayoutRoot().FindAnyWidget(
"play_panel_root").Show(
false);
164 m_Menu.GetLayoutRoot().FindAnyWidget(
"MouseAndKeyboardWarning").Show(
false);
172 if (
g_Game.GetInput().IsEnabledMouseAndKeyboardEvenOnServer())
176 m_MouseKeyboardControlled =
true;
183 m_Root.FindAnyWidget(
"spacer").Show(!isFavoriteTab);
184 m_Root.FindAnyWidget(
"spacer2").Show(
true);
185 m_Root.FindAnyWidget(
"spacer5").Show(!isFavoriteTab);
186 m_Menu.GetLayoutRoot().FindAnyWidget(
"play_panel_root").Show(
true);
187 m_Menu.GetLayoutRoot().FindAnyWidget(
"MouseAndKeyboardWarning").Show(
true);
198 #ifdef DIAG_DEVELOPER
199 if (m_DummyServersEnabled)
218 #ifdef DIAG_DEVELOPER
219 if (m_DummyServersEnabled)
230 int resultCount = m_DummyServers.m_Results.Count();
231 if (endIndex > resultCount)
233 endIndex = resultCount;
237 for (
int i = startIndex; i < endIndex; ++i)
239 tempDummyServerResult.Insert(m_DummyServers.m_Results[i]);
262 msg =
"#server_browser_tab_unable_to_get_server";
274 entry.Darken(entry.GetRoot(), 0, 0);
284 ServerBrowserEntry entry;
304 string ipPort = result.GetIpPort();
305 bool isFavorited =
m_Menu.IsFavorited(ipPort);
308 entry.SetIsOnline(
true);
309 entry.FillInfo( result );
310 entry.SetFavorite(isFavorited);
337 if (
m_Filters.m_PreviouslyPlayedFilter.IsSet())
340 if (!is_visited &&
m_Filters.m_PreviouslyPlayedFilter.IsEnabled())
343 if (is_visited && !
m_Filters.m_PreviouslyPlayedFilter.IsEnabled())
347 return super.PassFilter(result);
352 ServerBrowserEntry entry;
362 entry =
new ServerBrowserEntry(
m_ServerList, index,
this );
388 #ifdef DIAG_DEVELOPER
389 if (m_DummyServersEnabled)
423 super.ResetFilters();
447 #ifdef DIAG_DEVELOPER
460 int currentTime =
g_Game.GetTime();
461 #ifdef DIAG_DEVELOPER
469 #ifdef DIAG_DEVELOPER
490 case SelectedPanel.BROWSER:
498 case SelectedPanel.FILTERS:
527 int currentTime =
g_Game.GetTime();
562 int currentTime =
g_Game.GetTime();
596 case SelectedPanel.BROWSER:
608 case SelectedPanel.DETAILS:
609 case SelectedPanel.FILTERS:
631 super.ShowServerDetails();
646 if (!m_MouseKeyboardControlled)
666 if (!m_MouseKeyboardControlled)
686 if (!m_MouseKeyboardControlled)
696 if (entries && entries.Count() > 0)
698 string entryKey = entries.Get(0).GetIpPort();
706 m_Menu.UpdateAButtonLabel(
"#str_serverbrowserroot_toolbar_bg_consoletoolbar_connect_connecttext0");
707 m_Menu.ShowThumbRButton(
true);
712 m_Menu.ShowAButton(
false);
713 m_Menu.ShowThumbRButton(
false);
725 Widget w_filters =
m_Root.FindAnyWidget(
"filters_content");
726 Widget w_content =
m_Root.FindAnyWidget(
"server_list_scroller");
727 w_content.Enable( !enable );
731 SetFocus( ButtonWidget.Cast(w_filters.FindWidget(
"sort_button")) );
737 Widget w_filters =
m_Root.FindAnyWidget(
"filters_content");
738 Widget w_content =
m_Root.FindAnyWidget(
"server_list_scroller");
739 w_content.Enable( enable );
752 if (currentPage > pagesCount)
753 currentPage = pagesCount;
755 wgtPageStat.SetText(currentPage.ToString() +
" / " + pagesCount.ToString());
757 bool canLeft = currentPage > 1;
758 bool canRight = currentPage < pagesCount;
760 bool showMouseKeyboardPaging = m_MouseKeyboardControlled && (pagesCount > 1);
772 super.OnClick(w,
x,
y, button);
841 w.SetColor(
ARGB( 255, 200, 0, 0) );
856 if ( w.IsInherited( ButtonWidget ) )
858 ButtonWidget button = ButtonWidget.Cast( w );
859 button.SetTextColor(
ARGB( 255, 255, 255, 255 ) );
863 w.SetColor(
ARGB( 0, 255, 255, 255 ) );
869 ImageWidget image = ImageWidget.Cast( w.FindAnyWidget( w.GetName() +
"_image" ) );
871 Widget option =
Widget.Cast( w.FindAnyWidget( w.GetName() +
"_option_wrapper" ) );
875 text1.SetColor(
ARGB( 255, 255, 255, 255 ) );
880 text2.SetColor(
ARGB( 255, 255, 255, 255 ) );
885 text3.SetColor(
ARGB( 255, 255, 255, 255 ) );
891 image.SetColor(
ARGB( 255, 255, 255, 255 ) );
896 option.SetColor(
ARGB( 150, 255, 255, 255 ) );
902 #ifdef PLATFORM_WINDOWS
906 ButtonWidget button = ButtonWidget.Cast( w );
920 m_Menu.UpdateYButtonLabel(
"#server_browser_tab_server #STR_server_browser_menu_server_filters");
936 m_Menu.UpdateYButtonLabel(
"#server_details_header");
942 if (m_MouseKeyboardControlled)
961 protected void RefreshDummyList()
963 for (
int i = 0; i < m_ServerListEntiers.Count(); ++i)
965 m_ServerListEntiers[i].Show(
false);
970 array<ref GetServersResultRow> resultRows =
m_EntriesSorted.GetElement(j);
980 m_IsFilterChanged =
false;
994 m_Menu.DeselectCurrentServer();
1006 if (m_DummyServers && m_DummyServers.m_Results)
1008 for (
int k = 0; k < m_DummyServers.m_Results.Count(); ++k)
1010 GetServersResultRow row = m_DummyServers.m_Results[k];
1011 if (PassLocalFilters(row))
1013 filteredResults.Insert(row);
1018 m_TotalServersCount = filteredResults.Count();
1019 m_PagesCount = (m_TotalServersCount + SERVERS_VISIBLE_COUNT - 1) / SERVERS_VISIBLE_COUNT;
1020 if (m_PagesCount < 1)
1030 if (safePage > m_PagesCount)
1032 safePage = m_PagesCount;
1036 int startIndex = (safePage - 1) * SERVERS_VISIBLE_COUNT;
1037 int endIndex = Math.Min(startIndex + SERVERS_VISIBLE_COUNT, filteredResults.Count());
1040 for (
int i2 = startIndex; i2 < endIndex; ++i2)
1042 pageResults.Insert(filteredResults[i2]);
1047 UpdatePageButtons();
1050 override void OnDummyServersEnabledChanged()
1052 super.OnDummyServersEnabledChanged();
1061 override int GetServersVisibleCount()
1063 return SERVERS_VISIBLE_COUNT;
void OnInputDeviceChanged(EInputDeviceType pInputDeviceType)
EBiosError
Possible Error codes for bios API. This is the list of errors that can be returned from bios API....
array< ref GetServersResultRow > GetServersResultRowArray
ErrorCategory
ErrorCategory - To decide what ErrorHandlerModule needs to be called and easily identify where it cam...
ref ServerBrowserFilterContainer m_Filters
ref map< ESortType, ref array< ref GetServersResultRow > > m_EntriesSorted
Widget m_FilterSearchText
TextWidget m_RightAreaHeaderText
ServerBrowserEntry m_SelectedServer
ref GetServersInput m_CurrentFilterInput
void SwitchRightAreaView()
ButtonWidget m_BtnPageNext
ButtonWidget m_BtnShowFilters
ref map< string, ref ServerBrowserEntry > m_EntryWidgets
void SwitchToDetails(bool focus=true)
ScrollWidget m_ServerListScroller
ServerBrowserMenuNew m_Menu
void SwitchToFilters(bool focus=true)
SelectedPanel m_SelectedPanel
ButtonWidget m_BtnPagePrev
SpacerBaseWidget m_ServerList
Widget m_FilterSearchTextBox
ref ServerBrowserDetailsContainer m_Details
ref set< string > m_OnlineFavServers
void SetCurrentPage(int page_num)
ButtonWidget m_BtnShowDetails
static int COLOR_DISABLED_TEXT
static proto string GetClientMessage(ErrorCategory category, int code, string additionalInfo="")
Gets the Client Message for specified error.
The error handler itself, for managing and distributing errors to modules Manages the ErrorHandlerMod...
ref GetServersResultRowArray m_Results
GetServersResult the output structure of the GetServers operation.
GetServersResultRow the output structure of the GetServers operation that represents one game server.
ref array< ref ServerBrowserEntry > m_ServerListEntiers
override void PressThumbRight()
override void PressSholderRight()
override void ShowServerDetails()
override void ColorDisable(Widget w)
override void ApplyFilters()
override bool OnClick(Widget w, int x, int y, int button)
override void SwitchToDetails(bool focus=true)
Widget m_WidgetNavFilters
ServerBrowserEntry GetServerEntryByIndex(int index)
TextWidget m_PnlPagesLoadingText
override void SwitchToFilters(bool focus=true)
int m_TimeLastServerRefresh
Widget m_ButtonPageRightImg
override void ColorNormal(Widget w)
override void ResetFilters()
int m_ServersEstimateCount
Widget m_WidgetNavServers
override bool PassFilter(GetServersResultRow result)
Widget m_ButtonPageLeftImg
int m_TimeLastServerRefreshHoldButton
override void RefreshList()
override void OnLoadServersAsyncConsole(GetServersResult result_list, EBiosError error, string response)
override void PressSholderLeft()
override void OnFilterChanged()
void LoadEntries(int cur_page_index, GetServersResultRowArray page_entries)
void SetEnableServers(bool enable)
override void OnPressShoulder()
override void RightRelease()
void OnInputDeviceChanged(EInputDeviceType pInputDeviceType)
void SetEnableFilters(bool enable)
override void Construct(Widget parent, ServerBrowserMenuNew menu, TabType type)
void ShowHideConsoleWidgets()
override void ColorHighlight(Widget w)
void OnLoadServersAsyncFinished()
override void RightHold()
const int SERVERS_VISIBLE_COUNT
bool CanRefreshServerList()
override void LeftRelease()
override void RefreshServerList()
override bool PassFilter(GetServersResultRow result)
override void RefreshList()
override void LoadExtraEntries(int index)
override void OnLoadServersAsyncFinished()
override void SetFocusFilters()
override void LoadEntries(int cur_page_index, GetServersResultRowArray page_entries)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
int ARGB(int a, int r, int g, int b)