X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9a595736d07382f41ab09bacdd692fe9a4cad894..89e1de6441845de971433531a7286d5bea06c3f5:/src/motif/statbmp.cpp?ds=sidebyside diff --git a/src/motif/statbmp.cpp b/src/motif/statbmp.cpp index a226685b38..89a74c3792 100644 --- a/src/motif/statbmp.cpp +++ b/src/motif/statbmp.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: statbmp.cpp +// Name: src/motif/statbmp.cpp // Purpose: wxStaticBitmap // Author: Julian Smart // Modified by: @@ -9,11 +9,8 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -#pragma implementation "statbmp.h" -#endif - -#include "wx/defs.h" +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" #include "wx/statbmp.h" @@ -45,6 +42,7 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id, if( !CreateControl( parent, id, pos, size, style, wxDefaultValidator, name ) ) return false; + PreCreation(); m_messageBitmap = bitmap; m_messageBitmapOriginal = bitmap; @@ -52,7 +50,7 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id, Widget parentWidget = (Widget) parent->GetClientWidget(); m_mainWidget = (WXWidget) XtVaCreateManagedWidget ("staticBitmap", -#if USE_GADGETS +#if wxUSE_GADGETS xmLabelGadgetClass, parentWidget, #else xmLabelWidgetClass, parentWidget, @@ -60,18 +58,15 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID id, XmNalignment, XmALIGNMENT_BEGINNING, NULL); - ChangeBackgroundColour (); - - DoSetBitmap(); - - ChangeFont(FALSE); - wxSize actualSize(size); // work around the cases where the bitmap is a wxNull(Icon/Bitmap) if (actualSize.x == -1) - actualSize.x = bitmap.GetWidth() ? bitmap.GetWidth() : 1; + actualSize.x = bitmap.Ok() ? bitmap.GetWidth() : 1; if (actualSize.y == -1) - actualSize.y = bitmap.GetHeight() ? bitmap.GetHeight() : 1; + actualSize.y = bitmap.Ok() ? bitmap.GetHeight() : 1; + + PostCreation(); + DoSetBitmap(); AttachWidget (parent, m_mainWidget, (WXWidget) NULL, pos.x, pos.y, actualSize.x, actualSize.y); @@ -86,9 +81,7 @@ wxStaticBitmap::~wxStaticBitmap() void wxStaticBitmap::DoSetBitmap() { Widget widget = (Widget) m_mainWidget; - int x, y, w1, h1, w2, h2; - - GetPosition(&x, &y); + int w2, h2; if (m_messageBitmapOriginal.Ok()) { @@ -101,7 +94,7 @@ void wxStaticBitmap::DoSetBitmap() // in the current widget background colour. if (m_messageBitmapOriginal.GetMask()) { - int backgroundPixel; + WXPixel backgroundPixel; XtVaGetValues( widget, XmNbackground, &backgroundPixel, NULL); @@ -123,10 +116,8 @@ void wxStaticBitmap::DoSetBitmap() XmNlabelPixmap, pixmap, XmNlabelType, XmPIXMAP, NULL); - GetSize(&w1, &h1); - if (! (w1 == w2) && (h1 == h2)) - SetSize(x, y, w2, h2); + SetSize(w2, h2); } else { @@ -136,7 +127,7 @@ void wxStaticBitmap::DoSetBitmap() XmNlabelType, XmSTRING, XmNlabelPixmap, XmUNSPECIFIED_PIXMAP, NULL); - } + } } void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap) @@ -161,4 +152,3 @@ void wxStaticBitmap::ChangeForegroundColour() m_bitmapCache.SetColoursChanged(); wxWindow::ChangeForegroundColour(); } -