X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ab839dff6057523d26c538c199c4f2b40c52f034..b2c13097deb7736a86a278c02d0b3f7cd9873750:/contrib/src/fl/newbmpbtn.cpp?ds=sidebyside diff --git a/contrib/src/fl/newbmpbtn.cpp b/contrib/src/fl/newbmpbtn.cpp index dbec38e40d..9defbfe9a8 100644 --- a/contrib/src/fl/newbmpbtn.cpp +++ b/contrib/src/fl/newbmpbtn.cpp @@ -51,14 +51,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 +101,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 +114,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 +183,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; @@ -251,11 +251,11 @@ wxNewBitmapButton::wxNewBitmapButton( const wxBitmap& labelBitmap, mpFocusedImg ( NULL ), - mDragStarted ( FALSE ), - mIsPressed ( FALSE ), - mIsInFocus ( FALSE ), - mIsToggled ( FALSE ), - mHasFocusedBmp( FALSE ), + mDragStarted ( false ), + mIsPressed ( false ), + mIsInFocus ( false ), + mIsToggled ( false ), + mHasFocusedBmp( false ), mFiredEventType( firedEventType ), mBlackPen( wxColour( 0, 0, 0), 1, wxSOLID ), @@ -263,8 +263,8 @@ wxNewBitmapButton::wxNewBitmapButton( const wxBitmap& labelBitmap, mGrayPen ( wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE), 1, wxSOLID ), mLightPen( wxSystemSettings::GetColour(wxSYS_COLOUR_3DHIGHLIGHT), 1, wxSOLID ), - mIsCreated( FALSE ), - mSizeIsSet( FALSE ) + mIsCreated( false ), + mSizeIsSet( false ) { } @@ -274,7 +274,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), @@ -284,7 +284,7 @@ wxNewBitmapButton::wxNewBitmapButton( const wxString& bitmapFileName, mMarginX( 2 ), mMarginY( 2 ), mTextAlignment( alignText ), - mIsSticky( FALSE ), + mIsSticky( false ), mIsFlat( isFlat ), mLabelText( labelText ), mImageFileName( bitmapFileName ), @@ -295,11 +295,11 @@ wxNewBitmapButton::wxNewBitmapButton( const wxString& bitmapFileName, mpDisabledImg ( NULL ), mpFocusedImg ( NULL ), - mDragStarted ( FALSE ), - mIsPressed ( FALSE ), - mIsInFocus ( FALSE ), - mIsToggled ( FALSE ), - mHasFocusedBmp( FALSE ), + mDragStarted ( false ), + mIsPressed ( false ), + mIsInFocus ( false ), + mIsToggled ( false ), + mHasFocusedBmp( false ), mFiredEventType( wxEVT_COMMAND_MENU_SELECTED ), mBlackPen( wxColour( 0, 0, 0), 1, wxSOLID ), @@ -307,13 +307,13 @@ wxNewBitmapButton::wxNewBitmapButton( const wxString& bitmapFileName, mGrayPen ( wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE), 1, wxSOLID ), mLightPen( wxSystemSettings::GetColour(wxSYS_COLOUR_3DHIGHLIGHT), 1, wxSOLID ), - mIsCreated( FALSE ), - mSizeIsSet( FALSE ) + mIsCreated( false ), + mSizeIsSet( false ) { } -wxNewBitmapButton::~wxNewBitmapButton(void) +wxNewBitmapButton::~wxNewBitmapButton(void) { DestroyLabels(); } @@ -379,11 +379,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 +459,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,9 +474,9 @@ void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp, { destDc.Blit( imgPos.x, imgPos.y, - srcBmp->GetWidth()+1, - srcBmp->GetHeight()+1, - &srcDc, 0,0, wxCOPY,TRUE ); + srcBmp->GetWidth(), + srcBmp->GetHeight(), + &srcDc, 0,0, wxCOPY,true ); } if ( hasText ) @@ -519,8 +522,8 @@ void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp, // adjust button size to fit the new dimensions of the label if ( !mSizeIsSet && 0 ) { - mSizeIsSet = TRUE; - SetSize( -1,-1, + mSizeIsSet = true; + SetSize( wxDefaultCoord, wxDefaultCoord, destBmp->GetWidth() + mMarginX*2, destBmp->GetHeight() + mMarginY*2, 0 ); @@ -537,12 +540,12 @@ void wxNewBitmapButton::RenderAllLabelImages() { if ( !mIsCreated ) return; - RenderLabelImage( mpDisabledImg, &mDepressedBmp, FALSE ); - RenderLabelImage( mpPressedImg, &mDepressedBmp, TRUE, TRUE ); - RenderLabelImage( mpDepressedImg, &mDepressedBmp, TRUE, FALSE ); + RenderLabelImage( mpDisabledImg, &mDepressedBmp, false ); + RenderLabelImage( mpPressedImg, &mDepressedBmp, true, true ); + RenderLabelImage( mpDepressedImg, &mDepressedBmp, true, false ); if ( mHasFocusedBmp ) { - RenderLabelImage( mpFocusedImg, &mFocusedBmp, TRUE, FALSE ); + RenderLabelImage( mpFocusedImg, &mFocusedBmp, true, false ); } } @@ -554,24 +557,24 @@ void wxNewBitmapButton::RenderLabelImages() if ( !IsEnabled() ) { - RenderLabelImage( mpDisabledImg, &mDepressedBmp, FALSE ); + RenderLabelImage( mpDisabledImg, &mDepressedBmp, false ); } else if ( mIsPressed ) - RenderLabelImage( mpPressedImg, &mDepressedBmp, TRUE, TRUE ); + RenderLabelImage( mpPressedImg, &mDepressedBmp, true, true ); else { if ( mIsInFocus ) { if ( mHasFocusedBmp ) - RenderLabelImage( mpFocusedImg, &mFocusedBmp, TRUE, FALSE ); + RenderLabelImage( mpFocusedImg, &mFocusedBmp, true, false ); else - RenderLabelImage( mpDepressedImg, &mDepressedBmp, TRUE, FALSE ); + RenderLabelImage( mpDepressedImg, &mDepressedBmp, true, false ); } else - RenderLabelImage( mpDepressedImg, &mDepressedBmp, TRUE, FALSE ); + RenderLabelImage( mpDepressedImg, &mDepressedBmp, true, false ); } } @@ -579,13 +582,13 @@ bool wxNewBitmapButton::Toggle(bool enable) { if ( mIsToggled == enable ) { - return FALSE; + return false; } mIsToggled = enable; Refresh(); - return TRUE; + return true; } bool wxNewBitmapButton::Enable(bool enable) @@ -594,12 +597,12 @@ bool wxNewBitmapButton::Enable(bool enable) { if ( mIsInFocus ) { - mIsInFocus = FALSE; + mIsInFocus = false; } if ( mIsPressed ) { - mIsPressed = FALSE; + mIsPressed = false; } Refresh(); @@ -674,8 +677,8 @@ void wxNewBitmapButton::SetAlignments( int alignText, void wxNewBitmapButton::OnLButtonDown( wxMouseEvent& WXUNUSED(event) ) { - mDragStarted = TRUE; - mIsPressed = TRUE; + mDragStarted = true; + mIsPressed = true; Refresh(); } @@ -684,11 +687,11 @@ void wxNewBitmapButton::OnLButtonUp( wxMouseEvent& event ) if ( !mDragStarted ) return; - mDragStarted = FALSE; - mIsPressed = FALSE; + mDragStarted = false; + 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 @@ -713,7 +716,7 @@ void wxNewBitmapButton::OnMouseEnter( wxMouseEvent& WXUNUSED(event) ) if ( !mIsInFocus ) { - mIsInFocus = TRUE; + mIsInFocus = true; } if ( prevIsInFocus != mIsInFocus ) { @@ -727,8 +730,8 @@ void wxNewBitmapButton::OnMouseLeave( wxMouseEvent& WXUNUSED(event) ) bool prevIsPressed = mIsPressed; if ( mIsInFocus ) { - mIsInFocus = FALSE; - mIsPressed = FALSE; + mIsInFocus = false; + mIsPressed = false; } if ( prevIsInFocus != mIsInFocus || prevIsPressed != mIsPressed ) { @@ -742,16 +745,16 @@ void wxNewBitmapButton::OnSize( wxSizeEvent& WXUNUSED(event) ) } void wxNewBitmapButton::Reshape( ) -{ +{ bool wasCreated = mIsCreated; - mIsCreated = TRUE; + 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 +789,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 );