add save_config method to SfaData
[sface.git] / sfawindow.py
1
2 from PyQt4.QtCore import SIGNAL
3 from PyQt4.QtGui import QWidget, QStackedWidget, \
4     QVBoxLayout, QLabel
5
6 from sfaconfigscreen import SfaConfigScreen
7 from sfamainscreen import SfaMainScreen
8
9
10 class SfaWindow(QWidget):
11     
12     def __init__(self, parent=None):
13         QWidget.__init__(self, parent)
14
15         self.config_screen = SfaConfigScreen(self)
16         self.main_screen = SfaMainScreen(self)
17
18         self.screens = QStackedWidget(self)
19         self.screens.addWidget(self.main_screen)
20         self.screens.addWidget(self.config_screen)
21
22         self.switch = QLabel(self.config_screen.getLabelText(), self)
23         
24         layout = QVBoxLayout()
25         layout.addWidget(self.switch)
26         layout.addWidget(self.screens)
27         self.setLayout(layout)
28         self.adjustSize()
29
30         self.connect(self.switch, SIGNAL('linkActivated(QString)'),
31                      self.toScreen)
32
33     def toScreen(self, link):
34         print link
35         if link == self.config_screen.name:
36             self.toConfigScreen()
37         elif link == self.main_screen.name:
38             self.toMainScreen()
39
40     def toConfigScreen(self):
41         self.screens.setCurrentWidget(self.config_screen)
42         self.switch.setText(self.main_screen.getLabelText())
43
44     def toMainScreen(self):
45         self.screens.setCurrentWidget(self.main_screen)
46         self.switch.setText(self.config_screen.getLabelText())
47
48         
49