Index: third_party/twisted_8_1/twisted/words/im/gtkaccount.py |
diff --git a/third_party/twisted_8_1/twisted/words/im/gtkaccount.py b/third_party/twisted_8_1/twisted/words/im/gtkaccount.py |
deleted file mode 100644 |
index 61b52d74dea8b377e53e7568b83b8b2da4354c8e..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/words/im/gtkaccount.py |
+++ /dev/null |
@@ -1,224 +0,0 @@ |
-# Copyright (c) 2001-2004 Twisted Matrix Laboratories. |
-# See LICENSE for details. |
- |
- |
-try: |
- import cPickle as pickle |
-except ImportError: |
- import pickle |
- |
-import gtk |
- |
-from twisted.words.im.gtkcommon import GLADE_FILE, SETTINGS_FILE, autoConnectMethods,\ |
- openGlade |
- |
-from twisted.words.im import gtkchat |
- |
-### This generic stuff uses the word "account" in a very different way -- chat |
-### accounts are potential sources of messages, InstanceMessenger accounts are |
-### individual network connections. |
- |
-class AccountManager: |
- def __init__(self): |
- self.xml = openGlade(GLADE_FILE, root="MainIMWindow") |
- self.chatui = gtkchat.GtkChatClientUI(self.xml) |
- self.chatui._accountmanager = self # TODO: clean this up... it's used in gtkchat |
- print self.xml._o |
- autoConnectMethods(self, self.chatui.theContactsList) |
- self.widget = self.xml.get_widget("AccountManWidget") |
- self.widget.show_all() |
- try: |
- f = open(SETTINGS_FILE) |
- self.accounts = pickle.load(f) |
- print 'loaded!' |
- self.refreshAccounts() |
- except IOError: |
- self.accounts = [] |
- print 'initialized!' |
- |
- def on_ConsoleButton_clicked(self, b): |
- #### For debugging purposes... |
- from twisted.manhole.ui.pywidgets import LocalInteraction |
- l = LocalInteraction() |
- l.localNS['chat'] = self.chatui |
- l.show_all() |
- |
- def created(self, acct): |
- self.accounts.append(acct) |
- self.refreshAccounts() |
- |
- def refreshAccounts(self): |
- w = self.xml.get_widget("accountsList") |
- w.clear() |
- for acct in self.accounts: |
- l = [acct.accountName, acct.isOnline() and 'yes' or 'no', |
- acct.autoLogin and 'yes' or 'no', acct.gatewayType] |
- w.append(l) |
- |
- def lockNewAccount(self, b): |
- self.xml.get_widget("NewAccountButton").set_sensitive(not b) |
- |
- def on_NewAccountButton_clicked(self, b): |
- NewAccount(self) |
- |
- def on_MainIMWindow_destroy(self, w): |
- print 'Saving...' |
- pickle.dump(self.accounts, open(SETTINGS_FILE,'wb')) |
- print 'Saved.' |
- gtk.mainquit() |
- |
- |
- def on_DeleteAccountButton_clicked(self, b): |
- lw = self.xml.get_widget("accountsList") |
- if lw.selection: |
- del self.accounts[lw.selection[0]] |
- self.refreshAccounts() |
- |
- def on_LogOnButton_clicked(self, b): |
- lw = self.xml.get_widget("accountsList") |
- if lw.selection: |
- self.accounts[lw.selection[0]].logOn(self.chatui) |
- |
- |
-class DummyAccountForm: |
- def __init__(self, manager): |
- self.widget = gtk.GtkButton("HELLO") |
- |
- def create(self, sname, autoLogin): |
- return None |
- |
- |
-class NewAccount: |
- def __init__(self, manager): |
- self.manager = manager |
- self.manager.lockNewAccount(1) |
- self.xml = openGlade(GLADE_FILE, root="NewAccountWindow") |
- autoConnectMethods(self) |
- self.widget = self.xml.get_widget("NewAccountWindow") |
- self.frame = self.xml.get_widget("GatewayFrame") |
- # Making up for a deficiency in glade. |
- widgetMenu = self.xml.get_widget("GatewayOptionMenu") |
- m = gtk.GtkMenu() |
- activ = 0 |
- self.currentGateway = None |
- for name, klas in registeredTypes: |
- i = gtk.GtkMenuItem(name) |
- m.append(i) |
- k = klas(self.manager) |
- i.connect("activate", self.gatewaySelected, k) |
- if not activ: |
- activ = 1 |
- self.gatewaySelected(None, k) |
- widgetMenu.set_menu(m) |
- self.widget.show_all() |
- |
- def gatewaySelected(self, ig, k): |
- if self.currentGateway: |
- self.frame.remove(self.currentGateway.widget) |
- self.currentGateway = k |
- self.frame.add(k.widget) |
- k.widget.show_all() |
- |
- def createAccount(self, b): |
- autoLogin = self.xml.get_widget("AutoLogin").get_active() |
- accountName = self.xml.get_widget("accountName").get_text() |
- x = self.currentGateway.create(accountName, autoLogin) |
- if x: |
- self.manager.created(x) |
- self.destroyMe() |
- |
- def destroyMe(self, b=None): |
- self.widget.destroy() |
- |
- def on_NewAccountWindow_destroy(self, w): |
- self.manager.lockNewAccount(0) |
- |
-from twisted.words.im.pbsupport import PBAccount |
-from twisted.words.im.tocsupport import TOCAccount |
-from twisted.words.im.ircsupport import IRCAccount |
- |
- |
-class PBAccountForm: |
- def __init__(self, manager): |
- self.manager = manager |
- self.xml = openGlade(GLADE_FILE, root="PBAccountWidget") |
- autoConnectMethods(self) |
- self.widget = self.xml.get_widget("PBAccountWidget") |
- self.on_serviceType_changed() |
- self.selectedRow = None |
- |
- def addPerspective(self, b): |
- stype = self.xml.get_widget("serviceType").get_text() |
- sname = self.xml.get_widget("serviceName").get_text() |
- pname = self.xml.get_widget("perspectiveName").get_text() |
- self.xml.get_widget("serviceList").append([stype, sname, pname]) |
- |
- def removePerspective(self, b): |
- if self.selectedRow is not None: |
- self.xml.get_widget("serviceList").remove(self.selectedRow) |
- |
- def on_serviceType_changed(self, w=None): |
- self.xml.get_widget("serviceName").set_text(self.xml.get_widget("serviceType").get_text()) |
- self.xml.get_widget("perspectiveName").set_text(self.xml.get_widget("identity").get_text()) |
- |
- on_identity_changed = on_serviceType_changed |
- |
- def on_serviceList_select_row(self, slist, row, column, event): |
- self.selectedRow = row |
- |
- def create(self, accName, autoLogin): |
- host = self.xml.get_widget("hostname").get_text() |
- port = self.xml.get_widget("portno").get_text() |
- user = self.xml.get_widget("identity").get_text() |
- pasw = self.xml.get_widget("password").get_text() |
- serviceList = self.xml.get_widget("serviceList") |
- services = [] |
- for r in xrange(0, serviceList.rows): |
- row = [] |
- for c in xrange(0, serviceList.columns): |
- row.append(serviceList.get_text(r, c)) |
- services.append(row) |
- if not services: |
- services.append([ |
- self.xml.get_widget("serviceType").get_text(), |
- self.xml.get_widget("serviceName").get_text(), |
- self.xml.get_widget("perspectiveName").get_text()]) |
- return PBAccount(accName, autoLogin, user, pasw, host, int(port), |
- services) |
- |
- |
-class TOCAccountForm: |
- def __init__(self, maanger): |
- self.xml = openGlade(GLADE_FILE, root="TOCAccountWidget") |
- self.widget = self.xml.get_widget("TOCAccountWidget") |
- |
- def create(self, accountName, autoLogin): |
- return TOCAccount( |
- accountName, autoLogin, |
- self.xml.get_widget("TOCName").get_text(), |
- self.xml.get_widget("TOCPass").get_text(), |
- self.xml.get_widget("TOCHost").get_text(), |
- int(self.xml.get_widget("TOCPort").get_text()) ) |
- |
- |
-class IRCAccountForm: |
- def __init__(self, maanger): |
- self.xml = openGlade(GLADE_FILE, root="IRCAccountWidget") |
- self.widget = self.xml.get_widget("IRCAccountWidget") |
- |
- def create(self, accountName, autoLogin): |
- return IRCAccount( |
- accountName, autoLogin, |
- self.xml.get_widget("ircNick").get_text(), |
- self.xml.get_widget("ircPassword").get_text(), |
- self.xml.get_widget("ircServer").get_text(), |
- int(self.xml.get_widget("ircPort").get_text()), |
- self.xml.get_widget("ircChannels").get_text(), |
- ) |
- |
- |
- |
-registeredTypes = [ ("Twisted", PBAccountForm), |
- ("AOL Instant Messenger", TOCAccountForm), |
- ["IRC", IRCAccountForm], |
- ("Dummy", DummyAccountForm) ] |