os.path.join(os.path.dirname(__file__), "../lib/dialcentral.glade"),
]
+ _data_path = os.path.join(os.path.expanduser("~"), ".dialcentral")
+
def __init__(self):
self._gcBackend = None
self._clipboard = gtk.clipboard_get()
self._widgetTree = gtk.glade.XML(path)
break
else:
- self.display_error_message("Cannot find gc_dialer.glade")
+ self.display_error_message("Cannot find dialcentral.glade")
gtk.main_quit()
return
backgroundSetup.setDaemon(True)
backgroundSetup.start()
-
def _idle_setup(self):
"""
If something can be done after the UI loads, push it here so it's not blocking the UI
warnings.warn("No Internet Connectivity API ", UserWarning, 2)
import gc_backend
+ import file_backend
import evo_backend
# import gmail_backend
# import maemo_backend
- import views
+ import gc_views
- self._gcBackend = gc_backend.GCDialer()
+ cookieFile = os.path.join(self._data_path, "cookies.txt")
+ try:
+ os.makedirs(os.path.dirname(cookieFile))
+ except OSError, e:
+ if e.errno != 17:
+ raise
+ self._gcBackend = gc_backend.GCDialer(cookieFile)
gtk.gdk.threads_enter()
try:
- self._dialpad = views.Dialpad(self._widgetTree)
+ self._dialpad = gc_views.Dialpad(self._widgetTree)
self._dialpad.set_number("")
- self._accountView = views.AccountInfo(self._widgetTree, self._gcBackend)
- self._recentView = views.RecentCallsView(self._widgetTree, self._gcBackend)
- self._contactsView = views.ContactsView(self._widgetTree, self._gcBackend)
+ self._accountView = gc_views.AccountInfo(self._widgetTree, self._gcBackend)
+ self._recentView = gc_views.RecentCallsView(self._widgetTree, self._gcBackend)
+ self._contactsView = gc_views.ContactsView(self._widgetTree, self._gcBackend)
finally:
gtk.gdk.threads_leave()
else:
self.attempt_login(2)
+ fsContactsPath = os.path.join(self._data_path, "contacts")
addressBooks = [
self._gcBackend,
evo_backend.EvolutionAddressBook(),
+ file_backend.FilesystemAddressBookFactory(fsContactsPath),
]
- mergedBook = views.MergedAddressBook(addressBooks, views.MergedAddressBook.basic_lastname_sorter)
+ mergedBook = gc_views.MergedAddressBook(addressBooks, gc_views.MergedAddressBook.advanced_lastname_sorter)
self._contactsView.append(mergedBook)
self._contactsView.extend(addressBooks)
self._contactsView.open_addressbook(*self._contactsView.get_addressbooks().next()[0][0:2])
try:
dialog = self._widgetTree.get_widget("login_dialog")
dialog.set_transient_for(self._window)
- dialog.set_default_response(0)
+ dialog.set_default_response(gtk.RESPONSE_CLOSE)
dialog.run()
username = self._widgetTree.get_widget("usernameentry").get_text()
def _on_loginclose_clicked(self, *args):
self._on_close()
- sys.exit(0)
def _on_clearcookies_clicked(self, *args):
self._gcBackend.logout()
warnings.warn("Backend Status: Logged in? %s, Authenticated? %s, Callback=%s" % (loggedIn, self._gcBackend.is_authed(), self._gcBackend.get_callback_number()), UserWarning, 2)
return
+ dialed = False
try:
- callSuccess = self._gcBackend.dial(number)
+ self._gcBackend.dial(number)
+ dialed = True
+ except RuntimeError, e:
+ self.display_error_message(e.message)
except ValueError, e:
- self._gcBackend._msg = e.message
- callSuccess = False
+ self.display_error_message(e.message)
- if not callSuccess:
- self.display_error_message(self._gcBackend._msg)
- else:
+ if dialed:
self._dialpad.clear()
-
- self._recentView.clear()
+ self._recentView.clear()
def _on_paste(self, *args):
contents = self._clipboard.wait_for_text()