X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c98266873908ef84bb38f30f5ec1af401dff020..7c508bca835368f8082791d69dcf7a6db4dba61c:/include/wx/msw/combo.h

diff --git a/include/wx/msw/combo.h b/include/wx/msw/combo.h
index 8478f8cff2..4f350d8f30 100644
--- a/include/wx/msw/combo.h
+++ b/include/wx/msw/combo.h
@@ -18,6 +18,14 @@
 
 #if wxUSE_COMBOCTRL
 
+#if !defined(__WXWINCE__) && wxUSE_TIMER
+    #include "wx/timer.h"
+    #define wxUSE_COMBOCTRL_POPUP_ANIMATION     1
+#else
+    #define wxUSE_COMBOCTRL_POPUP_ANIMATION     0
+#endif
+
+
 // ----------------------------------------------------------------------------
 // Native wxComboCtrl
 // ----------------------------------------------------------------------------
@@ -59,10 +67,16 @@ public:
 
     virtual ~wxComboCtrl();
 
-    virtual void DrawFocusBackground( wxDC& dc, const wxRect& rect, int flags );
+    virtual void PrepareBackground( wxDC& dc, const wxRect& rect, int flags ) const;
+    virtual bool IsKeyPopupToggle(const wxKeyEvent& event) const;
 
     static int GetFeatures() { return wxComboCtrlFeatures::All; }
 
+#if wxUSE_COMBOCTRL_POPUP_ANIMATION
+    virtual bool AnimateShow( const wxRect& rect, int flags );
+    void OnTimerEvent( wxTimerEvent& event );
+#endif
+
 protected:
 
     // customization
@@ -77,6 +91,14 @@ protected:
 private:
     void Init();
 
+#if wxUSE_COMBOCTRL_POPUP_ANIMATION
+    // Popup animation related
+    wxLongLong  m_animStart;
+    wxTimer     m_animTimer;
+    wxRect      m_animRect;
+    int         m_animFlags;
+#endif
+
     DECLARE_EVENT_TABLE()
 
     DECLARE_DYNAMIC_CLASS(wxComboCtrl)