+ if (nId == -1)
+ m_windowId = (int)NewControlId();
+ else
+ m_windowId = nId;
+
+ m_windowStyle = lStyle;
+
+ int nX= rPos.x;
+ int nY = rPos.y;
+ char zId[16];
+
+ m_windowStyle = lStyle;
+
+ m_bIsIcon = rBitmap.IsKindOf(CLASSINFO(wxIcon));
+
+ //
+ // For now we only support an ICON
+ //
+ int nWinstyle = SS_ICON;
+
+ m_hWnd = (WXHWND)::WinCreateWindow( pParent->GetHWND()
+ ,(PSZ)wxCanvasClassName
+ ,zId
+ ,nWinstyle | WS_VISIBLE
+ ,0,0,0,0
+ ,pParent->GetHWND()
+ ,HWND_TOP
+ ,m_windowId
+ ,NULL
+ ,NULL
+ );
+ if (!m_hWnd)
+ {
+ vError = ::WinGetLastError(wxGetInstance());
+ sError = wxPMErrorToStr(vError);
+ return false;
+ }
+ wxCHECK_MSG( m_hWnd, false, wxT("Failed to create static bitmap") );
+ m_pImage = ConvertImage(rBitmap);
+ ::WinSendMsg( m_hWnd,
+ SM_SETHANDLE,
+ MPFROMHWND(rBitmap.GetHandle()),
+ (MPARAM)0);
+
+ // Subclass again for purposes of dialog editing mode
+ SubclassWin(m_hWnd);
+ SetSize(nX, nY, m_pImage->GetWidth(), m_pImage->GetHeight());
+
+ return true;
+} // end of wxStaticBitmap::Create