public Navigator(TabControl tabs, Control buttonPanel) { this.buttonPanel = buttonPanel; this.tabs = tabs; //(Increase performance), Reference: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.suspendlayout.aspx ButtonList = new List<ButtonInfo>() //normal arrangement { new ButtonInfo() { Label = "Chat", TargetPath = "chat", Icon = Buttons.chat.GetResizedWithCache(32,32)}, new ButtonInfo() { Label = "Quick browse", TargetPath = "battles", Icon = Buttons.qb.GetResized(32,32) }, new ButtonInfo() { Label = "Extras", TargetPath = "extras", Icon= Buttons.extras.GetResized(32,32) }, new ButtonInfo() { Label = "Downloads", TargetPath = "downloads", Icon = Buttons.downloads.GetResized(32,32) }, new ButtonInfo() {Label = "Settings",TargetPath = "settings",Icon = Buttons.settings.GetResized(32,32)}, }; foreach (var b in ButtonList) buttonPanel.Controls.Add(b.GetButton()); tabs.TabPages.Clear(); chatTab = new ChatTab(); lastTabPaths[chatTab] = string.Format("chat/channel/{0}", Program.Conf != null ? Program.Conf.AutoJoinChannels.OfType<string>().FirstOrDefault() : "zk"); AddTabPage(chatTab, "Chat"); var battles = new BattleListTab(); AddTabPage(battles, "Battles"); AddTabPage(new SettingsTab(), "Settings"); AddTabPage(new ServerTab(), "Server"); AddTabPage(new DownloaderTab(), "Rapid"); }
private void InitializeTabPageContent() { tabControl.TabPages.Clear(); ChatTab = new ChatTab(); lastTabPaths[ChatTab] = "chat/channel/zk"; AddTabPage(ChatTab, "Chat"); if (Environment.OSVersion.Platform != PlatformID.Unix && !Program.Conf.UseExternalBrowser) { if (!Program.Conf.SingleInstance) //run in multiple TAB? { AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Maps", false), "Maps"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Missions", true, GlobalConst.BaseSiteUrl + "/Missions?no_menu=1"), "sp"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Battles", false), "rp"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Planetwars", false), "pw"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Forum", false), "fm"); } AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl, true), "hm"); } var battles = new BattleListTab(); AddTabPage(battles, "Battles"); AddTabPage(new SettingsTab(), "Settings"); AddTabPage(new ServerTab(), "Server"); var home = AddTabPage(new WelcomeTab(), "Welcome"); tabControl.SelectTab(home); }
public NavigationControl() { SuspendLayout();//(Increase performance), Reference: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.suspendlayout.aspx InitializeComponent(); isBusyTimer.Interval = 1020; //timer tick to update "isBusyIcon" every 1020 ms. isBusyTimer.Tick += isBusyTimer_Tick; isBusyTimer.Start(); ButtonList = new List<ButtonInfo>() //normal arrangement { new ButtonInfo() { Label = "HOME", TargetPath = GlobalConst.BaseSiteUrl + "/", Icon= Buttons.home, Height = 32,Width = 80 }, new ButtonInfo() { Label = "CHAT", TargetPath = "chat", Icon= ZklResources.chat, Height = 32, Width = 65 }, new ButtonInfo() { Label = "SINGLEPLAYER", TargetPath = string.Format("{0}/Missions", GlobalConst.BaseSiteUrl), Icon = Buttons.spherebot, Width = 125, Height = 32, }, new ButtonInfo() { Label = "MULTIPLAYER", TargetPath = "battles", Icon = ZklResources.battle, Width = 115, Height = 32, }, new ButtonInfo() { Label = "PLANETWARS", TargetPath = string.Format("{0}/Planetwars/", GlobalConst.BaseSiteUrl), Height = 32, }, new ButtonInfo() { Label = "MAPS", TargetPath = string.Format("{0}/Maps/", GlobalConst.BaseSiteUrl), Icon = Buttons.map, Height = 32, Width = 75 }, new ButtonInfo() { Label = "REPLAYS", TargetPath = string.Format("{0}/Battles/", GlobalConst.BaseSiteUrl), Icon = Buttons.video_icon, Height = 32, Width = 95 }, new ButtonInfo() { Label = "FORUM", TargetPath = string.Format("{0}/Forum/", GlobalConst.BaseSiteUrl), Height = 32, Width = 65, }, new ButtonInfo() { Label = "SETTINGS", TargetPath = "settings", Icon = Buttons.settings, Height = 32, Width = 100, Dock = DockStyle.Right}, }; Instance = this; tabControl.TabPages.Clear(); chatTab = new ChatTab(); lastTabPaths[chatTab] = string.Format("chat/channel/{0}", Program.Conf != null ? Program.Conf.AutoJoinChannels.OfType<string>().FirstOrDefault():"zk"); AddTabPage(chatTab, "Chat"); if (Environment.OSVersion.Platform != PlatformID.Unix && !Program.Conf.UseExternalBrowser) { if (!Program.Conf.SingleInstance) //run in multiple TAB? { AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Maps", false), "Maps"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Missions", false), "sp"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Battles", false), "rp"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Planetwars", false), "pw"); AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl + "/Forum", true), "fm"); } var home = AddTabPage(new BrowserTab(GlobalConst.BaseSiteUrl, true), "hm"); tabControl.SelectTab(home); if (Program.Conf.InterceptPopup) { AddTabPage(new BrowserTab("http", false), "other"); //a tab with generic match that match 100% of random URL (block new window) ButtonList.Add(new ButtonInfo() { Label = "OTHER", TargetPath = "http", Height = 32, Width = 65,}); } reloadButton1.Visible = true; } var battles = new BattleListTab(); AddTabPage(battles, "Battles"); AddTabPage(new SettingsTab(), "Settings"); AddTabPage(new ServerTab(), "Server"); AddTabPage(new DownloaderTab(), "Rapid"); AddTabPage(new MicroLobby.ExtrasTab.ExtrasTab(), "Extra"); foreach (var but in ButtonList) flowLayoutPanel1.Controls.Add(but.GetButton()); flowLayoutPanel1.Controls.Add(logoutButton); flowLayoutPanel1.BringToFront(); ResumeLayout(); }