// NB: all the following flags are for compatbility only and will be removed in
 //     next versions
 
-// flags for deprecated `Expand(int action)'
-enum
-{
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // flags for deprecated InsertItem() variant
 #define wxTREE_INSERT_FIRST 0xFFFF0001
 #define wxTREE_INSERT_LAST  0xFFFF0002
   // --------
   wxTreeCtrl() { Init(); }
 
-  wxTreeCtrl(wxWindow *parent, wxWindowID id = -1,
+  wxTreeCtrl(wxWindow *parent, wxWindowID id = wxID_ANY,
              const wxPoint& pos = wxDefaultPosition,
              const wxSize& size = wxDefaultSize,
              long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
 
   virtual ~wxTreeCtrl();
 
-    bool Create(wxWindow *parent, wxWindowID id = -1,
+    bool Create(wxWindow *parent, wxWindowID id = wxID_ANY,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
     // number of children
     // ------------------
 
-        // if 'recursively' is FALSE, only immediate children count, otherwise
+        // if 'recursively' is false, only immediate children count, otherwise
         // the returned number is the number of all items in this branch
-    size_t GetChildrenCount(const wxTreeItemId& item, bool recursively = TRUE);
+    size_t GetChildrenCount(const wxTreeItemId& item, bool recursively = true);
 
     // navigation
     // ----------
 
-    // wxTreeItemId.IsOk() will return FALSE if there is no such item
+    // wxTreeItemId.IsOk() will return false if there is no such item
 
         // get the root tree item
     wxTreeItemId GetRootItem() const;
         // edited simultaneously)
     wxTextCtrl* GetEditControl() const;
         // end editing and accept or discard the changes to item label
-    void EndEditLabel(const wxTreeItemId& item, bool discardChanges = FALSE);
+    void EndEditLabel(const wxTreeItemId& item, bool discardChanges = false);
 
         // sort the children of this item using the specified callback function
         // (it should return -1, 0 or +1 as usual), if it's not specified
 
 // NB: all the following flags are for compatbility only and will be removed in
 //     next versions
 
-// flags for deprecated `Expand(int action)'
-enum
-{
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // flags for deprecated InsertItem() variant
 #define wxTREE_INSERT_FIRST 0xFFFF0001
 #define wxTREE_INSERT_LAST  0xFFFF0002
   // --------
   wxTreeCtrl() { Init(); }
 
-  wxTreeCtrl(wxWindow *parent, wxWindowID id = -1,
+  wxTreeCtrl(wxWindow *parent, wxWindowID id = wxID_ANY,
              const wxPoint& pos = wxDefaultPosition,
              const wxSize& size = wxDefaultSize,
              long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
 
   virtual ~wxTreeCtrl();
 
-    bool Create(wxWindow *parent, wxWindowID id = -1,
+    bool Create(wxWindow *parent, wxWindowID id = wxID_ANY,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
     // number of children
     // ------------------
 
-        // if 'recursively' is FALSE, only immediate children count, otherwise
+        // if 'recursively' is false, only immediate children count, otherwise
         // the returned number is the number of all items in this branch
-    size_t GetChildrenCount(const wxTreeItemId& item, bool recursively = TRUE);
+    size_t GetChildrenCount(const wxTreeItemId& item, bool recursively = true);
 
     // navigation
     // ----------
 
-    // wxTreeItemId.IsOk() will return FALSE if there is no such item
+    // wxTreeItemId.IsOk() will return false if there is no such item
 
         // get the root tree item
     wxTreeItemId GetRootItem() const;
         // edited simultaneously)
     wxTextCtrl* GetEditControl() const;
         // end editing and accept or discard the changes to item label
-    void EndEditLabel(const wxTreeItemId& item, bool discardChanges = FALSE);
+    void EndEditLabel(const wxTreeItemId& item, bool discardChanges = false);
 
         // sort the children of this item using the specified callback function
         // (it should return -1, 0 or +1 as usual), if it's not specified
 
     wxTREE_NEXT_ROOT                   // Retrieves the first child item of the root item of which the specified item is a part.
 };
 
-// Flags for ExpandItem
-enum {
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // Flags for InsertItem
 enum {
     wxTREE_INSERT_LAST = -1,
    /*
     * Public interface
     */
-    
+
     // creation
     // --------
     wxTreeCtrl();
-    
+
     inline wxTreeCtrl(wxWindow *parent, wxWindowID id = -1,
         const wxPoint& pos = wxDefaultPosition,
         const wxSize& size = wxDefaultSize,
         Create(parent, id, pos, size, style, validator, name);
     }
     ~wxTreeCtrl();
-    
-    bool Create(wxWindow *parent, wxWindowID id = -1,
+
+    bool Create(wxWindow *parent, wxWindowID id = wxID_ANY,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxTR_HAS_BUTTONS|wxTR_LINES_AT_ROOT,
                 const wxValidator& validator = wxDefaultValidator,
                 const wxString& name = "wxTreeCtrl");
-    
+
     // accessors
     // ---------
       //
     long GetItemData(long item) const;
     bool SetItemData(long item, long data);
       // convenience function
-    bool IsItemExpanded(long item) 
-    { 
-      return (GetItemState(item, wxTREE_STATE_EXPANDED) & 
+    bool IsItemExpanded(long item)
+    {
+      return (GetItemState(item, wxTREE_STATE_EXPANDED) &
                            wxTREE_STATE_EXPANDED) != 0;
     }
 
       // bounding rect
-    bool GetItemRect(long item, wxRect& rect, bool textOnly = FALSE) const;
+    bool GetItemRect(long item, wxRect& rect, bool textOnly = false) const;
       //
     wxTextCtrl* GetEditControl() const;
-    
+
     // operations
     // ----------
       // adding/deleting items
       // If image > -1 and selImage == -1, the same image is used for
       // both selected and unselected items.
     long InsertItem(long parent, const wxString& label,
-                    int image = -1, int selImage = -1, 
+                    int image = -1, int selImage = -1,
                     long insertAfter = wxTREE_INSERT_LAST);
 
       // changing item state
     bool ToggleItem(long item)   { return ExpandItem(item, wxTREE_EXPAND_TOGGLE);   }
       // common interface for {Expand|Collapse|Toggle}Item
     bool ExpandItem(long item, int action);
-    
-      // 
+
+      //
     bool SelectItem(long item);
     bool ScrollTo(long item);
     bool DeleteAllItems();
     //  wxImageList *CreateDragImage(long item);
     bool SortChildren(long item);
     bool EnsureVisible(long item);
-    
+
     void Command(wxCommandEvent& event) { ProcessCommand(event); };
 
 protected:
 
     wxTREE_NEXT_ROOT                   // Retrieves the first child item of the root item of which the specified item is a part.
 };
 
-// Flags for ExpandItem
-enum {
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // Flags for InsertItem
 enum {
     wxTREE_INSERT_LAST = -1,
    /*
     * Public interface
     */
-    
+
     // creation
     // --------
     wxTreeCtrl();
-    
-    inline wxTreeCtrl(wxWindow *parent, wxWindowID id = -1,
+
+    inline wxTreeCtrl(wxWindow *parent, wxWindowID id = wxID_ANY,
         const wxPoint& pos = wxDefaultPosition,
         const wxSize& size = wxDefaultSize,
         long style = wxTR_HAS_BUTTONS|wxTR_LINES_AT_ROOT,
         Create(parent, id, pos, size, style, validator, name);
     }
     ~wxTreeCtrl();
-    
-    bool Create(wxWindow *parent, wxWindowID id = -1,
+
+    bool Create(wxWindow *parent, wxWindowID id = wxID_ANY,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxTR_HAS_BUTTONS|wxTR_LINES_AT_ROOT,
                 const wxValidator& validator = wxDefaultValidator,
                 const wxString& name = "wxTreeCtrl");
-    
+
     // accessors
     // ---------
       //
     long GetItemData(long item) const;
     bool SetItemData(long item, long data);
       // convenience function
-    bool IsItemExpanded(long item) 
-    { 
-      return (GetItemState(item, wxTREE_STATE_EXPANDED) & 
-                           wxTREE_STATE_EXPANDED) != 0;
+    bool IsItemExpanded(long item)
+    {
+        return (GetItemState(item, wxTREE_STATE_EXPANDED) &
+                             wxTREE_STATE_EXPANDED) != 0;
     }
 
       // bounding rect
-    bool GetItemRect(long item, wxRect& rect, bool textOnly = FALSE) const;
+    bool GetItemRect(long item, wxRect& rect, bool textOnly = false) const;
       //
     wxTextCtrl* GetEditControl() const;
-    
+
     // operations
     // ----------
       // adding/deleting items
       // If image > -1 and selImage == -1, the same image is used for
       // both selected and unselected items.
     long InsertItem(long parent, const wxString& label,
-                    int image = -1, int selImage = -1, 
+                    int image = -1, int selImage = -1,
                     long insertAfter = wxTREE_INSERT_LAST);
 
       // changing item state
     bool ToggleItem(long item)   { return ExpandItem(item, wxTREE_EXPAND_TOGGLE);   }
       // common interface for {Expand|Collapse|Toggle}Item
     bool ExpandItem(long item, int action);
-    
-      // 
+
+      //
     bool SelectItem(long item);
     bool ScrollTo(long item);
     bool DeleteAllItems();
     //  wxImageList *CreateDragImage(long item);
     bool SortChildren(long item);
     bool EnsureVisible(long item);
-    
+
     void Command(wxCommandEvent& event) { ProcessCommand(event); };
 
 protected:
 
 // NB: all the following flags are for compatbility only and will be removed in the
 //     next versions
 
-// flags for deprecated `Expand(int action)'
-enum
-{
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // flags for deprecated InsertItem() variant (their values are the same as of
 // TVI_FIRST and TVI_LAST)
 #define wxTREE_INSERT_FIRST 0xFFFF0001
 
 // they're equivalent
 class wxTreeItemData;
 
-// flags for deprecated `Expand(int action)'
-enum
-{
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // flags for deprecated InsertItem() variant
 #define wxTREE_INSERT_FIRST 0xFFFF0001
 #define wxTREE_INSERT_LAST  0xFFFF0002
     wxTreeCtrl() { Init(); }
 
     wxTreeCtrl( wxWindow*          pParent
-               ,wxWindowID         vId = -1
+               ,wxWindowID         vId = wxID_ANY
                ,const wxPoint&     rPos = wxDefaultPosition
                ,const wxSize&      rSize = wxDefaultSize
                ,long               lStyle = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT
     virtual ~wxTreeCtrl();
 
     bool Create( wxWindow*          pParent
-                ,wxWindowID         vId = -1
+                ,wxWindowID         vId = wxID_ANY
                 ,const wxPoint&     rPos = wxDefaultPosition
                 ,const wxSize&      rSize = wxDefaultSize
                 ,long               lStyle = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT
 
 // NB: all the following flags are for compatbility only and will be removed in the
 //     next versions
 
-// flags for deprecated `Expand(int action)'
-enum
-{
-    wxTREE_EXPAND_EXPAND,
-    wxTREE_EXPAND_COLLAPSE,
-    wxTREE_EXPAND_COLLAPSE_RESET,
-    wxTREE_EXPAND_TOGGLE
-};
-
 // flags for deprecated InsertItem() variant (their values are the same as of
 // TVI_FIRST and TVI_LAST)
 #define wxTREE_INSERT_FIRST 0xFFFF0001
 
 #include "wx/event.h"
 #include "wx/dynarray.h"
 
+// flags for deprecated `Expand(int action)', will be removed in next versions
+enum
+{
+    wxTREE_EXPAND_EXPAND,
+    wxTREE_EXPAND_COLLAPSE,
+    wxTREE_EXPAND_COLLAPSE_RESET,
+    wxTREE_EXPAND_TOGGLE
+};
+
 // ----------------------------------------------------------------------------
 // wxTreeItemId identifies an element of the tree. In this implementation, it's
 // just a trivial wrapper around Win32 HTREEITEM or a pointer to some private