本文整理汇总了Python中etk.docking.DockGroup类的典型用法代码示例。如果您正苦于以下问题:Python DockGroup类的具体用法?Python DockGroup怎么用?Python DockGroup使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了DockGroup类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_drag_drop_on_group
def test_drag_drop_on_group(self):
win = gtk.Window(gtk.WINDOW_TOPLEVEL)
frame = DockFrame()
paned = DockPaned()
group = DockGroup()
item = DockItem()
layout = self.layout
layout.add(frame)
win.add(frame)
frame.add(paned)
paned.add(group)
group.add(item)
win.set_default_size(200, 200)
win.show_all()
while gtk.events_pending():
gtk.main_iteration()
context = StubContext(group, [group.items[0]])
group.do_drag_begin(context)
x, y = 30, 30
layout.on_widget_drag_motion(group, context, x, y, 0)
assert layout._drag_data
assert layout._drag_data.drop_widget is group
layout.on_widget_drag_drop(group, context, x, y, 0)
示例2: test_get_widgets
def test_get_widgets(self):
win = gtk.Window(gtk.WINDOW_TOPLEVEL)
frame = DockFrame()
paned = DockPaned()
group = DockGroup()
item = DockItem()
label = gtk.Label()
layout = DockLayout()
layout.add(frame)
win.add(frame)
frame.add(paned)
paned.add(group)
group.add(item)
item.add(label)
group2 = DockGroup()
paned.add(group2)
paned.set_name('foo')
widgets = list(layout.get_widgets('foo'))
assert len(widgets) == 1
assert widgets[0] is paned
widgets = list(layout.get_widgets('EtkDockGroup'))
assert len(widgets) == 2
assert widgets[0] is group
assert widgets[1] is group2
示例3: test_construction_after_setting_layout
def test_construction_after_setting_layout(self):
win = gtk.Window(gtk.WINDOW_TOPLEVEL)
frame = DockFrame()
paned = DockPaned()
group = DockGroup()
item = DockItem()
layout = DockLayout()
layout.add(frame)
win.add(frame)
frame.add(paned)
paned.add(group)
group.add(item)
assert frame in layout.frames
self.assertEquals(4, len(layout._signal_handlers))
self.assertEquals(9, len(layout._signal_handlers[frame]))
paned.remove(group)
self.assertEquals(2, len(layout._signal_handlers), layout._signal_handlers)
assert frame in layout._signal_handlers.keys(), layout._signal_handlers
assert paned in layout._signal_handlers.keys(), layout._signal_handlers
assert group not in layout._signal_handlers.keys(), layout._signal_handlers
assert item not in layout._signal_handlers.keys(), layout._signal_handlers
assert frame in layout.frames
示例4: test_construction
def test_construction(self):
win = gtk.Window(gtk.WINDOW_TOPLEVEL)
frame = DockFrame()
paned = DockPaned()
group = DockGroup()
item = DockItem()
win.add(frame)
frame.add(paned)
paned.add(group)
group.add(item)
layout = DockLayout()
layout.add(frame)
assert frame in layout.frames
print layout._signal_handlers
self.assertEquals(4, len(layout._signal_handlers))
self.assertEquals(9, len(layout._signal_handlers[frame]))
layout.remove(frame)
assert not layout._signal_handlers, layout._signal_handlers
assert frame not in layout.frames
示例5: MainWindow
class MainWindow(gtk.Window):
def __init__(self):
gtk.Window.__init__(self)
self.set_default_size(500, 150)
self.set_title('DockGroup Demo')
self.set_border_width(4)
self.file_counter = 1
vbox = gtk.VBox()
vbox.set_spacing(4)
self.add(vbox)
########################################################################
# Docking
########################################################################
self.dg = DockGroup()
vbox.pack_start(self.dg)
########################################################################
# Testing Tools
########################################################################
adddibutton = gtk.Button('Create docked items')
adddibutton.child.set_ellipsize(pango.ELLIPSIZE_MIDDLE)
adddibutton.connect('clicked', self._on_add_di_button_clicked)
vbox.pack_start(adddibutton, False, False)
self.show_all()
def _on_add_di_button_clicked(self, button):
examples = [('calc', 'calculator', '#!/usr/bin/env python\n\nprint \'Hello!\''),
('file-manager', 'Hi!', 'Hello!'),
('fonts', 'ABC', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'),
('style', 'abc', 'abcdefghijklmnopqrstuvwxyz'),
('web-browser', 'browser', '0123456789'),
('date', 'today', '9876543210')]
for i in range(random.randrange(1, 10, 1)):
icon_name, tooltip_text, text = random.choice(examples)
# Create a TextView and set some example text
scrolledwindow = gtk.ScrolledWindow()
scrolledwindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
textview = gtk.TextView()
textview.get_buffer().set_text(text)
scrolledwindow.add(textview)
# Create a DockItem and add our TextView
di = DockItem(icon_name=icon_name, title='New %s' % self.file_counter, title_tooltip_text=tooltip_text)
di.add(scrolledwindow)
di.show_all()
# Add out DockItem to the DockGroup
self.dg.add(di)
# Increment file counter
self.file_counter += 1
示例6: test_add
def test_add(self):
dockgroup = DockGroup()
dockpaned = DockPaned()
dockpaned.add(dockgroup)
self.assertTrue(dockgroup in dockpaned)
dockgroup.destroy()
dockpaned.destroy()
示例7: test_add
def test_add(self):
dockitem = DockItem()
dockgroup = DockGroup()
dockgroup.add(dockitem)
self.assertTrue(dockitem in dockgroup)
dockitem.destroy()
dockgroup.destroy()
示例8: test_remove
def test_remove(self):
dockgroup = DockGroup()
dockpaned = DockPaned()
dockpaned.add(dockgroup)
dockpaned.remove(dockgroup)
self.assertTrue(dockgroup not in dockpaned)
dockgroup.destroy()
dockpaned.destroy()
示例9: test_append_item
def test_append_item(self):
dockitem = DockItem()
dockgroup = DockGroup()
index = dockgroup.append_item(dockitem)
self.assertTrue(index == 0)
self.assertTrue(dockgroup.get_nth_item(0) is dockitem)
dockitem.destroy()
dockgroup.destroy()
示例10: test_add_signal
def test_add_signal(self):
events = []
item_in = []
item_in_after = []
def event_handler(self, w):
events.append(w)
item_in.append(w in self.items)
def event_handler_after(self, w):
item_in_after.append(w in self.items)
dockgroup = DockGroup()
dockgroup.connect('add', event_handler)
dockgroup.connect_after('add', event_handler_after)
dockitem1 = DockItem()
dockgroup.add(dockitem1)
self.assertEquals([dockitem1], events)
self.assertEquals([True], item_in)
self.assertEquals([True], item_in_after)
dockitem2 = DockItem()
dockgroup.insert_item(dockitem2)
self.assertEquals([dockitem1], events)
self.assertEquals([True], item_in)
self.assertEquals([True], item_in_after)
示例11: test_child_destroy
def test_child_destroy(self):
dockgroup = DockGroup()
dockpaned = DockPaned()
dockpaned.add(dockgroup)
self.assertTrue(len(dockpaned) == len(dockpaned._items) == 1)
dockgroup.destroy()
self.assertTrue(len(dockpaned) == len(dockpaned._items) == 0)
dockgroup.destroy()
dockpaned.destroy()
示例12: test_drag_begin
def test_drag_begin(self):
dockitem1 = DockItem()
dockitem2 = DockItem()
dockitem3 = DockItem()
dockgroup = DockGroup()
dockgroup.add(dockitem1)
dockgroup.add(dockitem2)
dockgroup.add(dockitem3)
window = gtk.Window()
window.add(dockgroup)
window.set_size_request(200, 200)
self.assertEquals(dockitem3, dockgroup._current_tab.item)
示例13: dock_group_factory
def dock_group_factory(parent, weight=None, name=None):
group = DockGroup()
if name:
group.set_name(name)
if weight is not None:
parent.insert_item(group, weight=float(weight) / 100.)
else:
parent.add(group)
group.show()
return group
示例14: test_add_signal
def test_add_signal(self):
add_events = []
def on_add(self, widget):
add_events.append(widget)
dockgroup = DockGroup()
dockpaned = DockPaned()
dockpaned.connect('add', on_add)
dockpaned.add(dockgroup)
self.assertTrue(dockgroup in add_events)
dockgroup.destroy()
dockpaned.destroy()
示例15: test_delitem
def test_delitem(self):
dg = DockGroup()
dockpaned = DockPaned()
dockpaned.add(DockGroup())
dockpaned.add(dg)
dockpaned.add(DockGroup())
assert dg in dockpaned
assert len(dockpaned) == 3
assert dg is dockpaned[1]
del dockpaned[1]
assert len(dockpaned) == 2
assert dg not in dockpaned
dg.destroy()
dockpaned.destroy()