2009-07-28 21:32:10 +00:00
|
|
|
// Copyright (C) 2003 Dolphin Project.
|
2009-01-03 01:38:44 +00:00
|
|
|
|
|
|
|
// 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/
|
|
|
|
|
|
|
|
|
2008-12-08 04:46:09 +00:00
|
|
|
#ifndef __FRAME_H_
|
|
|
|
#define __FRAME_H_
|
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
#include <wx/wx.h> // wxWidgets
|
2008-12-08 04:46:09 +00:00
|
|
|
#include <wx/busyinfo.h>
|
2009-01-04 21:53:41 +00:00
|
|
|
#include <wx/mstream.h>
|
2009-03-20 18:25:36 +00:00
|
|
|
#include <wx/listctrl.h>
|
2009-08-26 09:19:15 +00:00
|
|
|
#include <wx/artprov.h>
|
2009-10-07 10:13:20 +00:00
|
|
|
#if defined(__APPLE__)
|
|
|
|
//id is an objective-c++ type, wx team need to change this
|
|
|
|
#define id toolid
|
|
|
|
#endif
|
2009-08-25 01:50:27 +00:00
|
|
|
#include <wx/aui/aui.h>
|
2010-02-16 08:46:21 +00:00
|
|
|
#include <string>
|
|
|
|
#include <vector>
|
2009-05-13 22:23:54 +00:00
|
|
|
|
2009-02-24 15:04:12 +00:00
|
|
|
#include "CDUtils.h"
|
2009-08-25 01:50:27 +00:00
|
|
|
#include "CodeWindow.h"
|
2009-08-31 23:09:50 +00:00
|
|
|
#include "LogWindow.h"
|
2009-05-13 22:23:54 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
// A shortcut to access the bitmaps
|
|
|
|
#define wxGetBitmapFromMemory(name) _wxGetBitmapFromMemory(name, sizeof(name))
|
|
|
|
inline wxBitmap _wxGetBitmapFromMemory(const unsigned char* data, int length)
|
|
|
|
{
|
|
|
|
wxMemoryInputStream is(data, length);
|
|
|
|
return(wxBitmap(wxImage(is, wxBITMAP_TYPE_ANY, -1), -1));
|
|
|
|
}
|
|
|
|
|
|
|
|
// Class declarations
|
2008-12-08 04:46:09 +00:00
|
|
|
class CGameListCtrl;
|
2009-08-31 23:09:50 +00:00
|
|
|
class CLogWindow;
|
2009-06-18 08:22:02 +00:00
|
|
|
|
2008-12-08 04:46:09 +00:00
|
|
|
class CFrame : public wxFrame
|
|
|
|
{
|
|
|
|
public:
|
2009-09-01 14:33:16 +00:00
|
|
|
CFrame(wxFrame* parent,
|
2009-08-31 23:09:50 +00:00
|
|
|
wxWindowID id = wxID_ANY,
|
2008-12-13 22:40:10 +00:00
|
|
|
const wxString& title = wxT("Dolphin"),
|
2009-12-28 19:34:19 +00:00
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
bool _UseDebugger = false,
|
|
|
|
bool ShowLogWindow = false,
|
|
|
|
long style = wxDEFAULT_FRAME_STYLE | wxNO_FULL_REPAINT_ON_RESIZE);
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
void* GetRenderHandle()
|
|
|
|
{
|
|
|
|
#ifdef _WIN32
|
|
|
|
return(m_Panel->GetHandle());
|
|
|
|
#else
|
|
|
|
return this;
|
|
|
|
#endif
|
|
|
|
}
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
virtual ~CFrame();
|
2008-12-09 05:37:15 +00:00
|
|
|
|
2009-09-01 20:09:15 +00:00
|
|
|
// These have to be public
|
2009-08-27 10:10:07 +00:00
|
|
|
CCodeWindow* g_pCodeWindow;
|
2009-09-03 05:24:30 +00:00
|
|
|
wxMenuBar* m_MenuBar;
|
2009-08-27 10:10:07 +00:00
|
|
|
wxBitmap aNormalFile;
|
2009-01-04 21:53:41 +00:00
|
|
|
void InitBitmaps();
|
2010-02-09 00:34:27 +00:00
|
|
|
void DoPause();
|
2009-01-04 21:53:41 +00:00
|
|
|
void DoStop();
|
|
|
|
bool bRenderToMain;
|
2010-01-04 03:11:31 +00:00
|
|
|
bool bNoWiimoteMsg;
|
2009-02-22 21:16:12 +00:00
|
|
|
void UpdateGUI();
|
2009-08-31 23:09:50 +00:00
|
|
|
void ToggleLogWindow(bool, int i = -1);
|
2009-08-27 15:53:19 +00:00
|
|
|
void ToggleConsole(bool, int i = -1);
|
2009-08-25 01:50:27 +00:00
|
|
|
void PostEvent(wxCommandEvent& event);
|
|
|
|
void PostMenuEvent(wxMenuEvent& event);
|
|
|
|
void PostUpdateUIEvent(wxUpdateUIEvent& event);
|
2009-09-08 21:16:05 +00:00
|
|
|
void StatusBarMessage(const char * Text, ...);
|
2009-09-03 07:59:24 +00:00
|
|
|
void ClearStatusBar();
|
2009-09-07 12:40:43 +00:00
|
|
|
void OnCustomHostMessage(int Id);
|
2010-01-22 21:41:25 +00:00
|
|
|
void StartGame(const std::string& filename);
|
2008-12-09 05:37:15 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
// ---------------------------------------
|
2008-12-09 05:37:15 +00:00
|
|
|
// Wiimote leds
|
2009-09-08 16:07:13 +00:00
|
|
|
// --------------------
|
2008-12-09 14:57:55 +00:00
|
|
|
void ModifyStatusBar();
|
2008-12-09 05:37:15 +00:00
|
|
|
void CreateDestroy(int Case);
|
|
|
|
void CreateLeds(); void CreateSpeakers();
|
|
|
|
void UpdateLeds(); void UpdateSpeakers();
|
|
|
|
wxBitmap CreateBitmapForLeds(bool On);
|
|
|
|
wxBitmap CreateBitmapForSpeakers(int BitmapType, bool On);
|
2008-12-12 03:38:50 +00:00
|
|
|
void DoMoveIcons(); void MoveLeds(); void MoveSpeakers();
|
2008-12-09 05:37:15 +00:00
|
|
|
bool HaveLeds; bool HaveSpeakers;
|
|
|
|
|
|
|
|
wxStaticBitmap *m_StatBmp[7];
|
|
|
|
u8 g_Leds[4]; u8 g_Leds_[4];
|
|
|
|
u8 g_Speakers[3]; u8 g_Speakers_[3];
|
2009-01-04 21:53:41 +00:00
|
|
|
// ---------------
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2009-08-25 07:05:53 +00:00
|
|
|
// AUI
|
|
|
|
wxAuiManager *m_Mgr;
|
2009-08-27 07:33:07 +00:00
|
|
|
wxAuiToolBar *m_ToolBar, *m_ToolBarDebug, *m_ToolBarAui;
|
2009-09-01 19:47:04 +00:00
|
|
|
long NOTEBOOK_STYLE, TOOLBAR_STYLE;
|
2009-08-27 07:33:07 +00:00
|
|
|
int iLeftWidth[2], iMidWidth[2];
|
2009-09-06 18:45:22 +00:00
|
|
|
bool bFloatLogWindow;
|
|
|
|
bool bFloatConsoleWindow;
|
2009-09-05 04:50:45 +00:00
|
|
|
|
|
|
|
// Utility
|
2009-08-27 19:38:35 +00:00
|
|
|
wxWindow * GetWxWindow(wxString);
|
|
|
|
#ifdef _WIN32
|
|
|
|
wxWindow * GetWxWindowHwnd(HWND);
|
|
|
|
#endif
|
2009-09-05 04:50:45 +00:00
|
|
|
wxWindow * GetFloatingPage(int Id);
|
2009-08-27 19:38:35 +00:00
|
|
|
wxWindow * GetNootebookPage(wxString);
|
2009-09-05 04:50:45 +00:00
|
|
|
wxWindow * GetNootebookPageFromId(wxWindowID Id);
|
|
|
|
wxAuiNotebook * GetNotebookFromId(u32);
|
2009-09-06 18:45:22 +00:00
|
|
|
wxWindowID WindowParentIdFromChildId(int Id);
|
2009-09-05 04:50:45 +00:00
|
|
|
wxString WindowNameFromId(int Id);
|
|
|
|
int GetNotebookCount();
|
|
|
|
int Limit(int,int,int);
|
|
|
|
int PercentageToPixels(int,int);
|
|
|
|
int PixelsToPercentage(int,int);
|
2009-09-07 12:40:43 +00:00
|
|
|
void ListChildren();
|
|
|
|
void ListTopWindows();
|
2009-09-05 04:50:45 +00:00
|
|
|
|
|
|
|
// Perspectives
|
2009-08-30 10:01:45 +00:00
|
|
|
void AddRemoveBlankPage();
|
2009-08-26 15:23:48 +00:00
|
|
|
void OnNotebookPageClose(wxAuiNotebookEvent& event);
|
|
|
|
void OnAllowNotebookDnD(wxAuiNotebookEvent& event);
|
2009-08-27 15:53:19 +00:00
|
|
|
void OnNotebookPageChanged(wxAuiNotebookEvent& event);
|
2009-09-05 04:50:45 +00:00
|
|
|
void OnFloatWindow(wxCommandEvent& event);
|
|
|
|
void OnTab(wxAuiNotebookEvent& event);
|
2009-08-27 15:53:19 +00:00
|
|
|
int GetNootebookAffiliation(wxString Name);
|
2009-08-31 05:56:30 +00:00
|
|
|
void ClosePages();
|
2009-08-27 10:10:07 +00:00
|
|
|
void DoToggleWindow(int,bool);
|
2009-09-01 12:44:02 +00:00
|
|
|
void ShowAllNotebooks(bool Window = false);
|
|
|
|
void HideAllNotebooks(bool Window = false);
|
2009-09-01 07:32:07 +00:00
|
|
|
void CloseAllNotebooks();
|
2009-09-06 18:45:22 +00:00
|
|
|
void DoAddPage(wxWindow *, int, wxString, bool);
|
2009-08-27 10:10:07 +00:00
|
|
|
void DoRemovePage(wxWindow *, bool Hide = true);
|
2009-09-06 18:45:22 +00:00
|
|
|
void DoRemovePageId(wxWindowID Id, bool Hide = true, bool Destroy = false);
|
2009-09-01 12:44:02 +00:00
|
|
|
void DoRemovePageString(wxString, bool Hide = true, bool Destroy = false);
|
2009-12-28 19:34:19 +00:00
|
|
|
void TogglePane();
|
2009-08-27 10:10:07 +00:00
|
|
|
void SetSimplePaneSize();
|
2009-08-31 05:56:30 +00:00
|
|
|
void SetPaneSize();
|
2009-09-01 19:47:04 +00:00
|
|
|
void ResetToolbarStyle();
|
2009-12-28 19:34:19 +00:00
|
|
|
void TogglePaneStyle(bool On, int EventId);
|
|
|
|
void ToggleNotebookStyle(bool On, long Style);
|
2009-08-29 06:08:14 +00:00
|
|
|
void ResizeConsole();
|
2009-09-06 18:45:22 +00:00
|
|
|
// Float window
|
|
|
|
void DoUnfloatPage(int Id);
|
|
|
|
void OnFloatingPageClosed(wxCloseEvent& event);
|
|
|
|
void OnFloatingPageSize(wxSizeEvent& event);
|
|
|
|
void DoFloatNotebookPage(wxWindowID Id);
|
|
|
|
wxFrame * CreateParentFrame(wxWindowID Id = wxID_ANY, const wxString& title = wxT(""), wxWindow * = NULL);
|
2009-09-08 19:54:31 +00:00
|
|
|
// User perspectives. Should find a way to make these private.
|
2009-08-30 19:44:42 +00:00
|
|
|
struct SPerspectives
|
|
|
|
{
|
|
|
|
std::string Name;
|
|
|
|
wxString Perspective;
|
|
|
|
std::vector<int> Width, Height;
|
|
|
|
};
|
|
|
|
std::vector<SPerspectives> Perspectives;
|
|
|
|
wxString AuiFullscreen, AuiCurrent;
|
|
|
|
wxArrayString AuiPerspective;
|
2009-09-02 07:59:06 +00:00
|
|
|
u32 ActivePerspective;
|
2009-08-30 19:44:42 +00:00
|
|
|
void NamePanes();
|
|
|
|
void AddPane();
|
|
|
|
void Save();
|
2009-09-01 07:32:07 +00:00
|
|
|
void SaveLocal();
|
2009-08-30 19:44:42 +00:00
|
|
|
void OnPaneClose(wxAuiManagerEvent& evt);
|
2009-08-31 05:56:30 +00:00
|
|
|
void ReloadPanes();
|
|
|
|
void DoLoadPerspective();
|
2009-09-01 19:47:04 +00:00
|
|
|
void OnDropDownToolbarSelect(wxCommandEvent& event);
|
|
|
|
void OnDropDownSettingsToolbar(wxAuiToolBarEvent& event);
|
2009-08-30 19:44:42 +00:00
|
|
|
void OnDropDownToolbarItem(wxAuiToolBarEvent& event);
|
|
|
|
void OnSelectPerspective(wxCommandEvent& event);
|
2009-08-25 07:05:53 +00:00
|
|
|
|
2009-08-27 10:10:07 +00:00
|
|
|
private:
|
2009-09-01 20:09:15 +00:00
|
|
|
wxStatusBar* m_pStatusBar;
|
2009-08-27 10:10:07 +00:00
|
|
|
wxBoxSizer* sizerPanel;
|
|
|
|
wxBoxSizer* sizerFrame;
|
|
|
|
CGameListCtrl* m_GameListCtrl;
|
|
|
|
wxPanel* m_Panel;
|
|
|
|
wxToolBarToolBase* m_ToolPlay;
|
2009-08-31 23:09:50 +00:00
|
|
|
CLogWindow* m_LogWindow;
|
2009-09-01 20:09:15 +00:00
|
|
|
bool UseDebugger;
|
|
|
|
bool m_bEdit;
|
|
|
|
bool m_bTabSplit;
|
2009-09-02 15:23:53 +00:00
|
|
|
bool m_bNoDocking;
|
2009-12-31 16:25:12 +00:00
|
|
|
bool m_bControlsCreated;
|
2010-01-24 03:17:42 +00:00
|
|
|
char newDiscpath[2048];
|
2010-01-20 07:47:41 +00:00
|
|
|
wxMessageDialog *m_StopDlg;
|
2009-08-27 10:10:07 +00:00
|
|
|
|
2010-02-16 08:46:21 +00:00
|
|
|
std::vector<std::string> drives;
|
2009-01-03 01:38:44 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
enum EToolbar
|
2008-12-08 04:46:09 +00:00
|
|
|
{
|
|
|
|
Toolbar_FileOpen,
|
|
|
|
Toolbar_Refresh,
|
|
|
|
Toolbar_Browse,
|
|
|
|
Toolbar_Play,
|
2009-01-03 19:30:59 +00:00
|
|
|
Toolbar_Stop,
|
2008-12-08 04:46:09 +00:00
|
|
|
Toolbar_Pause,
|
2009-02-27 03:56:34 +00:00
|
|
|
Toolbar_Screenshot,
|
2009-01-04 21:53:41 +00:00
|
|
|
Toolbar_FullScreen,
|
2008-12-08 04:46:09 +00:00
|
|
|
Toolbar_PluginOptions,
|
|
|
|
Toolbar_PluginGFX,
|
2009-01-03 19:30:59 +00:00
|
|
|
Toolbar_PluginDSP,
|
2008-12-08 04:46:09 +00:00
|
|
|
Toolbar_PluginPAD,
|
2009-01-04 21:53:41 +00:00
|
|
|
Toolbar_Wiimote,
|
2008-12-08 04:46:09 +00:00
|
|
|
Toolbar_Help,
|
2009-01-04 21:53:41 +00:00
|
|
|
EToolbar_Max
|
|
|
|
};
|
|
|
|
|
|
|
|
enum EBitmapsThemes
|
|
|
|
{
|
|
|
|
BOOMY,
|
|
|
|
VISTA,
|
|
|
|
XPLASTIK,
|
|
|
|
KDE,
|
|
|
|
THEMES_MAX
|
2008-12-09 05:37:15 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
enum WiimoteBitmaps // Wiimote speaker bitmaps
|
|
|
|
{
|
2009-01-04 21:53:41 +00:00
|
|
|
CREATELEDS,
|
2008-12-09 05:37:15 +00:00
|
|
|
DESTROYLEDS,
|
|
|
|
CREATESPEAKERS,
|
|
|
|
DESTROYSPEAKERS
|
2008-12-08 04:46:09 +00:00
|
|
|
};
|
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
wxBitmap m_Bitmaps[EToolbar_Max];
|
|
|
|
wxBitmap m_BitmapsMenu[EToolbar_Max];
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2009-08-25 01:50:27 +00:00
|
|
|
void PopulateToolbar(wxAuiToolBar* toolBar);
|
2009-08-27 07:33:07 +00:00
|
|
|
void PopulateToolbarAui(wxAuiToolBar* toolBar);
|
2008-12-08 04:46:09 +00:00
|
|
|
void RecreateToolbar();
|
|
|
|
void CreateMenu();
|
2009-09-05 04:50:45 +00:00
|
|
|
wxPanel *CreateEmptyPanel(wxWindowID Id = wxID_ANY);
|
2009-08-30 22:04:30 +00:00
|
|
|
wxAuiNotebook *CreateEmptyNotebook();
|
2008-12-08 04:46:09 +00:00
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
// Override window proc for tricks like screensaver disabling
|
|
|
|
WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
|
|
|
|
#endif
|
2008-12-23 08:47:37 +00:00
|
|
|
// Event functions
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnQuit(wxCommandEvent& event);
|
|
|
|
void OnHelp(wxCommandEvent& event);
|
2009-08-27 07:33:07 +00:00
|
|
|
void OnToolBar(wxCommandEvent& event);
|
2009-09-01 19:47:04 +00:00
|
|
|
void OnAuiToolBar(wxAuiToolBarEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
|
2009-06-18 08:22:02 +00:00
|
|
|
void OnOpen(wxCommandEvent& event); // File menu
|
|
|
|
void DoOpen(bool Boot);
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnRefresh(wxCommandEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
void OnBrowse(wxCommandEvent& event);
|
2009-02-21 23:44:40 +00:00
|
|
|
void OnBootDrive(wxCommandEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
|
|
|
|
void OnPlay(wxCommandEvent& event); // Emulation
|
2009-10-06 15:49:20 +00:00
|
|
|
void OnStop(wxCommandEvent& event);
|
|
|
|
void OnReset(wxCommandEvent& event);
|
2009-08-21 09:26:34 +00:00
|
|
|
void OnRecord(wxCommandEvent& event);
|
2009-08-21 19:55:03 +00:00
|
|
|
void OnPlayRecording(wxCommandEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
void OnChangeDisc(wxCommandEvent& event);
|
2009-02-27 03:56:34 +00:00
|
|
|
void OnScreenshot(wxCommandEvent& event);
|
2009-12-30 09:00:43 +00:00
|
|
|
void OnActive(wxActivateEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
void OnClose(wxCloseEvent &event);
|
|
|
|
void OnLoadState(wxCommandEvent& event);
|
|
|
|
void OnSaveState(wxCommandEvent& event);
|
2009-06-28 01:11:35 +00:00
|
|
|
void OnLoadStateFromFile(wxCommandEvent& event);
|
|
|
|
void OnSaveStateToFile(wxCommandEvent& event);
|
|
|
|
void OnLoadLastState(wxCommandEvent& event);
|
2009-06-28 21:11:51 +00:00
|
|
|
void OnUndoLoadState(wxCommandEvent& event);
|
|
|
|
void OnUndoSaveState(wxCommandEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
|
2009-08-08 01:39:56 +00:00
|
|
|
void OnFrameSkip(wxCommandEvent& event);
|
2009-08-22 02:05:02 +00:00
|
|
|
void OnFrameStep(wxCommandEvent& event);
|
2009-08-08 01:39:56 +00:00
|
|
|
|
2008-12-23 08:47:37 +00:00
|
|
|
void OnConfigMain(wxCommandEvent& event); // Options
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnPluginGFX(wxCommandEvent& event);
|
|
|
|
void OnPluginDSP(wxCommandEvent& event);
|
|
|
|
void OnPluginPAD(wxCommandEvent& event);
|
|
|
|
void OnPluginWiimote(wxCommandEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnToggleFullscreen(wxCommandEvent& event);
|
|
|
|
void OnToggleDualCore(wxCommandEvent& event);
|
|
|
|
void OnToggleSkipIdle(wxCommandEvent& event);
|
|
|
|
void OnToggleThrottle(wxCommandEvent& event);
|
2009-08-29 06:08:14 +00:00
|
|
|
void OnManagerResize(wxAuiManagerEvent& event);
|
2010-01-18 18:01:03 +00:00
|
|
|
void OnMove(wxMoveEvent& event);
|
2008-12-12 03:38:50 +00:00
|
|
|
void OnResize(wxSizeEvent& event);
|
2009-09-07 12:40:43 +00:00
|
|
|
void OnResizeAll(wxSizeEvent& event);
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnToggleToolbar(wxCommandEvent& event);
|
2009-08-27 07:33:07 +00:00
|
|
|
void DoToggleToolbar(bool);
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnToggleStatusbar(wxCommandEvent& event);
|
2009-08-31 23:09:50 +00:00
|
|
|
void OnToggleLogWindow(wxCommandEvent& event);
|
2009-03-20 18:25:36 +00:00
|
|
|
void OnToggleConsole(wxCommandEvent& event);
|
2009-06-18 08:22:02 +00:00
|
|
|
void OnKeyDown(wxKeyEvent& event);
|
|
|
|
void OnKeyUp(wxKeyEvent& event);
|
|
|
|
void OnDoubleClick(wxMouseEvent& event);
|
|
|
|
void OnMotion(wxMouseEvent& event);
|
2009-01-04 21:53:41 +00:00
|
|
|
|
2008-12-08 04:46:09 +00:00
|
|
|
void OnHostMessage(wxCommandEvent& event);
|
|
|
|
|
2008-12-23 08:47:37 +00:00
|
|
|
void OnMemcard(wxCommandEvent& event); // Misc
|
2010-01-05 07:34:03 +00:00
|
|
|
void OnImportSave(wxCommandEvent& event);
|
2009-11-07 23:54:10 +00:00
|
|
|
void OnOpenLuaWindow(wxCommandEvent& event);
|
2009-04-15 20:19:25 +00:00
|
|
|
|
2009-05-13 21:50:24 +00:00
|
|
|
void OnNetPlay(wxCommandEvent& event);
|
|
|
|
|
2008-12-23 08:47:37 +00:00
|
|
|
void OnShow_CheatsWindow(wxCommandEvent& event);
|
2009-04-28 02:30:50 +00:00
|
|
|
void OnLoadWiiMenu(wxCommandEvent& event);
|
2009-12-27 19:31:02 +00:00
|
|
|
void OnConnectWiimote(wxCommandEvent& event);
|
2009-04-28 02:30:50 +00:00
|
|
|
void GameListChanged(wxCommandEvent& event);
|
2008-12-23 08:47:37 +00:00
|
|
|
|
2009-01-28 16:51:05 +00:00
|
|
|
void OnGameListCtrl_ItemActivated(wxListEvent& event);
|
2009-08-26 19:39:11 +00:00
|
|
|
void DoFullscreen(bool _F);
|
2009-01-07 09:06:42 +00:00
|
|
|
|
2009-04-16 02:32:21 +00:00
|
|
|
// MenuBar
|
|
|
|
// File - Drive
|
|
|
|
wxMenuItem* m_pSubMenuDrive;
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2009-04-16 02:32:21 +00:00
|
|
|
// Emulation
|
|
|
|
wxMenuItem* m_pSubMenuLoad;
|
|
|
|
wxMenuItem* m_pSubMenuSave;
|
2009-08-08 01:39:56 +00:00
|
|
|
wxMenuItem* m_pSubMenuFrameSkipping;
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2010-01-22 21:41:25 +00:00
|
|
|
void BootGame(const std::string& filename);
|
2009-01-07 09:06:42 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
// Double click and mouse move options
|
2010-02-06 01:08:36 +00:00
|
|
|
#if wxUSE_TIMER
|
|
|
|
#ifdef _WIN32
|
2009-04-16 02:32:21 +00:00
|
|
|
double m_fLastClickTime, m_iLastMotionTime;
|
|
|
|
int LastMouseX, LastMouseY;
|
2009-01-04 21:53:41 +00:00
|
|
|
|
2010-02-06 01:08:36 +00:00
|
|
|
void Update();
|
|
|
|
#endif
|
|
|
|
// Used in linux to process command events
|
|
|
|
void OnTimer(wxTimerEvent& WXUNUSED(event));
|
|
|
|
wxTimer m_timer;
|
|
|
|
#endif
|
2008-12-08 04:46:09 +00:00
|
|
|
|
2009-01-04 21:53:41 +00:00
|
|
|
// Event table
|
2008-12-08 04:46:09 +00:00
|
|
|
DECLARE_EVENT_TABLE();
|
|
|
|
};
|
|
|
|
|
2009-08-30 08:22:05 +00:00
|
|
|
|
2008-12-08 04:46:09 +00:00
|
|
|
#endif // __FRAME_H_
|
2009-12-28 19:34:19 +00:00
|
|
|
|