]> Creatis software - creaContours.git/blob - lib/Interface_Icons_NDimensions/interfSegmentationMenu.cxx
545db77fce00c34d161d0f0dca816ba66f645784
[creaContours.git] / lib / Interface_Icons_NDimensions / interfSegmentationMenu.cxx
1 #include "interfSegmentationMenu.h"
2 #include "interfMainPanel.h"
3
4 interfSegmentationMenu::interfSegmentationMenu(wxWindow * parent, int sizex, int sizey,wxEvtHandler* evtHandler, std::string datdir)
5         : interfMenuBar(parent, sizex, sizey)
6 {
7         this->datadir = datdir;
8         //contourevent = (wxContourEventHandler*)evtHandler;
9         infoWin = NULL;
10         configPanel = NULL;
11         spreadPanel = NULL;
12         segmentPanelITK = NULL;
13         
14         //eventHandler = evtHandler;
15
16         initButtons(this);
17 }
18
19 void interfSegmentationMenu::initButtons(wxEvtHandler* evtHandler) {
20
21         std::vector<std::string> path, nom;
22         std::vector<wxObjectEventFunction> funct;
23
24         path.push_back(datadir + "/Segmentation.png");
25         nom.push_back("Find shapes by automatic segmentation");
26         funct.push_back((wxObjectEventFunction) &interfSegmentationMenu:: onSegmentationPressed);
27
28         path.push_back(datadir + "/ITK.png");
29         nom.push_back("Find shapes by automatic segmentation with ITK");
30         funct.push_back((wxObjectEventFunction) &interfSegmentationMenu:: onSegmentationPressedITK);
31
32         path.push_back(datadir + "/snake.png");
33         nom.push_back("Find shapes using border snake interaction");
34         funct.push_back((wxObjectEventFunction) &interfSegmentationMenu:: onSnakePressed);
35
36         this->addButtons(path, nom);    
37         this->setVectorFunction(funct);
38
39         this->connectEvents(evtHandler);
40            
41
42 }
43
44 interfSegmentationMenu::~interfSegmentationMenu()
45 {
46 }
47
48 /**
49         **      Responds to the events of the buttons, when the same panel is responsible for it. It gets the name
50         **      of the button corresponding to the method that has to be executed,
51         **      it uses attribute eventHandler to call the methods define by the application.
52         **      see setEventHandler(wxEventHandler*)
53         **/
54
55
56 void  interfSegmentationMenu::onSegmentationPressed(wxCommandEvent& event){
57
58         interfMainPanel::getInstance()->onSegmentationPressed();
59 }
60
61
62
63 void  interfSegmentationMenu::onSegmentationPressedITK(wxCommandEvent& event){
64
65         interfMainPanel::getInstance()->onSegmentationPressedITK();
66
67     
68 }
69
70 void  interfSegmentationMenu::onSnakePressed(wxCommandEvent& event){
71     
72         //contourevent->onSnakePressed(this);
73
74 }
75
76 //------------------------------------------------------------------------------------------------------------
77