X-Git-Url: http://git.onelab.eu/?p=sfa-gui.git;a=blobdiff_plain;f=VINI.py;h=15f5795bfee36cbfe652042b93b8bfc6525f35ca;hp=c82c7fd1c69c82e73e12b057ff7335259ce2aebf;hb=9b1e2b7e901d9a7edc707916c52efe808cae6cfc;hpb=070773be5d006ef8764f81c075fcc3f37a5ba4e7 diff --git a/VINI.py b/VINI.py index c82c7fd..15f5795 100644 --- a/VINI.py +++ b/VINI.py @@ -1,46 +1,42 @@ from Sink import Sink, SinkInfo -from pyjamas.ui.horizsplitpanel import HorizontalSplitPanel -from pyjamas.ui.CaptionPanel import CaptionPanel -from pyjamas.ui.ListBox import ListBox -from pyjamas.ui.HTML import HTML +from pyjamas.ui.TabPanel import TabPanel +from pyjamas.ui.VerticalPanel import VerticalPanel from SfaData import ViniData +from NodePanel import NodePanel +from LinkPanel import LinkPanel +from SliverPanel import SliverPanel -class VINI(Sink): +class VINITabs(TabPanel): def __init__(self): + TabPanel.__init__(self) - Sink.__init__(self) - self.panel = HorizontalSplitPanel() - self.panel.setSize("100%", "100%") - self.panel.setSplitPosition("50%") self.data = ViniData() self.rspec = self.data.getRSpec() - leftcap = CaptionPanel("Available nodes") - leftcap.setSize("90%", "90%") - leftlist = ListBox(MultipleSelect=True) - leftlist.setSize("100%", "100%") - available = self.rspec.get_node_list() - for i in available: - leftlist.addItem(i) - leftcap.add(leftlist) - - rightcap = CaptionPanel("Selected nodes") - rightcap.setSize("90%", "90%") - rightlist = ListBox(MultipleSelect=True) - rightlist.setSize("100%", "100%") - slivers = self.rspec.get_sliver_list() - for i in slivers: - rightlist.addItem(i) - rightcap.add(rightlist) + nodetab = NodePanel(self.data, self.rspec) + linktab = LinkPanel(self.data, self.rspec) + slivertab = SliverPanel(self.data, self.rspec) + + self.add(nodetab, "Nodes") + self.add(linktab, "Links") + self.add(slivertab, "Slivers") + self.selectTab(0) - self.panel.setLeftWidget(leftcap) - self.panel.setRightWidget(rightcap) + def onTabSelected(self, sender, index): + tab = self.getWidget(index) + tab.refresh() + TabPanel.onTabSelected(self, sender, index) - self.initWidget(self.panel) +class VINI(Sink): + def __init__(self): - def onShow(self): - pass + Sink.__init__(self) + + self.tabs = VINITabs() + self.tabs.setWidth("100%") + self.tabs.setHeight("100%") + self.initWidget(self.tabs) def init(): return SinkInfo("VINI", "Specify VINI Resources", VINI)