Allow error to be passed to UI
authorRyan Campbell <campbellr@gmail.com>
Thu, 27 May 2010 00:27:23 +0000 (18:27 -0600)
committerRyan Campbell <campbellr@gmail.com>
Thu, 27 May 2010 00:27:23 +0000 (18:27 -0600)
Now, whenever an exception is triggered in the controller, we display a
banner with the exception message. This should help reduce the confusion
when something goes wrong.

package/src/mevemon.py
package/src/ui/diablo/gui.py
package/src/ui/fremantle/gui.py

index 17c4ca1..53fce38 100755 (executable)
@@ -69,6 +69,7 @@ class mEveMon():
         self.cached_api = eveapi.EVEAPIConnection( cacheHandler = \
                 apicache.cache_handler(debug=False))
         self.gui = gui.mEveMonUI(self)
         self.cached_api = eveapi.EVEAPIConnection( cacheHandler = \
                 apicache.cache_handler(debug=False))
         self.gui = gui.mEveMonUI(self)
+        self.gui.run()
 
     def run(self):
         gtk.main()
 
     def run(self):
         gtk.main()
@@ -131,7 +132,8 @@ class mEveMon():
 
         try:
             auth = self.cached_api.auth(userID=uid, apiKey=api_key)
 
         try:
             auth = self.cached_api.auth(userID=uid, apiKey=api_key)
-        except:
+        except Exception, e:
+            self.gui.report_error(str(e))
             traceback.print_exc()
             return None
 
             traceback.print_exc()
             return None
 
@@ -144,7 +146,8 @@ class mEveMon():
         """
         try:
             sheet = self.get_auth(uid).character(char_id).CharacterSheet()
         """
         try:
             sheet = self.get_auth(uid).character(char_id).CharacterSheet()
-        except:
+        except Exception, e:
+            self.gui.report_error(str(e))
             # TODO: we should really have a logger that logs this error somewhere
             traceback.print_exc()
             return None
             # TODO: we should really have a logger that logs this error somewhere
             traceback.print_exc()
             return None
@@ -182,7 +185,8 @@ class mEveMon():
         try:
             chars = self.cached_api.eve.CharacterName(ids=char_id).characters
             name = chars[0].characterName
         try:
             chars = self.cached_api.eve.CharacterName(ids=char_id).characters
             name = chars[0].characterName
-        except:
+        except Exception, e:
+            self.gui.report_error(str(e))
             traceback.print_exc()
             return None
 
             traceback.print_exc()
             return None
 
@@ -199,7 +203,8 @@ class mEveMon():
             chars = self.cached_api.eve.CharacterID(names=name).characters
             char_id = chars[0].characterID
             char_name = chars[0].name
             chars = self.cached_api.eve.CharacterID(names=name).characters
             char_id = chars[0].characterID
             char_name = chars[0].name
-        except:
+        except Exception, e:
+            self.gui.report_error(str(e))
             traceback.print_exc()
             return None
 
             traceback.print_exc()
             return None
 
@@ -216,7 +221,8 @@ class mEveMon():
             try:
                 api_char_list = auth.account.Characters()
                 char_list = [char.name for char in api_char_list.characters]
             try:
                 api_char_list = auth.account.Characters()
                 char_list = [char.name for char in api_char_list.characters]
-            except:
+            except Exception, e:
+                self.gui.report_error(str(e))
                 traceback.print_exc()
                 return None
 
                 traceback.print_exc()
                 return None
 
@@ -231,6 +237,7 @@ class mEveMon():
         pair to the list, it appends an 'error message' 
 
         """
         pair to the list, it appends an 'error message' 
 
         """
+
         ui_char_list = []
         err_img = "/usr/share/mevemon/imgs/error.jpg"
 
         ui_char_list = []
         err_img = "/usr/share/mevemon/imgs/error.jpg"
 
@@ -267,7 +274,8 @@ class mEveMon():
         """
         try:
             tree = self.cached_api.eve.SkillTree()
         """
         try:
             tree = self.cached_api.eve.SkillTree()
-        except:
+        except Exception, e:
+            self.gui.report_error(str(e))
             traceback.print_exc()
             return None
         
             traceback.print_exc()
             return None
         
@@ -280,7 +288,8 @@ class mEveMon():
         """
         try:
             skill = self.get_auth(uid).character(char_id).SkillInTraining()
         """
         try:
             skill = self.get_auth(uid).character(char_id).SkillInTraining()
-        except:
+        except Exception, e:
+            self.gui.report_error(str(e))
             traceback.print_exc()
             return None
 
             traceback.print_exc()
             return None
 
index 3038f4b..4212bf8 100644 (file)
@@ -234,6 +234,7 @@ class mEveMonUI(BaseUI):
         self.controller = controller
         gtk.set_application_name("mEveMon")
 
         self.controller = controller
         gtk.set_application_name("mEveMon")
 
+    def run(self):
         # create the main window
         self.win = hildon.Window()
         self.win.connect("destroy", self.controller.quit)
         # create the main window
         self.win = hildon.Window()
         self.win.connect("destroy", self.controller.quit)
index 8b8d1f7..183b918 100644 (file)
@@ -235,6 +235,8 @@ class mEveMonUI(BaseUI):
         self.controller = controller
         gtk.set_application_name("mEveMon")
 
         self.controller = controller
         gtk.set_application_name("mEveMon")
 
+
+    def run(self):
         # create the main window
         self.win = hildon.StackableWindow()
         self.win.connect("destroy", self.controller.quit)
         # create the main window
         self.win = hildon.StackableWindow()
         self.win.connect("destroy", self.controller.quit)