-PROJECT_NAME=gc_dialer
-PROJECT_VERSION=0.8.0
+PROJECT_NAME=DialCentral
SOURCE_PATH=src
-SOURCE=$(SOURCE_PATH)/gc_dialer.py $(SOURCE_PATH)/evo_backend.py $(SOURCE_PATH)/gc_backend.py $(SOURCE_PATH)/browser_emu.py
+SOURCE=$(SOURCE_PATH)/dialcentral/gc_dialer.py $(SOURCE_PATH)/dialcentral/evo_backend.py $(SOURCE_PATH)/dialcentral/gc_backend.py $(SOURCE_PATH)/dialcentral/browser_emu.py
OBJ=$(SOURCE:.py=.pyc)
-LINT_STATS_PATH=~/.pylint.d
-LINT_STATS=$(foreach file, $(addsuffix 1.stats,$(subst /,.,$(basename $(SOURCE)))), $(LINT_STATS_PATH)/$(file) )
-TEST_PATH=./tests
TAG_FILE=~/.ctags/$(PROJECT_NAME).tags
-PYPACKAGE_FILE=./support/GrandcentralDialer.pypackager
-DEB_METADATA=./support/DEBIAN
-SDK_DISPLAY=:2
-
-PY_FAST_LAUNCH=1
-PLATFORM=desktop
-ifeq ($(PLATFORM),os2007)
- LEGACY_GLADE=1
-else
- LEGACY_GLADE=0
-endif
-PRE_PACKAGE_PATH=./pkg-$(PLATFORM)
-PACKAGE_PATH=./deb-$(PLATFORM)
-BUILD_PATH=./build-$(PLATFORM)
-BUILD_BIN=$(BUILD_PATH)/gc_dialer.py
-DEB_PACKAGE=$(PACKAGE_PATH)/$(PROJECT_NAME)-$(PROJECT_VERSION)_$(PLATFORM).deb
DEBUGGER=winpdb
UNIT_TEST=nosetests -w $(TEST_PATH)
PROFILER=pyprofiler
CTAGS=ctags-exuberant
-.PHONY: all run debug test lint tags build package clean
+.PHONY: all run debug test lint tags package clean
all: test package
run: $(SOURCE)
- cd $(SOURCE_PATH) ; ./gc_dialer.py
+ cd $(SOURCE_PATH)/dialcentral ; ./gc_dialer.py
debug: $(SOURCE)
- cd $(SOURCE_PATH) ; $(DEBUGGER) ./gc_dialer.py
+ cd $(SOURCE_PATH)/dialcentral ; $(DEBUGGER) ./gc_dialer.py
test: $(SOURCE)
- cd $(SOURCE_PATH) ; ./gc_dialer.py -t
-
-xephyr:
- Xephyr $(SDK_DISPLAY) -host-cursor -screen 800x480x16 -dpi 96 -ac
-
-sdk_start:
- export DISPLAY=$(SDK_DISPLAY)
- af-sb-ini.sh start
+ cd $(SOURCE_PATH)/dialcentral ; ./gc_dialer.py -t
-sdk_stop:
- af-sb-ini.sh stop
+package:
+ ./builddeb.py
-lint: $(LINT_STATS)
+lint:
+ $(foreach file, $(SOURCE), $(LINT) $(file) ; )
tags: $(TAG_FILE)
-build: $(BUILD_PATH)
-
-package: $(DEB_PACKAGE)
-
-$(BUILD_PATH): $(BUILD_BIN)
- mkdir -p $(BUILD_PATH)
-
- cp $(SOURCE_PATH)/gc_dialer_256.png $(BUILD_PATH)
- cp $(SOURCE_PATH)/gc_dialer_64.png $(BUILD_PATH)
- cp $(SOURCE_PATH)/gc_dialer_26.png $(BUILD_PATH)
-
- cp $(SOURCE_PATH)/gc_dialer.desktop $(BUILD_PATH)
-
- cp $(SOURCE_PATH)/gc_dialer.glade $(BUILD_PATH)
-ifneq ($(PLATFORM),desktop)
- sed -i 's/^[ \t]*//;s/GtkWindow/HildonWindow/' $(BUILD_PATH)/gc_dialer.glade
-endif
-
-$(PRE_PACKAGE_PATH): $(BUILD_PATH)
- mkdir -p $(PRE_PACKAGE_PATH)/build/usr/share/icons/hicolor/scalable/hildon
- mkdir -p $(PRE_PACKAGE_PATH)/build/usr/share/icons/hicolor/26x26/hildon
- mkdir -p $(PRE_PACKAGE_PATH)/build/usr/share/icons/hicolor/64x64/hildon
- mkdir -p $(PRE_PACKAGE_PATH)/build/usr/share/applications/hildon
- mkdir -p $(PRE_PACKAGE_PATH)/build/usr/local/lib
- mkdir -p $(PRE_PACKAGE_PATH)/build/usr/local/bin
-
- cp $(BUILD_PATH)/gc_dialer_256.png $(PRE_PACKAGE_PATH)/build/usr/share/icons/hicolor/scalable/hildon/gc_dialer.png
- cp $(BUILD_PATH)/gc_dialer_64.png $(PRE_PACKAGE_PATH)/build/usr/share/icons/hicolor/64x64/hildon/gc_dialer.png
- cp $(BUILD_PATH)/gc_dialer_26.png $(PRE_PACKAGE_PATH)/build/usr/share/icons/hicolor/26x26/hildon/gc_dialer.png
-
- cp $(BUILD_PATH)/gc_dialer.desktop $(PRE_PACKAGE_PATH)/build/usr/share/applications/hildon
-
- cp $(BUILD_PATH)/gc_dialer.glade $(PRE_PACKAGE_PATH)/build/usr/local/lib
-
- cp $(BUILD_BIN) $(PRE_PACKAGE_PATH)/build/usr/local/bin
-
- cp $(PYPACKAGE_FILE) $(PRE_PACKAGE_PATH)
- cp -R $(DEB_METADATA) $(PRE_PACKAGE_PATH)/build/
-ifeq ($(PLATFORM),desktop)
- #sed -i 's/, python2.5-hildon//' $(PRE_PACKAGE_PATH)/build/DEBIAN/control
-endif
- sed -i 's/Version: 0.0.0/Version: $(PROJECT_VERSION)/' $(PRE_PACKAGE_PATH)/build/DEBIAN/control
- #Autoguess install size
- #du -hs pkg-desktop/build/ | sed 's/K *.*//'
- sed -i 's/Installed-Size: 0/Installed-Size: 196/' $(PRE_PACKAGE_PATH)/build/DEBIAN/control
- cp LICENSE $(PRE_PACKAGE_PATH)/build/DEBIAN/copyright
-
-$(DEB_PACKAGE): $(PRE_PACKAGE_PATH)
- mkdir -p $(PACKAGE_PATH)
- dpkg-deb -b $(PRE_PACKAGE_PATH)/build/ $(DEB_PACKAGE)
-
clean:
- rm -Rf $(PRE_PACKAGE_PATH) $(PACKAGE_PATH) $(BUILD_PATH)
- rm -Rf $(DEB_PACKAGE)
rm -Rf $(OBJ)
- rm -Rf $(LINT_STATS_PATH)/*
-
-$(BUILD_BIN): $(SOURCE)
- mkdir -p $(dir $(BUILD_BIN))
-
- #Construct the program by cat-ing all the python files together
-ifeq ($(PY_FAST_LAUNCH),1)
- echo "#!/usr/bin/python" > $(BUILD_BIN)
-else
- echo "#!/usr/bin/python2.5" > $(BUILD_BIN)
-endif
- #echo "from __future__ import with_statement" >> $(PRE_PACKAGE_PATH)/usr/local/bin/gc_dialer.py
- cat $(SOURCE_PATH)/gc_dialer.py $(SOURCE_PATH)/evo_backend.py $(SOURCE_PATH)/gc_backend.py $(SOURCE_PATH)/browser_emu.py | grep -e '^import ' | sort -u >> $(BUILD_BIN)
- cat $(SOURCE_PATH)/browser_emu.py $(SOURCE_PATH)/evo_backend.py $(SOURCE_PATH)/gc_backend.py $(SOURCE_PATH)/gc_dialer.py | grep -v 'browser_emu' | grep -v 'gc_backend' | grep -v "evo_backend"| grep -v "#!" >> $(BUILD_BIN)
- chmod 755 $(BUILD_BIN)
$(TAG_FILE): $(SOURCE)
mkdir -p $(dir $(TAG_FILE))
$(CTAGS) -o $(TAG_FILE) $(SOURCE)
-%1.stats: $(SOURCE) $(LINT_RC)
- @ #DESIRED DEPENDENCY: $(subst .,/,$(notdir $*)).py
- @ #DESIRED COMMAND: $(LINT) $<
- @ $(LINT) $(subst .,/,$(notdir $*)).py
- @# echo $*
- @# echo $?
-
#Makefile Debugging
#Target to print any variable, can be added to the dependencies of any other target
#Userfule flags for make, -d, -p, -n
import gobject
import gtk
-gtk.gdk.threads_init()
import gtk.glade
try:
except ImportError:
hildon = None
-
-"""
-This changes the default, system wide, socket timeout so that a hung server will not completly
-hork the application
-"""
import socket
+
+
+gtk.gdk.threads_init()
+#This changes the default, system wide, socket timeout so that a hung server will not completly
+#hork the application
socket.setdefaulttimeout(5)
combobox = self._widgetTree.get_widget("addressbook_combo")
combobox.set_model(self._booksList)
cell = gtk.CellRendererText()
- combobox.pack_start(cell, True)
- combobox.add_attribute(cell, 'text', 2)
+ combobox.pack_start(cell, True)
+ combobox.add_attribute(cell, 'text', 2)
combobox.set_active(0)
gtk.gdk.threads_leave()
self._init_contacts_view()
gtk.gdk.threads_leave()
- """
- This is where the blocking can start
- """
+ #This is where the blocking can start
if self._gcBackend.is_authed():
gtk.gdk.threads_enter()
self.set_account_number(self._gcBackend.get_account_number())
for x in xrange(numOfAttempts):
gtk.gdk.threads_enter()
- dialog = self._widgetTree.get_widget("login_dialog")
+ dialog = self._widgetTree.get_widget("login_dialog")
dialog.set_transient_for(self._window)
dialog.set_default_response(0)
dialog.run()
self._gcBackend.set_sane_callback()
self.populate_callback_combo()
self.set_account_number(self._gcBackend.get_account_number())
- gtk.gdk.threads_leave()
- return True
+ gtk.gdk.threads_leave()
+ return True
def display_error_message(self, msg):
error_dialog = gtk.MessageDialog(None, 0, gtk.MESSAGE_ERROR, gtk.BUTTONS_CLOSE, msg)
if status == conic.STATUS_CONNECTED:
self._window.set_sensitive(True)
self._deviceIsOnline = True
- threading.Thread(target=self.attempt_login,args=[2]).start()
+ threading.Thread(target=self.attempt_login, args=[2]).start()
elif status == conic.STATUS_DISCONNECTED:
self._window.set_sensitive(False)
self._deviceIsOnline = False
self.set_account_number("")
# re-run the inital grandcentral setup
- threading.Thread(target=self.attempt_login,args=[2]).start()
+ threading.Thread(target=self.attempt_login, args=[2]).start()
#gobject.idle_add(self._idly_populate_callback_combo)
def _on_callbackentry_changed(self, *args):
def _on_paste(self, *args):
contents = self._clipboard.wait_for_text()
+ phoneNumber = make_ugly(contents)
self.set_number(phoneNumber)
def _on_clear_number(self, *args):
dlg.set_copyright("Copyright 2008 - LGPL")
dlg.set_comments("Dialer is designed to interface with your Google Grandcentral account. This application is not affiliated with Google or Grandcentral in any way")
dlg.set_website("http://gc-dialer.garage.maemo.org/")
- dlg.set_authors(["<z2n@merctech.com>","Eric Warnke <ericew@gmail.com>","Ed Page <edpage@byu.net>"])
+ dlg.set_authors(["<z2n@merctech.com>", "Eric Warnke <ericew@gmail.com>", "Ed Page <edpage@byu.net>"])
dlg.run()
dlg.destroy()