Removing avahi module stuff, already in avahi-tools RPM

This commit is contained in:
Dan Williams 2006-04-20 11:43:33 -04:00
parent d4bacf35db
commit f41ce25a65
5 changed files with 31 additions and 194 deletions

View File

@ -1,7 +0,0 @@
DEPENDENCIES
------------
gecko-embed
http://gnome.org/~marco/gecko-embed-0.1-2.i386.rpm
http://gnome.org/~marco/gecko-embed-0.1-2.src.rpm

View File

@ -1,13 +1,8 @@
#!/usr/bin/env python #!/usr/bin/env python
import dbus
import dbus.service
import dbus.glib
import pygtk import pygtk
pygtk.require('2.0') pygtk.require('2.0')
import gtk import gtk
import geckoembed import geckoembed
class AddressToolbar(gtk.Toolbar): class AddressToolbar(gtk.Toolbar):
@ -19,7 +14,8 @@ class AddressToolbar(gtk.Toolbar):
address_item.show() address_item.show()
def __open_address_cb(self, address): def __open_address_cb(self, address):
web_activity.openAddress(address) browser = BrowserWindow(address)
browser.show()
class AddressItem(gtk.ToolItem): class AddressItem(gtk.ToolItem):
def __init__(self, callback): def __init__(self, callback):
@ -68,21 +64,13 @@ class AddressEntry(gtk.HBox):
image.show() image.show()
self.entry.show() self.entry.show()
self.entry.grab_focus()
def get_folded(self): def __button_clicked_cb(self, button):
return self.folded
def set_folded(self, folded):
self.folded = not self.folded self.folded = not self.folded
self._update_folded_state() self._update_folded_state()
def __button_clicked_cb(self, button):
self.set_folded(not self.get_folded())
def __activate_cb(self, entry): def __activate_cb(self, entry):
self.callback(entry.get_text()) self.callback(entry.get_text())
self.set_folded(True)
class NavigationToolbar(gtk.Toolbar): class NavigationToolbar(gtk.Toolbar):
def __init__(self, embed): def __init__(self, embed):
@ -137,35 +125,47 @@ class NavigationToolbar(gtk.Toolbar):
def __open_address_cb(self, address): def __open_address_cb(self, address):
self.embed.load_url(address) self.embed.load_url(address)
class BrowserActivity(gtk.VBox): class BrowserWindow(gtk.Window):
def __init__(self, uri): def __init__(self, uri):
gtk.VBox.__init__(self) gtk.Window.__init__(self)
self.set_default_size(640, 480);
vbox = gtk.VBox()
self.embed = geckoembed.Embed() self.embed = geckoembed.Embed()
self.pack_start(self.embed) vbox.pack_start(self.embed)
self.embed.show() self.embed.show()
self.embed.load_url(uri) self.embed.load_url(uri)
nav_toolbar = NavigationToolbar(self.embed) nav_toolbar = NavigationToolbar(self.embed)
self.pack_start(nav_toolbar, False) vbox.pack_start(nav_toolbar, False)
nav_toolbar.show() nav_toolbar.show()
class SearchActivity(gtk.VBox): self.add(vbox)
def __init__(self): vbox.show()
gtk.VBox.__init__(self)
class SearchWindow(gtk.Window):
def __init__(self):
gtk.Window.__init__(self)
self.set_default_size(640, 480);
self.connect("delete-event", self.__delete_event); self.connect("delete-event", self.__delete_event);
vbox = gtk.VBox()
self.embed = geckoembed.Embed() self.embed = geckoembed.Embed()
self.embed.connect("open-address", self.__open_address); self.embed.connect("open-address", self.__open_address);
self.pack_start(self.embed) vbox.pack_start(self.embed)
self.embed.show() self.embed.show()
address_toolbar = AddressToolbar() address_toolbar = AddressToolbar()
self.pack_start(address_toolbar, False) vbox.pack_start(address_toolbar, False)
address_toolbar.show() address_toolbar.show()
self.add(vbox)
vbox.show()
self.embed.load_url("http://www.google.com") self.embed.load_url("http://www.google.com")
def __delete_event(self, widget, event, data=None): def __delete_event(self, widget, event, data=None):
@ -175,39 +175,10 @@ class SearchActivity(gtk.VBox):
if uri.startswith("http://www.google.com"): if uri.startswith("http://www.google.com"):
return False return False
else: else:
web_activity.openAddress(uri) browser = BrowserWindow(uri)
browser.show()
return True return True
class WebActivity: window = SearchWindow()
def __init__(self):
bus = dbus.SessionBus()
container_object = bus.get_object("com.redhat.Sugar.Shell", \
"/com/redhat/Sugar/Shell/ActivityContainer")
self.container = dbus.Interface(container_object, \
"com.redhat.Sugar.Shell.ActivityContainer")
def run(self):
window_id = self.container.add_activity("Web")
plug = gtk.Plug(window_id)
window = SearchActivity()
plug.add(window)
window.show() window.show()
plug.show()
def openAddress(self, uri):
window_id = self.container.add_activity("Page")
plug = gtk.Plug(window_id)
window = BrowserActivity(uri)
plug.add(window)
window.show()
plug.show()
web_activity = WebActivity()
web_activity.run()
gtk.main() gtk.main()

View File

@ -1,114 +0,0 @@
# $Id: __init__.py 977 2005-11-15 01:49:54Z lennart $
# This file is part of avahi.
#
# avahi is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# avahi is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
# License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with avahi; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.
# Some definitions matching those in avahi-common/defs.h
import dbus
SERVER_INVALID, SERVER_REGISTERING, SERVER_RUNNING, SERVER_COLLISION, SERVER_FAILURE = range(0, 5)
ENTRY_GROUP_UNCOMMITED, ENTRY_GROUP_REGISTERING, ENTRY_GROUP_ESTABLISHED, ENTRY_GROUP_COLLISION, ENTRY_GROUP_FAILURE = range(0, 5)
DOMAIN_BROWSER_BROWSE, DOMAIN_BROWSER_BROWSE_DEFAULT, DOMAIN_BROWSER_REGISTER, DOMAIN_BROWSER_REGISTER_DEFAULT, DOMAIN_BROWSER_BROWSE_LEGACY = range(0, 5)
PROTO_UNSPEC, PROTO_INET, PROTO_INET6 = -1, 0, 1
IF_UNSPEC = -1
PUBLISH_UNIQUE = 1
PUBLISH_NO_PROBE = 2
PUBLISH_NO_ANNOUNCE = 4
PUBLISH_ALLOW_MULTIPLE = 8
PUBLISH_NO_REVERSE = 16
PUBLISH_NO_COOKIE = 32
PUBLISH_UPDATE = 64
PUBLISH_USE_WIDE_AREA = 128
PUBLISH_USE_MULTICAST = 256
LOOKUP_USE_WIDE_AREA = 1
LOOKUP_USE_MULTICAST = 2
LOOKUP_NO_TXT = 4
LOOKUP_NO_ADDRESS = 8
LOOKUP_RESULT_CACHED = 1
LOOKUP_RESULT_WIDE_AREA = 2
LOOKUP_RESULT_MULTICAST = 4
LOOKUP_RESULT_LOCAL = 8
LOOKUP_RESULT_OUR_OWN = 16
LOOKUP_RESULT_STATIC = 32
SERVICE_COOKIE = "org.freedesktop.Avahi.cookie"
SERVICE_COOKIE_INVALID = 0
DBUS_NAME = "org.freedesktop.Avahi"
DBUS_INTERFACE_SERVER = DBUS_NAME + ".Server"
DBUS_PATH_SERVER = "/"
DBUS_INTERFACE_ENTRY_GROUP = DBUS_NAME + ".EntryGroup"
DBUS_INTERFACE_DOMAIN_BROWSER = DBUS_NAME + ".DomainBrowser"
DBUS_INTERFACE_SERVICE_TYPE_BROWSER = DBUS_NAME + ".ServiceTypeBrowser"
DBUS_INTERFACE_SERVICE_BROWSER = DBUS_NAME + ".ServiceBrowser"
DBUS_INTERFACE_ADDRESS_RESOLVER = DBUS_NAME + ".AddressResolver"
DBUS_INTERFACE_HOST_NAME_RESOLVER = DBUS_NAME + ".HostNameResolver"
DBUS_INTERFACE_SERVICE_RESOLVER = DBUS_NAME + ".ServiceResolver"
DBUS_INTERFACE_RECORD_BROWSER = DBUS_NAME + ".RecordBrowser"
def byte_array_to_string(s):
r = ""
for c in s:
if c >= 32 and c < 127:
r += "%c" % c
else:
r += "."
return r
def txt_array_to_string_array(t):
l = []
for s in t:
l.append(byte_array_to_string(s))
return l
def string_to_byte_array(s):
r = []
for c in s:
r.append(dbus.Byte(ord(c)))
return r
def string_array_to_txt_array(t):
l = []
for s in t:
l.append(string_to_byte_array(s))
return l
def dict_to_txt_array(txt_dict):
l = []
for k,v in txt_dict.items():
l.append(string_to_byte_array("%s=%s" % (k,v)))
return l

View File

@ -33,11 +33,6 @@ class ChatApp(SimpleGladeApp):
realname = "Some Clueless User" realname = "Some Clueless User"
return (nick, realname) return (nick, realname)
def new_service(self, action, interface, protocol, name, stype, domain, flags):
if action != 'added' or stype != presence.OLPC_CHAT_SERVICE:
return
self._pdiscovery.resolve_service(interface, protocol, name, stype, domain, self.service_resolved)
def on_buddyList_buddy_selected(self, widget, *args): def on_buddyList_buddy_selected(self, widget, *args):
(model, aniter) = widget.get_selection().get_selected() (model, aniter) = widget.get_selection().get_selected()
name = self.treemodel.get(aniter,0) name = self.treemodel.get(aniter,0)
@ -72,12 +67,6 @@ class ChatApp(SimpleGladeApp):
res[tmp[0]] = '' res[tmp[0]] = ''
return res return res
def service_resolved(self, interface, protocol, name, stype, domain, host, aprotocol, address, port, txt, flags):
data = self._pair_to_dict(avahi.txt_array_to_string_array(txt))
if len(data) > 0 and 'name' in data.keys():
aniter = self.treemodel.insert_after(None,None)
self.treemodel.set(aniter, 0, data['name'])
def new(self): def new(self):
self._group_chat_buffer = gtk.TextBuffer() self._group_chat_buffer = gtk.TextBuffer()
self.chatView.set_buffer(self._group_chat_buffer) self.chatView.set_buffer(self._group_chat_buffer)
@ -97,12 +86,13 @@ class ChatApp(SimpleGladeApp):
self.buddyList.append_column(column) self.buddyList.append_column(column)
self._pannounce.register_service(self._realname, 6666, presence.OLPC_CHAT_SERVICE, name=self._nick) self._pannounce.register_service(self._realname, 6666, presence.OLPC_CHAT_SERVICE, name=self._nick)
self._pdiscovery.add_service_listener(self.new_service)
self._pdiscovery.start()
self._gc_controller = network.GroupChatController('224.0.0.221', 6666, self._recv_group_message) self._gc_controller = network.GroupChatController('224.0.0.221', 6666, self._recv_group_message)
self._gc_controller.start() self._gc_controller.start()
aniter = self.treemodel.insert_after(None,None)
self.treemodel.set(aniter, 0, data['name'])
def cleanup(self): def cleanup(self):
pass pass

View File

@ -1,6 +1,3 @@
#!/usr/bin/python -t
import avahi, dbus, dbus.glib import avahi, dbus, dbus.glib
OLPC_CHAT_SERVICE = "_olpc_chat._udp" OLPC_CHAT_SERVICE = "_olpc_chat._udp"