]> Creatis software - creaContours.git/blobdiff - bbtk/src/bbCreaContournDimensions.cxx
3384 SetViewerWindowColorLevel box
[creaContours.git] / bbtk / src / bbCreaContournDimensions.cxx
index 143cd5e471bf1174c66cce88cab4ab1737d5baa0..336a7637b53964296a4f5c239c662f6fe72dc369 100644 (file)
@@ -32,37 +32,46 @@ namespace bbcreaContours
 
 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaContours,nDimensions)
 BBTK_BLACK_BOX_IMPLEMENTATION(nDimensions,bbtk::WxBlackBox);
+
 void nDimensions::Process()
 {
-       double **vectx = 0, **vecty = 0, **vectz = 0;
-
-       std::vector< void * > vectortemp;
-       std::vector<int> size;
-       vtkImageData **mask = 0, **value = 0;
-
-       vtkImageData* img = bbGetInputIn();
-
-       std::vector<vtkImageData*> selectedimages;
-       if(img!=NULL && currentimg!=img)
-       {
-               wxContourMainFrame::getInstance()->ShowToolsPanel(true);
-               currentimg=img;
-               selectedimages.push_back(img);
-               wxContourMainFrame::getInstance()->setVectImages(selectedimages);
-       }
-
-       if(currentimg != NULL){
-               int contourtype = bbGetInputContourType();
-               //wxContourMainFrame::getInstance()->getValuesXYZ(vectx, vecty, vectz, &size);
-               //wxContourMainFrame::getInstance()->getMaskValue(mask, value, contourtype);
-       }
-
-       bbSetOutputX(vectx);
-       bbSetOutputY(vecty);
-       bbSetOutputZ(vectz);
-       bbSetOutputSizeContour(size);
-       bbSetOutputMask(*mask);
-       bbSetOutputValue(*value);
+//    double **vectx = 0, **vecty = 0, **vectz = 0;
+//        std::vector< void * > vectortemp;
+//        std::vector<int> size;
+//        vtkImageData **mask = 0, **value = 0;
+
+    if (firsttime==true)
+    {
+        firsttime=false;
+        std::vector<vtkImageData*> selectedimages;
+        if(bbGetInputIn()!=NULL)
+        {
+            currentimg = bbGetInputIn();
+            selectedimages.push_back( bbGetInputIn() );
+            wxContourMainFrame::getInstance()->ShowToolsPanel(true);
+            wxContourMainFrame::getInstance()->configure(selectedimages);
+        } // if In
+    } else{
+
+        //wxContourMainFrame::getInstance()->getValuesXYZ(vectx, vecty, vectz, &size);
+        //wxContourMainFrame::getInstance()->getMaskValue(mask, value, contourtype);
+
+        if ( currentimg!=bbGetInputIn() )
+        {
+            wxContourMainFrame::getInstance()->changeImage(0, bbGetInputIn() );
+            currentimg=bbGetInputIn();
+        } // if currentimg!=In
+
+        
+    } // if firsttime
+    wxContourMainFrame::getInstance()->RefreshInterface();
+    bbSetOutputwxContourMainFrame( wxContourMainFrame::getInstance() );
+//     bbSetOutputX(vectx);
+//     bbSetOutputY(vecty);
+//     bbSetOutputZ(vectz);
+//     bbSetOutputSizeContour(size);
+//     bbSetOutputMask(*mask);
+//     bbSetOutputValue(*value);
 }
 
 //-----------------------------------------------------------------
@@ -96,17 +105,20 @@ printf("EED WARNING Verify that GetDllAppPath in  nDimensions::CreateWidget bbCr
 #endif // MACOSX       
        
        
-       printf("EED nDimensions::CreateWidget path=%s\n",datadir.c_str() );
+//printf("EED nDimensions::CreateWidget path=%s\n",datadir.c_str() );
 
-       wxPanel* panel = wxContourMainFrame::getInstance(parent, wxID_ANY, wxString(_T("")), wxPoint(100,50), wxSize(800, 600), selectedimages,wxDEFAULT_FRAME_STYLE | wxSUNKEN_BORDER,datadir );
+       wxContourMainFrame* wxcontourmainframe = wxContourMainFrame::getInstance(parent, wxID_ANY, wxString(_T("")), wxPoint(100,50), wxSize(800, 600), selectedimages,wxDEFAULT_FRAME_STYLE | wxSUNKEN_BORDER,datadir );
        wxContourMainFrame::getInstance()->ShowToolsPanel(false);
-//EED  bbSetOutputWidget( panel );
-               bbSetOutputWidget( new wxPanel(parent,-1) );
+
+               bbSetOutputWidget( wxcontourmainframe    );
+
 }
 
 //-----------------------------------------------------------------
 void nDimensions::bbUserSetDefaultValues()
 {
+    firsttime   = true;
+    currentimg  = NULL;
        bbSetInputContourType(0);
        bbSetInputIn(NULL);
 }