]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenLoadImageDialog.cxx
23d080f8a816af0ac0edb849a1d9227a24e979d5
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / OpenLoadImageDialog.cxx
1
2 #include "OpenLoadImageDialog.h"
3
4 typedef vtkImageData* (*GETIMAGEDATADIALOG)();
5
6 OpenLoadImageDialog::OpenLoadImageDialog()
7 {
8
9
10         img = NULL;
11         bool gimmicknotfound = true;
12         
13 #ifdef WIN32
14         HINSTANCE gimmickhandle; 
15         gimmickhandle = LoadLibrary(TEXT("creaImageIO2.dll"));  
16         if(gimmickhandle!=NULL){        
17
18                 
19                 GETIMAGEDATADIALOG getImageDataDialog;
20
21                 getImageDataDialog = (GETIMAGEDATADIALOG)GetProcAddress(gimmickhandle, "getImageDataDialog");
22
23                 std::cout<<"imagedatadialog "<<getImageDataDialog<<std::endl;
24
25                 if(getImageDataDialog!=NULL){
26                         img = getImageDataDialog();
27                         gimmicknotfound = false;
28                 }
29         }       
30 #else
31         //GNU part
32 #endif
33
34
35         if(gimmicknotfound){
36
37                 wxFileDialog* FD = 
38                   new wxFileDialog( 0, _T("Read Image"),wxEmptyString,wxEmptyString, _T("*.mhd"));
39                 
40                 if (FD->ShowModal()==wxID_OK)
41                 {
42                         std::string  path= FD->GetPath();
43
44                         vtkMetaImageReader *reader =  vtkMetaImageReader::New();        
45                         reader->SetFileName(path.c_str());              
46                         img = reader->GetOutput();              
47                 }               
48         }       
49 }
50
51 //-------------------------------------------------------------------
52 OpenLoadImageDialog::~OpenLoadImageDialog()
53 {
54 }
55
56 vtkImageData* OpenLoadImageDialog::getImageData(){
57         return img;
58 }