/// Callback for column click
void OnColClick(wxListEvent& event);
+ /// Callback for first item edition
+ void OnBeginLabelEdit(wxListEvent& event);
+
+ /// Callback when first item edition ends
+ void OnEndLabelEdit(wxListEvent& event);
+
private:
/// The struct holding the data for one level
/// Holds the wx control and other data
/// Updates the view of a level given the selected items of upper level
/// Recursive method
virtual void RecursiveUpdateLevel( int );
+ ///Sets the color of a selected item
+ void SetColor(int level);
+ ///Creates the color palette for the first level
+ void CreateColorPalette();
+ ///Selects the lowest level (images)
+ void SelectLowerLevel();
/// Currently Selected Column
bool mDirection;
///The last selected item on the list
long mLastSelected;
-
-
+ ///The last selection of nodes (for every level, except the last)
+ std::vector<tree::Node*> mSelected;
+ ///The last selection of nodes (for the last level)
+ std::vector<tree::Node*> mLastLevelSelected;
+ ///The color map
+ typedef std::map<tree::Node*,wxColour> ColorMap;
+ typedef std::pair<tree::Node*,wxColour> NodeColorPair;
+ ColorMap mColorMap;
+ ///Initial color palette
+ std::vector<std::string> mColorPalette;
+ ///Boolean declaring if the last level selection has been made
+ bool mSelectionMade;
+ bool mProcess;
DECLARE_EVENT_TABLE()
};