X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a290fa5a7deebe9d96c0c0089d18e27d4bd9b624..86ac84b8ce086e6bbda58f422d41f84268606e35:/include/wx/univ/checkbox.h?ds=sidebyside diff --git a/include/wx/univ/checkbox.h b/include/wx/univ/checkbox.h index c7aa666d15..aaa1dee616 100644 --- a/include/wx/univ/checkbox.h +++ b/include/wx/univ/checkbox.h @@ -12,10 +12,6 @@ #ifndef _WX_UNIV_CHECKBOX_H_ #define _WX_UNIV_CHECKBOX_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "univcheckbox.h" -#endif - #include "wx/button.h" // for wxStdButtonInputHandler // ---------------------------------------------------------------------------- @@ -32,12 +28,7 @@ // wxCheckBox // ---------------------------------------------------------------------------- -// X11 headers may define this -#ifdef Status -#undef Status -#endif - -class WXDLLEXPORT wxCheckBox : public wxCheckBoxBase +class WXDLLIMPEXP_CORE wxCheckBox : public wxCheckBoxBase { public: // checkbox constants @@ -54,7 +45,7 @@ public: { Status_Checked, Status_Unchecked, - Status_Unknown, + Status_3rdState, Status_Max }; @@ -101,16 +92,23 @@ public: // overridden base class virtuals virtual bool IsPressed() const { return m_isPressed; } - virtual bool HasTransparentBackground() { return true; } - -protected: virtual bool PerformAction(const wxControlAction& action, long numArg = -1, const wxString& strArg = wxEmptyString); - virtual void DoDraw(wxControlRenderer *renderer); - virtual wxSize DoGetBestClientSize() const; virtual bool CanBeHighlighted() const { return true; } + virtual wxInputHandler *CreateStdInputHandler(wxInputHandler *handlerDef); + virtual wxInputHandler *DoGetStdInputHandler(wxInputHandler *handlerDef) + { + return CreateStdInputHandler(handlerDef); + } + +protected: + virtual void DoSet3StateValue(wxCheckBoxState WXUNUSED(state)); + virtual wxCheckBoxState DoGet3StateValue() const; + + virtual void DoDraw(wxControlRenderer *renderer); + virtual wxSize DoGetBestClientSize() const; // get the size of the bitmap using either the current one or the default // one (query renderer then) @@ -149,20 +147,4 @@ private: DECLARE_DYNAMIC_CLASS(wxCheckBox) }; -// ---------------------------------------------------------------------------- -// wxStdCheckboxInputHandler: handles the mouse events for the check and radio -// boxes (handling the keyboard input is simple, but its handling differs a -// lot between GTK and MSW, so a new class should be derived for this) -// ---------------------------------------------------------------------------- - -class WXDLLEXPORT wxStdCheckboxInputHandler : public wxStdButtonInputHandler -{ -public: - wxStdCheckboxInputHandler(wxInputHandler *inphand); - - // we have to override this one as wxStdButtonInputHandler version works - // only with the buttons - virtual bool HandleActivation(wxInputConsumer *consumer, bool activated); -}; - #endif // _WX_UNIV_CHECKBOX_H_