#include "wx/msgdlg.h"
#include "wx/intl.h"
#include "wx/dynarray.h"
- #include "wx/wxchar.h"
+# include "wx/wxchar.h"
+# include "wx/icon.h"
#endif
#include "wx/log.h"
#include "wx/msw/msvcrt.h"
-
// ---------------------------------------------------------------------------
// global variables
// ---------------------------------------------------------------------------
//// Static member initialization
-wxAppInitializerFunction wxApp::m_appInitFn = (wxAppInitializerFunction) NULL;
+wxAppInitializerFunction wxAppBase::m_appInitFn = (wxAppInitializerFunction) NULL;
wxApp::wxApp()
{
HWND hWnd = msg->hwnd;
wxWindow *wndThis = wxFindWinFromHandle((WXHWND)hWnd), *wnd;
+ // for some composite controls (like a combobox), wndThis might be NULL
+ // because the subcontrol is not a wxWindow, but only the control itself
+ // is - try to catch this case
+ while ( hWnd && !wndThis )
+ {
+ hWnd = ::GetParent(hWnd);
+ wndThis = wxFindWinFromHandle((WXHWND)hWnd);
+ }
+
// Try translations first; find the youngest window with
// a translation table.
for ( wnd = wndThis; wnd; wnd = wnd->GetParent() )
}
}
-wxLog* wxApp::CreateLogTarget()
-{
- return new wxLogGui;
-}
-
-wxWindow* wxApp::GetTopWindow() const
-{
- if (m_topWindow)
- return m_topWindow;
- else if (wxTopLevelWindows.GetCount() > 0)
- return wxTopLevelWindows.GetFirst()->GetData();
- else
- return NULL;
-}
-
int wxApp::GetComCtl32Version() const
{
// have we loaded COMCTL32 yet?
return TRUE;
}
+wxIcon
+wxApp::GetStdIcon(int which) const
+{
+ switch(which)
+ {
+ case wxICON_INFORMATION:
+ return wxIcon("wxICON_INFO");
+
+ case wxICON_QUESTION:
+ return wxIcon("wxICON_QUESTION");
+
+ case wxICON_EXCLAMATION:
+ return wxIcon("wxICON_WARNING");
+
+ default:
+ wxFAIL_MSG(_T("requested non existent standard icon"));
+ // still fall through
+
+ case wxICON_HAND:
+ return wxIcon("wxICON_ERROR");
+ }
+}
+
+
HINSTANCE wxGetInstance()
{
return wxhInstance;