DolphinWX: Break up ConfigMain.cpp into separate classes

Prior to this, ConfigMain.cpp was a large (52KB) cpp file that contained all of the UI setting code.

This breaks up the config code into subclasses of wxPanel, which are then just instantiated to add to the settings wxNoteBook. This keeps all the settings categories separated from one another and also cleans up the code in general.
This commit is contained in:
Lioncash
2015-03-18 18:00:27 -04:00
parent 7d800b6180
commit 086ec7a9b7
22 changed files with 1950 additions and 1670 deletions

View File

@ -0,0 +1,46 @@
// Copyright 2015 Dolphin Emulator Project
// Licensed under GPLv2
// Refer to the license.txt file included.
#pragma once
#include <wx/panel.h>
class wxButton;
class wxCheckBox;
class wxCommandEvent;
class wxListBox;
class wxDirPickerCtrl;
class wxFilePickerCtrl;
class PathConfigPane final : public wxPanel
{
public:
PathConfigPane(wxWindow* parent, wxWindowID id);
private:
void InitializeGUI();
void LoadGUIValues();
void RefreshGUI();
void OnISOPathSelectionChanged(wxCommandEvent&);
void OnRecursiveISOCheckBoxChanged(wxCommandEvent&);
void OnAddISOPath(wxCommandEvent&);
void OnRemoveISOPath(wxCommandEvent&);
void OnDefaultISOChanged(wxCommandEvent&);
void OnDVDRootChanged(wxCommandEvent&);
void OnApploaderPathChanged(wxCommandEvent&);
void OnNANDRootChanged(wxCommandEvent&);
void SaveISOPathChanges();
wxListBox* m_iso_paths_listbox;
wxCheckBox* m_recursive_iso_paths_checkbox;
wxButton* m_add_iso_path_button;
wxButton* m_remove_iso_path_button;
wxDirPickerCtrl* m_dvd_root_dirpicker;
wxDirPickerCtrl* m_nand_root_dirpicker;
wxFilePickerCtrl* m_default_iso_filepicker;
wxFilePickerCtrl* m_apploader_path_filepicker;
};