-from PyQt4.QtGui import QWidget, QLabel
+from PyQt4.QtCore import SIGNAL
+from PyQt4.QtGui import QWidget, QLabel, QLineEdit, QPushButton, QVBoxLayout
from sfadata import SfaData
from sfascreen import SfaScreen
class ConfigWidget(QWidget):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
- label = QLabel("config widget", self)
+ self.data = SfaData()
+
+ label1 = QLabel("User HRN:", self)
+ self.user = QLineEdit(self.data.getUser(), self)
+ label2 = QLabel("Slice HRN:", self)
+ self.slice = QLineEdit(self.data.getSlice(), self)
+ apply = QPushButton("Apply", self)
+
+ layout = QVBoxLayout()
+ layout.addWidget(label1)
+ layout.addWidget(self.user)
+ layout.addWidget(label2)
+ layout.addWidget(self.slice)
+ layout.addWidget(apply)
+ self.setLayout(layout)
+
+ self.connect(apply, SIGNAL('clicked()'),
+ self.apply)
+
+ def apply(self):
+ self.data.SFI_SLICE = self.slice.text()
+ self.data.SFI_USER = self.user.text()
+ self.data.save_config()
+
class SfaConfigScreen(SfaScreen):
def __init__(self, parent=None):
SfaScreen.__init__(self, parent)
+
config = ConfigWidget(self)
self.init(config, "Configure", "Configure the PlanetLab Federation GUI")
import sys
+from PyQt4.QtCore import Qt
from PyQt4.QtGui import QWidget, QLabel, QVBoxLayout
class SfaScreen(QWidget):
self.name = name
self.title = title
self.widget = widget
- self.label = QLabel(self.title, self)
+ self.label = QLabel("<b>%s</b>" % self.title, self)
+ self.label.setScaledContents(False)
layout = QVBoxLayout(self)
layout.addWidget(self.label)
+ layout.addStretch()
layout.addWidget(self.widget)
self.setLayout(layout)
def getLabelText(self):
- return "<a href='%s'>%s</a>" % (self.name, self.name)
+ return "<a href='%s'>Go to %s</a>" % (self.name, self.name)
-from PyQt4.QtCore import SIGNAL
+from PyQt4.QtCore import Qt, SIGNAL
from PyQt4.QtGui import QWidget, QStackedWidget, \
QVBoxLayout, QLabel
self.screens.addWidget(self.config_screen)
self.switch = QLabel(self.config_screen.getLabelText(), self)
+ self.switch.setAlignment(Qt.AlignRight)
layout = QVBoxLayout()
layout.addWidget(self.switch)
layout.addWidget(self.screens)
+ layout.addStretch()
self.setLayout(layout)
self.adjustSize()