handle plugin dependency
authorThomasV <thomasv@gitorious>
Wed, 16 Oct 2013 12:11:28 +0000 (14:11 +0200)
committerThomasV <thomasv@gitorious>
Wed, 16 Oct 2013 12:11:28 +0000 (14:11 +0200)
plugins/exchange_rate.py
plugins/pointofsale.py

index 6967e0d..27daba4 100644 (file)
@@ -80,6 +80,7 @@ class Plugin(BasePlugin):
         # Do price discovery
         self.exchanger = Exchanger(self)
         self.exchanger.start()
+        self.gui.exchanger = self.exchanger #
 
     def set_currencies(self, quote_currencies):
         self.currencies = sorted(quote_currencies.keys())
index 812b60f..e7666d0 100644 (file)
@@ -98,7 +98,7 @@ class Plugin(BasePlugin):
         return 'Point of Sale'
 
     def description(self):
-        return _('Show QR code window and amounts requested for each address. Add menu item to request amount.')
+        return _('Show QR code window and amounts requested for each address. Add menu item to request amount. Note: This requires the exchange rate plugin to be installed.')
 
     def init(self):
         self.window = self.gui.main_window
@@ -112,6 +112,14 @@ class Plugin(BasePlugin):
         self.requested_amounts = {}
         self.toggle_QR_window(True)
 
+    def enable(self):
+        if not self.config.get('use_exchange_rate'):
+            self.gui.main_window.show_message("Please enable exchange rates first!")
+            return False
+
+        return BasePlugin.enable(self)
+
+
     def load_wallet(self, wallet):
         self.wallet = wallet
         self.requested_amounts = self.wallet.storage.get('requested_amounts',{})