]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/src/fl/newbmpbtn.cpp
Typo correction
[wxWidgets.git] / contrib / src / fl / newbmpbtn.cpp
index 6de2cfbf1ed6bc096a36567b68fde8b978831581..eb83eb9c6219ec78b54cb8da09cc5312c16b585c 100644 (file)
@@ -9,10 +9,6 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-    #pragma implementation "newbmpbtn.h"
-#endif
-
 // For compilers that support precompilation, includes "wx/wx.h".
 #include "wx/wxprec.h"
 
@@ -51,14 +47,14 @@ static int* create_array( int width, int height, int fill = 0 )
 
 #define IS_IN_ARRAY(x,y) ( (x) < width && (y) < height && (x) >= 0 && (y) >= 0 )
 
-#define GET_RED(col)    col        & 0xFF  
-#define GET_GREEN(col) (col >> 8)  & 0xFF     
-#define GET_BLUE(col)  (col >> 16) & 0xFF 
+#define GET_RED(col)    col        & 0xFF
+#define GET_GREEN(col) (col >> 8)  & 0xFF
+#define GET_BLUE(col)  (col >> 16) & 0xFF
 
 #define MAKE_INT_COLOR(red,green,blue) (     (red)                      | \
                                          ( ( (green) << 8 ) & 0xFF00  ) | \
                                          ( ( (blue)  << 16) & 0xFF0000) \
-                                       )   
+                                       )
 
 #define IS_GREATER(col1,col2) ( ( (GET_RED(col1)  ) > (GET_RED(col2)  ) + MIN_COLOR_DIFF ) && \
                                 ( (GET_GREEN(col1)) > (GET_GREEN(col2)) + MIN_COLOR_DIFF ) &&  \
@@ -101,7 +97,7 @@ static void gray_out_pixmap( int* src, int* dest, int width, int height )
             else
             {
                 if ( GET_ELEM(dest,x-1,y-1) == MASK_LIGHT )
-                    
+
                     GET_ELEM(dest,x,y) = MASK_BG;
 
                 if ( GET_ELEM(dest,x-1,y-1 ) == MASK_DARK )
@@ -114,14 +110,14 @@ static void gray_out_pixmap( int* src, int* dest, int width, int height )
 
         // go zig-zag
 
-        if ( IS_IN_ARRAY(x+1,y-1) ) 
+        if ( IS_IN_ARRAY(x+1,y-1) )
         {
             ++x;
             --y;
         }
         else
         {
-            while ( IS_IN_ARRAY(x-1,y+1) ) 
+            while ( IS_IN_ARRAY(x-1,y+1) )
             {
                 --x;
                 ++y;
@@ -183,13 +179,13 @@ void gray_out_image_on_dc( wxDC& dc, int width, int height )
 
             switch (mask)
             {
-                case MASK_BG    : { dc.SetPen( bgPen ); 
+                case MASK_BG    : { dc.SetPen( bgPen );
                                     dc.DrawPoint( x,y ); break;
                                   }
-                case MASK_DARK  : { dc.SetPen( darkPen ); 
+                case MASK_DARK  : { dc.SetPen( darkPen );
                                     dc.DrawPoint( x,y ); break;
                                   }
-                case MASK_LIGHT : { dc.SetPen( lightPen ); 
+                case MASK_LIGHT : { dc.SetPen( lightPen );
                                     dc.DrawPoint( x,y ); break;
                                   }
                 default : break;
@@ -274,7 +270,7 @@ wxNewBitmapButton::wxNewBitmapButton( const wxString& bitmapFileName,
                                       const wxString& labelText,
                                       int  alignText,
                                       bool isFlat,
-                                      int  WXUNUSED(firedEventType), 
+                                      int  WXUNUSED(firedEventType),
                                       int  WXUNUSED(marginX),
                                       int  WXUNUSED(marginY),
                                       int  WXUNUSED(textToLabelGap),
@@ -313,7 +309,7 @@ wxNewBitmapButton::wxNewBitmapButton( const wxString& bitmapFileName,
 {
 }
 
-wxNewBitmapButton::~wxNewBitmapButton(void) 
+wxNewBitmapButton::~wxNewBitmapButton(void)
 {
     DestroyLabels();
 }
@@ -324,20 +320,21 @@ void wxNewBitmapButton::DrawShade( int outerLevel,
                                    wxPen& lowerRightSidePen )
 {
     wxBitmap* pBmp = GetStateLabel();
-
     int x = mMarginX - (outerLevel + 2);
     int y = mMarginY - (outerLevel + 2);
-
     int height = pBmp->GetHeight() + (outerLevel + 2)*2 - 1;
     int width  = pBmp->GetWidth()  + (outerLevel + 2)*2 - 1;
-
     dc.SetPen( upperLeftSidePen );
     dc.DrawLine( x,y, x + width, y  );
     dc.DrawLine( x,y, x, y + height );
+    dc.DrawLine( x,y+1, x + width , y +1 );  // top
+    dc.DrawLine( x+1,y, x+1, y + height );  // left
 
     dc.SetPen( lowerRightSidePen );
     dc.DrawLine( x + width, y, x + width, y + height + 1  );
     dc.DrawLine( x, y + height, x + width, y + height );
+    dc.DrawLine( x + width-1, y+1, x + width-1, y + height +1  );  // right
+    dc.DrawLine( x +1, y + height-1, x + width, y + height-1 );  // bottom
 }
 
 void wxNewBitmapButton::DestroyLabels()
@@ -379,11 +376,16 @@ wxBitmap* wxNewBitmapButton::GetStateLabel()
         return mpDisabledImg;
 }
 
+#ifndef __WXMSW__
+
 static const unsigned char _gDisableImage[] = { 0x55,0xAA,0x55,0xAA,
                                               0x55,0xAA,0x55,0xAA,
                                               0x55,0xAA,0x55,0xAA,
                                               0x55,0xAA,0x55,0xAA
                                             };
+
+#endif
+
 void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp,
                                           bool isEnabled, bool isPressed )
 {
@@ -454,11 +456,9 @@ void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp,
     destDc.SelectObject( *destBmp );
 
     wxBrush grayBrush( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE), wxSOLID );
-    wxPen   nullPen( wxColour(0,0,0), 1, wxTRANSPARENT );
 
     destDc.SetBrush( grayBrush );
-    destDc.SetPen( nullPen );
-
+    destDc.SetPen( *wxTRANSPARENT_PEN );
     destDc.DrawRectangle( 0,0, destDim.x+1, destDim.y+1 );
 
     if ( isPressed )
@@ -471,8 +471,8 @@ void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp,
     {
 
         destDc.Blit( imgPos.x, imgPos.y,
-                 srcBmp->GetWidth()+1,
-                 srcBmp->GetHeight()+1,
+                 srcBmp->GetWidth(),
+                 srcBmp->GetHeight(),
                  &srcDc, 0,0, wxCOPY,true );
     }
 
@@ -510,7 +510,8 @@ void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp,
 #ifdef __WXMSW__ // This is currently MSW specific
         gray_out_image_on_dc( destDc, destDim.x, destDim.y );
 #else
-        wxBrush checkerBrush( wxBitmap( (const char*)_gDisableImage,8,8) );
+        wxBitmap bmp( (const char*)_gDisableImage,8,8);
+        wxBrush checkerBrush(bmp);
         checkerBrush.SetColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
         destDc.SetBrush( checkerBrush );
         destDc.DrawRectangle( imgPos.x, imgPos.y, srcBmp->GetWidth()+1, srcBmp->GetHeight()+1);
@@ -688,7 +689,7 @@ void wxNewBitmapButton::OnLButtonUp( wxMouseEvent& event )
     mIsPressed   = false;
     Refresh();
 
-    if ( IsInWindow( event.m_x, event.m_y ) ) 
+    if ( IsInWindow( event.m_x, event.m_y ) )
     {
         // fire event, if mouse was released
         // within the bounds of button
@@ -742,16 +743,16 @@ void wxNewBitmapButton::OnSize( wxSizeEvent& WXUNUSED(event) )
 }
 
 void wxNewBitmapButton::Reshape( )
-{   
+{
     bool wasCreated = mIsCreated;
     mIsCreated = true;
 
     if ( !wasCreated )
     {
         // in the case of loading button from stream, check if we
-        // have non-empty image-file name, load if possible 
+        // have non-empty image-file name, load if possible
 
-        if ( mImageFileName != wxT("") )
+        if (!mImageFileName.empty())
         {
             mDepressedBmp.LoadFile( mImageFileName, mImageFileType );
 
@@ -786,10 +787,10 @@ void wxNewBitmapButton::DrawLabel( wxDC& dc )
     wxMemoryDC mdc;
     mdc.SelectObject( *pCurBmp );
 
-    dc.Blit( mMarginX, mMarginY, 
+    dc.Blit( mMarginX, mMarginY,
              pCurBmp->GetWidth(),
              pCurBmp->GetHeight(),
-             &mdc, 0,0, wxCOPY 
+             &mdc, 0,0, wxCOPY
            );
 
     mdc.SelectObject( wxNullBitmap );