]> Creatis software - creaContours.git/blob - lib/Interface_Icons_NDimensions/interfNewContourMenu.cxx
RaC Changes that includes a Polygon contour in creaMaracasVisu and creaContours
[creaContours.git] / lib / Interface_Icons_NDimensions / interfNewContourMenu.cxx
1 #include "interfNewContourMenu.h"
2
3
4 interfNewContourMenu::interfNewContourMenu(wxWindow * parent, int sizex, int sizey, wxEvtHandler* evtHandler, std::string datdir)
5         : interfMenuBar(parent, sizex, sizey)
6 {
7         this->datadir = datdir;
8         //eventHandler = (wxContourEventHandler*)evtHandler;
9
10         panBull = NULL;
11         created = false;
12
13         initButtons(this);      
14 }
15
16 void interfNewContourMenu::initButtons(wxEvtHandler* evtHandler) {
17
18         std::vector<std::string> path, nom;
19         std::vector<wxObjectEventFunction> funct;
20         std::vector<wxEvtHandler*> hand;
21         
22         path.push_back(datadir + "/Spline.png");
23         nom.push_back("Create a contour using splines");        
24         funct.push_back((wxObjectEventFunction)&interfNewContourMenu::onCreateContourSpline);
25         hand.push_back(evtHandler);
26
27         path.push_back(datadir+"/Rectangle.png");
28         nom.push_back("Create a contour using the basic shape of a rectangle");
29         funct.push_back((wxObjectEventFunction)&interfNewContourMenu::onCreateContourRectangle);
30         hand.push_back(evtHandler);
31
32         path.push_back(datadir + "/Circle.png");
33         nom.push_back("Create a contour using the basic shape of a Circle");
34         funct.push_back((wxObjectEventFunction)&interfNewContourMenu::onCreateContourCircle);
35         hand.push_back(evtHandler);
36
37         path.push_back(datadir + "/bullseye.png");
38         nom.push_back("Create a contour using the bulls eye");
39         funct.push_back((wxObjectEventFunction) &interfNewContourMenu::onCreateContourBullseye);
40         hand.push_back(this);
41
42         path.push_back(datadir + "/Line.png");
43         nom.push_back("Create a Line");
44         funct.push_back((wxObjectEventFunction) &interfNewContourMenu::onCreateContourLine);
45         hand.push_back(this);
46
47         // RaC 09-09 ---------------------
48         path.push_back(datadir + "/Points.png");
49         nom.push_back("Create Points");
50         funct.push_back((wxObjectEventFunction) &interfNewContourMenu::onCreateContourPoints);
51         hand.push_back(this);
52         // RaC 09-09 ---------------------      
53
54         // RaC 10-09 ---------------------
55         path.push_back(datadir + "/Polygon.png");
56         nom.push_back("Create Polygon");
57         funct.push_back((wxObjectEventFunction) &interfNewContourMenu::onCreateContourPolygon);
58         hand.push_back(this);
59         // RaC 10-09 ---------------------      
60
61     this->addButtons(path, nom);
62
63         this->setVectorFunction(funct); 
64         this->setEventHandlers(hand);   
65         this->connectEvents();
66
67 }
68
69
70
71 interfNewContourMenu::~interfNewContourMenu()
72 {
73 }
74
75 void interfNewContourMenu::onCreateContourBullseye(wxCommandEvent& event){
76
77
78         if(!created){
79
80                 panBull = new PanelBullEyeOptions(interfMainPanel::getInstance()->getInfoPanel(), 
81                                                                 wxSize(100,200));
82                 created = true;
83         }
84         interfMainPanel::getInstance()->onCreateContoursBullEye(panBull);
85         //eventHandler->createContourBullsEye(panBull);
86         interfMainPanel::getInstance()->showPanel(panBull);
87
88 }
89
90 void interfNewContourMenu::onCreateContourSpline( wxCommandEvent& event ){
91         interfMainPanel::getInstance()->onCreateContourSpline();
92 }
93 void interfNewContourMenu::onCreateContourRectangle( wxCommandEvent& event ){
94         interfMainPanel::getInstance()->onCreateContourRectangle();
95 }
96 void interfNewContourMenu::onCreateContourCircle( wxCommandEvent& event ){
97         interfMainPanel::getInstance()->onCreateContourCircle();
98 }
99 void interfNewContourMenu::onCreateContourLine( wxCommandEvent& event ){
100         interfMainPanel::getInstance()->onCreateContourLine();
101 }
102
103 // RaC 09-09 ---------------------
104 void interfNewContourMenu::onCreateContourPoints( wxCommandEvent& event ){
105         interfMainPanel::getInstance()->onCreateContourPoints();
106 }
107 // RaC 09-09 ---------------------
108
109 // RaC 10-09 ---------------------
110 void interfNewContourMenu::onCreateContourPolygon( wxCommandEvent& event ){
111         interfMainPanel::getInstance()->onCreateContourPolygon();
112 }
113 // RaC 10-09 ---------------------
114