private void WindowStartMainPanel_RectCaptureButtonClick(object sender, RoutedEventArgs e) { this.WindowStartMainPanel.Visibility = Visibility.Hidden; this.WindowRectCaptureMainPanel.Visibility = Visibility.Visible; this.WindowSubpageBottomBox.Visibility = Visibility.Visible; this.WindowTopPanel.Text = "領域を指定してキャプチャ"; this.currentPage = MainWindowPage.RectCapture; this.currentPageCount++; }
private void WindowStartMainPanel_SettingButtonClick(object sender, RoutedEventArgs e) { //Console.WriteLine("イベントが発生しました。"); this.WindowStartMainPanel.Visibility = Visibility.Hidden; this.WindowSettingMainPanel.Visibility = Visibility.Visible; this.WindowSubpageBottomBox.Visibility = Visibility.Visible; this.WindowTopPanel.Text = "キャプチャ設定"; this.currentPage = MainWindowPage.Setting; this.currentPageCount++; }
private void WindowSubpageBottomBox_PrevButtonClick(object sender, RoutedEventArgs e) { this.currentPageCount--; if (this.currentPageCount < 0) { throw new Exception("UIエラーが発生しました。ページカウントが負の値を示しています。"); } else if (this.currentPageCount == 0) { // トップページに戻す this.WindowStartMainPanel.Visibility = Visibility.Visible; this.WindowRectCaptureMainPanel.Visibility = Visibility.Hidden; this.WindowWindowCapturePanel.Visibility = Visibility.Hidden; this.WindowSettingMainPanel.Visibility = Visibility.Hidden; this.WindowSubpageBottomBox.Visibility = Visibility.Collapsed; this.WindowTopPanel.Text = ""; this.currentPage = MainWindowPage.Start; } else { // 各モード内で1つ前のページに戻す switch (this.currentPage) { case MainWindowPage.RectCapture: { break; } case MainWindowPage.WindowCapture: { break; } case MainWindowPage.Setting: { break; } default: throw new Exception("UIエラーが発生しました。ページモードの種類を示す値が正しくありません。"); } } }
private void WindowStartMainPanel_WindowCaptureButtonClick(object sender, RoutedEventArgs e) { this.WindowStartMainPanel.Visibility = Visibility.Hidden; this.WindowWindowCapturePanel.Visibility = Visibility.Visible; this.WindowSubpageBottomBox.Visibility = Visibility.Visible; this.WindowTopPanel.Text = "ウィンドウを指定してキャプチャ"; this.currentPage = MainWindowPage.WindowCapture; this.currentPageCount++; this.WindowWindowCapturePanel.UpdateWindowInformations(); /* * ICollection<Models.WindowInfo> test = Models.WindowInfo.GetAllActiveWindows(); * foreach (var item in test) * Console.WriteLine("{0}:({1:0000},{2:0000}) {3:0000}x{4:0000}", item.Name.PadRight(30), item.PositionX, item.PositionY, item.Width, item.Height); */ }
public App() { var newWindow = new MainWindowPage(); newWindow.Show(); }
public void NavigateTo(MainWindowPage page) { // Needed to save the content of the LoliCode editor when changing page if (CurrentPage == configEditorPage) { configEditorPage?.OnPageChanged(); } switch (page) { case MainWindowPage.Home: homePage = new Home(); // We recreate the homepage each time to display updated announcements ChangePage(homePage, menuOptionHome); break; case MainWindowPage.Jobs: if (jobsPage is null) { jobsPage = new(); } ChangePage(jobsPage, menuOptionJobs); break; case MainWindowPage.Monitor: if (monitorPage is null) { monitorPage = new(); } ChangePage(monitorPage, menuOptionMonitor); break; case MainWindowPage.Proxies: if (proxiesPage is null) { proxiesPage = new(); } proxiesPage.UpdateViewModel(); ChangePage(proxiesPage, menuOptionProxies); break; case MainWindowPage.Wordlists: if (wordlistsPage is null) { wordlistsPage = new(); } ChangePage(wordlistsPage, menuOptionWordlists); break; case MainWindowPage.Configs: if (configsPage is null) { configsPage = new(); } configsPage.UpdateViewModel(); ChangePage(configsPage, menuOptionConfigs); break; case MainWindowPage.Hits: if (hitsPage is null) { hitsPage = new(); } hitsPage.UpdateViewModel(); ChangePage(hitsPage, menuOptionHits); break; case MainWindowPage.Plugins: if (pluginsPage is null) { pluginsPage = new(); } ChangePage(pluginsPage, menuOptionPlugins); break; case MainWindowPage.OBSettings: if (obSettingsPage is null) { obSettingsPage = new(); } ChangePage(obSettingsPage, menuOptionOBSettings); break; case MainWindowPage.RLSettings: if (rlSettingsPage is null) { rlSettingsPage = new(); } ChangePage(rlSettingsPage, menuOptionRLSettings); break; case MainWindowPage.About: if (aboutPage is null) { aboutPage = new(); } ChangePage(aboutPage, menuOptionAbout); break; // Initialize config pages when we click on them because a user might not even load them // so we save some RAM (especially the heavy ones that involve a WebBrowser control) case MainWindowPage.ConfigMetadata: CloseSubmenu(); if (configMetadataPage is null) { configMetadataPage = new(); } configMetadataPage.UpdateViewModel(); ChangePage(configMetadataPage, menuOptionMetadata); break; case MainWindowPage.ConfigReadme: CloseSubmenu(); if (configReadmePage is null) { configReadmePage = new(); } configReadmePage.UpdateViewModel(); ChangePage(configReadmePage, menuOptionReadme); break; case MainWindowPage.ConfigStacker: if (vm.Config.Mode is not ConfigMode.Stack and not ConfigMode.LoliCode) { return; } CloseSubmenu(); if (configEditorPage is null) { configEditorPage = new(); } configEditorPage.NavigateTo(ConfigEditorSection.Stacker); ChangePage(configEditorPage, menuOptionStacker); break; case MainWindowPage.ConfigLoliCode: if (vm.Config.Mode is not ConfigMode.Stack and not ConfigMode.LoliCode) { return; } CloseSubmenu(); if (configEditorPage is null) { configEditorPage = new(); } configEditorPage.NavigateTo(ConfigEditorSection.LoliCode); ChangePage(configEditorPage, menuOptionLoliCode); break; case MainWindowPage.ConfigSettings: CloseSubmenu(); if (configSettingsPage is null) { configSettingsPage = new(); } configSettingsPage.UpdateViewModel(); ChangePage(configSettingsPage, menuOptionConfigSettings); break; case MainWindowPage.ConfigCSharpCode: if (vm.Config.Mode is not ConfigMode.Stack and not ConfigMode.LoliCode and not ConfigMode.CSharp) { return; } CloseSubmenu(); if (configEditorPage is null) { configEditorPage = new(); } configEditorPage.NavigateTo(ConfigEditorSection.CSharp); ChangePage(configEditorPage, menuOptionCSharpCode); break; } }
public MainWindowPageVo(MainWindowPage window) { TheWindow = window; }