Salome HOME
style: black format
[tools/sat.git] / data / templates / PythonComponent / src / Model / Circle.py
1 from Model import *
2 from qtsalome import *
3
4 __all__ = [
5     "Circle",
6 ]
7
8
9 class Circle(Model):
10     def __init__(self, name, center, radius, controller):
11         """Constructor"""
12
13         Model.__init__(self, controller)
14         self._name = name
15         self._center = center
16         self._radius = radius
17         self.addTreeWidgetItem(self.getName(), controller)
18         self.addGraphicScene(controller)
19         pass
20
21     def getCenter(self):
22         return self._center[0], self._center[1]
23
24     def setCenter(self, center):
25         self._center = center
26         pass
27
28     def getRadius(self):
29         return self._radius
30
31     def setRadius(self, radius):
32         self._radius = radius
33
34     def addTreeWidgetItem(self, name, controller):
35         from CircleTreeWidgetItem import CircleTreeWidgetItem
36         from TreeWidgetItem import TreeWidgetItem
37
38         myTreeWidgetItem = CircleTreeWidgetItem(
39             name, controller, ["Show", "Rename", "Delete"]
40         )
41         newTreeWidgetItem = TreeWidgetItem(
42             str(self.getCenter()[0]) + ":" + str(self.getCenter()[1]),
43             controller,
44             ["Edit"],
45         )
46         myTreeWidgetItem.addChild(newTreeWidgetItem)
47         newTreeWidgetItem = TreeWidgetItem(str(self.getRadius()), controller, ["Edit"])
48         myTreeWidgetItem.addChild(newTreeWidgetItem)
49         myTreeWidgetItem.setModel(self)
50         self.getViews().append(myTreeWidgetItem)
51         return myTreeWidgetItem
52
53     def addGraphicScene(self, controller):
54         from CircleGraphicsScene import CircleGraphicsScene
55
56         myGraphicsScene = CircleGraphicsScene(controller)
57         myGraphicsScene.setModel(self)
58         self.getViews().append(myGraphicsScene)
59         return myGraphicsScene
60
61     def save(self):
62         pass
63
64
65 pass