X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOWxTreeView.cpp;h=cd6e9600a272cc2d637f6423d99b265f8068ac63;hb=2ce9bb440f5e83b24b532cda5626418cc28feacd;hp=474e7f4dafd2a7b2da88ccf96d52d59e344659f5;hpb=f2585049438c3630362b07e6029ddb0130a03818;p=creaImageIO.git diff --git a/src2/creaImageIOWxTreeView.cpp b/src2/creaImageIOWxTreeView.cpp index 474e7f4..cd6e960 100644 --- a/src2/creaImageIOWxTreeView.cpp +++ b/src2/creaImageIOWxTreeView.cpp @@ -24,7 +24,7 @@ namespace creaImageIO // Global sizer wxBoxSizer *sizer = new wxBoxSizer(wxHORIZONTAL); - int ctrl_style = wxLC_REPORT; + int ctrl_style = wxLC_REPORT | wxLC_VRULES; int col_style = wxLIST_FORMAT_LEFT; // Creating the ListCtrl for the levels > 0 (not for Root level) @@ -87,16 +87,10 @@ namespace creaImageIO { tree::Node* node; }; + //===================================================================== - - //===================================================================== - /// - void WxTreeView::UpdateLevel( int level ) + std::vector WxTreeView::GetSelected(int level) { - GimmickDebugMessage(1, - GetTreeHandler()->GetTree().GetLabel() - <<" view : updating level "< sel; @@ -117,7 +111,50 @@ namespace creaImageIO } } } + return sel; + } + + //===================================================================== + + ///Removes selected nodes on given level + void WxTreeView::RemoveSelected( int level ) + { + std::vector sel=GetSelected(level+1); + + std::vector::iterator i; + for (i=sel.begin(); i!=sel.end(); ++i) + { + GimmickDebugMessage(2, + "deleting '" + <<(*i)->GetLabel() + <<"'"<Remove(*i); + } + UpdateLevel(level); + + } + + + //===================================================================== + + //===================================================================== + + /// + void WxTreeView::UpdateLevel( int level ) + { + GimmickDebugMessage(1, + GetTreeHandler()->GetTree().GetLabel() + <<" view : updating level "< sel=GetSelected(level); + + int l = level - 1; + // to speed up inserting we hide the control temporarily GetCtrl(l)->Hide(); GetCtrl(l)->DeleteAllItems(); @@ -179,7 +216,6 @@ namespace creaImageIO <<" view : item selected " <