From f1db84a999e430bbe2894cf64ea76b5dedd004b8 Mon Sep 17 00:00:00 2001 From: omegadox Date: Sun, 26 Oct 2008 13:35:34 +0000 Subject: [PATCH] OpenGL config window re-organization. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@972 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Plugins/Plugin_VideoOGL/Src/Config.h | 20 +- .../Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp | 175 ++++++++++-------- .../Plugin_VideoOGL/Src/GUI/ConfigDlg.h | 46 +++-- 3 files changed, 139 insertions(+), 102 deletions(-) diff --git a/Source/Plugins/Plugin_VideoOGL/Src/Config.h b/Source/Plugins/Plugin_VideoOGL/Src/Config.h index b20b47a4f9..683176ce1d 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/Config.h +++ b/Source/Plugins/Plugin_VideoOGL/Src/Config.h @@ -30,25 +30,31 @@ struct Config void Load(); void Save(); - //video + // General bool bFullscreen; bool renderToMainframe; char iFSResolution[16]; char iWindowedRes[16]; - int iMultisampleMode; + bool bStretchToFit; + bool bKeepAR; + // Enhancements + int iMultisampleMode; bool bForceFiltering; bool bForceMaxAniso; - bool bStretchToFit; - bool bKeepAR; - bool bShowFPS; + // Information + bool bShowFPS; + bool bOverlayStats; bool bTexFmtOverlayEnable; bool bTexFmtOverlayCenter; - bool bOverlayStats; + + // Render bool bUseXFB; - bool bDumpTextures; + + // Utility char texDumpPath[280]; + bool bDumpTextures; // Hacks bool bInvertDepth; diff --git a/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp b/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp index 0e970b4ffd..f5d2225a47 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp @@ -63,14 +63,21 @@ void ConfigDialog::CreateGUIControls() { //notebook m_Notebook = new wxNotebook(this, ID_NOTEBOOK, wxDefaultPosition, wxDefaultSize); - m_PageVideo = new wxPanel(m_Notebook, ID_PAGEVIDEO, wxDefaultPosition, wxDefaultSize); - m_Notebook->AddPage(m_PageVideo, wxT("Video")); + + m_PageGeneral = new wxPanel(m_Notebook, ID_PAGEGENERAL, wxDefaultPosition, wxDefaultSize); + m_Notebook->AddPage(m_PageGeneral, wxT("General")); m_PageEnhancements = new wxPanel(m_Notebook, ID_PAGEENHANCEMENTS, wxDefaultPosition, wxDefaultSize); m_Notebook->AddPage(m_PageEnhancements, wxT("Enhancements")); - m_PageAdvanced = new wxPanel(m_Notebook, ID_PAGEADVANCED, wxDefaultPosition, wxDefaultSize); - m_Notebook->AddPage(m_PageAdvanced, wxT("Advanced")); + m_PageInformation = new wxPanel(m_Notebook, ID_PAGEINFORMATION, wxDefaultPosition, wxDefaultSize); + m_Notebook->AddPage(m_PageInformation, wxT("Info")); + + m_PageRender = new wxPanel(m_Notebook, ID_PAGERENDER, wxDefaultPosition, wxDefaultSize); + m_Notebook->AddPage(m_PageRender, wxT("Render")); + + m_PageUtility = new wxPanel(m_Notebook, ID_PAGEUTILITY, wxDefaultPosition, wxDefaultSize); + m_Notebook->AddPage(m_PageUtility, wxT("Util")); m_PageHacks = new wxPanel(m_Notebook, ID_PAGEHACKS, wxDefaultPosition, wxDefaultSize); m_Notebook->AddPage(m_PageHacks, wxT("Hacks")); @@ -96,32 +103,32 @@ void ConfigDialog::CreateGUIControls() this->SetSizer(sMain); this->Layout(); - //page1 - m_Fullscreen = new wxCheckBox(m_PageVideo, ID_FULLSCREEN, wxT("Fullscreen"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + // Page 1 "General" + m_Fullscreen = new wxCheckBox(m_PageGeneral, ID_FULLSCREEN, wxT("Fullscreen"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); m_Fullscreen->SetValue(g_Config.bFullscreen); - m_RenderToMainWindow = new wxCheckBox(m_PageVideo, ID_RENDERTOMAINWINDOW, wxT("Render to main window"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_RenderToMainWindow = new wxCheckBox(m_PageGeneral, ID_RENDERTOMAINWINDOW, wxT("Render to main window"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); m_RenderToMainWindow->SetValue(g_Config.renderToMainframe); - wxStaticText *FSText = new wxStaticText(m_PageVideo, ID_FSTEXT, wxT("Fullscreen video mode:"), wxDefaultPosition, wxDefaultSize, 0); + m_StretchToFit = new wxCheckBox(m_PageGeneral, ID_STRETCHTOFIT, wxT("Stretch to fit (instead of changing res.)"), + wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_StretchToFit->SetValue(g_Config.bStretchToFit); + + m_KeepAR = new wxCheckBox(m_PageGeneral, ID_KEEPAR, wxT("Keep 4:3 aspect ratio"), + wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_KeepAR->SetValue(g_Config.bKeepAR); + + wxStaticText *FSText = new wxStaticText(m_PageGeneral, ID_FSTEXT, wxT("Fullscreen video mode:"), wxDefaultPosition, wxDefaultSize, 0); wxArrayString arrayStringFor_FullscreenCB; - m_FullscreenCB = new wxComboBox(m_PageVideo, ID_FULLSCREENCB, wxEmptyString, wxDefaultPosition, wxDefaultSize, arrayStringFor_FullscreenCB, 0, wxDefaultValidator); + m_FullscreenCB = new wxComboBox(m_PageGeneral, ID_FULLSCREENCB, wxEmptyString, wxDefaultPosition, wxDefaultSize, arrayStringFor_FullscreenCB, 0, wxDefaultValidator); m_FullscreenCB->SetValue(wxString::FromAscii(g_Config.iFSResolution)); - wxStaticText *WMText = new wxStaticText(m_PageVideo, ID_WMTEXT, wxT("Windowed resolution:"), wxDefaultPosition, wxDefaultSize, 0); + wxStaticText *WMText = new wxStaticText(m_PageGeneral, ID_WMTEXT, wxT("Windowed resolution:"), wxDefaultPosition, wxDefaultSize, 0); wxArrayString arrayStringFor_WindowResolutionCB; - m_WindowResolutionCB = new wxComboBox(m_PageVideo, ID_WINDOWRESOLUTIONCB, wxEmptyString, wxDefaultPosition, wxDefaultSize, arrayStringFor_WindowResolutionCB, 0, wxDefaultValidator); + m_WindowResolutionCB = new wxComboBox(m_PageGeneral, ID_WINDOWRESOLUTIONCB, wxEmptyString, wxDefaultPosition, wxDefaultSize, arrayStringFor_WindowResolutionCB, 0, wxDefaultValidator); m_WindowResolutionCB->SetValue(wxString::FromAscii(g_Config.iWindowedRes)); - wxStaticText *AAText = new wxStaticText(m_PageVideo, ID_AATEXT, wxT("Anti-alias mode:"), wxDefaultPosition, wxDefaultSize, 0); - wxArrayString arrayStringFor_AliasModeCB; - m_AliasModeCB = new wxComboBox(m_PageVideo, ID_ALIASMODECB, wxEmptyString, wxDefaultPosition, wxDefaultSize, arrayStringFor_AliasModeCB, 0, wxDefaultValidator); - wxString tmp; - tmp<SetValue(tmp); - - - // page2 ------------------------- + // Page 2 "Enhancements" m_ForceFiltering = new wxCheckBox(m_PageEnhancements, ID_FORCEFILTERING, wxT("Force bi/trilinear filtering (May cause small glitches)"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); m_ForceFiltering->SetValue(g_Config.bForceFiltering); @@ -130,45 +137,46 @@ void ConfigDialog::CreateGUIControls() //m_ForceAnisotropy->SetValue(g_Config.bForceMaxAniso); m_ForceAnisotropy->Enable(false); - m_StretchToFit = new wxCheckBox(m_PageEnhancements, ID_STRETCHTOFIT, wxT("Stretch to fit (instead of changing res.)"), - wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - m_StretchToFit->SetValue(g_Config.bStretchToFit); + wxStaticText *AAText = new wxStaticText(m_PageEnhancements, ID_AATEXT, wxT("Anti-alias mode:"), wxDefaultPosition, wxDefaultSize, 0); + wxArrayString arrayStringFor_AliasModeCB; + m_AliasModeCB = new wxComboBox(m_PageEnhancements, ID_ALIASMODECB, wxEmptyString, wxDefaultPosition, wxDefaultSize, arrayStringFor_AliasModeCB, 0, wxDefaultValidator); + wxString tmp; + tmp<SetValue(tmp); - m_KeepAR = new wxCheckBox(m_PageEnhancements, ID_KEEPAR, wxT("Keep 4:3 aspect ratio"), - wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - m_KeepAR->SetValue(g_Config.bKeepAR); - - // page3 ------------------------- - m_ShowFPS = new wxCheckBox(m_PageAdvanced, ID_SHOWFPS, wxT("Overlay FPS"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + // Page 3 "Information" + m_ShowFPS = new wxCheckBox(m_PageInformation, ID_SHOWFPS, wxT("Overlay FPS"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); m_ShowFPS->SetValue(g_Config.bShowFPS); - m_Statistics = new wxCheckBox(m_PageAdvanced, ID_STATISTICS, wxT("Overlay some statistics"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_Statistics = new wxCheckBox(m_PageInformation, ID_STATISTICS, wxT("Overlay some statistics"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); m_Statistics->SetValue(g_Config.bOverlayStats); - m_TexFmtOverlay = new wxCheckBox(m_PageAdvanced, ID_TEXFMTOVERLAY, wxT("Overlay texture format"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - m_TexFmtOverlay->SetValue(g_Config.bTexFmtOverlayEnable); - m_TexFmtCenter = new wxCheckBox(m_PageAdvanced, ID_TEXFMTCENTER, wxT("centered"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - m_TexFmtCenter->SetValue(g_Config.bTexFmtOverlayCenter); - m_TexFmtCenter->Enable(m_TexFmtOverlay->IsChecked()); - - m_UseXFB = new wxCheckBox(m_PageAdvanced, ID_USEXFB, wxT("Use XFB"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - m_UseXFB->SetValue(g_Config.bUseXFB); - - m_DumpTextures = new wxCheckBox(m_PageAdvanced, ID_DUMPTEXTURES, wxT("Dump textures to:"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - m_DumpTextures->SetValue(g_Config.bDumpTextures); - m_TexturePath = new wxDirPickerCtrl(m_PageAdvanced, ID_TEXTUREPATH, wxEmptyString, wxT("Choose a directory to store texture dumps:"), wxDefaultPosition, wxDefaultSize, wxDIRP_USE_TEXTCTRL); - m_TexturePath->SetPath(wxString::FromAscii(g_Config.texDumpPath)); - m_TexturePath->Enable(m_DumpTextures->IsChecked()); - - m_Wireframe = new wxCheckBox(m_PageAdvanced, ID_WIREFRAME, wxT("Wireframe"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); - //m_Wireframe->SetValue(g_Config.bWireFrame); - m_Wireframe->Enable(false); - - m_ShaderErrors = new wxCheckBox(m_PageAdvanced, ID_SHADERERRORS, wxT("Show shader compilation issues"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_ShaderErrors = new wxCheckBox(m_PageInformation, ID_SHADERERRORS, wxT("Show shader compilation issues"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); //m_ShaderErrors->SetValue(g_Config.bShowShaderErrors); m_ShaderErrors->Enable(false); - // Page 4 (hacks) + m_TexFmtOverlay = new wxCheckBox(m_PageInformation, ID_TEXFMTOVERLAY, wxT("Overlay texture format"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_TexFmtOverlay->SetValue(g_Config.bTexFmtOverlayEnable); + m_TexFmtCenter = new wxCheckBox(m_PageInformation, ID_TEXFMTCENTER, wxT("centered"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_TexFmtCenter->SetValue(g_Config.bTexFmtOverlayCenter); + m_TexFmtCenter->Enable(m_TexFmtOverlay->IsChecked()); + + // Page 4 "Render" + m_UseXFB = new wxCheckBox(m_PageRender, ID_USEXFB, wxT("Use XFB"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_UseXFB->SetValue(g_Config.bUseXFB); + + m_Wireframe = new wxCheckBox(m_PageRender, ID_WIREFRAME, wxT("Wireframe"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + //m_Wireframe->SetValue(g_Config.bWireFrame); + m_Wireframe->Enable(false); + + // Page 5 "Utility" + m_DumpTextures = new wxCheckBox(m_PageUtility, ID_DUMPTEXTURES, wxT("Dump textures to:"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); + m_DumpTextures->SetValue(g_Config.bDumpTextures); + m_TexturePath = new wxDirPickerCtrl(m_PageUtility, ID_TEXTUREPATH, wxEmptyString, wxT("Choose a directory to store texture dumps:"), wxDefaultPosition, wxDefaultSize, wxDIRP_USE_TEXTCTRL); + m_TexturePath->SetPath(wxString::FromAscii(g_Config.texDumpPath)); + m_TexturePath->Enable(m_DumpTextures->IsChecked()); + + // Page 6 "Hacks" m_InvertDepth = new wxCheckBox(m_PageHacks, ID_INVERTDEPTH, wxT("Invert Depth"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator); m_InvertDepth->Enable(true); m_InvertDepth->SetValue(g_Config.bInvertDepth); @@ -180,22 +188,23 @@ void ConfigDialog::CreateGUIControls() sPage1->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); sPage1->Add(m_Fullscreen, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5); sPage1->Add(m_RenderToMainWindow, wxGBPosition(1, 0), wxGBSpan(1, 2), wxALL, 5); - - sPage1->Add(FSText, wxGBPosition(2, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); // drop down boxes - sPage1->Add(m_FullscreenCB, wxGBPosition(2, 1), wxGBSpan(1, 1), wxALL, 5); - sPage1->Add(WMText, wxGBPosition(3, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); - sPage1->Add(m_WindowResolutionCB, wxGBPosition(3, 1), wxGBSpan(1, 1), wxALL, 5); - sPage1->Add(AAText, wxGBPosition(4, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); - sPage1->Add(m_AliasModeCB, wxGBPosition(4, 1), wxGBSpan(1, 1), wxALL, 5); - m_PageVideo->SetSizer(sPage1); + sPage1->Add(m_StretchToFit, wxGBPosition(2, 0), wxGBSpan(1, 2), wxALL, 5); + sPage1->Add(m_KeepAR, wxGBPosition(3, 0), wxGBSpan(1, 2), wxALL, 5); + sPage1->Add(FSText, wxGBPosition(4, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); + sPage1->Add(m_FullscreenCB, wxGBPosition(4, 1), wxGBSpan(1, 1), wxALL, 5); + sPage1->Add(WMText, wxGBPosition(5, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); + sPage1->Add(m_WindowResolutionCB, wxGBPosition(5, 1), wxGBSpan(1, 1), wxALL, 5); + m_PageGeneral->SetSizer(sPage1); sPage1->Layout(); - wxBoxSizer* sPage2; - sPage2 = new wxBoxSizer(wxVERTICAL); - sPage2->Add(m_ForceFiltering, 0, wxALL, 5); - sPage2->Add(m_ForceAnisotropy, 0, wxALL, 5); - sPage2->Add(m_StretchToFit, 0, wxALL, 5); // stretch - sPage2->Add(m_KeepAR, 0, wxALL, 5); // keep AR + wxGridBagSizer* sPage2; + sPage2 = new wxGridBagSizer(0, 0); + sPage2->SetFlexibleDirection(wxBOTH); + sPage2->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); + sPage2->Add(m_ForceFiltering, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5); + sPage2->Add(m_ForceAnisotropy, wxGBPosition(1, 0), wxGBSpan(1, 2), wxALL, 5); + sPage2->Add(AAText, wxGBPosition(2, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); + sPage2->Add(m_AliasModeCB, wxGBPosition(2, 1), wxGBSpan(1, 2), wxALL, 5); m_PageEnhancements->SetSizer(sPage2); sPage2->Layout(); @@ -203,26 +212,40 @@ void ConfigDialog::CreateGUIControls() sPage3 = new wxGridBagSizer(0, 0); sPage3->SetFlexibleDirection(wxBOTH); sPage3->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); - sPage3->Add(m_Wireframe, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5); + sPage3->Add(m_ShowFPS, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5); sPage3->Add(m_ShaderErrors, wxGBPosition(1, 0), wxGBSpan(1, 2), wxALL, 5); - sPage3->Add(m_ShowFPS, wxGBPosition(2, 0), wxGBSpan(1, 2), wxALL, 5); - sPage3->Add(m_Statistics, wxGBPosition(3, 0), wxGBSpan(1, 2), wxALL, 5); - sPage3->Add(m_TexFmtOverlay, wxGBPosition(4, 0), wxGBSpan(1, 1), wxALL, 5); - sPage3->Add(m_TexFmtCenter, wxGBPosition(4, 1), wxGBSpan(1, 1), wxALL, 5); - sPage3->Add(m_UseXFB, wxGBPosition(5, 0), wxGBSpan(1, 1), wxALL, 5); - sPage3->Add(m_DumpTextures, wxGBPosition(6, 0), wxGBSpan(1, 1), wxALL, 5); - sPage3->Add(m_TexturePath, wxGBPosition(6, 1), wxGBSpan(1, 1), wxALL, 5); - m_PageAdvanced->SetSizer(sPage3); + sPage3->Add(m_Statistics, wxGBPosition(2, 0), wxGBSpan(1, 2), wxALL, 5); + sPage3->Add(m_TexFmtOverlay, wxGBPosition(3, 0), wxGBSpan(1, 1), wxALL, 5); + sPage3->Add(m_TexFmtCenter, wxGBPosition(3, 1), wxGBSpan(1, 1), wxALL, 5); + m_PageInformation->SetSizer(sPage3); sPage3->Layout(); wxGridBagSizer* sPage4; sPage4 = new wxGridBagSizer(0, 0); sPage4->SetFlexibleDirection(wxBOTH); sPage4->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); - sPage4->Add(m_InvertDepth, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5); - m_PageHacks->SetSizer(sPage4); + sPage4->Add(m_UseXFB, wxGBPosition(0, 0), wxGBSpan(1, 1), wxALL, 5); + sPage4->Add(m_Wireframe, wxGBPosition(1, 0), wxGBSpan(1, 2), wxALL, 5); + m_PageRender->SetSizer(sPage4); sPage4->Layout(); + wxGridBagSizer* sPage5; + sPage5 = new wxGridBagSizer(0, 0); + sPage5->SetFlexibleDirection(wxBOTH); + sPage5->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); + sPage5->Add(m_DumpTextures, wxGBPosition(0, 0), wxGBSpan(1, 1), wxALIGN_CENTER_VERTICAL|wxALL, 5); + sPage5->Add(m_TexturePath, wxGBPosition(0, 1), wxGBSpan(1, 1), wxALL, 5); + m_PageUtility->SetSizer(sPage5); + sPage5->Layout(); + + wxGridBagSizer* sPage6; + sPage6 = new wxGridBagSizer(0, 0); + sPage6->SetFlexibleDirection(wxBOTH); + sPage6->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); + sPage6->Add(m_InvertDepth, wxGBPosition(0, 0), wxGBSpan(1, 2), wxALL, 5); + m_PageHacks->SetSizer(sPage6); + sPage6->Layout(); + SetIcon(wxNullIcon); Fit(); } diff --git a/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.h b/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.h index 27d95124f3..13c4c5dc10 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.h +++ b/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.h @@ -46,36 +46,40 @@ class ConfigDialog : public wxDialog virtual ~ConfigDialog(); void OKClick(wxCommandEvent& event); - // Video + // General void FullScreenCheck(wxCommandEvent& event); - void RenderMainCheck(wxCommandEvent& event); + void RenderMainCheck(wxCommandEvent& event); void AddFSReso(char *reso); - void FSCB(wxCommandEvent& event); void AddWindowReso(char *reso); - void WMCB(wxCommandEvent& event); - void AddAAMode(int mode); - void AACB(wxCommandEvent& event); - - // Enhancements - void ForceFilteringCheck(wxCommandEvent& event); - void ForceAnisotropyCheck(wxCommandEvent& event); void StretchToFitCheck(wxCommandEvent& event); void KeepARCheck(wxCommandEvent& event); + void DllAbout(wxCommandEvent& event); - // Advanced - void WireframeCheck(wxCommandEvent& event); + // Enhancements + void AddAAMode(int mode); + void FSCB(wxCommandEvent& event); + void WMCB(wxCommandEvent& event); + void AACB(wxCommandEvent& event); + void ForceFilteringCheck(wxCommandEvent& event); + void ForceAnisotropyCheck(wxCommandEvent& event); + + // Information void ShowFPSCheck(wxCommandEvent& event); void OverlayCheck(wxCommandEvent& event); void ShowShaderErrorsCheck(wxCommandEvent& event); void TexFmtOverlayChange(wxCommandEvent& event); + + // Render + void WireframeCheck(wxCommandEvent& event); void UseXFBChange(wxCommandEvent& event); + + // Util void DumpTexturesChange(wxCommandEvent& event); void TexturePathChange(wxFileDirPickerEvent& event); - void DllAbout(wxCommandEvent& event); // Hacks void InvertDepth(wxCommandEvent& event); - + private: wxButton* m_About; @@ -100,9 +104,11 @@ class ConfigDialog : public wxDialog wxCheckBox *m_RenderToMainWindow; wxCheckBox *m_Fullscreen; wxCheckBox *m_InvertDepth; - wxPanel *m_PageAdvanced; + wxPanel *m_PageGeneral; wxPanel *m_PageEnhancements; - wxPanel *m_PageVideo; + wxPanel *m_PageInformation; + wxPanel *m_PageRender; + wxPanel *m_PageUtility; wxPanel *m_PageHacks; wxNotebook *m_Notebook; @@ -134,11 +140,13 @@ class ConfigDialog : public wxDialog ID_FSTEXT, ID_RENDERTOMAINWINDOW, ID_FULLSCREEN, - ID_PAGEADVANCED, ID_NOTEBOOK, - ID_PAGEVIDEO, - ID_PAGEENHANCEMENTS, ID_INVERTDEPTH, + ID_PAGEGENERAL, + ID_PAGEENHANCEMENTS, + ID_PAGEINFORMATION, + ID_PAGERENDER, + ID_PAGEUTILITY, ID_PAGEHACKS, ID_GRAPHIC_ABOUT, ////GUI Enum Control ID End