Add the actions buttons on the friends panel
This commit is contained in:
parent
b6cf5ef31e
commit
8d26a76a88
@ -1,5 +1,50 @@
|
||||
import goocanvas
|
||||
|
||||
from panel.Panel import Panel
|
||||
from sugar.canvas.IconItem import IconItem
|
||||
|
||||
class ActionsBar(goocanvas.Group):
|
||||
def __init__(self, shell, width):
|
||||
goocanvas.Group.__init__(self)
|
||||
self._width = width
|
||||
self._shell = shell
|
||||
|
||||
self._y = 0
|
||||
|
||||
icon = IconItem(icon_name='stock-share', size=self._width)
|
||||
icon.connect('clicked', self.__share_clicked_cb)
|
||||
self.add_icon(icon)
|
||||
|
||||
icon = IconItem(icon_name='stock-invite', size=self._width)
|
||||
icon.connect('clicked', self.__invite_clicked_cb)
|
||||
self.add_icon(icon)
|
||||
|
||||
icon = IconItem(icon_name='stock-chat', size=self._width)
|
||||
icon.connect('clicked', self.__chat_clicked_cb)
|
||||
self.add_icon(icon)
|
||||
|
||||
def add_icon(self, icon):
|
||||
self._y += (self._width + 6)
|
||||
icon.set_property('y', self._y)
|
||||
self.add_child(icon)
|
||||
|
||||
def __share_clicked_cb(self, item):
|
||||
pass
|
||||
|
||||
def __invite_clicked_cb(self, item):
|
||||
pass
|
||||
|
||||
def __chat_clicked_cb(self, item):
|
||||
pass
|
||||
|
||||
class FriendsPanel(Panel):
|
||||
def __init__(self, shell):
|
||||
Panel.__init__(self)
|
||||
self._shell = shell
|
||||
|
||||
def construct(self):
|
||||
Panel.construct(self)
|
||||
|
||||
actions_bar = ActionsBar(self._shell, self.get_width())
|
||||
actions_bar.translate(self.get_border(), self.get_border())
|
||||
self.get_root().add_child(actions_bar)
|
||||
|
@ -45,6 +45,10 @@ class Panel(gtk.Window):
|
||||
height = self._view.get_allocation().height
|
||||
return height - self.get_border() * 2
|
||||
|
||||
def get_width(self):
|
||||
width = self._view.get_allocation().width
|
||||
return width - self.get_border() * 2
|
||||
|
||||
def __realize_cb(self, window):
|
||||
self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DOCK)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user