X-Git-Url: http://git.onelab.eu/?p=sface.git;a=blobdiff_plain;f=sface%2Fmainwindow.py;h=719fd07884415169cae5360e6072fcbec312d800;hp=b361b22a0078bcc9b49b42116c96846aa49b5b2b;hb=38d5f241770d94bfcea955e889a110acb96ddf81;hpb=194e800bc6c16d787fff48410a4ef71928efe8fb diff --git a/sface/mainwindow.py b/sface/mainwindow.py index b361b22..719fd07 100644 --- a/sface/mainwindow.py +++ b/sface/mainwindow.py @@ -11,6 +11,7 @@ from sface.config import config from sface.logwindow import LogWindow from sface.rspecwindow import RSpecWindow from sface.screens.sfascreen import SfaScreen +from sface.xmlrpcwindow import get_tracker, init_tracker # depending on the platform.. # could probably use Qt's resource system but looks overkill for just one file... @@ -35,7 +36,7 @@ def load_screens(dirname): # we want the stock screens to show up in a specific order. plugins can # show up in any order afterward. - sort_order = ["mainscreen", "configscreen", "helpscreen"] + sort_order = ["mainscreen", "userscreen", "configscreen", "helpscreen"] sort_order.reverse() for modname in sort_order: if modname in modnames: @@ -96,6 +97,7 @@ class Nav(QWidget): class Status(QLabel): def __init__(self, parent=None): QLabel.__init__(self, "", parent) + self.setMaximumWidth(640) self.sliceUpdateDate() def set(self, msg, timeout): @@ -110,7 +112,7 @@ class Status(QLabel): creation_time = os.stat(rspec_file).st_ctime last_update = time.ctime(creation_time) - self.set("Slice data last updated on %s" % last_update, timeout=None) + self.set("Slice data last refreshed on %s" % last_update, timeout=None) def reset(self): self.setText("") @@ -125,6 +127,7 @@ class MainWindow(QWidget): # to our parent. Otherwise, getting a segfault on exit in Ubuntu. self.logWindow = LogWindow(parent) self.rspecWindow = RSpecWindow(parent) + self.trackerWindow = init_tracker(parent) self.pix = QLabel(self) @@ -152,12 +155,14 @@ class MainWindow(QWidget): self.nav.setTitle(self.screenWidgets[0].getTitleText()) self.status = Status(self) + self.tracker = QLabel("Show Xmlrpc", self) self.log = QLabel("Show Log", self) self.rspec = QLabel("Show RSpec", self) hlayout = QHBoxLayout() hlayout.addWidget(self.status) hlayout.addStretch() + hlayout.addWidget(self.tracker) hlayout.addWidget(self.rspec) hlayout.addWidget(self.log) @@ -172,6 +177,8 @@ class MainWindow(QWidget): self.connect(link, SIGNAL('linkActivated(QString)'), self.animateToScreen) + self.connect(self.tracker, SIGNAL('linkActivated(QString)'), + self.showTrackerWindow) self.connect(self.log, SIGNAL('linkActivated(QString)'), self.showLogWindow) self.connect(self.rspec, SIGNAL('linkActivated(QString)'), @@ -180,6 +187,13 @@ class MainWindow(QWidget): def redirectOutputToLog(self): self.logWindow.redirectOutput() + def showTrackerWindow(self): + tracker = get_tracker() + tracker.show() + tracker.resize(500, 640) + tracker.raise_() + tracker.activateWindow() + def showLogWindow(self, link): self.logWindow.show() self.logWindow.resize(800, 200) @@ -192,7 +206,6 @@ class MainWindow(QWidget): self.rspecWindow.raise_() self.rspecWindow.activateWindow() - def animatePixmap(self, y): self.pix.move(0, y) @@ -221,7 +234,6 @@ class MainWindow(QWidget): self.connect(timeLine, SIGNAL('finished()'), self.toNextScreen) timeLine.start() - def toNextScreen(self): self.screens.setCurrentWidget(self.next_screen) self.nav.setTitle(self.next_screen.getTitleText())