Changes to wxWidgets/SDL2 port :

- Updated UI
- OpenGL 3.0 with GLSL/GLSLP-support
- Improvements to Windows version
- Minor changes/bugfixes
Patch from bit.
This commit is contained in:
pcem_emulator 2017-07-30 10:39:27 +01:00
commit 2881d35680
90 changed files with 15042 additions and 5351 deletions

View file

@ -18,24 +18,64 @@ wxDECLARE_EVENT(WX_EXIT_COMPLETE_EVENT, wxCommandEvent);
wxDECLARE_EVENT(WX_SHOW_WINDOW_EVENT, wxCommandEvent);
wxDECLARE_EVENT(WX_POPUP_MENU_EVENT, PopupMenuEvent);
#ifdef _WIN32
class WinSendMessageEvent;
wxDECLARE_EVENT(WX_WIN_SEND_MESSAGE_EVENT, WinSendMessageEvent);
class WinSendMessageEvent: public wxCommandEvent
{
public:
WinSendMessageEvent(void* hwnd, int message, INT_PARAM wParam, LONG_PARAM lParam) : wxCommandEvent(WX_WIN_SEND_MESSAGE_EVENT)
{
this->hwnd = hwnd;
this->message = message;
this->wParam = wParam;
this->lParam = lParam;
}
WinSendMessageEvent(const WinSendMessageEvent& event) : wxCommandEvent(event)
{
this->hwnd = event.GetHWND();
this->message = event.GetMessage();
this->wParam = event.GetWParam();
this->lParam = event.GetLParam();
}
wxEvent* Clone() const { return new WinSendMessageEvent(*this); }
void* GetHWND() const { return hwnd; }
int GetMessage() const { return message; }
INT_PARAM GetWParam() const { return wParam; }
LONG_PARAM GetLParam() const { return lParam; }
private:
void* hwnd;
int message;
INT_PARAM wParam;
LONG_PARAM lParam;
};
#endif
class CallbackEvent: public wxCommandEvent
{
public:
CallbackEvent(WX_CALLBACK callback) : wxCommandEvent(WX_CALLBACK_EVENT)
CallbackEvent(WX_CALLBACK callback, void* data) : wxCommandEvent(WX_CALLBACK_EVENT)
{
this->callback = callback;
this->data = data;
}
CallbackEvent(const CallbackEvent& event) : wxCommandEvent(event)
{
this->callback = event.GetCallback();
this->data = event.GetData();
}
wxEvent* Clone() const { return new CallbackEvent(*this); }
WX_CALLBACK GetCallback() const { return callback; }
void* GetData() const { return data; }
private:
WX_CALLBACK callback;
void* data;
};
@ -72,7 +112,6 @@ private:
wxWindow* window;
};
class Frame;
class App: public wxApp
@ -120,6 +159,9 @@ private:
void OnPopupMenuEvent(PopupMenuEvent& event);
void OnCallbackEvent(CallbackEvent& event);
void OnClose(wxCloseEvent& event);
#ifdef _WIN32
void OnWinSendMessageEvent(WinSendMessageEvent& event);
#endif
void ShowConfigSelection();
wxMenu* menu;