DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ Construct() [3/3]

override void ServerBrowserTab::Construct ( Widget parent,
ServerBrowserMenuNew menu,
TabType type )
inlineprotected

См. определение в файле ServerBrowserTabPc.c строка 28

29 {
30 #ifdef PLATFORM_CONSOLE
31 m_Root = GetGame().GetWorkspace().CreateWidgets("gui/layouts/new_ui/server_browser/xbox/server_browser_tab.layout", parent);
32 #else
33 #ifdef PLATFORM_WINDOWS
34 m_Root = GetGame().GetWorkspace().CreateWidgets("gui/layouts/new_ui/server_browser/pc/server_browser_tab_pages.layout", parent);
35 #endif
36 #endif
37
38 m_ServerListScroller = ScrollWidget.Cast(m_Root.FindAnyWidget("server_list_scroller"));
39 m_ServerList = SpacerBaseWidget.Cast(m_ServerListScroller.FindAnyWidget("server_list_content"));
40 m_ServerListScroller.VScrollToPos01(0);
41
42 m_ServerListEntries = new array<ref ServerBrowserEntry>;
47
48 m_EntriesSorted[ESortType.HOST] = new array<ref GetServersResultRow>;
49 m_EntriesSorted[ESortType.TIME] = new array<ref GetServersResultRow>;
50 m_EntriesSorted[ESortType.POPULATION] = new array<ref GetServersResultRow>;
51 m_EntriesSorted[ESortType.SLOTS] = new array<ref GetServersResultRow>;
52 m_EntriesSorted[ESortType.PING] = new array<ref GetServersResultRow>;
53 m_EntriesSorted[ESortType.FAVORITE] = new array<ref GetServersResultRow>;
54 m_EntriesSorted[ESortType.PASSWORDED] = new array<ref GetServersResultRow>;
55 m_EntriesSorted[ESortType.MAP] = new array<ref GetServersResultRow>;
56
57 m_Menu = menu;
58 m_TabType = type;
59
60 m_RightAreaHeaderText = TextWidget.Cast(m_Root.FindAnyWidget("right_area_header_text"));
61 m_BtnShowFilters = ButtonWidget.Cast(m_Root.FindAnyWidget("show_filters_button"));
62
63 m_DetailsRoot = m_Root.FindAnyWidget("details_root");
64 m_BtnShowDetails = ButtonWidget.Cast(m_Root.FindAnyWidget("show_details_button"));
65
66 m_FilterRoot = m_Root.FindAnyWidget("filters_root");
67 m_FilterContent = m_Root.FindAnyWidget("filters_content");
68 m_ApplyFilter = m_Root.FindAnyWidget("apply_filter_button");
69 m_RefreshList = m_Root.FindAnyWidget("refresh_list_button");
70 m_FiltersChanged = m_Root.FindAnyWidget("unapplied_filters_notify");
71 m_HostSort = m_Root.FindAnyWidget("server_list_content_header_host");
72 m_TimeSort = m_Root.FindAnyWidget("server_list_content_header_time");
73 m_PopulationSort = m_Root.FindAnyWidget("server_list_content_header_population");
74 m_SlotsSort = m_Root.FindAnyWidget("server_list_content_header_slots");
75 m_PingSort = m_Root.FindAnyWidget("server_list_content_header_ping");
76 m_MapSort = m_Root.FindAnyWidget("server_list_content_header_map");
77
78 m_FilterSearchText = m_Root.FindAnyWidget("search_name_setting");
79 m_FilterSearchTextBox = m_Root.FindAnyWidget("search_name_setting_option");
80 m_FilterSearchIP = m_Root.FindAnyWidget("search_ip_setting");
81 m_FilterSearchIPBox = m_Root.FindAnyWidget("search_ip_setting_option");
82
83 m_FilterPanelAccTime = m_Root.FindAnyWidget("accelerated_time_setting");
84 m_FilterPanelPing = m_Root.FindAnyWidget("ping_setting");
85 //m_FilterPanelPing.SetHandler(this);
86
87 m_LoadingText = TextWidget.Cast(m_Root.FindAnyWidget("loading_servers_info"));
88
90
91 m_Filters = new ServerBrowserFilterContainer(m_Root.FindAnyWidget("filters_content"), this);
92
93 m_Root.SetHandler(this);
94
95 SetSort(ESortType.HOST, ESortOrder.ASCENDING);
96
97 m_BtnPages = new array<ButtonWidget>();
98
99 int page_button_num = 1;
100 ButtonWidget page_button = ButtonWidget.Cast(m_Root.FindAnyWidget("servers_navigation_page" + page_button_num));
101
103 {
104 Error("ServerBrowserTabPage->PAGES_BUTTONS_COUNT must be in range 3 - 10!");
105 return;
106 }
107
108 while (page_button)
109 {
110 page_button.Show(false);
111
112 if (page_button_num <= PAGES_BUTTONS_COUNT)
113 {
114 m_BtnPages.Insert(page_button);
115 }
116
117 page_button_num++;
118 page_button = ButtonWidget.Cast(m_Root.FindAnyWidget("servers_navigation_page"+ page_button_num));
119 }
120
121 m_ResetFilters = ButtonWidget.Cast(m_Root.FindAnyWidget( "reset_filter_button"));
122
123 m_PnlPagesPanel = m_Root.FindAnyWidget("servers_navigation_spacer");
124 m_BtnPagePrev = ButtonWidget.Cast(m_Root.FindAnyWidget("servers_navigation_prev"));
125 m_BtnPageNext = ButtonWidget.Cast(m_Root.FindAnyWidget("servers_navigation_next"));
126 m_BtnPagesFirst = ButtonWidget.Cast(m_Root.FindAnyWidget("servers_navigation_page_first"));
127 m_BtnPagesLast = ButtonWidget.Cast(m_Root.FindAnyWidget("servers_navigation_page_last"));
128 m_PageIndex = 0;
129 m_PnlPagesPanel.Show(true);
130
132
133 m_Details = new ServerBrowserDetailsContainer(m_Root.FindAnyWidget("details_content"), this);
134
135 if (m_TabType == TabType.FAVORITE || m_TabType == TabType.LAN)
136 {
137 m_Root.FindAnyWidget("filters_content").Show(false);
138 m_Root.FindAnyWidget("reset_filter_button").Show(false);
139 m_ApplyFilter.Show(false);
140 m_Root.FindAnyWidget("spacer").Show(false);
141 m_Root.FindAnyWidget("spacer1").Show(false);
142 m_Root.FindAnyWidget("spacer5").Show(false);
143 m_BtnShowFilters.Show(false);
144 m_FilterRoot.Show(true);
145 }
146
147 if (m_TabType != TabType.FAVORITE && m_TabType != TabType.LAN)
148 {
150 }
151 else
152 {
154 }
155 }
ESortOrder
Определения BiosLobbyService.c:20
ESortType
Определения BiosLobbyService.c:7
map
Определения ControlsXboxNew.c:4
ref ServerBrowserFilterContainer m_Filters
Определения ServerBrowserTab.c:35
ref map< ESortType, ref array< ref GetServersResultRow > > m_EntriesSorted
Определения ServerBrowserTab.c:75
TabType m_TabType
Определения ServerBrowserTab.c:40
Widget m_FilterSearchText
Определения ServerBrowserTab.c:69
Widget m_FiltersChanged
Определения ServerBrowserTab.c:62
Widget m_SlotsSort
Определения ServerBrowserTab.c:66
TextWidget m_RightAreaHeaderText
Определения ServerBrowserTab.c:79
void ButtonDisable(Widget w)
Определения ServerBrowserTab.c:625
ButtonWidget m_BtnPageNext
Определения ServerBrowserTab.c:73
ref map< ESortType, ESortOrder > m_SortInverted
Определения ServerBrowserTab.c:76
ButtonWidget m_BtnShowFilters
Определения ServerBrowserTab.c:85
ref map< string, ref ServerBrowserEntry > m_EntryWidgets
Определения ServerBrowserTab.c:32
TabType
Определения ServerBrowserTab.c:2
ScrollWidget m_ServerListScroller
Определения ServerBrowserTab.c:27
Widget m_PingSort
Определения ServerBrowserTab.c:67
Widget m_ApplyFilter
Определения ServerBrowserTab.c:59
ServerBrowserMenuNew m_Menu
Определения ServerBrowserTab.c:37
ref map< string, ref array< string > > m_EntryMods
Определения ServerBrowserTab.c:33
TextWidget m_LoadingText
Определения ServerBrowserTab.c:71
Widget m_PopulationSort
Определения ServerBrowserTab.c:65
Widget m_MapSort
Определения ServerBrowserTab.c:68
Widget m_HostSort
Определения ServerBrowserTab.c:63
ButtonWidget m_BtnPagePrev
Определения ServerBrowserTab.c:72
SpacerBaseWidget m_ServerList
Определения ServerBrowserTab.c:28
Widget m_FilterSearchTextBox
Определения ServerBrowserTab.c:70
ref ServerBrowserDetailsContainer m_Details
Определения ServerBrowserTab.c:87
Widget m_FilterRoot
Определения ServerBrowserTab.c:80
Widget m_ResetFilters
Определения ServerBrowserTab.c:61
Widget m_DetailsRoot
Определения ServerBrowserTab.c:84
Widget m_RefreshList
Определения ServerBrowserTab.c:60
Widget m_TimeSort
Определения ServerBrowserTab.c:64
Widget m_FilterContent
Определения ServerBrowserTab.c:81
ButtonWidget m_BtnShowDetails
Определения ServerBrowserTab.c:82
Widget m_Root
Определения SizeToChild.c:91
proto native WorkspaceWidget GetWorkspace()
Widget m_PnlPagesPanel
Определения ServerBrowserTabConsolePages.c:22
void UpdatePageButtons()
Определения ServerBrowserTabConsolePages.c:646
override void SwitchToDetails(bool focus=true)
Определения ServerBrowserTabConsolePages.c:803
override void SetSort(ESortType type, ESortOrder order)
Определения ServerBrowserTabPc.c:541
override void SwitchToFilters(bool focus=true)
Определения ServerBrowserTabConsolePages.c:814
ref array< ButtonWidget > m_BtnPages
Определения ServerBrowserTabPc.c:23
ref array< ref ServerBrowserEntry > m_ServerListEntries
Определения ServerBrowserTabPc.c:24
Widget m_FilterPanelAccTime
Определения ServerBrowserTabPc.c:21
ButtonWidget m_BtnPagesFirst
Определения ServerBrowserTabPc.c:15
int m_PageIndex
Определения ServerBrowserTabPc.c:7
Widget m_FilterSearchIPBox
Определения ServerBrowserTabPc.c:19
const int PAGES_BUTTONS_COUNT
Определения ServerBrowserTabPc.c:4
ButtonWidget m_BtnPagesLast
Определения ServerBrowserTabPc.c:16
Widget m_FilterSearchIP
Определения ServerBrowserTabPc.c:18
Widget m_FilterPanelPing
Определения ServerBrowserTabPc.c:20
proto native CGame GetGame()
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90
proto native external Widget CreateWidgets(string layout, Widget parentWidget=NULL, bool immedUpdate=true)
Create widgets from *.layout file.

Перекрестные ссылки ButtonDisable(), WorkspaceWidget::CreateWidgets(), Error(), GetGame(), CGame::GetWorkspace(), m_ApplyFilter, m_BtnPageNext, m_BtnPagePrev, m_BtnPages, m_BtnPagesFirst, m_BtnPagesLast, m_BtnShowDetails, m_BtnShowFilters, m_Details, m_DetailsRoot, m_EntriesSorted, m_EntryMods, m_EntryWidgets, m_FilterContent, m_FilterPanelAccTime, m_FilterPanelPing, m_FilterRoot, m_Filters, m_FiltersChanged, m_FilterSearchIP, m_FilterSearchIPBox, m_FilterSearchText, m_FilterSearchTextBox, m_HostSort, m_LoadingText, m_MapSort, m_Menu, m_PageIndex, m_PingSort, m_PnlPagesPanel, m_PopulationSort, m_RefreshList, m_ResetFilters, m_RightAreaHeaderText, m_Root, m_ServerList, m_ServerListEntries, m_ServerListScroller, m_SlotsSort, m_SortInverted, m_TabType, m_TimeSort, PAGES_BUTTONS_COUNT, SetSort(), SwitchToDetails(), SwitchToFilters() и UpdatePageButtons().