]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/univ/listbox.h
applied event speed up patch (752928)
[wxWidgets.git] / include / wx / univ / listbox.h
index 03f87df5c084d947607396c36fe3ff2e106ff7ff..72c9fc48aa0b8b2bc72f9b214aca7ab20b5d2923 100644 (file)
 #define _WX_UNIV_LISTBOX_H_
 
 #ifdef __GNUG__
-    #pragma implementation "univlistbox.h"
+    #pragma interface "univlistbox.h"
 #endif
 
 #include "wx/scrolwin.h"    // for wxScrollHelper
+#include "wx/dynarray.h"
 
 // ----------------------------------------------------------------------------
 // the actions supported by this control
@@ -50,7 +51,7 @@
 // wxListBox: a list of selectable items
 // ----------------------------------------------------------------------------
 
-class wxListBox : public wxListBoxBase, public wxScrollHelper
+class WXDLLEXPORT wxListBox : public wxListBoxBase, public wxScrollHelper
 {
 public:
     // ctors and such
@@ -129,10 +130,10 @@ public:
     void Activate(int item = -1);
 
     // select or unselect the specified or current (if -1) item
-    void Select(bool sel = TRUE, int item = -1);
+    void DoSelect(int item = -1, bool sel = TRUE);
 
     // more readable wrapper
-    void Unselect(int item) { Select(FALSE, item); }
+    void DoUnselect(int item) { DoSelect(item, FALSE); }
 
     // select an item and send a notification about it
     void SelectAndNotify(int item);
@@ -168,6 +169,8 @@ public:
     // let wxColourScheme choose the right colours for us
     virtual bool IsContainerWindow() const { return TRUE; }
 
+    // idle processing
+    virtual void OnInternalIdle();
 protected:
     // geometry
     virtual wxSize DoGetBestClientSize() const;
@@ -182,7 +185,6 @@ protected:
     void Init();
 
     // event handlers
-    void OnIdle(wxIdleEvent& event);
     void OnSize(wxSizeEvent& event);
 
     // common part of Clear() and DoSetItems(): clears everything
@@ -290,12 +292,12 @@ public:
                              bool toggleOnPressAlways = TRUE);
 
     // base class methods
-    virtual bool HandleKey(wxControl *control,
+    virtual bool HandleKey(wxInputConsumer *consumer,
                            const wxKeyEvent& event,
                            bool pressed);
-    virtual bool HandleMouse(wxControl *control,
+    virtual bool HandleMouse(wxInputConsumer *consumer,
                              const wxMouseEvent& event);
-    virtual bool HandleMouseMove(wxControl *control,
+    virtual bool HandleMouseMove(wxInputConsumer *consumer,
                                  const wxMouseEvent& event);
 
 protected: