diff options
Diffstat (limited to 'activity.py')
-rw-r--r-- | activity.py | 45 |
1 files changed, 42 insertions, 3 deletions
diff --git a/activity.py b/activity.py index 79d5e8e..1ca1070 100644 --- a/activity.py +++ b/activity.py @@ -22,20 +22,46 @@ from gi.repository import Gtk from sugar3.activity import activity from sugar3.activity.widgets import ActivityToolbarButton from sugar3.activity.widgets import StopButton +from sugar3.graphics.toolbutton import ToolButton from sugar3.graphics.toolbarbox import ToolbarBox +from widgets import DeviceList +from bt import Bluetooth + #from gettext import gettext as _ -class BluetoothActivity(activity.Activity): +class ActivityBluetooth(activity.Activity): def __init__(self, handle): activity.Activity.__init__(self, handle) self.max_participants = 1 + self.bluetooth = Bluetooth() + self.bluetooth.connect('device-found', self._device_found) + # Canvas - # + self._notebook = Gtk.Notebook() + #self._notebook.set_show_tabs(False) + self.set_canvas(self._notebook) + + scroll = Gtk.ScrolledWindow() + scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC) + self._notebook.append_page(scroll, Gtk.Label()) + + self._pdevices = DeviceList() + self._pdevices.set_devices(self.bluetooth.get_paired_devices()) + scroll.add(self._pdevices) + scroll.show_all() + + scroll = Gtk.ScrolledWindow() + scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC) + self._notebook.append_page(scroll, Gtk.Label()) + + self._nbdevices = DeviceList() + scroll.add(self._nbdevices) + scroll.show_all() # Toolbars toolbarbox = ToolbarBox() @@ -43,7 +69,13 @@ class BluetoothActivity(activity.Activity): activity_button = ActivityToolbarButton(self) toolbarbox.toolbar.insert(activity_button, 0) - separator = gtk.SeparatorToolItem() + toolbarbox.toolbar.insert(Gtk.SeparatorToolItem(), -1) + + search_btn = ToolButton(icon_name='system-search') + search_btn.connect('clicked', self._find_devices) + toolbarbox.toolbar.insert(search_btn, -1) + + separator = Gtk.SeparatorToolItem() separator.set_draw(False) separator.set_expand(True) toolbarbox.toolbar.insert(separator, -1) @@ -54,3 +86,10 @@ class BluetoothActivity(activity.Activity): self.set_toolbar_box(toolbarbox) self.show_all() + def _find_devices(self, widget): + self._notebook.set_current_page(1) + self.bluetooth.find_devices() + self.nbdevices.model.clear() + + def _device_found(self, bluetooth, deviceprops): + self.nbdevices.add_device(deviceprops)
\ No newline at end of file |