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 SfaData import ViniData class VINI(Sink): def __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) self.panel.setLeftWidget(leftcap) self.panel.setRightWidget(rightcap) self.initWidget(self.panel) def onShow(self): pass def init(): return SinkInfo("VINI", "Specify VINI Resources", VINI)