Add wxHAS_BITMAPTOGGLEBUTTON and test for it in the unit test.

Not all ports define wxBitmapToggleButton class currently, so add a special
symbol which is defined only if this class is indeed available and test for it
in the unit test for this class.

This fixes the tests compilation under wxX11.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2010-10-01 13:05:36 +00:00
parent e2032c2e21
commit 323d36e452
4 changed files with 20 additions and 4 deletions

View File

@@ -196,6 +196,8 @@ Currently the following symbols exist:
have an efficient (CPU-specific) implementation. Notice that the functions have an efficient (CPU-specific) implementation. Notice that the functions
themselves are always available but can be prohibitively slow to use when themselves are always available but can be prohibitively slow to use when
implemented in a generic way, using a critical section.} implemented in a generic way, using a critical section.}
@itemdef{wxHAS_BITMAPTOGGLEBUTTON, Defined in @c wx/tglbtn.h if
wxBitmapToggleButton class is available in addition to wxToggleButton.}
@itemdef{wxHAS_CONFIG_TEMPLATE_RW, Defined if the currently used compiler @itemdef{wxHAS_CONFIG_TEMPLATE_RW, Defined if the currently used compiler
supports template Read() and Write() methods in wxConfig.} supports template Read() and Write() methods in wxConfig.}
@itemdef{wxHAS_LARGE_FILES, Defined if wxFile supports files more than 4GB in @itemdef{wxHAS_LARGE_FILES, Defined if wxFile supports files more than 4GB in

View File

@@ -76,14 +76,17 @@ protected:
#include "wx/univ/tglbtn.h" #include "wx/univ/tglbtn.h"
#elif defined(__WXMSW__) #elif defined(__WXMSW__)
#include "wx/msw/tglbtn.h" #include "wx/msw/tglbtn.h"
#define wxHAS_BITMAPTOGGLEBUTTON
#elif defined(__WXGTK20__) #elif defined(__WXGTK20__)
#include "wx/gtk/tglbtn.h" #include "wx/gtk/tglbtn.h"
#define wxHAS_BITMAPTOGGLEBUTTON
#elif defined(__WXGTK__) #elif defined(__WXGTK__)
#include "wx/gtk1/tglbtn.h" #include "wx/gtk1/tglbtn.h"
# elif defined(__WXMOTIF__) # elif defined(__WXMOTIF__)
#include "wx/motif/tglbtn.h" #include "wx/motif/tglbtn.h"
#elif defined(__WXMAC__) #elif defined(__WXMAC__)
#include "wx/osx/tglbtn.h" #include "wx/osx/tglbtn.h"
#define wxHAS_BITMAPTOGGLEBUTTON
#elif defined(__WXPALMOS__) #elif defined(__WXPALMOS__)
#include "wx/palmos/tglbtn.h" #include "wx/palmos/tglbtn.h"
#elif defined(__WXPM__) #elif defined(__WXPM__)

View File

@@ -106,8 +106,14 @@ public:
/** /**
@class wxBitmapToggleButton @class wxBitmapToggleButton
wxBitmapToggleButton is a wxToggleButton wxBitmapToggleButton is a wxToggleButton that contains a bitmap instead of
that contains a bitmap instead of text. text.
This class is not available in all ports currently (although it is
available in the major ones), test for @c wxHAS_BITMAPTOGGLEBUTTON to
determine whether it can be used (in addition for possibly testing for
@c wxUSE_TOGGLEBTN which can be set to 0 to explicitly disable support for
this class and wxToggleButton).
This control emits an update UI event. This control emits an update UI event.

View File

@@ -15,6 +15,10 @@
#pragma hdrstop #pragma hdrstop
#endif #endif
#include "wx/tglbtn.h"
#ifdef wxHAS_BITMAPTOGGLEBUTTON
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#include "wx/app.h" #include "wx/app.h"
#endif // WX_PRECOMP #endif // WX_PRECOMP
@@ -22,7 +26,6 @@
#include "testableframe.h" #include "testableframe.h"
#include "wx/uiaction.h" #include "wx/uiaction.h"
#include "wx/artprov.h" #include "wx/artprov.h"
#include "wx/tglbtn.h"
class BitmapToggleButtonTestCase : public CppUnit::TestCase class BitmapToggleButtonTestCase : public CppUnit::TestCase
{ {
@@ -116,4 +119,6 @@ void BitmapToggleButtonTestCase::Value()
CPPUNIT_ASSERT_EQUAL( 0, frame->GetEventCount() ); CPPUNIT_ASSERT_EQUAL( 0, frame->GetEventCount() );
} }
#endif #endif // wxHAS_BITMAPTOGGLEBUTTON
#endif // wxUSE_TOGGLEBTN