mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-25 15:19:42 -06:00
set svn:eol-style=native for **.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1438 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -1,62 +1,62 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
#ifndef _ABOUTDOLPHIN_H_
|
||||
#define _ABOUTDOLPHIN_H_
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/dialog.h>
|
||||
#include <wx/button.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/statbox.h>
|
||||
#include <wx/mstream.h>
|
||||
#include <wx/statbmp.h>
|
||||
|
||||
#undef ABOUTDOLPHIN_STYLE
|
||||
#define ABOUTDOLPHIN_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX
|
||||
|
||||
class AboutDolphin : public wxDialog
|
||||
{
|
||||
public:
|
||||
AboutDolphin(wxWindow *parent, wxWindowID id = 1, const wxString &title = wxT("About Dolphin"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = ABOUTDOLPHIN_STYLE);
|
||||
virtual ~AboutDolphin();
|
||||
void CloseClick(wxCommandEvent& event);
|
||||
|
||||
private:
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxBoxSizer *sMain;
|
||||
wxBoxSizer *sButtons;
|
||||
wxBoxSizer *sMainHor;
|
||||
wxBoxSizer *sInfo;
|
||||
|
||||
wxButton *m_Close;
|
||||
wxStaticText *Message;
|
||||
wxBitmap *DolphinLogo;
|
||||
wxStaticBitmap *sbDolphinLogo;
|
||||
|
||||
enum
|
||||
{
|
||||
ID_CLOSE = 1000,
|
||||
ID_LOGO,
|
||||
ID_MESSAGE
|
||||
};
|
||||
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CreateGUIControls();
|
||||
};
|
||||
|
||||
#endif //_ABOUTDOLPHIN_H_
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
#ifndef _ABOUTDOLPHIN_H_
|
||||
#define _ABOUTDOLPHIN_H_
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/dialog.h>
|
||||
#include <wx/button.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/statbox.h>
|
||||
#include <wx/mstream.h>
|
||||
#include <wx/statbmp.h>
|
||||
|
||||
#undef ABOUTDOLPHIN_STYLE
|
||||
#define ABOUTDOLPHIN_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX
|
||||
|
||||
class AboutDolphin : public wxDialog
|
||||
{
|
||||
public:
|
||||
AboutDolphin(wxWindow *parent, wxWindowID id = 1, const wxString &title = wxT("About Dolphin"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = ABOUTDOLPHIN_STYLE);
|
||||
virtual ~AboutDolphin();
|
||||
void CloseClick(wxCommandEvent& event);
|
||||
|
||||
private:
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxBoxSizer *sMain;
|
||||
wxBoxSizer *sButtons;
|
||||
wxBoxSizer *sMainHor;
|
||||
wxBoxSizer *sInfo;
|
||||
|
||||
wxButton *m_Close;
|
||||
wxStaticText *Message;
|
||||
wxBitmap *DolphinLogo;
|
||||
wxStaticBitmap *sbDolphinLogo;
|
||||
|
||||
enum
|
||||
{
|
||||
ID_CLOSE = 1000,
|
||||
ID_LOGO,
|
||||
ID_MESSAGE
|
||||
};
|
||||
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CreateGUIControls();
|
||||
};
|
||||
|
||||
#endif //_ABOUTDOLPHIN_H_
|
||||
|
@ -1,32 +1,32 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef _BOOTMANAGER_H
|
||||
#define _BOOTMANAGER_H
|
||||
|
||||
#include <string>
|
||||
|
||||
class GameListItem;
|
||||
|
||||
namespace BootManager
|
||||
{
|
||||
bool BootCore(const std::string& _rFilename);
|
||||
|
||||
void Stop();
|
||||
};
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef _BOOTMANAGER_H
|
||||
#define _BOOTMANAGER_H
|
||||
|
||||
#include <string>
|
||||
|
||||
class GameListItem;
|
||||
|
||||
namespace BootManager
|
||||
{
|
||||
bool BootCore(const std::string& _rFilename);
|
||||
|
||||
void Stop();
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,119 +1,119 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __CHEATSWINDOW_H__
|
||||
#define __CHEATSWINDOW_H__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/imaglist.h>
|
||||
#include <wx/treectrl.h>
|
||||
#include <wx/gbsizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/mimetype.h>
|
||||
#include <wx/colour.h>
|
||||
#include <wx/listbox.h>
|
||||
#include <string>
|
||||
|
||||
#include "ActionReplay.h"
|
||||
|
||||
#include "Filesystem.h"
|
||||
#include "IniFile.h"
|
||||
|
||||
#undef wxCHEATSWINDOW_STYLE
|
||||
#define wxCHEATSWINDOW_STYLE wxCAPTION | wxSYSTEM_MENU | wxCLOSE_BOX | wxDEFAULT_FRAME_STYLE | wxCLIP_CHILDREN | wxNO_FULL_REPAINT_ON_RESIZE
|
||||
|
||||
class wxCheatsWindow : public wxFrame
|
||||
{
|
||||
public:
|
||||
|
||||
wxCheatsWindow(wxFrame* parent, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize);
|
||||
|
||||
virtual ~wxCheatsWindow();
|
||||
|
||||
protected:
|
||||
|
||||
struct ARCodeIndex {
|
||||
u32 uiIndex;
|
||||
size_t index;
|
||||
};
|
||||
|
||||
// Event Table
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
// --- GUI Controls ---
|
||||
wxGridBagSizer* m_Sizer_TabCheats;
|
||||
|
||||
wxNotebook *m_Notebook_Main;
|
||||
|
||||
wxPanel *m_Tab_Cheats;
|
||||
wxPanel *m_Tab_Log;
|
||||
|
||||
wxButton *m_Button_Close;
|
||||
wxButton *m_Button_ApplyCodes;
|
||||
|
||||
wxStaticText *m_Label_Codename;
|
||||
wxStaticText *m_Label_NumCodes;
|
||||
|
||||
wxCheckListBox *m_CheckListBox_CheatsList;
|
||||
|
||||
wxListBox *m_ListBox_CodesList;
|
||||
|
||||
wxStaticBox *m_GroupBox_Info;
|
||||
|
||||
wxArrayString m_CheatStringList;
|
||||
|
||||
std::vector<ARCodeIndex> indexList;
|
||||
|
||||
// GUI IDs
|
||||
enum
|
||||
{
|
||||
ID_NOTEBOOK_MAIN,
|
||||
ID_TAB_CHEATS,
|
||||
ID_TAB_LOG,
|
||||
ID_BUTTON_CLOSE,
|
||||
ID_CHECKLISTBOX_CHEATSLIST,
|
||||
ID_LABEL_CODENAME,
|
||||
ID_GROUPBOX_INFO,
|
||||
ID_BUTTON_APPLYCODES,
|
||||
ID_LABEL_NUMCODES,
|
||||
ID_LISTBOX_CODESLIST
|
||||
};
|
||||
|
||||
void Init_ChildControls();
|
||||
|
||||
void Load_ARCodes();
|
||||
|
||||
// --- Wx Events Handlers ---
|
||||
// $ Window
|
||||
void OnEvent_Window_Resize(wxSizeEvent& event);
|
||||
void OnEvent_Window_Close(wxCloseEvent& event);
|
||||
|
||||
// $ Close Button
|
||||
void OnEvent_ButtonClose_Press(wxCommandEvent& event);
|
||||
|
||||
// $ Cheats List
|
||||
void OnEvent_CheatsList_ItemSelected(wxCommandEvent& event);
|
||||
void OnEvent_CheatsList_ItemToggled(wxCommandEvent& event);
|
||||
|
||||
// $ Update Active Codes Button
|
||||
void OnEvent_ButtonUpdateCodes_Press(wxCommandEvent& event);
|
||||
};
|
||||
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __CHEATSWINDOW_H__
|
||||
#define __CHEATSWINDOW_H__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/imaglist.h>
|
||||
#include <wx/treectrl.h>
|
||||
#include <wx/gbsizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/mimetype.h>
|
||||
#include <wx/colour.h>
|
||||
#include <wx/listbox.h>
|
||||
#include <string>
|
||||
|
||||
#include "ActionReplay.h"
|
||||
|
||||
#include "Filesystem.h"
|
||||
#include "IniFile.h"
|
||||
|
||||
#undef wxCHEATSWINDOW_STYLE
|
||||
#define wxCHEATSWINDOW_STYLE wxCAPTION | wxSYSTEM_MENU | wxCLOSE_BOX | wxDEFAULT_FRAME_STYLE | wxCLIP_CHILDREN | wxNO_FULL_REPAINT_ON_RESIZE
|
||||
|
||||
class wxCheatsWindow : public wxFrame
|
||||
{
|
||||
public:
|
||||
|
||||
wxCheatsWindow(wxFrame* parent, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize);
|
||||
|
||||
virtual ~wxCheatsWindow();
|
||||
|
||||
protected:
|
||||
|
||||
struct ARCodeIndex {
|
||||
u32 uiIndex;
|
||||
size_t index;
|
||||
};
|
||||
|
||||
// Event Table
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
// --- GUI Controls ---
|
||||
wxGridBagSizer* m_Sizer_TabCheats;
|
||||
|
||||
wxNotebook *m_Notebook_Main;
|
||||
|
||||
wxPanel *m_Tab_Cheats;
|
||||
wxPanel *m_Tab_Log;
|
||||
|
||||
wxButton *m_Button_Close;
|
||||
wxButton *m_Button_ApplyCodes;
|
||||
|
||||
wxStaticText *m_Label_Codename;
|
||||
wxStaticText *m_Label_NumCodes;
|
||||
|
||||
wxCheckListBox *m_CheckListBox_CheatsList;
|
||||
|
||||
wxListBox *m_ListBox_CodesList;
|
||||
|
||||
wxStaticBox *m_GroupBox_Info;
|
||||
|
||||
wxArrayString m_CheatStringList;
|
||||
|
||||
std::vector<ARCodeIndex> indexList;
|
||||
|
||||
// GUI IDs
|
||||
enum
|
||||
{
|
||||
ID_NOTEBOOK_MAIN,
|
||||
ID_TAB_CHEATS,
|
||||
ID_TAB_LOG,
|
||||
ID_BUTTON_CLOSE,
|
||||
ID_CHECKLISTBOX_CHEATSLIST,
|
||||
ID_LABEL_CODENAME,
|
||||
ID_GROUPBOX_INFO,
|
||||
ID_BUTTON_APPLYCODES,
|
||||
ID_LABEL_NUMCODES,
|
||||
ID_LISTBOX_CODESLIST
|
||||
};
|
||||
|
||||
void Init_ChildControls();
|
||||
|
||||
void Load_ARCodes();
|
||||
|
||||
// --- Wx Events Handlers ---
|
||||
// $ Window
|
||||
void OnEvent_Window_Resize(wxSizeEvent& event);
|
||||
void OnEvent_Window_Close(wxCloseEvent& event);
|
||||
|
||||
// $ Close Button
|
||||
void OnEvent_ButtonClose_Press(wxCommandEvent& event);
|
||||
|
||||
// $ Cheats List
|
||||
void OnEvent_CheatsList_ItemSelected(wxCommandEvent& event);
|
||||
void OnEvent_CheatsList_ItemToggled(wxCommandEvent& event);
|
||||
|
||||
// $ Update Active Codes Button
|
||||
void OnEvent_ButtonUpdateCodes_Press(wxCommandEvent& event);
|
||||
};
|
||||
|
||||
#endif
|
@ -1,64 +1,64 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef _CONFIG_H
|
||||
#define _CONFIG_H
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "Boot/Boot.h"
|
||||
|
||||
struct SConfig
|
||||
{
|
||||
// hard coded default plugins ...
|
||||
std::string m_DefaultGFXPlugin;
|
||||
std::string m_DefaultDSPPlugin;
|
||||
std::string m_DefaultPADPlugin;
|
||||
std::string m_DefaultWiiMotePlugin;
|
||||
|
||||
// name of the last used filename
|
||||
std::string m_LastFilename;
|
||||
|
||||
// gcm folder
|
||||
std::vector<std::string>m_ISOFolder;
|
||||
|
||||
SCoreStartupParameter m_LocalCoreStartupParameter;
|
||||
|
||||
// save settings
|
||||
void SaveSettings();
|
||||
|
||||
|
||||
// load settings
|
||||
void LoadSettings();
|
||||
|
||||
|
||||
static SConfig& GetInstance() {return(m_Instance);}
|
||||
|
||||
|
||||
private:
|
||||
|
||||
// constructor
|
||||
SConfig();
|
||||
|
||||
// destructor
|
||||
~SConfig();
|
||||
|
||||
static SConfig m_Instance;
|
||||
};
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef _CONFIG_H
|
||||
#define _CONFIG_H
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "Boot/Boot.h"
|
||||
|
||||
struct SConfig
|
||||
{
|
||||
// hard coded default plugins ...
|
||||
std::string m_DefaultGFXPlugin;
|
||||
std::string m_DefaultDSPPlugin;
|
||||
std::string m_DefaultPADPlugin;
|
||||
std::string m_DefaultWiiMotePlugin;
|
||||
|
||||
// name of the last used filename
|
||||
std::string m_LastFilename;
|
||||
|
||||
// gcm folder
|
||||
std::vector<std::string>m_ISOFolder;
|
||||
|
||||
SCoreStartupParameter m_LocalCoreStartupParameter;
|
||||
|
||||
// save settings
|
||||
void SaveSettings();
|
||||
|
||||
|
||||
// load settings
|
||||
void LoadSettings();
|
||||
|
||||
|
||||
static SConfig& GetInstance() {return(m_Instance);}
|
||||
|
||||
|
||||
private:
|
||||
|
||||
// constructor
|
||||
SConfig();
|
||||
|
||||
// destructor
|
||||
~SConfig();
|
||||
|
||||
static SConfig m_Instance;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,256 +1,256 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __CONFIG_MAIN_h__
|
||||
#define __CONFIG_MAIN_h__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/gbsizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/filepicker.h>
|
||||
//#include <wx/listbox.h>
|
||||
#include "Config.h"
|
||||
|
||||
#undef CONFIG_MAIN_STYLE
|
||||
#define CONFIG_MAIN_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX
|
||||
|
||||
class CConfigMain
|
||||
: public wxDialog
|
||||
{
|
||||
public:
|
||||
|
||||
CConfigMain(wxWindow* parent, wxWindowID id = 1, const wxString& title = wxT("Dolphin Configuration"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = CONFIG_MAIN_STYLE);
|
||||
virtual ~CConfigMain();
|
||||
void CloseClick(wxCommandEvent& event);
|
||||
void OnSelectionChanged(wxCommandEvent& event);
|
||||
void OnConfig(wxCommandEvent& event);
|
||||
|
||||
bool bRefreshList;
|
||||
|
||||
private:
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxBoxSizer* sGeneral;
|
||||
wxStaticBoxSizer* sbBasic;
|
||||
wxStaticBoxSizer* sbAdvanced;
|
||||
wxBoxSizer* sGamecube;
|
||||
wxStaticBoxSizer* sbGamecubeIPLSettings;
|
||||
wxGridBagSizer* sGamecubeIPLSettings;
|
||||
wxBoxSizer* sWii;
|
||||
wxStaticBoxSizer* sbWiimoteSettings;
|
||||
wxGridBagSizer* sWiimoteSettings;
|
||||
wxStaticBoxSizer* sbWiiIPLSettings;
|
||||
wxGridBagSizer* sWiiIPLSettings;
|
||||
wxBoxSizer* sPaths;
|
||||
wxStaticBoxSizer* sbISOPaths;
|
||||
wxBoxSizer* sISOButtons;
|
||||
wxGridBagSizer* sOtherPaths;
|
||||
wxBoxSizer* sPlugins;
|
||||
wxStaticBoxSizer* sbGraphicsPlugin;
|
||||
wxStaticBoxSizer* sbDSPPlugin;
|
||||
wxStaticBoxSizer* sbPadPlugin;
|
||||
wxStaticBoxSizer* sbWiimotePlugin;
|
||||
|
||||
wxNotebook *Notebook;
|
||||
wxPanel *GeneralPage;
|
||||
wxPanel *GamecubePage;
|
||||
wxPanel *WiiPage;
|
||||
wxPanel *PathsPage;
|
||||
wxPanel *PluginPage;
|
||||
|
||||
wxButton* m_Close;
|
||||
|
||||
wxCheckBox* AllwaysHLEBIOS;
|
||||
wxCheckBox* UseDynaRec;
|
||||
wxCheckBox* UseDualCore;
|
||||
wxCheckBox* LockThreads;
|
||||
wxCheckBox* OptimizeQuantizers;
|
||||
wxCheckBox* SkipIdle;
|
||||
wxCheckBox* EnableCheats;
|
||||
wxArrayString arrayStringFor_GCSystemLang;
|
||||
wxStaticText* GCSystemLangText;
|
||||
wxChoice* GCSystemLang;
|
||||
|
||||
FILE* pStream;
|
||||
u8 m_SYSCONF[0x4000];
|
||||
bool m_bSysconfOK;
|
||||
std::string FullSYSCONFPath;
|
||||
|
||||
enum
|
||||
{
|
||||
BT_DINF = 0x0044,
|
||||
BT_SENS = 0x04AF,
|
||||
BT_BAR = 0x04E1,
|
||||
BT_SPKV = 0x151A,
|
||||
BT_MOT = 0x1807
|
||||
};
|
||||
enum
|
||||
{
|
||||
IPL_AR = 0x04D9,
|
||||
IPL_SSV = 0x04EA,
|
||||
IPL_LNG = 0x04F3,
|
||||
IPL_PGS = 0x17CC,
|
||||
IPL_E60 = 0x17D5
|
||||
};
|
||||
/* Some offsets in SYSCONF: (taken from ector's SYSCONF)
|
||||
Note: offset is where the actual data starts, not where the type or name begins
|
||||
offset length name comment
|
||||
0x0044 0x460 BT.DINF List of Wiimotes "synced" to the system
|
||||
0x158B ? BT.CDIF ? -- Starts with 0x0204 followed by 0x210 of 0x00
|
||||
0x04AF 4 BT.SENS Wiimote sensitivity setting
|
||||
0x04E1 1 BT.BAR Sensor bar position (0:bottom)
|
||||
0x151A 1 BT.SPKV Wiimote speaker volume
|
||||
0x1807 1 BT.MOT Wiimote motor on/off
|
||||
|
||||
0x17F3 2 IPL.IDL Shutdown mode and idle LED mode
|
||||
0x17C3 1 IPL.UPT Update Type
|
||||
0x04BB 0x16 IPL.NIK Console Nickname
|
||||
0x04D9 1 IPL.AR Aspect ratio setting. 0: 4:3 1: 16:9
|
||||
0x04EA 1 IPL.SSV Screen Saver off/on (burn-in reduction)
|
||||
0x04F3 1 IPL.LNG System Language, see conf.c for some values
|
||||
0x04FD 0x1007 IPL.SADR "Simple Address" Contains some region info
|
||||
0x150E 4 IPL.CB Counter Bias -- difference between RTC and local time, in seconds
|
||||
0x1522 0x50 IPL.PC Parental Control password/setting
|
||||
0x17B1 1 IPL.CD Config Done flag -- has initial setup been performed?
|
||||
0x17BA 1 IPL.CD2 Config2 Done flag -- has network setup been performed?
|
||||
0x17FF 1 IPL.EULA EULA Done flag -- has EULA been acknowledged?
|
||||
0x17CC 1 IPL.PGS Use Progressive Scan
|
||||
0x17D5 1 IPL.E60 Use EuRGB60 (PAL6)
|
||||
? 1 IPL.SND Sound setting
|
||||
0x17DD 1 IPL.DH Display Offset (Horiz)
|
||||
0x179A 4 IPL.INC "Installed Channel App Count"
|
||||
? ? IPL.ARN ?
|
||||
0x17A7 4 IPL.FRC "Free Channel App Count"
|
||||
|
||||
? ? DEV.BTM ?
|
||||
? ? DEV.VIM ?
|
||||
? ? DEV.CTC ?
|
||||
? ? DEV.DSM ?
|
||||
? ? DVD.CNF ?
|
||||
0x1582 ? WWW.RST WWW Restriction
|
||||
? ? NET.CNF ?
|
||||
? ? NET.CFG ?
|
||||
0x1576 4 NET.CTPC Net Content Restrictions ("Content Parental Control"?)
|
||||
0x17E7 4 NET.WCFG WC24 Configuration flags
|
||||
*/
|
||||
wxArrayString arrayStringFor_WiiSensBarPos;
|
||||
wxStaticText* WiiSensBarPosText;
|
||||
wxChoice* WiiSensBarPos;
|
||||
wxCheckBox* WiiScreenSaver;
|
||||
wxCheckBox* WiiProgressiveScan;
|
||||
wxCheckBox* WiiEuRGB60;
|
||||
wxArrayString arrayStringFor_WiiAspectRatio;
|
||||
wxStaticText* WiiAspectRatioText;
|
||||
wxChoice* WiiAspectRatio;
|
||||
wxArrayString arrayStringFor_WiiSystemLang;
|
||||
wxStaticText* WiiSystemLangText;
|
||||
wxChoice* WiiSystemLang;
|
||||
|
||||
wxArrayString arrayStringFor_ISOPaths;
|
||||
wxListBox* ISOPaths;
|
||||
wxButton* AddISOPath;
|
||||
wxButton* RemoveISOPath;
|
||||
wxStaticText* DefaultISOText;
|
||||
wxFilePickerCtrl* DefaultISO;
|
||||
wxStaticText* DVDRootText;
|
||||
wxDirPickerCtrl* DVDRoot;
|
||||
|
||||
wxStaticText* PADText;
|
||||
wxButton* PADConfig;
|
||||
wxChoice* PADSelection;
|
||||
wxButton* DSPConfig;
|
||||
wxStaticText* DSPText;
|
||||
wxChoice* DSPSelection;
|
||||
wxButton* GraphicConfig;
|
||||
wxStaticText* GraphicText;
|
||||
wxChoice* GraphicSelection;
|
||||
wxButton* WiimoteConfig;
|
||||
wxStaticText* WiimoteText;
|
||||
wxChoice* WiimoteSelection;
|
||||
|
||||
enum
|
||||
{
|
||||
ID_NOTEBOOK = 1000,
|
||||
ID_GENERALPAGE,
|
||||
ID_GAMECUBEPAGE,
|
||||
ID_WIIPAGE,
|
||||
ID_PATHSPAGE,
|
||||
ID_PLUGINPAGE,
|
||||
ID_CLOSE,
|
||||
ID_ALLWAYS_HLEBIOS,
|
||||
ID_USEDYNAREC,
|
||||
ID_USEDUALCORE,
|
||||
ID_LOCKTHREADS,
|
||||
ID_OPTIMIZEQUANTIZERS,
|
||||
ID_IDLESKIP,
|
||||
ID_ENABLECHEATS,
|
||||
ID_ENABLEISOCACHE,
|
||||
ID_GC_SRAM_LNG_TEXT,
|
||||
ID_GC_SRAM_LNG,
|
||||
ID_WII_BT_BAR_TEXT,
|
||||
ID_WII_BT_BAR,
|
||||
ID_WII_IPL_SSV,
|
||||
ID_WII_IPL_PGS,
|
||||
ID_WII_IPL_E60,
|
||||
ID_WII_IPL_AR_TEXT,
|
||||
ID_WII_IPL_AR,
|
||||
ID_WII_IPL_LNG_TEXT,
|
||||
ID_WII_IPL_LNG,
|
||||
ID_ISOPATHS,
|
||||
ID_ADDISOPATH,
|
||||
ID_REMOVEISOPATH,
|
||||
ID_DEFAULTISO_TEXT,
|
||||
ID_DEFAULTISO,
|
||||
ID_DVDROOT_TEXT,
|
||||
ID_DVDROOT,
|
||||
ID_WIIMOTE_ABOUT,
|
||||
ID_WIIMOTE_CONFIG,
|
||||
ID_WIIMOTE_TEXT,
|
||||
ID_WIIMOTE_CB,
|
||||
ID_PAD_TEXT,
|
||||
ID_PAD_ABOUT ,
|
||||
ID_PAD_CONFIG,
|
||||
ID_PAD_CB,
|
||||
ID_DSP_ABOUT,
|
||||
ID_DSP_CONFIG,
|
||||
ID_DSP_TEXT,
|
||||
ID_DSP_CB,
|
||||
ID_GRAPHIC_ABOUT,
|
||||
ID_GRAPHIC_CONFIG,
|
||||
ID_GRAPHIC_TEXT,
|
||||
ID_GRAPHIC_CB
|
||||
};
|
||||
|
||||
void CreateGUIControls();
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CoreSettingsChanged(wxCommandEvent& event);
|
||||
void GCSettingsChanged(wxCommandEvent& event);
|
||||
void WiiSettingsChanged(wxCommandEvent& event);
|
||||
void ISOPathsSelectionChanged(wxCommandEvent& event);
|
||||
void AddRemoveISOPaths(wxCommandEvent& event);
|
||||
void DefaultISOChanged(wxFileDirPickerEvent& event);
|
||||
void DVDRootChanged(wxFileDirPickerEvent& event);
|
||||
|
||||
void FillChoiceBox(wxChoice* _pChoice, int _PluginType, const std::string& _SelectFilename);
|
||||
|
||||
void CallConfig(wxChoice* _pChoice);
|
||||
|
||||
bool GetFilename(wxChoice* _pChoice, std::string& _rFilename);
|
||||
};
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __CONFIG_MAIN_h__
|
||||
#define __CONFIG_MAIN_h__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/gbsizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/filepicker.h>
|
||||
//#include <wx/listbox.h>
|
||||
#include "Config.h"
|
||||
|
||||
#undef CONFIG_MAIN_STYLE
|
||||
#define CONFIG_MAIN_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX
|
||||
|
||||
class CConfigMain
|
||||
: public wxDialog
|
||||
{
|
||||
public:
|
||||
|
||||
CConfigMain(wxWindow* parent, wxWindowID id = 1, const wxString& title = wxT("Dolphin Configuration"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = CONFIG_MAIN_STYLE);
|
||||
virtual ~CConfigMain();
|
||||
void CloseClick(wxCommandEvent& event);
|
||||
void OnSelectionChanged(wxCommandEvent& event);
|
||||
void OnConfig(wxCommandEvent& event);
|
||||
|
||||
bool bRefreshList;
|
||||
|
||||
private:
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxBoxSizer* sGeneral;
|
||||
wxStaticBoxSizer* sbBasic;
|
||||
wxStaticBoxSizer* sbAdvanced;
|
||||
wxBoxSizer* sGamecube;
|
||||
wxStaticBoxSizer* sbGamecubeIPLSettings;
|
||||
wxGridBagSizer* sGamecubeIPLSettings;
|
||||
wxBoxSizer* sWii;
|
||||
wxStaticBoxSizer* sbWiimoteSettings;
|
||||
wxGridBagSizer* sWiimoteSettings;
|
||||
wxStaticBoxSizer* sbWiiIPLSettings;
|
||||
wxGridBagSizer* sWiiIPLSettings;
|
||||
wxBoxSizer* sPaths;
|
||||
wxStaticBoxSizer* sbISOPaths;
|
||||
wxBoxSizer* sISOButtons;
|
||||
wxGridBagSizer* sOtherPaths;
|
||||
wxBoxSizer* sPlugins;
|
||||
wxStaticBoxSizer* sbGraphicsPlugin;
|
||||
wxStaticBoxSizer* sbDSPPlugin;
|
||||
wxStaticBoxSizer* sbPadPlugin;
|
||||
wxStaticBoxSizer* sbWiimotePlugin;
|
||||
|
||||
wxNotebook *Notebook;
|
||||
wxPanel *GeneralPage;
|
||||
wxPanel *GamecubePage;
|
||||
wxPanel *WiiPage;
|
||||
wxPanel *PathsPage;
|
||||
wxPanel *PluginPage;
|
||||
|
||||
wxButton* m_Close;
|
||||
|
||||
wxCheckBox* AllwaysHLEBIOS;
|
||||
wxCheckBox* UseDynaRec;
|
||||
wxCheckBox* UseDualCore;
|
||||
wxCheckBox* LockThreads;
|
||||
wxCheckBox* OptimizeQuantizers;
|
||||
wxCheckBox* SkipIdle;
|
||||
wxCheckBox* EnableCheats;
|
||||
wxArrayString arrayStringFor_GCSystemLang;
|
||||
wxStaticText* GCSystemLangText;
|
||||
wxChoice* GCSystemLang;
|
||||
|
||||
FILE* pStream;
|
||||
u8 m_SYSCONF[0x4000];
|
||||
bool m_bSysconfOK;
|
||||
std::string FullSYSCONFPath;
|
||||
|
||||
enum
|
||||
{
|
||||
BT_DINF = 0x0044,
|
||||
BT_SENS = 0x04AF,
|
||||
BT_BAR = 0x04E1,
|
||||
BT_SPKV = 0x151A,
|
||||
BT_MOT = 0x1807
|
||||
};
|
||||
enum
|
||||
{
|
||||
IPL_AR = 0x04D9,
|
||||
IPL_SSV = 0x04EA,
|
||||
IPL_LNG = 0x04F3,
|
||||
IPL_PGS = 0x17CC,
|
||||
IPL_E60 = 0x17D5
|
||||
};
|
||||
/* Some offsets in SYSCONF: (taken from ector's SYSCONF)
|
||||
Note: offset is where the actual data starts, not where the type or name begins
|
||||
offset length name comment
|
||||
0x0044 0x460 BT.DINF List of Wiimotes "synced" to the system
|
||||
0x158B ? BT.CDIF ? -- Starts with 0x0204 followed by 0x210 of 0x00
|
||||
0x04AF 4 BT.SENS Wiimote sensitivity setting
|
||||
0x04E1 1 BT.BAR Sensor bar position (0:bottom)
|
||||
0x151A 1 BT.SPKV Wiimote speaker volume
|
||||
0x1807 1 BT.MOT Wiimote motor on/off
|
||||
|
||||
0x17F3 2 IPL.IDL Shutdown mode and idle LED mode
|
||||
0x17C3 1 IPL.UPT Update Type
|
||||
0x04BB 0x16 IPL.NIK Console Nickname
|
||||
0x04D9 1 IPL.AR Aspect ratio setting. 0: 4:3 1: 16:9
|
||||
0x04EA 1 IPL.SSV Screen Saver off/on (burn-in reduction)
|
||||
0x04F3 1 IPL.LNG System Language, see conf.c for some values
|
||||
0x04FD 0x1007 IPL.SADR "Simple Address" Contains some region info
|
||||
0x150E 4 IPL.CB Counter Bias -- difference between RTC and local time, in seconds
|
||||
0x1522 0x50 IPL.PC Parental Control password/setting
|
||||
0x17B1 1 IPL.CD Config Done flag -- has initial setup been performed?
|
||||
0x17BA 1 IPL.CD2 Config2 Done flag -- has network setup been performed?
|
||||
0x17FF 1 IPL.EULA EULA Done flag -- has EULA been acknowledged?
|
||||
0x17CC 1 IPL.PGS Use Progressive Scan
|
||||
0x17D5 1 IPL.E60 Use EuRGB60 (PAL6)
|
||||
? 1 IPL.SND Sound setting
|
||||
0x17DD 1 IPL.DH Display Offset (Horiz)
|
||||
0x179A 4 IPL.INC "Installed Channel App Count"
|
||||
? ? IPL.ARN ?
|
||||
0x17A7 4 IPL.FRC "Free Channel App Count"
|
||||
|
||||
? ? DEV.BTM ?
|
||||
? ? DEV.VIM ?
|
||||
? ? DEV.CTC ?
|
||||
? ? DEV.DSM ?
|
||||
? ? DVD.CNF ?
|
||||
0x1582 ? WWW.RST WWW Restriction
|
||||
? ? NET.CNF ?
|
||||
? ? NET.CFG ?
|
||||
0x1576 4 NET.CTPC Net Content Restrictions ("Content Parental Control"?)
|
||||
0x17E7 4 NET.WCFG WC24 Configuration flags
|
||||
*/
|
||||
wxArrayString arrayStringFor_WiiSensBarPos;
|
||||
wxStaticText* WiiSensBarPosText;
|
||||
wxChoice* WiiSensBarPos;
|
||||
wxCheckBox* WiiScreenSaver;
|
||||
wxCheckBox* WiiProgressiveScan;
|
||||
wxCheckBox* WiiEuRGB60;
|
||||
wxArrayString arrayStringFor_WiiAspectRatio;
|
||||
wxStaticText* WiiAspectRatioText;
|
||||
wxChoice* WiiAspectRatio;
|
||||
wxArrayString arrayStringFor_WiiSystemLang;
|
||||
wxStaticText* WiiSystemLangText;
|
||||
wxChoice* WiiSystemLang;
|
||||
|
||||
wxArrayString arrayStringFor_ISOPaths;
|
||||
wxListBox* ISOPaths;
|
||||
wxButton* AddISOPath;
|
||||
wxButton* RemoveISOPath;
|
||||
wxStaticText* DefaultISOText;
|
||||
wxFilePickerCtrl* DefaultISO;
|
||||
wxStaticText* DVDRootText;
|
||||
wxDirPickerCtrl* DVDRoot;
|
||||
|
||||
wxStaticText* PADText;
|
||||
wxButton* PADConfig;
|
||||
wxChoice* PADSelection;
|
||||
wxButton* DSPConfig;
|
||||
wxStaticText* DSPText;
|
||||
wxChoice* DSPSelection;
|
||||
wxButton* GraphicConfig;
|
||||
wxStaticText* GraphicText;
|
||||
wxChoice* GraphicSelection;
|
||||
wxButton* WiimoteConfig;
|
||||
wxStaticText* WiimoteText;
|
||||
wxChoice* WiimoteSelection;
|
||||
|
||||
enum
|
||||
{
|
||||
ID_NOTEBOOK = 1000,
|
||||
ID_GENERALPAGE,
|
||||
ID_GAMECUBEPAGE,
|
||||
ID_WIIPAGE,
|
||||
ID_PATHSPAGE,
|
||||
ID_PLUGINPAGE,
|
||||
ID_CLOSE,
|
||||
ID_ALLWAYS_HLEBIOS,
|
||||
ID_USEDYNAREC,
|
||||
ID_USEDUALCORE,
|
||||
ID_LOCKTHREADS,
|
||||
ID_OPTIMIZEQUANTIZERS,
|
||||
ID_IDLESKIP,
|
||||
ID_ENABLECHEATS,
|
||||
ID_ENABLEISOCACHE,
|
||||
ID_GC_SRAM_LNG_TEXT,
|
||||
ID_GC_SRAM_LNG,
|
||||
ID_WII_BT_BAR_TEXT,
|
||||
ID_WII_BT_BAR,
|
||||
ID_WII_IPL_SSV,
|
||||
ID_WII_IPL_PGS,
|
||||
ID_WII_IPL_E60,
|
||||
ID_WII_IPL_AR_TEXT,
|
||||
ID_WII_IPL_AR,
|
||||
ID_WII_IPL_LNG_TEXT,
|
||||
ID_WII_IPL_LNG,
|
||||
ID_ISOPATHS,
|
||||
ID_ADDISOPATH,
|
||||
ID_REMOVEISOPATH,
|
||||
ID_DEFAULTISO_TEXT,
|
||||
ID_DEFAULTISO,
|
||||
ID_DVDROOT_TEXT,
|
||||
ID_DVDROOT,
|
||||
ID_WIIMOTE_ABOUT,
|
||||
ID_WIIMOTE_CONFIG,
|
||||
ID_WIIMOTE_TEXT,
|
||||
ID_WIIMOTE_CB,
|
||||
ID_PAD_TEXT,
|
||||
ID_PAD_ABOUT ,
|
||||
ID_PAD_CONFIG,
|
||||
ID_PAD_CB,
|
||||
ID_DSP_ABOUT,
|
||||
ID_DSP_CONFIG,
|
||||
ID_DSP_TEXT,
|
||||
ID_DSP_CB,
|
||||
ID_GRAPHIC_ABOUT,
|
||||
ID_GRAPHIC_CONFIG,
|
||||
ID_GRAPHIC_TEXT,
|
||||
ID_GRAPHIC_CB
|
||||
};
|
||||
|
||||
void CreateGUIControls();
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CoreSettingsChanged(wxCommandEvent& event);
|
||||
void GCSettingsChanged(wxCommandEvent& event);
|
||||
void WiiSettingsChanged(wxCommandEvent& event);
|
||||
void ISOPathsSelectionChanged(wxCommandEvent& event);
|
||||
void AddRemoveISOPaths(wxCommandEvent& event);
|
||||
void DefaultISOChanged(wxFileDirPickerEvent& event);
|
||||
void DVDRootChanged(wxFileDirPickerEvent& event);
|
||||
|
||||
void FillChoiceBox(wxChoice* _pChoice, int _PluginType, const std::string& _SelectFilename);
|
||||
|
||||
void CallConfig(wxChoice* _pChoice);
|
||||
|
||||
bool GetFilename(wxChoice* _pChoice, std::string& _rFilename);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,109 +1,109 @@
|
||||
#ifndef __FRAME_H_
|
||||
#define __FRAME_H_
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/busyinfo.h>
|
||||
class CGameListCtrl;
|
||||
class CFrame : public wxFrame
|
||||
{
|
||||
public:
|
||||
|
||||
CFrame(wxFrame* parent,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxString& title = _T("Dolphin"),
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxDEFAULT_FRAME_STYLE | wxNO_FULL_REPAINT_ON_RESIZE);
|
||||
|
||||
void* GetRenderHandle() {return(m_Panel->GetHandle());}
|
||||
|
||||
|
||||
private:
|
||||
|
||||
wxBoxSizer* sizerPanel;
|
||||
CGameListCtrl* m_GameListCtrl;
|
||||
wxPanel* m_Panel;
|
||||
|
||||
enum EBitmaps
|
||||
{
|
||||
Toolbar_FileOpen,
|
||||
Toolbar_Refresh,
|
||||
Toolbar_Browse,
|
||||
Toolbar_Play,
|
||||
Toolbar_Play_Dis,
|
||||
Toolbar_Stop,
|
||||
Toolbar_Stop_Dis,
|
||||
Toolbar_Pause,
|
||||
Toolbar_PluginOptions,
|
||||
Toolbar_PluginOptions_Dis,
|
||||
Toolbar_PluginGFX,
|
||||
Toolbar_PluginDSP,
|
||||
Toolbar_PluginPAD,
|
||||
Toolbar_FullScreen,
|
||||
Toolbar_Help,
|
||||
Bitmaps_Max
|
||||
};
|
||||
|
||||
wxBitmap m_Bitmaps[Bitmaps_Max];
|
||||
wxBitmap m_BitmapsMenu[Bitmaps_Max];
|
||||
|
||||
void InitBitmaps();
|
||||
void PopulateToolbar(wxToolBar* toolBar);
|
||||
void RecreateToolbar();
|
||||
void CreateMenu();
|
||||
|
||||
#ifdef _WIN32
|
||||
// Override window proc for tricks like screensaver disabling
|
||||
WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
|
||||
#endif
|
||||
// event handler
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
void OnHelp(wxCommandEvent& event);
|
||||
void OnRefresh(wxCommandEvent& event);
|
||||
void OnConfigMain(wxCommandEvent& event);
|
||||
void OnPluginGFX(wxCommandEvent& event);
|
||||
void OnPluginDSP(wxCommandEvent& event);
|
||||
void OnPluginPAD(wxCommandEvent& event);
|
||||
void OnPluginWiimote(wxCommandEvent& event);
|
||||
void OnOpen(wxCommandEvent& event);
|
||||
void OnPlay(wxCommandEvent& event);
|
||||
void OnStop(wxCommandEvent& event);
|
||||
void OnBrowse(wxCommandEvent& event);
|
||||
void OnMemcard(wxCommandEvent& event);
|
||||
void OnShow_CheatsWindow(wxCommandEvent& event);
|
||||
void OnToggleFullscreen(wxCommandEvent& event);
|
||||
void OnToggleDualCore(wxCommandEvent& event);
|
||||
void OnToggleSkipIdle(wxCommandEvent& event);
|
||||
void OnToggleThrottle(wxCommandEvent& event);
|
||||
void OnToggleToolbar(wxCommandEvent& event);
|
||||
void OnToggleStatusbar(wxCommandEvent& event);
|
||||
void OnKeyDown(wxKeyEvent& event);
|
||||
void OnHostMessage(wxCommandEvent& event);
|
||||
void OnLoadState(wxCommandEvent& event);
|
||||
void OnSaveState(wxCommandEvent& event);
|
||||
void OnClose(wxCloseEvent &event);
|
||||
|
||||
wxStatusBar* m_pStatusBar;
|
||||
wxMenuBar* m_pMenuBar;
|
||||
|
||||
wxMenuItem* m_pMenuItemPlay;
|
||||
wxMenuItem* m_pMenuItemStop;
|
||||
wxMenuItem* m_pPluginOptions;
|
||||
|
||||
wxMenuItem* m_pMenuItemLoad;
|
||||
wxMenuItem* m_pMenuItemSave;
|
||||
|
||||
wxToolBarToolBase* m_pToolPlay;
|
||||
|
||||
wxBusyInfo* m_pBootProcessDialog;
|
||||
|
||||
void UpdateGUI();
|
||||
|
||||
|
||||
// old function that could be cool
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
};
|
||||
|
||||
#endif // __FRAME_H_
|
||||
|
||||
#ifndef __FRAME_H_
|
||||
#define __FRAME_H_
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/busyinfo.h>
|
||||
class CGameListCtrl;
|
||||
class CFrame : public wxFrame
|
||||
{
|
||||
public:
|
||||
|
||||
CFrame(wxFrame* parent,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxString& title = _T("Dolphin"),
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxDEFAULT_FRAME_STYLE | wxNO_FULL_REPAINT_ON_RESIZE);
|
||||
|
||||
void* GetRenderHandle() {return(m_Panel->GetHandle());}
|
||||
|
||||
|
||||
private:
|
||||
|
||||
wxBoxSizer* sizerPanel;
|
||||
CGameListCtrl* m_GameListCtrl;
|
||||
wxPanel* m_Panel;
|
||||
|
||||
enum EBitmaps
|
||||
{
|
||||
Toolbar_FileOpen,
|
||||
Toolbar_Refresh,
|
||||
Toolbar_Browse,
|
||||
Toolbar_Play,
|
||||
Toolbar_Play_Dis,
|
||||
Toolbar_Stop,
|
||||
Toolbar_Stop_Dis,
|
||||
Toolbar_Pause,
|
||||
Toolbar_PluginOptions,
|
||||
Toolbar_PluginOptions_Dis,
|
||||
Toolbar_PluginGFX,
|
||||
Toolbar_PluginDSP,
|
||||
Toolbar_PluginPAD,
|
||||
Toolbar_FullScreen,
|
||||
Toolbar_Help,
|
||||
Bitmaps_Max
|
||||
};
|
||||
|
||||
wxBitmap m_Bitmaps[Bitmaps_Max];
|
||||
wxBitmap m_BitmapsMenu[Bitmaps_Max];
|
||||
|
||||
void InitBitmaps();
|
||||
void PopulateToolbar(wxToolBar* toolBar);
|
||||
void RecreateToolbar();
|
||||
void CreateMenu();
|
||||
|
||||
#ifdef _WIN32
|
||||
// Override window proc for tricks like screensaver disabling
|
||||
WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
|
||||
#endif
|
||||
// event handler
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
void OnHelp(wxCommandEvent& event);
|
||||
void OnRefresh(wxCommandEvent& event);
|
||||
void OnConfigMain(wxCommandEvent& event);
|
||||
void OnPluginGFX(wxCommandEvent& event);
|
||||
void OnPluginDSP(wxCommandEvent& event);
|
||||
void OnPluginPAD(wxCommandEvent& event);
|
||||
void OnPluginWiimote(wxCommandEvent& event);
|
||||
void OnOpen(wxCommandEvent& event);
|
||||
void OnPlay(wxCommandEvent& event);
|
||||
void OnStop(wxCommandEvent& event);
|
||||
void OnBrowse(wxCommandEvent& event);
|
||||
void OnMemcard(wxCommandEvent& event);
|
||||
void OnShow_CheatsWindow(wxCommandEvent& event);
|
||||
void OnToggleFullscreen(wxCommandEvent& event);
|
||||
void OnToggleDualCore(wxCommandEvent& event);
|
||||
void OnToggleSkipIdle(wxCommandEvent& event);
|
||||
void OnToggleThrottle(wxCommandEvent& event);
|
||||
void OnToggleToolbar(wxCommandEvent& event);
|
||||
void OnToggleStatusbar(wxCommandEvent& event);
|
||||
void OnKeyDown(wxKeyEvent& event);
|
||||
void OnHostMessage(wxCommandEvent& event);
|
||||
void OnLoadState(wxCommandEvent& event);
|
||||
void OnSaveState(wxCommandEvent& event);
|
||||
void OnClose(wxCloseEvent &event);
|
||||
|
||||
wxStatusBar* m_pStatusBar;
|
||||
wxMenuBar* m_pMenuBar;
|
||||
|
||||
wxMenuItem* m_pMenuItemPlay;
|
||||
wxMenuItem* m_pMenuItemStop;
|
||||
wxMenuItem* m_pPluginOptions;
|
||||
|
||||
wxMenuItem* m_pMenuItemLoad;
|
||||
wxMenuItem* m_pMenuItemSave;
|
||||
|
||||
wxToolBarToolBase* m_pToolPlay;
|
||||
|
||||
wxBusyInfo* m_pBootProcessDialog;
|
||||
|
||||
void UpdateGUI();
|
||||
|
||||
|
||||
// old function that could be cool
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
};
|
||||
|
||||
#endif // __FRAME_H_
|
||||
|
||||
|
@ -1,97 +1,97 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __GAMELIST_CTRL_H_
|
||||
#define __GAMELIST_CTRL_H_
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include <wx/listctrl.h>
|
||||
|
||||
#include "ISOFile.h"
|
||||
|
||||
class CGameListCtrl : public wxListCtrl
|
||||
{
|
||||
public:
|
||||
|
||||
CGameListCtrl(wxWindow* parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, long style);
|
||||
~CGameListCtrl();
|
||||
|
||||
void Update();
|
||||
void BrowseForDirectory();
|
||||
const GameListItem *GetSelectedISO();
|
||||
const GameListItem *GetISO(int index) const;
|
||||
|
||||
enum
|
||||
{
|
||||
COLUMN_BANNER = 0,
|
||||
COLUMN_TITLE,
|
||||
COLUMN_COMPANY,
|
||||
COLUMN_NOTES,
|
||||
COLUMN_COUNTRY,
|
||||
COLUMN_SIZE,
|
||||
COLUMN_EMULATION_STATE,
|
||||
NUMBER_OF_COLUMN
|
||||
};
|
||||
|
||||
private:
|
||||
|
||||
std::vector<int> m_FlagImageIndex;
|
||||
std::vector<GameListItem> m_ISOFiles;
|
||||
|
||||
int last_column;
|
||||
int last_sort;
|
||||
|
||||
void InitBitmaps();
|
||||
void InsertItemInReportView(long _Index);
|
||||
void SetBackgroundColor();
|
||||
void ScanForISOs();
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
|
||||
// events
|
||||
void OnRightClick(wxMouseEvent& event);
|
||||
void OnColumnClick(wxListEvent& event);
|
||||
void OnColBeginDrag(wxListEvent& event);
|
||||
void OnActivated(wxListEvent& event);
|
||||
void OnSize(wxSizeEvent& event);
|
||||
void OnProperties(wxCommandEvent& event);
|
||||
void OnOpenContainingFolder(wxCommandEvent& event);
|
||||
void OnSetDefaultGCM(wxCommandEvent& event);
|
||||
void OnDeleteGCM(wxCommandEvent& event);
|
||||
void OnCompressGCM(wxCommandEvent& event);
|
||||
void OnMultiCompressGCM(wxCommandEvent& event);
|
||||
void OnMultiDecompressGCM(wxCommandEvent& event);
|
||||
|
||||
#ifdef _WIN32
|
||||
virtual bool MSWDrawSubItem(wxPaintDC& rPaintDC, int item, int subitem);
|
||||
#endif
|
||||
|
||||
void CompressSelection(bool _compress);
|
||||
void AutomaticColumnWidth();
|
||||
void UnselectAll();
|
||||
|
||||
static size_t m_currentItem;
|
||||
static std::string m_currentFilename;
|
||||
static size_t m_numberItem;
|
||||
static void CompressCB(const char* text, float percent, void* arg);
|
||||
static void MultiCompressCB(const char* text, float percent, void* arg);
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __GAMELIST_CTRL_H_
|
||||
#define __GAMELIST_CTRL_H_
|
||||
|
||||
#include <vector>
|
||||
|
||||
#include <wx/listctrl.h>
|
||||
|
||||
#include "ISOFile.h"
|
||||
|
||||
class CGameListCtrl : public wxListCtrl
|
||||
{
|
||||
public:
|
||||
|
||||
CGameListCtrl(wxWindow* parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, long style);
|
||||
~CGameListCtrl();
|
||||
|
||||
void Update();
|
||||
void BrowseForDirectory();
|
||||
const GameListItem *GetSelectedISO();
|
||||
const GameListItem *GetISO(int index) const;
|
||||
|
||||
enum
|
||||
{
|
||||
COLUMN_BANNER = 0,
|
||||
COLUMN_TITLE,
|
||||
COLUMN_COMPANY,
|
||||
COLUMN_NOTES,
|
||||
COLUMN_COUNTRY,
|
||||
COLUMN_SIZE,
|
||||
COLUMN_EMULATION_STATE,
|
||||
NUMBER_OF_COLUMN
|
||||
};
|
||||
|
||||
private:
|
||||
|
||||
std::vector<int> m_FlagImageIndex;
|
||||
std::vector<GameListItem> m_ISOFiles;
|
||||
|
||||
int last_column;
|
||||
int last_sort;
|
||||
|
||||
void InitBitmaps();
|
||||
void InsertItemInReportView(long _Index);
|
||||
void SetBackgroundColor();
|
||||
void ScanForISOs();
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
|
||||
// events
|
||||
void OnRightClick(wxMouseEvent& event);
|
||||
void OnColumnClick(wxListEvent& event);
|
||||
void OnColBeginDrag(wxListEvent& event);
|
||||
void OnActivated(wxListEvent& event);
|
||||
void OnSize(wxSizeEvent& event);
|
||||
void OnProperties(wxCommandEvent& event);
|
||||
void OnOpenContainingFolder(wxCommandEvent& event);
|
||||
void OnSetDefaultGCM(wxCommandEvent& event);
|
||||
void OnDeleteGCM(wxCommandEvent& event);
|
||||
void OnCompressGCM(wxCommandEvent& event);
|
||||
void OnMultiCompressGCM(wxCommandEvent& event);
|
||||
void OnMultiDecompressGCM(wxCommandEvent& event);
|
||||
|
||||
#ifdef _WIN32
|
||||
virtual bool MSWDrawSubItem(wxPaintDC& rPaintDC, int item, int subitem);
|
||||
#endif
|
||||
|
||||
void CompressSelection(bool _compress);
|
||||
void AutomaticColumnWidth();
|
||||
void UnselectAll();
|
||||
|
||||
static size_t m_currentItem;
|
||||
static std::string m_currentFilename;
|
||||
static size_t m_numberItem;
|
||||
static void CompressCB(const char* text, float percent, void* arg);
|
||||
static void MultiCompressCB(const char* text, float percent, void* arg);
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -1,132 +1,132 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef _GLOBALS_H
|
||||
#define _GLOBALS_H
|
||||
|
||||
#include "Common.h"
|
||||
enum
|
||||
{
|
||||
IDM_LOADSTATE = 200,
|
||||
IDM_SAVESTATE,
|
||||
IDM_SAVESLOT1,
|
||||
IDM_SAVESLOT2,
|
||||
IDM_SAVESLOT3,
|
||||
IDM_SAVESLOT4,
|
||||
IDM_SAVESLOT5,
|
||||
IDM_SAVESLOT6,
|
||||
IDM_SAVESLOT7,
|
||||
IDM_SAVESLOT8,
|
||||
IDM_SAVESLOT9,
|
||||
IDM_SAVESLOT10,
|
||||
IDM_LOADSLOT1,
|
||||
IDM_LOADSLOT2,
|
||||
IDM_LOADSLOT3,
|
||||
IDM_LOADSLOT4,
|
||||
IDM_LOADSLOT5,
|
||||
IDM_LOADSLOT6,
|
||||
IDM_LOADSLOT7,
|
||||
IDM_LOADSLOT8,
|
||||
IDM_LOADSLOT9,
|
||||
IDM_LOADSLOT10,
|
||||
IDM_PLAY,
|
||||
IDM_STOP,
|
||||
IDM_BROWSE,
|
||||
IDM_MEMCARD,
|
||||
IDM_CHEATS,
|
||||
IDM_PROPERTIES,
|
||||
IDM_OPENCONTAININGFOLDER,
|
||||
IDM_SETDEFAULTGCM,
|
||||
IDM_DELETEGCM,
|
||||
IDM_COMPRESSGCM,
|
||||
IDM_MULTICOMPRESSGCM,
|
||||
IDM_MULTIDECOMPRESSGCM,
|
||||
IDM_CONFIG_MAIN,
|
||||
IDM_CONFIG_GFX_PLUGIN,
|
||||
IDM_CONFIG_DSP_PLUGIN,
|
||||
IDM_CONFIG_PAD_PLUGIN,
|
||||
IDM_CONFIG_WIIMOTE_PLUGIN,
|
||||
IDM_TOGGLE_FULLSCREEN,
|
||||
IDM_TOGGLE_DUALCORE,
|
||||
IDM_TOGGLE_SKIPIDLE,
|
||||
IDM_TOGGLE_TOOLBAR,
|
||||
IDM_TOGGLE_STATUSBAR,
|
||||
IDM_NOTIFYMAPLOADED,
|
||||
IDM_UPDATELOGDISPLAY,
|
||||
IDM_UPDATEDISASMDIALOG,
|
||||
IDM_UPDATEGUI,
|
||||
IDM_UPDATESTATUSBAR,
|
||||
IDM_UPDATEBREAKPOINTS,
|
||||
IDM_HOST_MESSAGE,
|
||||
IDM_BOOTING_STARTED,
|
||||
IDM_BOOTING_ENDED,
|
||||
IDM_HELPABOUT,
|
||||
IDM_HELPWEBSITE,
|
||||
IDM_HELPGOOGLECODE,
|
||||
ID_TOOLBAR = 500,
|
||||
LIST_CTRL = 1000
|
||||
};
|
||||
|
||||
#define wxUSE_XPM_IN_MSW 1
|
||||
#define USE_XPM_BITMAPS 1
|
||||
|
||||
// For compilers that support precompilation, includes <wx/wx.h>.
|
||||
//#include <wx/wxprec.h>
|
||||
|
||||
//#ifndef WX_PRECOMP
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
#include <wx/wx.h>
|
||||
//#endif
|
||||
|
||||
#include <wx/toolbar.h>
|
||||
#include <wx/log.h>
|
||||
#include <wx/image.h>
|
||||
#include <wx/aboutdlg.h>
|
||||
#include <wx/filedlg.h>
|
||||
#include <wx/spinctrl.h>
|
||||
#include <wx/srchctrl.h>
|
||||
#include <wx/listctrl.h>
|
||||
#include <wx/progdlg.h>
|
||||
#include <wx/imagpng.h>
|
||||
#include <wx/button.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/choice.h>
|
||||
#include <wx/cmdline.h>
|
||||
#include <wx/busyinfo.h>
|
||||
|
||||
// define this to use XPMs everywhere (by default, BMPs are used under Win)
|
||||
// BMPs use less space, but aren't compiled into the executable on other platforms
|
||||
|
||||
#if USE_XPM_BITMAPS && defined (__WXMSW__) && !wxUSE_XPM_IN_MSW
|
||||
#error You need to enable XPM support to use XPM bitmaps with toolbar!
|
||||
#endif // USE_XPM_BITMAPS
|
||||
|
||||
|
||||
//
|
||||
// custom message macro
|
||||
//
|
||||
|
||||
#define EVT_HOST_COMMAND(id, fn) \
|
||||
DECLARE_EVENT_TABLE_ENTRY(\
|
||||
wxEVT_HOST_COMMAND, id, wxID_ANY, \
|
||||
(wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent(wxCommandEventFunction, &fn), \
|
||||
(wxObject*) NULL \
|
||||
),
|
||||
|
||||
extern const wxEventType wxEVT_HOST_COMMAND;
|
||||
#endif
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef _GLOBALS_H
|
||||
#define _GLOBALS_H
|
||||
|
||||
#include "Common.h"
|
||||
enum
|
||||
{
|
||||
IDM_LOADSTATE = 200,
|
||||
IDM_SAVESTATE,
|
||||
IDM_SAVESLOT1,
|
||||
IDM_SAVESLOT2,
|
||||
IDM_SAVESLOT3,
|
||||
IDM_SAVESLOT4,
|
||||
IDM_SAVESLOT5,
|
||||
IDM_SAVESLOT6,
|
||||
IDM_SAVESLOT7,
|
||||
IDM_SAVESLOT8,
|
||||
IDM_SAVESLOT9,
|
||||
IDM_SAVESLOT10,
|
||||
IDM_LOADSLOT1,
|
||||
IDM_LOADSLOT2,
|
||||
IDM_LOADSLOT3,
|
||||
IDM_LOADSLOT4,
|
||||
IDM_LOADSLOT5,
|
||||
IDM_LOADSLOT6,
|
||||
IDM_LOADSLOT7,
|
||||
IDM_LOADSLOT8,
|
||||
IDM_LOADSLOT9,
|
||||
IDM_LOADSLOT10,
|
||||
IDM_PLAY,
|
||||
IDM_STOP,
|
||||
IDM_BROWSE,
|
||||
IDM_MEMCARD,
|
||||
IDM_CHEATS,
|
||||
IDM_PROPERTIES,
|
||||
IDM_OPENCONTAININGFOLDER,
|
||||
IDM_SETDEFAULTGCM,
|
||||
IDM_DELETEGCM,
|
||||
IDM_COMPRESSGCM,
|
||||
IDM_MULTICOMPRESSGCM,
|
||||
IDM_MULTIDECOMPRESSGCM,
|
||||
IDM_CONFIG_MAIN,
|
||||
IDM_CONFIG_GFX_PLUGIN,
|
||||
IDM_CONFIG_DSP_PLUGIN,
|
||||
IDM_CONFIG_PAD_PLUGIN,
|
||||
IDM_CONFIG_WIIMOTE_PLUGIN,
|
||||
IDM_TOGGLE_FULLSCREEN,
|
||||
IDM_TOGGLE_DUALCORE,
|
||||
IDM_TOGGLE_SKIPIDLE,
|
||||
IDM_TOGGLE_TOOLBAR,
|
||||
IDM_TOGGLE_STATUSBAR,
|
||||
IDM_NOTIFYMAPLOADED,
|
||||
IDM_UPDATELOGDISPLAY,
|
||||
IDM_UPDATEDISASMDIALOG,
|
||||
IDM_UPDATEGUI,
|
||||
IDM_UPDATESTATUSBAR,
|
||||
IDM_UPDATEBREAKPOINTS,
|
||||
IDM_HOST_MESSAGE,
|
||||
IDM_BOOTING_STARTED,
|
||||
IDM_BOOTING_ENDED,
|
||||
IDM_HELPABOUT,
|
||||
IDM_HELPWEBSITE,
|
||||
IDM_HELPGOOGLECODE,
|
||||
ID_TOOLBAR = 500,
|
||||
LIST_CTRL = 1000
|
||||
};
|
||||
|
||||
#define wxUSE_XPM_IN_MSW 1
|
||||
#define USE_XPM_BITMAPS 1
|
||||
|
||||
// For compilers that support precompilation, includes <wx/wx.h>.
|
||||
//#include <wx/wxprec.h>
|
||||
|
||||
//#ifndef WX_PRECOMP
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
#include <wx/wx.h>
|
||||
//#endif
|
||||
|
||||
#include <wx/toolbar.h>
|
||||
#include <wx/log.h>
|
||||
#include <wx/image.h>
|
||||
#include <wx/aboutdlg.h>
|
||||
#include <wx/filedlg.h>
|
||||
#include <wx/spinctrl.h>
|
||||
#include <wx/srchctrl.h>
|
||||
#include <wx/listctrl.h>
|
||||
#include <wx/progdlg.h>
|
||||
#include <wx/imagpng.h>
|
||||
#include <wx/button.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/choice.h>
|
||||
#include <wx/cmdline.h>
|
||||
#include <wx/busyinfo.h>
|
||||
|
||||
// define this to use XPMs everywhere (by default, BMPs are used under Win)
|
||||
// BMPs use less space, but aren't compiled into the executable on other platforms
|
||||
|
||||
#if USE_XPM_BITMAPS && defined (__WXMSW__) && !wxUSE_XPM_IN_MSW
|
||||
#error You need to enable XPM support to use XPM bitmaps with toolbar!
|
||||
#endif // USE_XPM_BITMAPS
|
||||
|
||||
|
||||
//
|
||||
// custom message macro
|
||||
//
|
||||
|
||||
#define EVT_HOST_COMMAND(id, fn) \
|
||||
DECLARE_EVENT_TABLE_ENTRY(\
|
||||
wxEVT_HOST_COMMAND, id, wxID_ANY, \
|
||||
(wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent(wxCommandEventFunction, &fn), \
|
||||
(wxObject*) NULL \
|
||||
),
|
||||
|
||||
extern const wxEventType wxEVT_HOST_COMMAND;
|
||||
#endif
|
||||
#endif
|
||||
|
@ -1,74 +1,74 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __ISOFILE_H_
|
||||
#define __ISOFILE_H_
|
||||
|
||||
#include "Volume.h"
|
||||
|
||||
class PointerWrap;
|
||||
class GameListItem
|
||||
{
|
||||
public:
|
||||
GameListItem(const std::string& _rFileName);
|
||||
~GameListItem();
|
||||
|
||||
bool IsValid() const {return m_Valid;}
|
||||
const std::string& GetFileName() const {return m_FileName;}
|
||||
const std::string& GetName() const {return m_Name;}
|
||||
const std::string& GetCompany() const {return m_Company;}
|
||||
const std::string& GetDescription() const {return m_Description;}
|
||||
const std::string& GetUniqueID() const {return m_UniqueID;}
|
||||
DiscIO::IVolume::ECountry GetCountry() const {return m_Country;}
|
||||
bool IsCompressed() const {return m_BlobCompressed;}
|
||||
u64 GetFileSize() const {return m_FileSize;}
|
||||
u64 GetVolumeSize() const {return m_VolumeSize;}
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
const wxImage& GetImage() const {return m_Image;}
|
||||
#endif
|
||||
|
||||
void DoState(PointerWrap &p);
|
||||
|
||||
private:
|
||||
std::string m_FileName;
|
||||
std::string m_Name;
|
||||
std::string m_Company;
|
||||
std::string m_Description;
|
||||
std::string m_UniqueID;
|
||||
|
||||
u64 m_FileSize;
|
||||
u64 m_VolumeSize;
|
||||
|
||||
DiscIO::IVolume::ECountry m_Country;
|
||||
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
wxImage m_Image;
|
||||
#endif
|
||||
bool m_Valid;
|
||||
bool m_BlobCompressed;
|
||||
u8* m_pImage;
|
||||
u32 m_ImageSize;
|
||||
|
||||
bool LoadFromCache();
|
||||
void SaveToCache();
|
||||
|
||||
|
||||
std::string CreateCacheFilename();
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __ISOFILE_H_
|
||||
#define __ISOFILE_H_
|
||||
|
||||
#include "Volume.h"
|
||||
|
||||
class PointerWrap;
|
||||
class GameListItem
|
||||
{
|
||||
public:
|
||||
GameListItem(const std::string& _rFileName);
|
||||
~GameListItem();
|
||||
|
||||
bool IsValid() const {return m_Valid;}
|
||||
const std::string& GetFileName() const {return m_FileName;}
|
||||
const std::string& GetName() const {return m_Name;}
|
||||
const std::string& GetCompany() const {return m_Company;}
|
||||
const std::string& GetDescription() const {return m_Description;}
|
||||
const std::string& GetUniqueID() const {return m_UniqueID;}
|
||||
DiscIO::IVolume::ECountry GetCountry() const {return m_Country;}
|
||||
bool IsCompressed() const {return m_BlobCompressed;}
|
||||
u64 GetFileSize() const {return m_FileSize;}
|
||||
u64 GetVolumeSize() const {return m_VolumeSize;}
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
const wxImage& GetImage() const {return m_Image;}
|
||||
#endif
|
||||
|
||||
void DoState(PointerWrap &p);
|
||||
|
||||
private:
|
||||
std::string m_FileName;
|
||||
std::string m_Name;
|
||||
std::string m_Company;
|
||||
std::string m_Description;
|
||||
std::string m_UniqueID;
|
||||
|
||||
u64 m_FileSize;
|
||||
u64 m_VolumeSize;
|
||||
|
||||
DiscIO::IVolume::ECountry m_Country;
|
||||
|
||||
#if defined(HAVE_WX) && HAVE_WX
|
||||
wxImage m_Image;
|
||||
#endif
|
||||
bool m_Valid;
|
||||
bool m_BlobCompressed;
|
||||
u8* m_pImage;
|
||||
u32 m_ImageSize;
|
||||
|
||||
bool LoadFromCache();
|
||||
void SaveToCache();
|
||||
|
||||
|
||||
std::string CreateCacheFilename();
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
@ -1,229 +1,229 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __ISOPROPERTIES_h__
|
||||
#define __ISOPROPERTIES_h__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/imaglist.h>
|
||||
#include <wx/treectrl.h>
|
||||
#include <wx/gbsizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/mimetype.h>
|
||||
#include <string>
|
||||
|
||||
#include "Filesystem.h"
|
||||
#include "IniFile.h"
|
||||
#include "PatchEngine.h"
|
||||
|
||||
#undef ISOPROPERTIES_STYLE
|
||||
#define ISOPROPERTIES_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX
|
||||
|
||||
class CISOProperties : public wxDialog
|
||||
{
|
||||
public:
|
||||
|
||||
CISOProperties(const std::string fileName, wxWindow* parent, wxWindowID id = 1, const wxString& title = wxT("Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = ISOPROPERTIES_STYLE);
|
||||
virtual ~CISOProperties();
|
||||
|
||||
bool bRefreshList;
|
||||
|
||||
private:
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxStaticBoxSizer *sbCoreOverrides;
|
||||
wxBoxSizer *sCoreOverrides;
|
||||
wxBoxSizer *sEmuState;
|
||||
wxStaticBoxSizer *sbPatches;
|
||||
wxBoxSizer *sPatches;
|
||||
wxBoxSizer *sPatchButtons;
|
||||
wxStaticBoxSizer *sbCheats;
|
||||
wxBoxSizer *sCheats;
|
||||
wxBoxSizer *sCheatButtons;
|
||||
wxStaticBoxSizer *sbISODetails;
|
||||
wxGridBagSizer *sISODetails;
|
||||
wxStaticBoxSizer *sbBannerDetails;
|
||||
wxGridBagSizer *sBannerDetails;
|
||||
wxStaticBoxSizer *sbTreectrl;
|
||||
|
||||
wxButton *m_Close;
|
||||
|
||||
wxNotebook *m_Notebook;
|
||||
wxPanel *m_GameConfig;
|
||||
wxNotebook *m_GameConfig_Notebook;
|
||||
wxPanel *m_PatchPage;
|
||||
wxPanel *m_CheatPage;
|
||||
wxPanel *m_Information;
|
||||
wxPanel *m_Filesystem;
|
||||
|
||||
wxStaticText *OverrideText;
|
||||
wxCheckBox *UseDualCore;
|
||||
wxCheckBox *SkipIdle;
|
||||
wxCheckBox *OptimizeQuantizers;
|
||||
wxCheckBox *EnableProgressiveScan, *EnableWideScreen; // Wii
|
||||
|
||||
wxButton *EditConfig;
|
||||
wxStaticText *EmuStateText;
|
||||
wxArrayString arrayStringFor_EmuState;
|
||||
wxChoice *EmuState;
|
||||
wxArrayString arrayStringFor_Patches;
|
||||
wxCheckListBox *Patches;
|
||||
wxButton *EditPatch;
|
||||
wxButton *AddPatch;
|
||||
wxButton *RemovePatch;
|
||||
wxArrayString arrayStringFor_Cheats;
|
||||
wxCheckListBox *Cheats;
|
||||
wxButton *EditCheat;
|
||||
wxButton *AddCheat;
|
||||
wxButton *RemoveCheat;
|
||||
wxArrayString arrayStringFor_Speedhacks;
|
||||
wxCheckListBox *Speedhacks;
|
||||
wxButton *EditSpeedhack;
|
||||
wxButton *AddSpeedhack;
|
||||
wxButton *RemoveSpeedhack;
|
||||
|
||||
wxStaticText *m_NameText;
|
||||
wxStaticText *m_GameIDText;
|
||||
wxStaticText *m_CountryText;
|
||||
wxStaticText *m_MakerIDText;
|
||||
wxStaticText *m_DateText;
|
||||
wxStaticText *m_FSTText;
|
||||
wxStaticText *m_VersionText;
|
||||
wxStaticText *m_LangText;
|
||||
wxStaticText *m_ShortText;
|
||||
wxStaticText *m_LongText;
|
||||
wxStaticText *m_MakerText;
|
||||
wxStaticText *m_CommentText;
|
||||
wxStaticText *m_BannerText;
|
||||
wxTextCtrl *m_Name;
|
||||
wxTextCtrl *m_GameID;
|
||||
wxTextCtrl *m_Country;
|
||||
wxTextCtrl *m_MakerID;
|
||||
wxTextCtrl *m_Date;
|
||||
wxTextCtrl *m_FST;
|
||||
wxTextCtrl *m_Version;
|
||||
wxArrayString arrayStringFor_Lang;
|
||||
wxChoice *m_Lang;
|
||||
wxTextCtrl *m_ShortName;
|
||||
wxTextCtrl *m_LongName;
|
||||
wxTextCtrl *m_Maker;
|
||||
wxTextCtrl *m_Comment;
|
||||
wxStaticBitmap *m_Banner;
|
||||
|
||||
wxTreeCtrl *m_Treectrl;
|
||||
wxTreeItemId RootId;
|
||||
|
||||
enum
|
||||
{
|
||||
ID_CLOSE = 1000,
|
||||
ID_TREECTRL,
|
||||
|
||||
ID_NOTEBOOK,
|
||||
ID_GAMECONFIG,
|
||||
ID_GAMECONFIG_NOTEBOOK,
|
||||
ID_PATCH_PAGE,
|
||||
ID_ARCODE_PAGE,
|
||||
ID_SPEEDHACK_PAGE,
|
||||
ID_INFORMATION,
|
||||
ID_FILESYSTEM,
|
||||
|
||||
ID_OVERRIDE_TEXT,
|
||||
ID_USEDUALCORE,
|
||||
ID_IDLESKIP,
|
||||
ID_ENABLEPROGRESSIVESCAN,
|
||||
ID_ENABLEWIDESCREEN,
|
||||
ID_OPTIMIZEQUANTIZERS,
|
||||
ID_EDITCONFIG,
|
||||
ID_EMUSTATE_TEXT,
|
||||
ID_EMUSTATE,
|
||||
ID_PATCHES_LIST,
|
||||
ID_EDITPATCH,
|
||||
ID_ADDPATCH,
|
||||
ID_REMOVEPATCH,
|
||||
ID_CHEATS_LIST,
|
||||
ID_EDITCHEAT,
|
||||
ID_ADDCHEAT,
|
||||
ID_REMOVECHEAT,
|
||||
|
||||
ID_NAME_TEXT,
|
||||
ID_GAMEID_TEXT,
|
||||
ID_COUNTRY_TEXT,
|
||||
ID_MAKERID_TEXT,
|
||||
ID_DATE_TEXT,
|
||||
ID_FST_TEXT,
|
||||
ID_VERSION_TEXT,
|
||||
ID_LANG_TEXT,
|
||||
ID_SHORTNAME_TEXT,
|
||||
ID_LONGNAME_TEXT,
|
||||
ID_MAKER_TEXT,
|
||||
ID_COMMENT_TEXT,
|
||||
ID_BANNER_TEXT,
|
||||
|
||||
ID_NAME,
|
||||
ID_GAMEID,
|
||||
ID_COUNTRY,
|
||||
ID_MAKERID,
|
||||
ID_DATE,
|
||||
ID_FST,
|
||||
ID_VERSION,
|
||||
ID_LANG,
|
||||
ID_SHORTNAME,
|
||||
ID_LONGNAME,
|
||||
ID_MAKER,
|
||||
ID_COMMENT,
|
||||
ID_BANNER,
|
||||
IDM_EXTRACTDIR,
|
||||
IDM_EXTRACTFILE,
|
||||
IDM_BNRSAVEAS
|
||||
};
|
||||
|
||||
void CreateGUIControls();
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void OnCloseClick(wxCommandEvent& event);
|
||||
void OnEditConfig(wxCommandEvent& event);
|
||||
void ListSelectionChanged(wxCommandEvent& event);
|
||||
void PatchButtonClicked(wxCommandEvent& event);
|
||||
void ActionReplayButtonClicked(wxCommandEvent& event);
|
||||
void RightClickOnBanner(wxMouseEvent& event);
|
||||
void OnBannerImageSave(wxCommandEvent& event);
|
||||
void OnRightClickOnTree(wxTreeEvent& event);
|
||||
void OnExtractFile(wxCommandEvent& event);
|
||||
void OnExtractDir(wxCommandEvent& event);
|
||||
void SetRefresh(wxCommandEvent& event);
|
||||
|
||||
std::vector<const DiscIO::SFileInfo *> Our_Files;
|
||||
typedef std::vector<const DiscIO::SFileInfo *>::iterator fileIter;
|
||||
|
||||
void CreateDirectoryTree(wxTreeItemId& parent,fileIter& begin,
|
||||
fileIter& end,
|
||||
fileIter& iterPos, char *directory);
|
||||
|
||||
IniFile GameIni;
|
||||
std::string GameIniFile;
|
||||
|
||||
void LoadGameConfig();
|
||||
bool SaveGameConfig();
|
||||
void PatchList_Load();
|
||||
void PatchList_Save();
|
||||
void ActionReplayList_Load();
|
||||
void ActionReplayList_Save();
|
||||
};
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __ISOPROPERTIES_h__
|
||||
#define __ISOPROPERTIES_h__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/imaglist.h>
|
||||
#include <wx/treectrl.h>
|
||||
#include <wx/gbsizer.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/mimetype.h>
|
||||
#include <string>
|
||||
|
||||
#include "Filesystem.h"
|
||||
#include "IniFile.h"
|
||||
#include "PatchEngine.h"
|
||||
|
||||
#undef ISOPROPERTIES_STYLE
|
||||
#define ISOPROPERTIES_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX
|
||||
|
||||
class CISOProperties : public wxDialog
|
||||
{
|
||||
public:
|
||||
|
||||
CISOProperties(const std::string fileName, wxWindow* parent, wxWindowID id = 1, const wxString& title = wxT("Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = ISOPROPERTIES_STYLE);
|
||||
virtual ~CISOProperties();
|
||||
|
||||
bool bRefreshList;
|
||||
|
||||
private:
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxStaticBoxSizer *sbCoreOverrides;
|
||||
wxBoxSizer *sCoreOverrides;
|
||||
wxBoxSizer *sEmuState;
|
||||
wxStaticBoxSizer *sbPatches;
|
||||
wxBoxSizer *sPatches;
|
||||
wxBoxSizer *sPatchButtons;
|
||||
wxStaticBoxSizer *sbCheats;
|
||||
wxBoxSizer *sCheats;
|
||||
wxBoxSizer *sCheatButtons;
|
||||
wxStaticBoxSizer *sbISODetails;
|
||||
wxGridBagSizer *sISODetails;
|
||||
wxStaticBoxSizer *sbBannerDetails;
|
||||
wxGridBagSizer *sBannerDetails;
|
||||
wxStaticBoxSizer *sbTreectrl;
|
||||
|
||||
wxButton *m_Close;
|
||||
|
||||
wxNotebook *m_Notebook;
|
||||
wxPanel *m_GameConfig;
|
||||
wxNotebook *m_GameConfig_Notebook;
|
||||
wxPanel *m_PatchPage;
|
||||
wxPanel *m_CheatPage;
|
||||
wxPanel *m_Information;
|
||||
wxPanel *m_Filesystem;
|
||||
|
||||
wxStaticText *OverrideText;
|
||||
wxCheckBox *UseDualCore;
|
||||
wxCheckBox *SkipIdle;
|
||||
wxCheckBox *OptimizeQuantizers;
|
||||
wxCheckBox *EnableProgressiveScan, *EnableWideScreen; // Wii
|
||||
|
||||
wxButton *EditConfig;
|
||||
wxStaticText *EmuStateText;
|
||||
wxArrayString arrayStringFor_EmuState;
|
||||
wxChoice *EmuState;
|
||||
wxArrayString arrayStringFor_Patches;
|
||||
wxCheckListBox *Patches;
|
||||
wxButton *EditPatch;
|
||||
wxButton *AddPatch;
|
||||
wxButton *RemovePatch;
|
||||
wxArrayString arrayStringFor_Cheats;
|
||||
wxCheckListBox *Cheats;
|
||||
wxButton *EditCheat;
|
||||
wxButton *AddCheat;
|
||||
wxButton *RemoveCheat;
|
||||
wxArrayString arrayStringFor_Speedhacks;
|
||||
wxCheckListBox *Speedhacks;
|
||||
wxButton *EditSpeedhack;
|
||||
wxButton *AddSpeedhack;
|
||||
wxButton *RemoveSpeedhack;
|
||||
|
||||
wxStaticText *m_NameText;
|
||||
wxStaticText *m_GameIDText;
|
||||
wxStaticText *m_CountryText;
|
||||
wxStaticText *m_MakerIDText;
|
||||
wxStaticText *m_DateText;
|
||||
wxStaticText *m_FSTText;
|
||||
wxStaticText *m_VersionText;
|
||||
wxStaticText *m_LangText;
|
||||
wxStaticText *m_ShortText;
|
||||
wxStaticText *m_LongText;
|
||||
wxStaticText *m_MakerText;
|
||||
wxStaticText *m_CommentText;
|
||||
wxStaticText *m_BannerText;
|
||||
wxTextCtrl *m_Name;
|
||||
wxTextCtrl *m_GameID;
|
||||
wxTextCtrl *m_Country;
|
||||
wxTextCtrl *m_MakerID;
|
||||
wxTextCtrl *m_Date;
|
||||
wxTextCtrl *m_FST;
|
||||
wxTextCtrl *m_Version;
|
||||
wxArrayString arrayStringFor_Lang;
|
||||
wxChoice *m_Lang;
|
||||
wxTextCtrl *m_ShortName;
|
||||
wxTextCtrl *m_LongName;
|
||||
wxTextCtrl *m_Maker;
|
||||
wxTextCtrl *m_Comment;
|
||||
wxStaticBitmap *m_Banner;
|
||||
|
||||
wxTreeCtrl *m_Treectrl;
|
||||
wxTreeItemId RootId;
|
||||
|
||||
enum
|
||||
{
|
||||
ID_CLOSE = 1000,
|
||||
ID_TREECTRL,
|
||||
|
||||
ID_NOTEBOOK,
|
||||
ID_GAMECONFIG,
|
||||
ID_GAMECONFIG_NOTEBOOK,
|
||||
ID_PATCH_PAGE,
|
||||
ID_ARCODE_PAGE,
|
||||
ID_SPEEDHACK_PAGE,
|
||||
ID_INFORMATION,
|
||||
ID_FILESYSTEM,
|
||||
|
||||
ID_OVERRIDE_TEXT,
|
||||
ID_USEDUALCORE,
|
||||
ID_IDLESKIP,
|
||||
ID_ENABLEPROGRESSIVESCAN,
|
||||
ID_ENABLEWIDESCREEN,
|
||||
ID_OPTIMIZEQUANTIZERS,
|
||||
ID_EDITCONFIG,
|
||||
ID_EMUSTATE_TEXT,
|
||||
ID_EMUSTATE,
|
||||
ID_PATCHES_LIST,
|
||||
ID_EDITPATCH,
|
||||
ID_ADDPATCH,
|
||||
ID_REMOVEPATCH,
|
||||
ID_CHEATS_LIST,
|
||||
ID_EDITCHEAT,
|
||||
ID_ADDCHEAT,
|
||||
ID_REMOVECHEAT,
|
||||
|
||||
ID_NAME_TEXT,
|
||||
ID_GAMEID_TEXT,
|
||||
ID_COUNTRY_TEXT,
|
||||
ID_MAKERID_TEXT,
|
||||
ID_DATE_TEXT,
|
||||
ID_FST_TEXT,
|
||||
ID_VERSION_TEXT,
|
||||
ID_LANG_TEXT,
|
||||
ID_SHORTNAME_TEXT,
|
||||
ID_LONGNAME_TEXT,
|
||||
ID_MAKER_TEXT,
|
||||
ID_COMMENT_TEXT,
|
||||
ID_BANNER_TEXT,
|
||||
|
||||
ID_NAME,
|
||||
ID_GAMEID,
|
||||
ID_COUNTRY,
|
||||
ID_MAKERID,
|
||||
ID_DATE,
|
||||
ID_FST,
|
||||
ID_VERSION,
|
||||
ID_LANG,
|
||||
ID_SHORTNAME,
|
||||
ID_LONGNAME,
|
||||
ID_MAKER,
|
||||
ID_COMMENT,
|
||||
ID_BANNER,
|
||||
IDM_EXTRACTDIR,
|
||||
IDM_EXTRACTFILE,
|
||||
IDM_BNRSAVEAS
|
||||
};
|
||||
|
||||
void CreateGUIControls();
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void OnCloseClick(wxCommandEvent& event);
|
||||
void OnEditConfig(wxCommandEvent& event);
|
||||
void ListSelectionChanged(wxCommandEvent& event);
|
||||
void PatchButtonClicked(wxCommandEvent& event);
|
||||
void ActionReplayButtonClicked(wxCommandEvent& event);
|
||||
void RightClickOnBanner(wxMouseEvent& event);
|
||||
void OnBannerImageSave(wxCommandEvent& event);
|
||||
void OnRightClickOnTree(wxTreeEvent& event);
|
||||
void OnExtractFile(wxCommandEvent& event);
|
||||
void OnExtractDir(wxCommandEvent& event);
|
||||
void SetRefresh(wxCommandEvent& event);
|
||||
|
||||
std::vector<const DiscIO::SFileInfo *> Our_Files;
|
||||
typedef std::vector<const DiscIO::SFileInfo *>::iterator fileIter;
|
||||
|
||||
void CreateDirectoryTree(wxTreeItemId& parent,fileIter& begin,
|
||||
fileIter& end,
|
||||
fileIter& iterPos, char *directory);
|
||||
|
||||
IniFile GameIni;
|
||||
std::string GameIniFile;
|
||||
|
||||
void LoadGameConfig();
|
||||
bool SaveGameConfig();
|
||||
void PatchList_Load();
|
||||
void PatchList_Save();
|
||||
void ActionReplayList_Load();
|
||||
void ActionReplayList_Save();
|
||||
};
|
||||
#endif
|
||||
|
@ -1,32 +1,32 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __MAIN_H_
|
||||
#define __MAIN_H_
|
||||
|
||||
// Define a new application
|
||||
class DolphinApp
|
||||
: public wxApp
|
||||
{
|
||||
public:
|
||||
|
||||
bool OnInit();
|
||||
void OnEndSession();
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __MAIN_H_
|
||||
#define __MAIN_H_
|
||||
|
||||
// Define a new application
|
||||
class DolphinApp
|
||||
: public wxApp
|
||||
{
|
||||
public:
|
||||
|
||||
bool OnInit();
|
||||
void OnEndSession();
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
@ -1,122 +1,122 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __MEMCARD_MANAGER_h__
|
||||
#define __MEMCARD_MANAGER_h__
|
||||
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/listctrl.h>
|
||||
#include <wx/imaglist.h>
|
||||
|
||||
#include "MemoryCards/GCMemcard.h"
|
||||
#undef MEMCARD_MANAGER_STYLE
|
||||
#define MEMCARD_MANAGER_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX | wxRESIZE_BORDER | wxMAXIMIZE_BOX
|
||||
#define ITEMSPERPAGE 16
|
||||
#define MAXPAGES (128 / ITEMSPERPAGE) - 1
|
||||
|
||||
class CMemcardManager
|
||||
: public wxDialog
|
||||
{
|
||||
public:
|
||||
|
||||
CMemcardManager(wxWindow *parent, wxWindowID id = 1, const wxString& title = wxT("Memory Card Manager WARNING-Make backups before using, should be fixed but could mangle stuff!"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = MEMCARD_MANAGER_STYLE);
|
||||
virtual ~CMemcardManager();
|
||||
|
||||
private:
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
int page0,
|
||||
page1;
|
||||
|
||||
wxBoxSizer *sMain;
|
||||
wxBoxSizer *sPagesLeft;
|
||||
wxBoxSizer *sPagesRight;
|
||||
wxStaticText *t_StatusLeft;
|
||||
wxStaticText *t_StatusRight;
|
||||
wxButton *m_CopyToLeft;
|
||||
wxButton *m_CopyToRight;
|
||||
wxButton *m_FixChecksumLeft;
|
||||
wxButton *m_FixChecksumRight;
|
||||
wxButton *m_SaveImportLeft;
|
||||
wxButton *m_SaveExportLeft;
|
||||
wxButton *m_SaveImportRight;
|
||||
wxButton *m_SaveExportRight;
|
||||
wxButton *m_ConvertToGci;
|
||||
wxButton *m_DeleteLeft;
|
||||
wxButton *m_DeleteRight;
|
||||
wxButton *m_Memcard1PrevPage;
|
||||
wxButton *m_Memcard1NextPage;
|
||||
wxButton *m_Memcard2PrevPage;
|
||||
wxButton *m_Memcard2NextPage;
|
||||
wxStaticBoxSizer *sMemcard1;
|
||||
wxStaticBoxSizer *sMemcard2;
|
||||
wxFilePickerCtrl *m_Memcard1Path;
|
||||
wxFilePickerCtrl *m_Memcard2Path;
|
||||
|
||||
wxListCtrl *m_MemcardList[2];
|
||||
|
||||
enum
|
||||
{
|
||||
ID_COPYTORIGHT = 1000,
|
||||
ID_COPYTOLEFT,
|
||||
ID_FIXCHECKSUMRIGHT,
|
||||
ID_FIXCHECKSUMLEFT,
|
||||
ID_DELETERIGHT,
|
||||
ID_DELETELEFT,
|
||||
ID_MEMCARD1PATH,
|
||||
ID_MEMCARD2PATH,
|
||||
ID_MEMCARD1NEXTPAGE,
|
||||
ID_MEMCARD1PREVPAGE,
|
||||
ID_MEMCARD2NEXTPAGE,
|
||||
ID_MEMCARD2PREVPAGE,
|
||||
ID_SAVEEXPORTRIGHT,
|
||||
ID_SAVEEXPORTLEFT,
|
||||
ID_SAVEIMPORTRIGHT,
|
||||
ID_SAVEIMPORTLEFT,
|
||||
ID_CONVERTTOGCI,
|
||||
ID_MEMCARD1LIST,
|
||||
ID_MEMCARD2LIST,
|
||||
ID_DUMMY_VALUE_ //don't remove this value unless you have other enum values
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
COLUMN_BANNER = 0,
|
||||
COLUMN_TITLE,
|
||||
COLUMN_COMMENT,
|
||||
COLUMN_ICON,
|
||||
COLUMN_BLOCKS,
|
||||
COLUMN_FIRSTBLOCK,
|
||||
NUMBER_OF_COLUMN
|
||||
};
|
||||
|
||||
GCMemcard *memoryCard[2];
|
||||
|
||||
void CreateGUIControls();
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CopyDeleteClick(wxCommandEvent& event);
|
||||
bool ReloadMemcard(const char *fileName, int card, int page);
|
||||
void OnPageChange(wxCommandEvent& event);
|
||||
void OnPathChange(wxFileDirPickerEvent& event);
|
||||
bool ReadError(GCMemcard *memcard);
|
||||
};
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __MEMCARD_MANAGER_h__
|
||||
#define __MEMCARD_MANAGER_h__
|
||||
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/filepicker.h>
|
||||
#include <wx/statbmp.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/listctrl.h>
|
||||
#include <wx/imaglist.h>
|
||||
|
||||
#include "MemoryCards/GCMemcard.h"
|
||||
#undef MEMCARD_MANAGER_STYLE
|
||||
#define MEMCARD_MANAGER_STYLE wxCAPTION | wxSYSTEM_MENU | wxDIALOG_NO_PARENT | wxCLOSE_BOX | wxRESIZE_BORDER | wxMAXIMIZE_BOX
|
||||
#define ITEMSPERPAGE 16
|
||||
#define MAXPAGES (128 / ITEMSPERPAGE) - 1
|
||||
|
||||
class CMemcardManager
|
||||
: public wxDialog
|
||||
{
|
||||
public:
|
||||
|
||||
CMemcardManager(wxWindow *parent, wxWindowID id = 1, const wxString& title = wxT("Memory Card Manager WARNING-Make backups before using, should be fixed but could mangle stuff!"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = MEMCARD_MANAGER_STYLE);
|
||||
virtual ~CMemcardManager();
|
||||
|
||||
private:
|
||||
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
int page0,
|
||||
page1;
|
||||
|
||||
wxBoxSizer *sMain;
|
||||
wxBoxSizer *sPagesLeft;
|
||||
wxBoxSizer *sPagesRight;
|
||||
wxStaticText *t_StatusLeft;
|
||||
wxStaticText *t_StatusRight;
|
||||
wxButton *m_CopyToLeft;
|
||||
wxButton *m_CopyToRight;
|
||||
wxButton *m_FixChecksumLeft;
|
||||
wxButton *m_FixChecksumRight;
|
||||
wxButton *m_SaveImportLeft;
|
||||
wxButton *m_SaveExportLeft;
|
||||
wxButton *m_SaveImportRight;
|
||||
wxButton *m_SaveExportRight;
|
||||
wxButton *m_ConvertToGci;
|
||||
wxButton *m_DeleteLeft;
|
||||
wxButton *m_DeleteRight;
|
||||
wxButton *m_Memcard1PrevPage;
|
||||
wxButton *m_Memcard1NextPage;
|
||||
wxButton *m_Memcard2PrevPage;
|
||||
wxButton *m_Memcard2NextPage;
|
||||
wxStaticBoxSizer *sMemcard1;
|
||||
wxStaticBoxSizer *sMemcard2;
|
||||
wxFilePickerCtrl *m_Memcard1Path;
|
||||
wxFilePickerCtrl *m_Memcard2Path;
|
||||
|
||||
wxListCtrl *m_MemcardList[2];
|
||||
|
||||
enum
|
||||
{
|
||||
ID_COPYTORIGHT = 1000,
|
||||
ID_COPYTOLEFT,
|
||||
ID_FIXCHECKSUMRIGHT,
|
||||
ID_FIXCHECKSUMLEFT,
|
||||
ID_DELETERIGHT,
|
||||
ID_DELETELEFT,
|
||||
ID_MEMCARD1PATH,
|
||||
ID_MEMCARD2PATH,
|
||||
ID_MEMCARD1NEXTPAGE,
|
||||
ID_MEMCARD1PREVPAGE,
|
||||
ID_MEMCARD2NEXTPAGE,
|
||||
ID_MEMCARD2PREVPAGE,
|
||||
ID_SAVEEXPORTRIGHT,
|
||||
ID_SAVEEXPORTLEFT,
|
||||
ID_SAVEIMPORTRIGHT,
|
||||
ID_SAVEIMPORTLEFT,
|
||||
ID_CONVERTTOGCI,
|
||||
ID_MEMCARD1LIST,
|
||||
ID_MEMCARD2LIST,
|
||||
ID_DUMMY_VALUE_ //don't remove this value unless you have other enum values
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
COLUMN_BANNER = 0,
|
||||
COLUMN_TITLE,
|
||||
COLUMN_COMMENT,
|
||||
COLUMN_ICON,
|
||||
COLUMN_BLOCKS,
|
||||
COLUMN_FIRSTBLOCK,
|
||||
NUMBER_OF_COLUMN
|
||||
};
|
||||
|
||||
GCMemcard *memoryCard[2];
|
||||
|
||||
void CreateGUIControls();
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void CopyDeleteClick(wxCommandEvent& event);
|
||||
bool ReloadMemcard(const char *fileName, int card, int page);
|
||||
void OnPageChange(wxCommandEvent& event);
|
||||
void OnPathChange(wxFileDirPickerEvent& event);
|
||||
bool ReadError(GCMemcard *memcard);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,218 +1,218 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "Common.h"
|
||||
#include "StringUtil.h"
|
||||
|
||||
enum
|
||||
{
|
||||
LENGTHFAIL = -4,
|
||||
GCSFAIL,
|
||||
SAVFAIL,
|
||||
OPENFAIL,
|
||||
GCI,
|
||||
HDR_READ_ERROR,
|
||||
DIR_READ_ERROR,
|
||||
DIR_BAK_READ_ERROR,
|
||||
BAT_READ_ERROR,
|
||||
BAT_BAK_READ_ERROR,
|
||||
HDR_CSUM_FAIL,
|
||||
DIR_CSUM_FAIL,
|
||||
BAT_CSUM_FAIL,
|
||||
DATA_READ_FAIL,
|
||||
HDR_SIZE_FFFF,
|
||||
NOTRAWORGCP,
|
||||
SAV = 0x80,
|
||||
GCS = 0x110,
|
||||
OUTOFBLOCKS,
|
||||
OUTOFDIRENTRIES,
|
||||
NOMEMCARD,
|
||||
NOFILE,
|
||||
TITLEPRESENT,
|
||||
SUCCESS = 0x2000,
|
||||
FAIL,
|
||||
MAXBLOCK = 0x2049
|
||||
};
|
||||
|
||||
class GCMemcard
|
||||
{
|
||||
private:
|
||||
void* mcdFile;
|
||||
|
||||
u32 mc_data_size;
|
||||
u8* mc_data;
|
||||
|
||||
void calc_checksumsBE(u16 *buf, u32 num, u16 *c1, u16 *c2);
|
||||
|
||||
#pragma pack(push,1)
|
||||
struct OSTime {
|
||||
u32 low;
|
||||
u32 high;
|
||||
};
|
||||
|
||||
struct Header { //Offset Size Description
|
||||
u8 Unk1[12]; //0x0000 12 ?
|
||||
OSTime fmtTime; //0x000c 8 time of format (OSTime value)
|
||||
u8 SramBias[4]; //0x0014 4 sram bias at time of format
|
||||
u8 Unk2[8]; //0x0018 8 ? almost always 0 or 1
|
||||
u8 Pad1[2]; //0x0020 2 padding zeroes
|
||||
u8 Size[2]; //0x0022 2 size of memcard in Mbits
|
||||
u8 Encoding[2]; //0x0024 2 encoding (ASCII or japanese)
|
||||
u8 Unused1[468]; //0x0026 468 unused (0xff)
|
||||
u8 UpdateCounter[2];//0x01fa 2 update Counter (?, probably unused)
|
||||
u8 CheckSum1[2]; //0x01fc 2 Checksum 1 (?)
|
||||
u8 CheckSum2[2]; //0x01fe 2 Checksum 2 (?)
|
||||
u8 Unused2[7680]; //0x0200 0x1e00 unused (0xff)
|
||||
} hdr;
|
||||
|
||||
struct DEntry {
|
||||
u8 Gamecode[4]; //0x00 0x04 Gamecode
|
||||
u8 Markercode[2]; //0x04 0x02 Makercode
|
||||
u8 Unused1; //0x06 0x01 reserved/unused (always 0xff, has no effect)
|
||||
u8 BIFlags; //0x07 0x01 banner gfx format and icon animation (Image Key)
|
||||
// bit(s) description
|
||||
// 2 Icon Animation 0: forward 1: ping-pong
|
||||
// 1 [--0: No Banner 1: Banner present--] WRONG! YAGCD LIES!
|
||||
// 0 [--Banner Color 0: RGB5A3 1: CI8--] WRONG! YAGCD LIES!
|
||||
// bits 0 and 1: image format
|
||||
// 00 no banner
|
||||
// 01 CI8 banner
|
||||
// 01 RGB5A3 banner
|
||||
// 11 ? maybe ==01? haven't seen it
|
||||
//
|
||||
u8 Filename[32]; //0x08 0x20 filename
|
||||
u8 ModTime[4]; //0x28 0x04 Time of file's last modification in seconds since 12am, January 1st, 2000
|
||||
u8 ImageOffset[4]; //0x2c 0x04 image data offset
|
||||
u8 IconFmt[2]; //0x30 0x02 icon gfx format (2bits per icon)
|
||||
// bits Description
|
||||
// 00 no icon
|
||||
// 01 CI8 with a shared color palette after the last frame
|
||||
// 10 RGB5A3
|
||||
// 11 CI8 with a unique color palette after itself
|
||||
//
|
||||
u8 AnimSpeed[2]; //0x32 0x02 animation speed (2bits per icon) (*1)
|
||||
// bits Description
|
||||
// 00 no icon
|
||||
// 01 Icon lasts for 4 frames
|
||||
// 10 Icon lasts for 8 frames
|
||||
// 11 Icon lasts for 12 frames
|
||||
//
|
||||
u8 Permissions; //0x34 0x01 file-permissions
|
||||
// bit permission Description
|
||||
// 4 no move File cannot be moved by the IPL
|
||||
// 3 no copy File cannot be copied by the IPL
|
||||
// 2 public Can be read by any game
|
||||
//
|
||||
u8 CopyCounter; //0x35 0x01 copy counter (*2)
|
||||
u8 FirstBlock[2]; //0x36 0x02 block no of first block of file (0 == offset 0)
|
||||
u8 BlockCount[2]; //0x38 0x02 file-length (number of blocks in file)
|
||||
u8 Unused2[2]; //0x3a 0x02 reserved/unused (always 0xffff, has no effect)
|
||||
u8 CommentsAddr[4]; //0x3c 0x04 Address of the two comments within the file data (*3)
|
||||
};
|
||||
|
||||
struct Directory {
|
||||
DEntry Dir[127]; //0x0000 Directory Entries (max 127)
|
||||
u8 Padding[0x3a];
|
||||
u8 UpdateCounter[2];//0x1ffa 2 update Counter
|
||||
u8 CheckSum1[2]; //0x1ffc 2 Checksum 1
|
||||
u8 CheckSum2[2]; //0x1ffe 2 Checksum 2
|
||||
} dir, dir_backup;
|
||||
|
||||
struct BlockAlloc {
|
||||
u8 CheckSum1[2]; //0x0000 2 Checksum 1
|
||||
u8 CheckSum2[2]; //0x0002 2 Checksum 2
|
||||
u8 UpdateCounter[2];//0x0004 2 update Counter
|
||||
u8 FreeBlocks[2]; //0x0006 2 free Blocks
|
||||
u8 LastAllocated[2];//0x0008 2 last allocated Block
|
||||
u16 Map[0xFFB]; //0x000a 0x1ff8 Map of allocated Blocks
|
||||
} bat,bat_backup;
|
||||
#pragma pack(pop)
|
||||
|
||||
public:
|
||||
bool fail[12];
|
||||
|
||||
// constructor
|
||||
GCMemcard(const char* fileName);
|
||||
|
||||
// destructor
|
||||
~GCMemcard();
|
||||
|
||||
bool IsOpen();
|
||||
|
||||
u32 TestChecksums();
|
||||
bool FixChecksums();
|
||||
|
||||
// get number of file entries in the directory
|
||||
u32 GetNumFiles();
|
||||
|
||||
// Returns true if title already on memcard
|
||||
bool TitlePresent(DEntry d);
|
||||
|
||||
// read directory entry
|
||||
bool GetFileInfo(u32 index, DEntry& data);
|
||||
|
||||
// buffer needs to be a char[32] or bigger
|
||||
bool GetFileName(u32 index, char* buffer);
|
||||
|
||||
// get file length in blocks
|
||||
u16 GetFileSize(u32 index);
|
||||
|
||||
// get first block for file
|
||||
u16 GetFirstBlock(u32 index);
|
||||
|
||||
// get the free blocks from bat
|
||||
u16 GetFreeBlocks(void);
|
||||
|
||||
// buffer needs to be a char[32] or bigger
|
||||
bool GetComment1(u32 index, char* buffer);
|
||||
|
||||
// buffer needs to be a char[32] or bigger
|
||||
bool GetComment2(u32 index, char* buffer);
|
||||
|
||||
// assumes there's enough space in buffer
|
||||
// old determines if function uses old or new method of copying data
|
||||
// some functions only work with old way, some only work with new way
|
||||
// TODO: find a function that works for all calls or split into 2 functions
|
||||
u32 GetFileData(u32 index, u8* buffer, bool old);
|
||||
|
||||
// delete a file from the directory
|
||||
u32 RemoveFile(u32 index);
|
||||
|
||||
// adds the file to the directory and copies its contents
|
||||
// if remove > 0 it will pad bat.map with 0's sifeof remove
|
||||
u32 ImportFile(DEntry& direntry, u8* contents, int remove);
|
||||
|
||||
// reads a save from another memcard, and imports the data into this memcard
|
||||
u32 CopyFrom(GCMemcard& source, u32 index);
|
||||
|
||||
// writes a .gci file to disk containing index
|
||||
u32 ExportGci(u32 index, const char* fileName);
|
||||
|
||||
// reads a .gci/.gcs/.sav file and calls ImportFile or saves out a gci file
|
||||
s32 ImportGci(const char* fileName, std::string fileName2);
|
||||
|
||||
// reads the banner image
|
||||
bool ReadBannerRGBA8(u32 index, u32* buffer);
|
||||
|
||||
// reads the animation frames
|
||||
u32 ReadAnimRGBA8(u32 index, u32* buffer, u8 *delays);
|
||||
|
||||
bool Save();
|
||||
|
||||
};
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "Common.h"
|
||||
#include "StringUtil.h"
|
||||
|
||||
enum
|
||||
{
|
||||
LENGTHFAIL = -4,
|
||||
GCSFAIL,
|
||||
SAVFAIL,
|
||||
OPENFAIL,
|
||||
GCI,
|
||||
HDR_READ_ERROR,
|
||||
DIR_READ_ERROR,
|
||||
DIR_BAK_READ_ERROR,
|
||||
BAT_READ_ERROR,
|
||||
BAT_BAK_READ_ERROR,
|
||||
HDR_CSUM_FAIL,
|
||||
DIR_CSUM_FAIL,
|
||||
BAT_CSUM_FAIL,
|
||||
DATA_READ_FAIL,
|
||||
HDR_SIZE_FFFF,
|
||||
NOTRAWORGCP,
|
||||
SAV = 0x80,
|
||||
GCS = 0x110,
|
||||
OUTOFBLOCKS,
|
||||
OUTOFDIRENTRIES,
|
||||
NOMEMCARD,
|
||||
NOFILE,
|
||||
TITLEPRESENT,
|
||||
SUCCESS = 0x2000,
|
||||
FAIL,
|
||||
MAXBLOCK = 0x2049
|
||||
};
|
||||
|
||||
class GCMemcard
|
||||
{
|
||||
private:
|
||||
void* mcdFile;
|
||||
|
||||
u32 mc_data_size;
|
||||
u8* mc_data;
|
||||
|
||||
void calc_checksumsBE(u16 *buf, u32 num, u16 *c1, u16 *c2);
|
||||
|
||||
#pragma pack(push,1)
|
||||
struct OSTime {
|
||||
u32 low;
|
||||
u32 high;
|
||||
};
|
||||
|
||||
struct Header { //Offset Size Description
|
||||
u8 Unk1[12]; //0x0000 12 ?
|
||||
OSTime fmtTime; //0x000c 8 time of format (OSTime value)
|
||||
u8 SramBias[4]; //0x0014 4 sram bias at time of format
|
||||
u8 Unk2[8]; //0x0018 8 ? almost always 0 or 1
|
||||
u8 Pad1[2]; //0x0020 2 padding zeroes
|
||||
u8 Size[2]; //0x0022 2 size of memcard in Mbits
|
||||
u8 Encoding[2]; //0x0024 2 encoding (ASCII or japanese)
|
||||
u8 Unused1[468]; //0x0026 468 unused (0xff)
|
||||
u8 UpdateCounter[2];//0x01fa 2 update Counter (?, probably unused)
|
||||
u8 CheckSum1[2]; //0x01fc 2 Checksum 1 (?)
|
||||
u8 CheckSum2[2]; //0x01fe 2 Checksum 2 (?)
|
||||
u8 Unused2[7680]; //0x0200 0x1e00 unused (0xff)
|
||||
} hdr;
|
||||
|
||||
struct DEntry {
|
||||
u8 Gamecode[4]; //0x00 0x04 Gamecode
|
||||
u8 Markercode[2]; //0x04 0x02 Makercode
|
||||
u8 Unused1; //0x06 0x01 reserved/unused (always 0xff, has no effect)
|
||||
u8 BIFlags; //0x07 0x01 banner gfx format and icon animation (Image Key)
|
||||
// bit(s) description
|
||||
// 2 Icon Animation 0: forward 1: ping-pong
|
||||
// 1 [--0: No Banner 1: Banner present--] WRONG! YAGCD LIES!
|
||||
// 0 [--Banner Color 0: RGB5A3 1: CI8--] WRONG! YAGCD LIES!
|
||||
// bits 0 and 1: image format
|
||||
// 00 no banner
|
||||
// 01 CI8 banner
|
||||
// 01 RGB5A3 banner
|
||||
// 11 ? maybe ==01? haven't seen it
|
||||
//
|
||||
u8 Filename[32]; //0x08 0x20 filename
|
||||
u8 ModTime[4]; //0x28 0x04 Time of file's last modification in seconds since 12am, January 1st, 2000
|
||||
u8 ImageOffset[4]; //0x2c 0x04 image data offset
|
||||
u8 IconFmt[2]; //0x30 0x02 icon gfx format (2bits per icon)
|
||||
// bits Description
|
||||
// 00 no icon
|
||||
// 01 CI8 with a shared color palette after the last frame
|
||||
// 10 RGB5A3
|
||||
// 11 CI8 with a unique color palette after itself
|
||||
//
|
||||
u8 AnimSpeed[2]; //0x32 0x02 animation speed (2bits per icon) (*1)
|
||||
// bits Description
|
||||
// 00 no icon
|
||||
// 01 Icon lasts for 4 frames
|
||||
// 10 Icon lasts for 8 frames
|
||||
// 11 Icon lasts for 12 frames
|
||||
//
|
||||
u8 Permissions; //0x34 0x01 file-permissions
|
||||
// bit permission Description
|
||||
// 4 no move File cannot be moved by the IPL
|
||||
// 3 no copy File cannot be copied by the IPL
|
||||
// 2 public Can be read by any game
|
||||
//
|
||||
u8 CopyCounter; //0x35 0x01 copy counter (*2)
|
||||
u8 FirstBlock[2]; //0x36 0x02 block no of first block of file (0 == offset 0)
|
||||
u8 BlockCount[2]; //0x38 0x02 file-length (number of blocks in file)
|
||||
u8 Unused2[2]; //0x3a 0x02 reserved/unused (always 0xffff, has no effect)
|
||||
u8 CommentsAddr[4]; //0x3c 0x04 Address of the two comments within the file data (*3)
|
||||
};
|
||||
|
||||
struct Directory {
|
||||
DEntry Dir[127]; //0x0000 Directory Entries (max 127)
|
||||
u8 Padding[0x3a];
|
||||
u8 UpdateCounter[2];//0x1ffa 2 update Counter
|
||||
u8 CheckSum1[2]; //0x1ffc 2 Checksum 1
|
||||
u8 CheckSum2[2]; //0x1ffe 2 Checksum 2
|
||||
} dir, dir_backup;
|
||||
|
||||
struct BlockAlloc {
|
||||
u8 CheckSum1[2]; //0x0000 2 Checksum 1
|
||||
u8 CheckSum2[2]; //0x0002 2 Checksum 2
|
||||
u8 UpdateCounter[2];//0x0004 2 update Counter
|
||||
u8 FreeBlocks[2]; //0x0006 2 free Blocks
|
||||
u8 LastAllocated[2];//0x0008 2 last allocated Block
|
||||
u16 Map[0xFFB]; //0x000a 0x1ff8 Map of allocated Blocks
|
||||
} bat,bat_backup;
|
||||
#pragma pack(pop)
|
||||
|
||||
public:
|
||||
bool fail[12];
|
||||
|
||||
// constructor
|
||||
GCMemcard(const char* fileName);
|
||||
|
||||
// destructor
|
||||
~GCMemcard();
|
||||
|
||||
bool IsOpen();
|
||||
|
||||
u32 TestChecksums();
|
||||
bool FixChecksums();
|
||||
|
||||
// get number of file entries in the directory
|
||||
u32 GetNumFiles();
|
||||
|
||||
// Returns true if title already on memcard
|
||||
bool TitlePresent(DEntry d);
|
||||
|
||||
// read directory entry
|
||||
bool GetFileInfo(u32 index, DEntry& data);
|
||||
|
||||
// buffer needs to be a char[32] or bigger
|
||||
bool GetFileName(u32 index, char* buffer);
|
||||
|
||||
// get file length in blocks
|
||||
u16 GetFileSize(u32 index);
|
||||
|
||||
// get first block for file
|
||||
u16 GetFirstBlock(u32 index);
|
||||
|
||||
// get the free blocks from bat
|
||||
u16 GetFreeBlocks(void);
|
||||
|
||||
// buffer needs to be a char[32] or bigger
|
||||
bool GetComment1(u32 index, char* buffer);
|
||||
|
||||
// buffer needs to be a char[32] or bigger
|
||||
bool GetComment2(u32 index, char* buffer);
|
||||
|
||||
// assumes there's enough space in buffer
|
||||
// old determines if function uses old or new method of copying data
|
||||
// some functions only work with old way, some only work with new way
|
||||
// TODO: find a function that works for all calls or split into 2 functions
|
||||
u32 GetFileData(u32 index, u8* buffer, bool old);
|
||||
|
||||
// delete a file from the directory
|
||||
u32 RemoveFile(u32 index);
|
||||
|
||||
// adds the file to the directory and copies its contents
|
||||
// if remove > 0 it will pad bat.map with 0's sifeof remove
|
||||
u32 ImportFile(DEntry& direntry, u8* contents, int remove);
|
||||
|
||||
// reads a save from another memcard, and imports the data into this memcard
|
||||
u32 CopyFrom(GCMemcard& source, u32 index);
|
||||
|
||||
// writes a .gci file to disk containing index
|
||||
u32 ExportGci(u32 index, const char* fileName);
|
||||
|
||||
// reads a .gci/.gcs/.sav file and calls ImportFile or saves out a gci file
|
||||
s32 ImportGci(const char* fileName, std::string fileName2);
|
||||
|
||||
// reads the banner image
|
||||
bool ReadBannerRGBA8(u32 index, u32* buffer);
|
||||
|
||||
// reads the animation frames
|
||||
u32 ReadAnimRGBA8(u32 index, u32* buffer, u8 *delays);
|
||||
|
||||
bool Save();
|
||||
|
||||
};
|
||||
|
@ -1,58 +1,58 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __PATCH_ADDEDIT_h__
|
||||
#define __PATCH_ADDEDIT_h__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/spinctrl.h>
|
||||
#include "ISOProperties.h"
|
||||
|
||||
class CPatchAddEdit : public wxDialog
|
||||
{
|
||||
public:
|
||||
CPatchAddEdit(int _selection, wxWindow* parent, wxWindowID id = 1, const wxString& title = wxT("Edit Patch"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(300, -1), long style = wxDEFAULT_DIALOG_STYLE);
|
||||
virtual ~CPatchAddEdit();
|
||||
|
||||
private:
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxTextCtrl *EditPatchName;
|
||||
wxTextCtrl *EditPatchOffset;
|
||||
wxRadioBox *EditPatchType;
|
||||
wxTextCtrl *EditPatchValue;
|
||||
wxSpinButton *EntrySelection;
|
||||
|
||||
enum {
|
||||
ID_EDITPATCH_NAME_TEXT = 4500,
|
||||
ID_EDITPATCH_NAME,
|
||||
ID_EDITPATCH_OFFSET_TEXT,
|
||||
ID_EDITPATCH_OFFSET,
|
||||
ID_ENTRY_SELECT,
|
||||
ID_EDITPATCH_TYPE,
|
||||
ID_EDITPATCH_VALUE_TEXT,
|
||||
ID_EDITPATCH_VALUE
|
||||
};
|
||||
|
||||
void CreateGUIControls(int selection);
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void ChangeEntry(wxSpinEvent& event);
|
||||
|
||||
int selection;
|
||||
|
||||
};
|
||||
#endif // __PATCH_ADDEDIT_h__
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __PATCH_ADDEDIT_h__
|
||||
#define __PATCH_ADDEDIT_h__
|
||||
|
||||
#include <wx/wx.h>
|
||||
#include <wx/spinctrl.h>
|
||||
#include "ISOProperties.h"
|
||||
|
||||
class CPatchAddEdit : public wxDialog
|
||||
{
|
||||
public:
|
||||
CPatchAddEdit(int _selection, wxWindow* parent, wxWindowID id = 1, const wxString& title = wxT("Edit Patch"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize(300, -1), long style = wxDEFAULT_DIALOG_STYLE);
|
||||
virtual ~CPatchAddEdit();
|
||||
|
||||
private:
|
||||
DECLARE_EVENT_TABLE();
|
||||
|
||||
wxTextCtrl *EditPatchName;
|
||||
wxTextCtrl *EditPatchOffset;
|
||||
wxRadioBox *EditPatchType;
|
||||
wxTextCtrl *EditPatchValue;
|
||||
wxSpinButton *EntrySelection;
|
||||
|
||||
enum {
|
||||
ID_EDITPATCH_NAME_TEXT = 4500,
|
||||
ID_EDITPATCH_NAME,
|
||||
ID_EDITPATCH_OFFSET_TEXT,
|
||||
ID_EDITPATCH_OFFSET,
|
||||
ID_ENTRY_SELECT,
|
||||
ID_EDITPATCH_TYPE,
|
||||
ID_EDITPATCH_VALUE_TEXT,
|
||||
ID_EDITPATCH_VALUE
|
||||
};
|
||||
|
||||
void CreateGUIControls(int selection);
|
||||
void OnClose(wxCloseEvent& event);
|
||||
void ChangeEntry(wxSpinEvent& event);
|
||||
|
||||
int selection;
|
||||
|
||||
};
|
||||
#endif // __PATCH_ADDEDIT_h__
|
||||
|
@ -1,59 +1,59 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __PLUGIN_MANAGER_H_
|
||||
#define __PLUGIN_MANAGER_H_
|
||||
|
||||
#include "Plugin.h"
|
||||
|
||||
class CPluginInfo
|
||||
{
|
||||
public:
|
||||
CPluginInfo(const char *_rFileName);
|
||||
bool IsValid() const {return(m_Valid);}
|
||||
const PLUGIN_INFO& GetPluginInfo() const {return(m_PluginInfo);}
|
||||
const std::string& GetFileName() const {return(m_FileName);}
|
||||
|
||||
private:
|
||||
PLUGIN_INFO m_PluginInfo;
|
||||
std::string m_FileName;
|
||||
bool m_Valid;
|
||||
};
|
||||
|
||||
typedef std::vector<CPluginInfo>CPluginInfos;
|
||||
|
||||
class CPluginManager
|
||||
{
|
||||
public:
|
||||
static CPluginManager& GetInstance() {return(m_Instance);}
|
||||
void ScanForPlugins(wxWindow* _wxWindow);
|
||||
void OpenConfig(void* _Parent, const char *_rFilename);
|
||||
void OpenDebug(void* _Parent, const char *_rFilename, bool Type, bool Show);
|
||||
const CPluginInfos& GetPluginInfos() {return(m_PluginInfos);}
|
||||
|
||||
private:
|
||||
static CPluginManager m_Instance;
|
||||
bool m_Initialized;
|
||||
|
||||
CPluginInfos m_PluginInfos;
|
||||
|
||||
CPluginManager();
|
||||
~CPluginManager();
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __PLUGIN_MANAGER_H_
|
||||
#define __PLUGIN_MANAGER_H_
|
||||
|
||||
#include "Plugin.h"
|
||||
|
||||
class CPluginInfo
|
||||
{
|
||||
public:
|
||||
CPluginInfo(const char *_rFileName);
|
||||
bool IsValid() const {return(m_Valid);}
|
||||
const PLUGIN_INFO& GetPluginInfo() const {return(m_PluginInfo);}
|
||||
const std::string& GetFileName() const {return(m_FileName);}
|
||||
|
||||
private:
|
||||
PLUGIN_INFO m_PluginInfo;
|
||||
std::string m_FileName;
|
||||
bool m_Valid;
|
||||
};
|
||||
|
||||
typedef std::vector<CPluginInfo>CPluginInfos;
|
||||
|
||||
class CPluginManager
|
||||
{
|
||||
public:
|
||||
static CPluginManager& GetInstance() {return(m_Instance);}
|
||||
void ScanForPlugins(wxWindow* _wxWindow);
|
||||
void OpenConfig(void* _Parent, const char *_rFilename);
|
||||
void OpenDebug(void* _Parent, const char *_rFilename, bool Type, bool Show);
|
||||
const CPluginInfos& GetPluginInfos() {return(m_PluginInfos);}
|
||||
|
||||
private:
|
||||
static CPluginManager m_Instance;
|
||||
bool m_Initialized;
|
||||
|
||||
CPluginInfos m_PluginInfos;
|
||||
|
||||
CPluginManager();
|
||||
~CPluginManager();
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
@ -1,50 +1,50 @@
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __STDAFX_H_
|
||||
#define __STDAFX_H_
|
||||
|
||||
#ifdef _WIN32
|
||||
|
||||
// Change these values to use different versions
|
||||
#define WINVER 0x0400
|
||||
#define _WIN32_WINNT 0x0501
|
||||
#define _WIN32_IE 0x0500
|
||||
#define _RICHEDIT_VER 0x0100
|
||||
|
||||
|
||||
#if defined _M_IX86
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#elif defined _M_IA64
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#elif defined _M_X64
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#else
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
// Copyright (C) 2003-2008 Dolphin Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#ifndef __STDAFX_H_
|
||||
#define __STDAFX_H_
|
||||
|
||||
#ifdef _WIN32
|
||||
|
||||
// Change these values to use different versions
|
||||
#define WINVER 0x0400
|
||||
#define _WIN32_WINNT 0x0501
|
||||
#define _WIN32_IE 0x0500
|
||||
#define _RICHEDIT_VER 0x0100
|
||||
|
||||
|
||||
#if defined _M_IX86
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#elif defined _M_IA64
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#elif defined _M_X64
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#else
|
||||
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -1,16 +1,16 @@
|
||||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Visual C++ generated include file.
|
||||
// Used by DolphinWX.rc
|
||||
//
|
||||
#define IDI_ICON1 101
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 102
|
||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
||||
#define _APS_NEXT_CONTROL_VALUE 1001
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Visual C++ generated include file.
|
||||
// Used by DolphinWX.rc
|
||||
//
|
||||
#define IDI_ICON1 101
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 102
|
||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
||||
#define _APS_NEXT_CONTROL_VALUE 1001
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user