Cheers
This is what I am doing.
Code: Select all
class MyApp : public wxApp
{
public:
MyApp();
virtual bool OnInit();
void OnLButtonDown(wxMouseEvent&);
DECLARE_EVENT_TABLE();
};
IMPLEMENT_APP_NO_MAIN(MyApp);
BEGIN_EVENT_TABLE(MyApp, wxApp)
EVT_LEFT_DOWN(MyApp::OnLButtonDown)
END_EVENT_TABLE()
void MyApp::OnLButtonDown(wxMouseEvent& e)
{
if(e.LeftDown())
wxMessageBox("wxMouse Clicked");
}
..winMain(...)
{
WNDCLASSEX wc;
HWND hwnd;
MSG Msg;
//register window
wc.lpfnWndProc = WndProc;
...
hwnd = CreateWindowEx(...);
//WXWIDGETS INITIALIZATION CODE
int arc = 0;
wxEntryStart(argc, NULL);
wxTheApp->OnInit();//
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
while(GetMessage(&Msg, NULL, 0, 0) > 0)
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
//MY CODE TO CALL WXPROC-- ANY SUGGESTIONS
if(wxTheApp)
{
wxWindowMSW* winprt = wxTheApp->GetTopWindow();
winprt->MSWWindowProc(msg, wParam, lParam);
}
//-----
switch(msg)
{
default:
return DefWindowProc(...);
}
return 0;
}
}