Finished first cut at VINI's LinkPanel
[sfa-gui.git] / PlanetLab.py
1 from Sink import Sink, SinkInfo
2 from pyjamas.ui.TabPanel import TabPanel
3 from pyjamas.ui.VerticalPanel import VerticalPanel
4 from pyjamas.ui.TextArea import TextArea
5 from pyjamas.ui.HTML import HTML
6 from SfaData import PlanetLabData
7 from NodePanel import NodePanel
8 from LinkPanel import LinkPanel
9 from SliverPanel import SliverPanel
10
11 class PlTabs(TabPanel):
12     def __init__(self):
13         TabPanel.__init__(self)
14
15         self.data = PlanetLabData()
16         self.rspec = self.data.getRSpec()
17
18         nodetab = NodePanel(self.data, self.rspec)
19         slivertab = SliverPanel(self.data, self.rspec)
20     
21         self.add(nodetab, "Nodes")
22         self.add(slivertab, "Slivers")
23         self.selectTab(0)
24
25     def onTabSelected(self, sender, index):
26         tab = self.getWidget(index)
27         tab.refresh()
28         TabPanel.onTabSelected(self, sender, index)
29
30 class PlanetLab(Sink):
31     def __init__(self):
32
33         Sink.__init__(self)
34         
35         self.tabs = PlTabs()
36
37         self.tabs.setWidth("100%")
38         self.tabs.setHeight("100%")
39         self.initWidget(self.tabs)
40
41 def init():
42     return SinkInfo("PlanetLab", "Specify PlanetLab Resources", PlanetLab)