]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/choice.h
Fix memory leak by letting the base class version handle the
[wxWidgets.git] / include / wx / msw / choice.h
index ce9d5b58e2a69a4b6579b09b52e8366c2d21a76a..3c4e4b015c1a9fd907166d9acc8dfbc2149cd7ed 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     01/02/97
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart
-// Licence:     wxWindows licence
+// Licence:     wxWidgets licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_CHOICE_H_
@@ -83,7 +83,7 @@ public:
 
     // MSW only
     virtual bool MSWCommand(WXUINT param, WXWORD id);
-    long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
+    WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
     virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
             WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
 
@@ -101,8 +101,22 @@ protected:
                            int width, int height,
                            int sizeFlags = wxSIZE_AUTO);
 
-    // get the real height of the control
-    int GetVisibleHeight() const;
+    virtual bool MSWShouldPreProcessMessage(WXMSG *pMsg);
+
+    virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const;
+
+    // update the height of the drop down list to fit the number of items we
+    // have (without changing the visible height)
+    void UpdateVisibleHeight();
+
+    // create and initialize the control
+    bool CreateAndInit(wxWindow *parent, wxWindowID id,
+                       const wxPoint& pos,
+                       const wxSize& size,
+                       int n, const wxString choices[],
+                       long style,
+                       const wxValidator& validator,
+                       const wxString& name);
 
     // free all memory we have (used by Clear() and dtor)
     void Free();