]> git.saurik.com Git - wxWidgets.git/commitdiff
Add wxAnyButton so the shared class hierarchy of wxButton and wxToggleButton is accurate.
authorRobin Dunn <robin@alldunn.com>
Fri, 4 Nov 2011 03:38:09 +0000 (03:38 +0000)
committerRobin Dunn <robin@alldunn.com>
Fri, 4 Nov 2011 03:38:09 +0000 (03:38 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

interface/wx/anybutton.h [new file with mode: 0644]
interface/wx/button.h
interface/wx/tglbtn.h
interface/wx/timer.h

diff --git a/interface/wx/anybutton.h b/interface/wx/anybutton.h
new file mode 100644 (file)
index 0000000..fa59a53
--- /dev/null
@@ -0,0 +1,208 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        anybutton.h
+// Purpose:     interface of wxAnyButton
+// Author:      wxWidgets team
+// RCS-ID:      $Id: button.h 69135 2011-09-18 04:38:01Z RD $
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#define wxBU_LEFT            0x0040
+#define wxBU_TOP             0x0080
+#define wxBU_RIGHT           0x0100
+#define wxBU_BOTTOM          0x0200
+#define wxBU_ALIGN_MASK      ( wxBU_LEFT | wxBU_TOP | wxBU_RIGHT | wxBU_BOTTOM )
+
+#define wxBU_EXACTFIT        0x0001
+#define wxBU_NOTEXT          0x0002
+
+
+/**
+   @class wxAnyButton
+
+   A class for common button functionality used as the base for the
+   various button classes.
+*/
+class wxAnyButton : public wxControl
+{
+public:
+    wxAnyButton();
+    ~wxAnyButton();
+
+    /**
+        Return the bitmap shown by the button.
+
+        The returned bitmap may be invalid only if the button doesn't show any
+        images.
+
+        @see SetBitmap()
+
+        @since 2.9.1
+     */
+    wxBitmap GetBitmap() const;
+
+    /**
+        Returns the bitmap used when the mouse is over the button, which may be
+        invalid.
+
+        @see SetBitmapCurrent()
+
+        @since 2.9.1 (available as wxBitmapButton::GetBitmapHover() in previous
+            versions)
+    */
+    wxBitmap GetBitmapCurrent() const;
+
+    /**
+        Returns the bitmap for the disabled state, which may be invalid.
+
+        @see SetBitmapDisabled()
+
+        @since 2.9.1 (available in wxBitmapButton only in previous versions)
+    */
+    wxBitmap GetBitmapDisabled() const;
+
+    /**
+        Returns the bitmap for the focused state, which may be invalid.
+
+        @see SetBitmapFocus()
+
+        @since 2.9.1 (available in wxBitmapButton only in previous versions)
+    */
+    wxBitmap GetBitmapFocus() const;
+
+    /**
+        Returns the bitmap for the normal state.
+
+        This is exactly the same as GetBitmap() but uses a name
+        backwards-compatible with wxBitmapButton.
+
+        @see SetBitmap(), SetBitmapLabel()
+
+        @since 2.9.1 (available in wxBitmapButton only in previous versions)
+    */
+    wxBitmap GetBitmapLabel() const;
+
+    /**
+        Returns the bitmap for the pressed state, which may be invalid.
+
+        @see SetBitmapPressed()
+
+        @since 2.9.1 (available as wxBitmapButton::GetBitmapSelected() in
+            previous versions)
+    */
+    wxBitmap GetBitmapPressed() const;
+
+    
+    /**
+        Sets the bitmap to display in the button.
+
+        The bitmap is displayed together with the button label. This method
+        sets up a single bitmap which is used in all button states, use
+        SetBitmapDisabled(), SetBitmapPressed(), SetBitmapCurrent() or
+        SetBitmapFocus() to change the individual images used in different
+        states.
+
+        @param bitmap
+            The bitmap to display in the button. May be invalid to remove any
+            currently displayed bitmap.
+        @param dir
+            The position of the bitmap inside the button. By default it is
+            positioned to the left of the text, near to the left button border.
+            Other possible values include wxRIGHT, wxTOP and wxBOTTOM.
+
+        @see SetBitmapPosition(), SetBitmapMargins()
+
+        @since 2.9.1
+     */
+    void SetBitmap(const wxBitmap& bitmap, wxDirection dir = wxLEFT);
+
+    /**
+        Sets the bitmap to be shown when the mouse is over the button.
+
+        @see GetBitmapCurrent()
+
+        @since 2.9.1 (available as wxBitmapButton::SetBitmapHover() in previous
+            versions)
+    */
+    void SetBitmapCurrent(const wxBitmap& bitmap);
+
+    /**
+        Sets the bitmap for the disabled button appearance.
+
+        @see GetBitmapDisabled(), SetBitmapLabel(),
+             SetBitmapPressed(), SetBitmapFocus()
+
+        @since 2.9.1 (available in wxBitmapButton only in previous versions)
+    */
+    void SetBitmapDisabled(const wxBitmap& bitmap);
+
+    /**
+        Sets the bitmap for the button appearance when it has the keyboard
+        focus.
+
+        @see GetBitmapFocus(), SetBitmapLabel(),
+             SetBitmapPressed(), SetBitmapDisabled()
+
+        @since 2.9.1 (available in wxBitmapButton only in previous versions)
+    */
+    void SetBitmapFocus(const wxBitmap& bitmap);
+
+    /**
+        Sets the bitmap label for the button.
+
+        @remarks This is the bitmap used for the unselected state, and for all
+                 other states if no other bitmaps are provided.
+
+        @see SetBitmap(), GetBitmapLabel()
+
+        @since 2.9.1 (available in wxBitmapButton only in previous versions)
+    */
+    void SetBitmapLabel(const wxBitmap& bitmap);
+
+    /**
+        Sets the bitmap for the selected (depressed) button appearance.
+
+        @since 2.9.1 (available as wxBitmapButton::SetBitmapSelected() in
+            previous versions)
+    */
+    void SetBitmapPressed(const wxBitmap& bitmap);
+    
+
+    /**
+        Get the margins between the bitmap and the text of the button.
+
+        @see SetBitmapMargins()
+
+        @since 2.9.1
+     */
+    wxSize GetBitmapMargins();
+
+    /**
+        Set the margins between the bitmap and the text of the button.
+
+        This method is currently only implemented under MSW. If it is not
+        called, default margin is used around the bitmap.
+
+        @see SetBitmap(), SetBitmapPosition()
+
+        @since 2.9.1
+     */
+    //@{
+    void SetBitmapMargins(wxCoord x, wxCoord y);
+    void SetBitmapMargins(const wxSize& sz);
+    //@}
+
+    /**
+        Set the position at which the bitmap is displayed.
+
+        This method should only be called if the button does have an associated
+        bitmap.
+
+        @since 2.9.1
+
+        @param dir
+            Direction in which the bitmap should be positioned, one of wxLEFT,
+            wxRIGHT, wxTOP or wxBOTTOM.
+     */
+    void SetBitmapPosition(wxDirection dir);
+};
+
index 9f9db07fba6c4145dd6d9e6cb0fc7efb1ad53b0c..30c8e5f337170b0730f281dac32b33213f26b8d5 100644 (file)
@@ -6,15 +6,6 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#define wxBU_LEFT            0x0040
-#define wxBU_TOP             0x0080
-#define wxBU_RIGHT           0x0100
-#define wxBU_BOTTOM          0x0200
-#define wxBU_ALIGN_MASK      ( wxBU_LEFT | wxBU_TOP | wxBU_RIGHT | wxBU_BOTTOM )
-
-#define wxBU_EXACTFIT        0x0001
-#define wxBU_NOTEXT          0x0002
-
 
 /**
     @class wxButton
 
     @see wxBitmapButton
 */
-class wxButton : public wxControl
+class wxButton : public wxAnyButton
 {
 public:
     /**
@@ -186,77 +177,6 @@ public:
      */
     bool GetAuthNeeded() const;
 
-    /**
-        Return the bitmap shown by the button.
-
-        The returned bitmap may be invalid only if the button doesn't show any
-        images.
-
-        @see SetBitmap()
-
-        @since 2.9.1
-     */
-    wxBitmap GetBitmap() const;
-
-    /**
-        Returns the bitmap used when the mouse is over the button, which may be
-        invalid.
-
-        @see SetBitmapCurrent()
-
-        @since 2.9.1 (available as wxBitmapButton::GetBitmapHover() in previous
-            versions)
-    */
-    wxBitmap GetBitmapCurrent() const;
-
-    /**
-        Returns the bitmap for the disabled state, which may be invalid.
-
-        @see SetBitmapDisabled()
-
-        @since 2.9.1 (available in wxBitmapButton only in previous versions)
-    */
-    wxBitmap GetBitmapDisabled() const;
-
-    /**
-        Returns the bitmap for the focused state, which may be invalid.
-
-        @see SetBitmapFocus()
-
-        @since 2.9.1 (available in wxBitmapButton only in previous versions)
-    */
-    wxBitmap GetBitmapFocus() const;
-
-    /**
-        Returns the bitmap for the normal state.
-
-        This is exactly the same as GetBitmap() but uses a name
-        backwards-compatible with wxBitmapButton.
-
-        @see SetBitmap(), SetBitmapLabel()
-
-        @since 2.9.1 (available in wxBitmapButton only in previous versions)
-    */
-    wxBitmap GetBitmapLabel() const;
-
-    /**
-        Returns the bitmap for the pressed state, which may be invalid.
-
-        @see SetBitmapPressed()
-
-        @since 2.9.1 (available as wxBitmapButton::GetBitmapSelected() in
-            previous versions)
-    */
-    wxBitmap GetBitmapPressed() const;
-
-    /**
-        Get the margins between the bitmap and the text of the button.
-
-        @see SetBitmapMargins()
-
-        @since 2.9.1
-     */
-    wxSize GetBitmapMargins();
 
     /**
         Returns the default size for the buttons. It is advised to make all the dialog
@@ -285,108 +205,6 @@ public:
      */
     void SetAuthNeeded(bool needed = true);
 
-    /**
-        Sets the bitmap to display in the button.
-
-        The bitmap is displayed together with the button label. This method
-        sets up a single bitmap which is used in all button states, use
-        SetBitmapDisabled(), SetBitmapPressed(), SetBitmapCurrent() or
-        SetBitmapFocus() to change the individual images used in different
-        states.
-
-        @param bitmap
-            The bitmap to display in the button. May be invalid to remove any
-            currently displayed bitmap.
-        @param dir
-            The position of the bitmap inside the button. By default it is
-            positioned to the left of the text, near to the left button border.
-            Other possible values include wxRIGHT, wxTOP and wxBOTTOM.
-
-        @see SetBitmapPosition(), SetBitmapMargins()
-
-        @since 2.9.1
-     */
-    void SetBitmap(const wxBitmap& bitmap, wxDirection dir = wxLEFT);
-
-    /**
-        Sets the bitmap to be shown when the mouse is over the button.
-
-        @see GetBitmapCurrent()
-
-        @since 2.9.1 (available as wxBitmapButton::SetBitmapHover() in previous
-            versions)
-    */
-    void SetBitmapCurrent(const wxBitmap& bitmap);
-
-    /**
-        Sets the bitmap for the disabled button appearance.
-
-        @see GetBitmapDisabled(), SetBitmapLabel(),
-             SetBitmapPressed(), SetBitmapFocus()
-
-        @since 2.9.1 (available in wxBitmapButton only in previous versions)
-    */
-    void SetBitmapDisabled(const wxBitmap& bitmap);
-
-    /**
-        Sets the bitmap for the button appearance when it has the keyboard
-        focus.
-
-        @see GetBitmapFocus(), SetBitmapLabel(),
-             SetBitmapPressed(), SetBitmapDisabled()
-
-        @since 2.9.1 (available in wxBitmapButton only in previous versions)
-    */
-    void SetBitmapFocus(const wxBitmap& bitmap);
-
-    /**
-        Sets the bitmap label for the button.
-
-        @remarks This is the bitmap used for the unselected state, and for all
-                 other states if no other bitmaps are provided.
-
-        @see SetBitmap(), GetBitmapLabel()
-
-        @since 2.9.1 (available in wxBitmapButton only in previous versions)
-    */
-    void SetBitmapLabel(const wxBitmap& bitmap);
-
-    /**
-        Sets the bitmap for the selected (depressed) button appearance.
-
-        @since 2.9.1 (available as wxBitmapButton::SetBitmapSelected() in
-            previous versions)
-    */
-    void SetBitmapPressed(const wxBitmap& bitmap);
-
-    /**
-        Set the margins between the bitmap and the text of the button.
-
-        This method is currently only implemented under MSW. If it is not
-        called, default margin is used around the bitmap.
-
-        @see SetBitmap(), SetBitmapPosition()
-
-        @since 2.9.1
-     */
-    //@{
-    void SetBitmapMargins(wxCoord x, wxCoord y);
-    void SetBitmapMargins(const wxSize& sz);
-    //@}
-
-    /**
-        Set the position at which the bitmap is displayed.
-
-        This method should only be called if the button does have an associated
-        bitmap.
-
-        @since 2.9.1
-
-        @param dir
-            Direction in which the bitmap should be positioned, one of wxLEFT,
-            wxRIGHT, wxTOP or wxBOTTOM.
-     */
-    void SetBitmapPosition(wxDirection dir);
 
     /**
         This sets the button to be the default item in its top-level window
index 866be9765e9b55c0259d08cfa486019df2a86994..9d73b2aae08d60818bca1a1f40359712c1fe7169 100644 (file)
@@ -28,7 +28,7 @@
 
     @see wxCheckBox, wxButton, wxBitmapToggleButton
 */
-class wxToggleButton : public wxControl
+class wxToggleButton : public wxAnyButton
 {
 public:
     /**
@@ -126,7 +126,7 @@ public:
     @category{ctrl}
     @appearance{bitmaptogglebutton.png}
 */
-class wxBitmapToggleButton : public wxControl
+class wxBitmapToggleButton : public wxToggleButton
 {
 public:
     /**
index 07fbccff35cc09cf566f147cebf313c3d8da367e..054e890057f9bf26988e56d96c5e2a148aa7bd50 100644 (file)
@@ -198,6 +198,9 @@ public:
 class wxTimerEvent : public wxEvent
 {
 public:
+    wxTimerEvent();
+    wxTimerEvent(wxTimer& timer);
+
     /**
         Returns the interval of the timer which generated this event.
     */