#include <creaWx.h>
#include <wx/listctrl.h>
+#include <wx/splitter.h>
//#include <vector>
namespace creaImageIO
/// Updates the view of a level given the selected items of upper level
virtual void UpdateLevel( int );
-
- /// Callback for selection change
- void OnSelected(wxListEvent& event);
+ ///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:
+ 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
+ // The List Control
wxListCtrl* wxCtrl;
+ wxSplitterWindow* wxSplitter;
std::vector<std::string> key;
};
/// The vector of levels : one for each level of the tree
/// return the wxListCtrl of one level
wxListCtrl* GetCtrl(int l) { return mLevelList[l].wxCtrl; }
-
+ /// return the wxSplitter of one level
+ wxSplitterWindow* GetSplitter(int l) { return mLevelList[l].wxSplitter; }
+ //Returns the maximum number of levels
+ int GetNumberOfLevels(){ return mLevelList.size(); }
+ /// Gets the user selected data from the level passed as a parameter
+ std::vector<tree::Node*> GetSelected(int level);
+ ///Validates the selected images
+ void ValidateSelectedImages();
+ ///Gets selected filenames
+ void GetSelectedAsString(std::vector<std::string>&s);
+ /// Updates the view of a level given the selected items of upper level
+ /// Recursive method
+ virtual void RecursiveUpdateLevel( int );
+
+
+ /// Currently Selected Column
+ int mColumnSelected;
+ ///Boolean that defines the direction of the organization
+ ///True is ascending order and false is descending
+ bool mDirection;
+
+
DECLARE_EVENT_TABLE()
};
// EO class WxTreeView
//=====================================================================
-
+
+
+
} // EO namespace creaImageIO