]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenImageDialog.cxx
no message
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / OpenImageDialog.cxx
1
2 #include "OpenImageDialog.h"
3 #include "creaWx.h"
4
5 typedef vtkImageData* (*GETIMAGEDATADIALOG)();
6
7 namespace creaMaracasVisuKernel{
8         OpenImageDialog::OpenImageDialog()
9         {
10                 img = NULL;
11                 bool gimmicknotfound = true;
12
13         #ifdef WIN32
14                 HINSTANCE gimmickhandle;
15                 gimmickhandle = LoadLibrary(TEXT("creaImageIO2.dll"));
16                 std::cout<<"imagehandle "<<gimmickhandle<<std::endl;
17                 if(gimmickhandle!=NULL){
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
31         #endif
32
33                 if(gimmicknotfound){
34
35                         wxFileDialog* FD =
36                           new wxFileDialog( 0, _T("Read Image"),wxEmptyString,wxEmptyString, _T("*.mhd"));
37
38                         if (FD->ShowModal()==wxID_OK)
39                         {
40                                 std::string  path= crea::wx2std(FD->GetPath());
41
42                                 vtkMetaImageReader *reader =  vtkMetaImageReader::New();
43                                 reader->SetFileName(path.c_str());
44                                 img = reader->GetOutput();
45                         }
46                 }
47         }
48
49         //-------------------------------------------------------------------
50         OpenImageDialog::~OpenImageDialog()
51         {
52         }
53
54         vtkImageData* OpenImageDialog::getImageData(){
55                 return img;
56         }
57 }