]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/combo.h
Add forceTrueColour option to SetBestVisual().
[wxWidgets.git] / include / wx / combo.h
index 8aa155ed71349d2023318901b7b3e1ef515957a7..886ea13a659a6fe867747d1123fc43d987eaa75c 100644 (file)
@@ -85,7 +85,9 @@ enum
     // Internal use: Set wxTAB_TRAVERSAL to parent when popup is dismissed
     wxCC_IFLAG_PARENT_TAB_TRAVERSAL = 0x0800,
     // Internal use: Secondary popup window type should be used (if available).
-    wxCC_IFLAG_USE_ALT_POPUP        = 0x1000
+    wxCC_IFLAG_USE_ALT_POPUP        = 0x1000,
+    // Internal use: Skip popup animation.
+    wxCC_IFLAG_DISABLE_POPUP_ANIM   = 0x2000
 };
 
 
@@ -322,6 +324,15 @@ public:
             m_iFlags &= ~wxCC_IFLAG_USE_ALT_POPUP;
     }
 
+    // Call with false to disable popup animation, if any.
+    void EnablePopupAnimation( bool enable = true )
+    {
+        if ( enable )
+            m_iFlags &= ~wxCC_IFLAG_DISABLE_POPUP_ANIM;
+        else
+            m_iFlags |= wxCC_IFLAG_DISABLE_POPUP_ANIM;
+    }
+
     //
     // Utilies needed by the popups or native implementations
     //
@@ -383,6 +394,9 @@ public:
 
     wxByte GetPopupWindowState() const { return m_popupWinState; }
 
+    // Set value returned by GetMainWindowOfCompositeControl
+    void SetCtrlMainWnd( wxWindow* wnd ) { m_mainCtrlWnd = wnd; }
+
 protected:
 
     //
@@ -405,8 +419,14 @@ protected:
     // Installs standard input handler to combo (and optionally to the textctrl)
     void InstallInputHandlers();
 
+    // flags for DrawButton()
+    enum
+    {
+        Draw_PaintBg = 1
+    };
+
     // Draws dropbutton. Using wxRenderer or bitmaps, as appropriate.
-    void DrawButton( wxDC& dc, const wxRect& rect, bool paintBg = true );
+    void DrawButton( wxDC& dc, const wxRect& rect, int flags = Draw_PaintBg );
 
     // Call if cursor is on button area or mouse is captured for the button.
     //bool HandleButtonMouseEvent( wxMouseEvent& event, bool isInside );
@@ -481,6 +501,9 @@ protected:
     virtual void DoSetToolTip( wxToolTip *tip );
 #endif
 
+    virtual wxWindow *GetMainWindowOfCompositeControl()
+        { return m_mainCtrlWnd; }
+
     // This is used when m_text is hidden (readonly).
     wxString                m_valueString;
 
@@ -509,6 +532,9 @@ protected:
     // this is for the popup window
     wxEvtHandler*           m_popupWinEvtHandler;
 
+    // main (ie. topmost) window of a composite control (default = this)
+    wxWindow*               m_mainCtrlWnd;
+
     // used to prevent immediate re-popupping incase closed popup
     // by clicking on the combo control (needed because of inconsistent
     // transient implementation across platforms).