本文整理汇总了Python中pyjamas.ui.ScrollPanel.ScrollPanel.add方法的典型用法代码示例。如果您正苦于以下问题:Python ScrollPanel.add方法的具体用法?Python ScrollPanel.add怎么用?Python ScrollPanel.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyjamas.ui.ScrollPanel.ScrollPanel
的用法示例。
在下文中一共展示了ScrollPanel.add方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: panel
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
def panel ( ui ):
""" Creates a panel-based user interface for a specified UI object.
"""
# Bind the context values to the 'info' object:
ui.info.bind_context()
# Get the content that will be displayed in the user interface:
content = ui._groups
nr_groups = len(content)
if nr_groups == 0:
panel = None
if nr_groups == 1:
panel = _GroupPanel(content[0], ui).control
elif nr_groups > 1:
panel = TabPanel()
_fill_panel(panel, content, ui)
panel.ui = ui
# If the UI is scrollable then wrap the panel in a scroll area.
if ui.scrollable and panel is not None:
sp = ScrollPanel()
sp.add(panel)
panel = sp
return panel
示例2: AdinfoIFACE
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
class AdinfoIFACE(PanelIFACE):
def __init__(self, parent = None):
PanelIFACE.__init__(self, parent)
self.panel = ScrollPanel()
adinfo = HTML("", Size=("100%", parent.getHeight()))
self.panel.setSize("100%", parent.getHeight())
self.panel.add(adinfo)
self.adInfo = parent.adInfo = adinfo
Window.addWindowResizeListener(self)
return
def onTreeItemSelected(self, item):
pathdict = self.pathdict
filename = item.getText()
#check if already in
if filename in pathdict:
if pathdict[filename]["filetype"] == "fileEntry":
url = "adinfo?filename=%s" % self.pathdict[item.getText()]["path"]
HTTPRequest().asyncGet(url,
ADInfoLoader(self),
)
else:
self.adInfo.setHTML("""
<b style="font-size:200%%">%s</b>""" % pathdict[filename]["filetype"])
def scroll(self, where):
self.panel.setScrollPosition(where)
def onWindowResized(self, width, height):
self.panel.setSize("100%", self.parent.getHeight())
self.adInfo.setSize("100%", self.parent.getHeight())
示例3: HorizontalCollapsePanel
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
class HorizontalCollapsePanel(FlowPanel):
def __init__(self, *args, **kwargs):
# set defaults
if not 'StyleName' in kwargs:
kwargs['StyleName'] = "rjw-HorizontalCollapsePanel"
FlowPanel.__init__(self, *args, **kwargs)
self._containers = [
ScrollPanel(StyleName = self.getStylePrimaryName() + '-left'),
ScrollPanel(StyleName = self.getStylePrimaryName() + '-right'),
]
self._collapse_widget = ScrollPanel(StyleName = self.getStylePrimaryName() + '-collapse')
collapse_button = ToggleButton(StyleName = self.getStylePrimaryName() + '-collapse-button')
collapse_button.addClickListener(self._sync_collapse)
self._collapse_widget.add(collapse_button)
FlowPanel.add(self, self._containers[0])
FlowPanel.add(self, self._collapse_widget)
FlowPanel.add(self, self._containers[1])
self._sync_collapse()
def _sync_collapse(self, w=None):
collapse_button = self._collapse_widget.getWidget(0)
if collapse_button.isDown():
self.addStyleName(self.getStylePrimaryName() + '-collapsed')
else:
self.removeStyleName(self.getStylePrimaryName() + '-collapsed')
def getWidget(self, index):
if index >= 0 and index < len(self._containers):
return self._containers[index].getWidget()
console.error('HorizontalCollapsePanel.getWidget passed invalid index: ' + str(index))
raise IndexError('Index out of range')
def setWidget(self, index, widget):
if index >= 0 and index < len(self._containers):
return self._containers[index].setWidget(widget)
console.error('HorizontalCollapsePanel.setWidget passed invalid index: ' + str(index))
raise IndexError('Index out of range')
# Adds a widget to a pane
def add(self, widget):
if self.getWidget(0) == None:
self.setWidget(0, widget)
elif self.getWidget(1) == None:
self.setWidget(1, widget)
else:
console.error("HorizontalCollapsePanel can only contain two child widgets.")
# Removes a child widget.
def remove(self, widget):
if self.getWidget(0) == widget:
self._containers[0].remove(widget)
elif self.getWidget(1) == widget:
self._containers[1].remove(widget)
else:
AbsolutePanel.remove(self, widget)
示例4: __init__
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
def __init__(self):
HorizontalPanel.__init__(self, Spacing=4)
self.add(Label('Underway:', StyleName='section'))
s = ScrollPanel()
self.add(s)
v = VerticalPanel()
s.add(v)
self.queued = Grid(StyleName='users')
v.add(self.queued)
self.button = Button('Refresh', self, StyleName='refresh')
self.add(self.button)
self.err = Label()
self.add(self.err)
self.update()
示例5: __init__
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
def __init__(self):
SimplePanel.__init__(self)
panel = ScrollPanel(Size=("300px", "100px"))
contents = HTML("<b>Tao Te Ching, Chapter One</b><p>" +
"The Way that can be told of is not an unvarying " +
"way;<p>The names that can be named are not " +
"unvarying names.<p>It was from the Nameless that " +
"Heaven and Earth sprang;<p>The named is but the " +
"mother that rears the ten thousand creatures, " +
"each after its kind.")
panel.add(contents)
self.add(panel)
示例6: onModuleLoad
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
def onModuleLoad(self):
# build image display
img = Image("babykatie_small.jpg", width="300px", height="300px")
img.element.setAttribute("usemap", "#themap")
img.element.setAttribute("ismap", "1")
imagepanel = ScrollPanel()
imagepanel.add(img)
# build message display
msgpanel = VerticalPanel()
msgpanel.add(Label("move mouse over baby katie's eyes, nose and mouth."))
msgarea1 = Label("movement messages")
msgpanel.add(msgarea1)
msgarea2 = Label("click messages")
msgpanel.add(msgarea2)
imageClickHandler = MapClickHandler(msgarea1, msgarea2)
# build imagemap
map = ImageMap("themap", width="300px", height="300px")
areas = [ \
NamedMapArea("right eye", "circle", "73, 97, 7"),
NamedMapArea("left eye", "circle", "116, 88, 5"),
NamedMapArea("nose", "rect", "88, 97, 115, 115", href="http://lkcl.net"),
NamedMapArea("mouth", "polygon", "82, 129, 102, 124, 119, 119, 121, 125, 103, 132, 79, 133"),
]
for nma in areas:
nma.addMouseListener(imageClickHandler)
nma.addClickListener(imageClickHandler)
map.add(nma)
# layout page
hpanel = HorizontalPanel()
hpanel.add(map)
hpanel.add(imagepanel)
hpanel.add(msgpanel)
RootPanel().add(hpanel)
示例7: __init__
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
def __init__(self):
SimplePanel.__init__(self)
vert = VerticalPanel()
vert.setSpacing("10px")
self.add(vert)
panel = ScrollPanel(Size=("300px", "100px"))
contents = HTML("<b>Tao Te Ching, Chapter One</b><p>" +
"The Way that can be told of is not an unvarying " +
"way;<p>The names that can be named are not " +
"unvarying names.<p>It was from the Nameless that " +
"Heaven and Earth sprang;<p>The named is but the " +
"mother that rears the ten thousand creatures, " +
"each after its kind.")
panel.add(contents)
vert.add(panel)
container = SimplePanel(Width="400px", Height="200px")
contents2 = HTML(50*"Dont forget to grab the css for SuperScrollPanel in Showcase.css! ")
panel2 = SuperScrollPanel(contents2)
container.add(panel2)
vert.add(container)
示例8: DataDictTree
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
class DataDictTree(Sink):
pathdict = {}
reduceFiles = None
fTree = None
def __init__(self, parent = None):
Sink.__init__(self, parent)
self.reduceFiles = []
if True:
HTTPRequest().asyncGet("datadir.xml",
DirDictLoader(self),
)
dock = DockPanel(HorizontalAlignment=HasAlignment.ALIGN_LEFT,
Spacing=10,
Size=("100%","100%"))
self.dock = dock
self.fProto = []
self.fTree = Tree()
self.treePanel = ScrollPanel()
self.treePanel.setSize("100%",
str(
int(
Window.getClientHeight()*.75
)
)+"px")
Window.addWindowResizeListener(self)
self.treePanel.add(self.fTree)
dock.add(self.treePanel, DockPanel.WEST)
#self.treePanel.setBorderWidth(1)
#self.treePanel.setWidth("100%")
prPanel = self.createRightPanel()
dock.add(prPanel,DockPanel.EAST)
dock.setCellWidth(self.treePanel, "50%")
dock.setCellWidth(prPanel, "50%")
for i in range(len(self.fProto)):
self.createItem(self.fProto[i])
self.fTree.addItem(self.fProto[i].item)
self.fTree.addTreeListener(self)
self.initWidget(self.dock)
if False: #self.parent.filexml != None:
DirDictLoader(self).onCompletion(self.parent.filexml)
def onWindowResized(self, width, height):
self.treePanel.setSize("100%",
str(
int(
height *.75
)
)+"px")
def onRecipeSelected(self, event):
self.updateReduceCL()
def onClearReduceFiles(self, event):
self.reduceFiles.clear()
self.adInfo.setHTML("file info...")
self.updateReduceCL()
def updateReduceCL(self):
recipe = self.recipeList.getItemText(self.recipeList.getSelectedIndex())
if recipe=="None":
rstr = ""
else:
rstr = "-r "+recipe
rfiles = []
for i in range(0, self.reduceFiles.getItemCount()):
fname = self.reduceFiles.getItemText(i)
rfiles.append(fname)
filesstr = " ".join(rfiles)
self.prepareReduce.setHTML('<b>reduce</b> %(recipe)s %(files)s' %
{ "recipe":rstr,
"files":filesstr})
def onTreeItemSelected(self, item):
pathdict = self.pathdict
tfile = item.getText()
#check if already in
if tfile in pathdict:
ftype = pathdict[tfile]["filetype"]
if ftype != "fileEntry":
item.setState(True)
return
else:
return
for i in range(0, self.reduceFiles.getItemCount()):
fname = self.reduceFiles.getItemText(i)
if fname == tfile:
return
#.........这里部分代码省略.........
示例9: onModuleLoad
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
class InfoDirectory:
def onModuleLoad(self):
self.remote = InfoServicePython()
self.tree_width = 200
self.tp = HorizontalPanel()
self.tp.setWidth("%dpx" % (self.tree_width))
self.treeview = Trees()
self.treeview.fTree.addTreeListener(self)
self.sp = ScrollPanel()
self.tp.add(self.treeview)
self.sp.add(self.tp)
self.sp.setHeight("100%")
self.horzpanel1 = HorizontalPanel()
self.horzpanel1.setSize("100%", "100%")
self.horzpanel1.setBorderWidth(1)
self.horzpanel1.setSpacing("10px")
self.rp = RightPanel()
self.rps = ScrollPanel()
self.rps.add(self.rp)
self.rps.setWidth("100%")
self.rp.setWidth("100%")
self.cp1 = CollapserPanel(self)
self.cp1.setWidget(self.sp)
self.cp1.setHTML(" ")
self.midpanel = MidPanel(self)
self.cp2 = CollapserPanel(self)
self.cp2.setWidget(self.midpanel)
self.cp2.setHTML(" ")
self.horzpanel1.add(self.cp1)
self.horzpanel1.add(self.cp2)
self.horzpanel1.add(self.rps)
self.cp1.setInitialWidth("%dpx" % self.tree_width)
self.cp2.setInitialWidth("200px")
RootPanel().add(self.horzpanel1)
width = Window.getClientWidth()
height = Window.getClientHeight()
self.onWindowResized(width, height)
Window.addWindowResizeListener(self)
def setCollapserWidth(self, widget, width):
self.horzpanel1.setCellWidth(widget, width)
def onWindowResized(self, width, height):
#self.hp.setWidth("%dpx" % (width - self.tree_width))
#self.hp.setHeight("%dpx" % (height - 20))
self.cp1.setHeight("%dpx" % (height - 30))
self.cp2.setHeight("%dpx" % (height - 30))
self.rps.setHeight("%dpx" % (height - 30))
self.horzpanel1.setHeight("%dpx" % (height - 20))
def onTreeItemStateChanged(self, item):
if item.isSelected():
self.onTreeItemSelected(item)
def onTreeItemSelected(self, item):
obj = item.getUserObject()
if len(obj.children) != 0:
self.clear_mid_panel()
return
self.remote.get_midpanel_data(obj.root + "/" + obj.text, self)
self.cp2.setHTML(obj.text)
self.clear_right_panel()
def clear_right_panel(self):
self.horzpanel1.remove(2)
self.horzpanel1.insert(HTML(""), 2)
self.rp.setTitle(" ")
def clear_mid_panel(self):
self.clear_right_panel()
#self.horzpanel2.setLeftWidget(HTML(""))
def set_mid_panel(self, response):
self.midpanel.set_items(response)
self.cp2.setWidget(self.midpanel)
def select_right_grid(self, location, name):
self.horzpanel1.remove(2)
self.horzpanel1.insert(self.rps, 2)
self.rp.setTitle(name)
self.remote.get_rightpanel_datanames(location, self)
#.........这里部分代码省略.........
示例10: __init__
# 需要导入模块: from pyjamas.ui.ScrollPanel import ScrollPanel [as 别名]
# 或者: from pyjamas.ui.ScrollPanel.ScrollPanel import add [as 别名]
class SongFrequency:
def __init__(self):
self.artist =''
self.start_date = ''
self.end_date = ''
self.period_search =''
self.search_option = 1
#declare the general interface widgets
self.panel = DockPanel(StyleName = 'background')
self.ret_area = TextArea()
self.ret_area.setWidth("350px")
self.ret_area.setHeight("90px")
self.options = ListBox()
self.search_button = Button("Search", getattr(self, "get_result"), StyleName = 'button')
#set up the date search panel; it has different text boxes for
#to and from search dates
self.date_search_panel = VerticalPanel()
self.date_search_start = TextBox()
self.date_search_start.addInputListener(self)
self.date_search_end = TextBox()
self.date_search_end.addInputListener(self)
self.date_search_panel.add(HTML("Enter as month/day/year", True, StyleName = 'text'))
self.date_search_panel.add(HTML("From:", True, StyleName = 'text'))
self.date_search_panel.add(self.date_search_start)
self.date_search_panel.add(HTML("To:", True, StyleName = 'text'))
self.date_search_panel.add(self.date_search_end)
#set up the artist search panel
self.artist_search = TextBox()
self.artist_search.addInputListener(self)
self.artist_search_panel = VerticalPanel()
self.artist_search_panel.add(HTML("Enter artist's name:",True,
StyleName = 'text'))
self.artist_search_panel.add(self.artist_search)
#Put together the list timespan search options
self.period_search_panel = VerticalPanel()
self.period_search_panel.add(HTML("Select a seach period:",True,
StyleName = 'text'))
self.period_search = ListBox()
self.period_search.setVisibleItemCount(1)
self.period_search.addItem("last week")
self.period_search.addItem("last month")
self.period_search.addItem("last year")
self.period_search.addItem("all time")
self.period_search_panel.add(self.period_search)
#add the listeners to the appropriate widgets
self.options.addChangeListener(self)
self.period_search.addChangeListener(self)
self.ret_area_scroll = ScrollPanel()
self.search_panel = HorizontalPanel()
self.options_panel = VerticalPanel()
# A change listener for the boxes
def onChange(self, sender):
#switch the list box options
if sender == self.options:
self.search_panel.remove(self.period_search_panel)
self.search_panel.remove(self.date_search_panel)
self.search_panel.remove(self.artist_search_panel)
index = self.options.getSelectedIndex()
if index == 0:
self.search_panel.add(self.artist_search_panel)
self.search_option = 1
elif index == 1:
self.search_panel.add(self.date_search_panel)
self.search_option = 2
elif index == 2:
self.search_panel.add(self.period_search_panel)
self.search_option = 3
elif sender == self.period_search:
index = self.period_search.getSelectedIndex()
if index == 0:
self.period_search = "last week"
elif index == 1:
self.period_search = "last month"
elif index == 2:
self.period_search = "last year"
elif index == 3:
self.period_search = "all time"
#A listener for the text boxes
def onInput(self, sender):
if sender == self.artist_search:
self.artist = sender.getText()
elif sender == self.date_search_end:
self.end_date = sender.getText()
elif sender == self.date_search_start:
self.start_date = sender.getText()
#A listener for the buttons that, when the button is clicked, looks up the results and outputs them
def get_result(self):
return_str = " "
if self.search_option == 1:
#.........这里部分代码省略.........