X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e0b9ad2982c05e79f8e221a16e0622233a324bdb..12ac619f42b81420980aec14afc9433af6f911dc:/src/msw/statbmp.cpp diff --git a/src/msw/statbmp.cpp b/src/msw/statbmp.cpp index db1d8b11d3..211bb7e249 100644 --- a/src/msw/statbmp.cpp +++ b/src/msw/statbmp.cpp @@ -17,7 +17,7 @@ // headers // --------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "statbmp.h" #endif @@ -44,7 +44,58 @@ // macors // --------------------------------------------------------------------------- +#if wxUSE_EXTENDED_RTTI +WX_DEFINE_FLAGS( wxStaticBitmapStyle ) + +wxBEGIN_FLAGS( wxStaticBitmapStyle ) + // new style border flags, we put them first to + // use them for streaming out + wxFLAGS_MEMBER(wxBORDER_SIMPLE) + wxFLAGS_MEMBER(wxBORDER_SUNKEN) + wxFLAGS_MEMBER(wxBORDER_DOUBLE) + wxFLAGS_MEMBER(wxBORDER_RAISED) + wxFLAGS_MEMBER(wxBORDER_STATIC) + wxFLAGS_MEMBER(wxBORDER_NONE) + + // old style border flags + wxFLAGS_MEMBER(wxSIMPLE_BORDER) + wxFLAGS_MEMBER(wxSUNKEN_BORDER) + wxFLAGS_MEMBER(wxDOUBLE_BORDER) + wxFLAGS_MEMBER(wxRAISED_BORDER) + wxFLAGS_MEMBER(wxSTATIC_BORDER) + wxFLAGS_MEMBER(wxBORDER) + + // standard window styles + wxFLAGS_MEMBER(wxTAB_TRAVERSAL) + wxFLAGS_MEMBER(wxCLIP_CHILDREN) + wxFLAGS_MEMBER(wxTRANSPARENT_WINDOW) + wxFLAGS_MEMBER(wxWANTS_CHARS) + wxFLAGS_MEMBER(wxFULL_REPAINT_ON_RESIZE) + wxFLAGS_MEMBER(wxALWAYS_SHOW_SB ) + wxFLAGS_MEMBER(wxVSCROLL) + wxFLAGS_MEMBER(wxHSCROLL) + +wxEND_FLAGS( wxStaticBitmapStyle ) + +IMPLEMENT_DYNAMIC_CLASS_XTI(wxStaticBitmap, wxControl,"wx/statbmp.h") + +wxBEGIN_PROPERTIES_TABLE(wxStaticBitmap) + wxPROPERTY_FLAGS( WindowStyle , wxStaticBitmapStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style +wxEND_PROPERTIES_TABLE() + +wxBEGIN_HANDLERS_TABLE(wxStaticBitmap) +wxEND_HANDLERS_TABLE() + +wxCONSTRUCTOR_5( wxStaticBitmap, wxWindow* , Parent , wxWindowID , Id , wxBitmap, Bitmap, wxPoint , Position , wxSize , Size ) + +#else IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmap, wxControl) +#endif + +/* + TODO PROPERTIES : + bitmap +*/ // =========================================================================== // implementation @@ -98,12 +149,6 @@ bool wxStaticBitmap::Create(wxWindow *parent, long style, const wxString& name) { - // default border for this control is none - if ( (style & wxBORDER_MASK) == wxBORDER_DEFAULT ) - { - style |= wxBORDER_NONE; - } - if ( !CreateControl(parent, id, pos, size, style, wxDefaultValidator, name) ) return FALSE; @@ -128,7 +173,7 @@ bool wxStaticBitmap::Create(wxWindow *parent, #else // Win16 _T("BUTTON"), #endif // Win32/16 - _T(""), pos, size) ) + wxEmptyString, pos, size) ) { // control creation failed return FALSE; @@ -140,6 +185,11 @@ bool wxStaticBitmap::Create(wxWindow *parent, return TRUE; } +wxBorder wxStaticBitmap::GetDefaultBorder() const +{ + return wxBORDER_NONE; +} + WXDWORD wxStaticBitmap::MSWGetStyle(long style, WXDWORD *exstyle) const { WXDWORD msStyle = wxControl::MSWGetStyle(style, exstyle); @@ -270,10 +320,12 @@ long wxStaticBitmap::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam) { +#ifndef __WXWINCE__ // Ensure that static items get messages. Some controls don't like this // message to be intercepted (e.g. RichEdit), hence the tests. if ( nMsg == WM_NCHITTEST ) return (long)HTCLIENT; +#endif return wxWindow::MSWWindowProc(nMsg, wParam, lParam); }