]> Creatis software - creaImageIO.git/blob - src2/creaImageIOExternalGimmick.cpp
0d8cd437cadeb65e96dae3ed0885549565bcde53
[creaImageIO.git] / src2 / creaImageIOExternalGimmick.cpp
1 #include <creaImageIOExternalGimmick.h>
2
3
4 vtkImageData* getImageDataDialog() {
5         //      wxApp::OnInit();
6         #ifdef __WXGTK__
7           //See http://www.wxwindows.org/faqgtk.htm#locale
8           setlocale(LC_NUMERIC, "C");
9         #endif
10            wxInitAllImageHandlers();
11
12            creaImageIO::SetGimmickMessageLevel(5);
13            creaImageIO::SetGimmickDebugMessageLevel(0);
14
15            int min_dim = GIMMICK_2D_IMAGE_SELECTION;
16            int max_dim = GIMMICK_3D_IMAGE_SELECTION;
17            int output_dim = NATIVE;
18            int threads = 1;         
19
20            creaImageIO::WxGimmickReaderDialog w(
21                                                 0,
22                                            -1, 
23                                            "localdatabase_Descriptor.dscp",
24                                            "Local Database",
25                                            _T("Select image(s)        - Gimmick! (c) CREATIS-LRMN 2008"),
26                                            wxDefaultPosition,
27                                            wxSize(1200,800),
28                                            min_dim,
29                                            max_dim,
30                                            output_dim,
31                                            threads);
32            w.ShowModal();
33
34            if (w.GetReturnCode() == wxID_OK)
35                  {
36                    std::cout << "$$$$ main : user clicked 'OK' $$$$"<<std::endl;
37                    std::cout << "$$$$ selected files : "<<std::endl;
38                    //Puts filenames
39                    std::vector<std::string> s;
40                    w.GetSelectedFiles(s);
41                    std::vector<std::string>::iterator i;
42                    for (i=s.begin();i!=s.end();++i) 
43                          {
44                            std::cout << *i << std::endl;
45                          }
46                    std::cout << "$$$$ "<<std::endl;
47
48                    //Puts images
49                    std::vector<vtkImageData*> images;
50                    w.GetSelectedImages(images,output_dim);
51                    std::cout<<images.size()<<std::endl;
52
53                    w.OnExit();
54                    return images[0];
55
56                    //crea::VtkBasicSlicer(images.front());
57                    //images.front()->Delete();
58                    
59
60                  }
61            else if (w.GetReturnCode() == wxID_CANCEL)
62                  {
63                    w.OnExit();
64                    std::cout << "$$$$ main : user clicked 'CANCEL' $$$$"<<std::endl;
65                  }
66            else 
67                  {
68                    w.OnExit();
69                    std::cout << "$$$$ main : dialog ended without return code ! $$$$"
70                                          <<std::endl;    
71                  }
72
73            //   std::cout << "$$$$ main : deleting dialog"<<std::endl;
74            //   delete w;
75            std::cout << "$$$$$$$$$$$$$$$$$$$$ main ended "<<std::endl;
76            return NULL;
77         }