/// Destructor
WxGimmickView::~WxGimmickView()
{
+ // stop the viewer before application exit.
+ mViewer->StopPlayer();
GimmickDebugMessage(1,"WxGimmickView::~WxGimmickView"
<<std::endl);
}
}
//======================================================================
- /// Returns the selected Images so that they comply with the given parameter(4D)
void WxGimmickView::GetSelectedImages(std::vector<vtkImageData*>& s, int dim)
{
- int level=GetTreeViewMap()["Local database"]->GetNumberOfLevels();
- std::vector<tree::Node*> im=GetTreeViewMap()["Local database"]->GetSelected(level+1);
- ReadImagesNotThreaded(s,im,dim);
+ std::vector<std::string> files;
+ GetTreeViewMap()["Local database"]->GetSelectedAsString(files);
+ ReadImagesNotThreaded(s,files,dim);
}
//======================================================================
- /// Returns the selected Images so that they comply with the given parameter(4D)
+
+ //======================================================================
void WxGimmickView::GetSelectedFiles(std::vector<std::string>& s)
{
GetTreeViewMap()["Local database"]->GetSelectedAsString(s);
}
+ //======================================================================
+
+ //======================================================================
+ void WxGimmickView::GetImages(int dim,
+ const std::vector<std::string>& files,
+ std::vector<vtkImageData*>& s)
+ {
+ ReadImagesNotThreaded(s,files,dim);
+ }
+ //======================================================================
+
+
//=================================================
void WxGimmickView::CreateIconList()
{
{
bool recurse = false;
+
if (wxMessageBox(_T("Recurse into sub-directories ?"),
_T("Scan directory"),
wxYES_NO,this ) == wxYES)
//=================================================
//=================================================
- void WxGimmickView::OnSelectionChange(std::vector<tree::Node*>& sel, bool isSelection, int selection, bool needProcess)
+ void WxGimmickView::OnSelectionChange(const std::vector<tree::Node*>& sel, bool isSelection, int selection, bool needProcess)
{
GimmickDebugMessage(5,
"WxGimmickView::OnSelectionChange"
}
else if(needProcess)
{
- ClearStatus();
- std::vector<tree::Node*>::iterator i;
+ ResetExtent();
+ std::vector<tree::Node*>::const_iterator i;
for(i=sel.begin();i!=sel.end()&&valid;++i)
{
valid= ValidateSelected((*i),
}
else
{
- ClearStatus();
- std::vector<tree::Node*>::iterator i;
+ ResetExtent();
+ std::vector<tree::Node*>::const_iterator i;
for(i=sel.begin();i!=sel.end()&&valid;++i)
{
valid= ValidateSelected((*i),
//==================================================
///Reads Images (Threaded)
- void WxGimmickView::ReadImageThreaded(std::vector<tree::Node*> sel)
+ void WxGimmickView::ReadImageThreaded(const std::vector<tree::Node*>& sel)
{
GimmickDebugMessage(5,
"ReadImageThreaded"
mCurImageItemToShow = sel.front();
pointers.clear();
int index = 0;
- std::vector<tree::Node*>::iterator selected;
+ std::vector<tree::Node*>::const_iterator selected;
for(selected=sel.begin();selected!=sel.end();++selected)
{
GimmickDebugMessage(5,
pointers.push_back(new ImagePointerHolder(GetDefaultImage()));
mViewer->SetImageVector(pointers);
mViewer->RefreshIfNecessary();
- ClearStatus();
+ ResetExtent();
}
//=================================================
{
//TODO Select current tree handler
wxBusyCursor busy;
- GetTreeViewMap()["Local database"]->RemoveSelected(1);
+ GetTreeViewMap()["Local database"]->RemoveSelected();
+
ClearSelection();
}
//=================================================
{
char mess[200];
- sprintf(mess,"%i dirs - %i files - %i handled - %i added",
+
+ sprintf(mess,"%i dirs : %i files :\n %i handled - %i added",
p.GetNumberScannedDirs(),
p.GetNumberScannedFiles(),
p.GetNumberHandledFiles(),