+ /// Updates the view of a level given the selected items of upper level
+ virtual void UpdateLevel( int );
+
+ ///Removes selected nodes on given level
+ virtual void RemoveSelected( int );
+
+ /// Callback for selection change
+ void OnSelectedChanged(wxListEvent& event);
+
+ /// Callback for column click
+ void OnColClick(wxListEvent& event);
+
+ private:
+ /// The struct holding the data for one level
+ /// Holds the wx control and other data
+ /// such as the vector of attribute keys corresponding to the columns
+ struct LevelType
+ {
+ // The List Control
+ wxListCtrl* wxCtrl;
+ wxSplitterWindow* wxSplitter;
+ std::vector<std::string> key;
+ };
+ /// The vector of levels : one for each level of the tree
+ std::vector<LevelType> mLevelList;