From 1af28e25c39eea597e54d299728269139ad62332 Mon Sep 17 00:00:00 2001
From: Vincent Texier <vit@free.fr>
Date: Sun, 8 Feb 2015 12:33:16 +0100
Subject: [PATCH] Display informations in selected referential units

Refresh infos if referential is changed
Remove tab "parameters" to simplify UI
---
 src/cutecoin/gui/currency_tab.py     |  2 ++
 src/cutecoin/gui/informations_tab.py | 39 +++++++++++++++++++---------
 2 files changed, 29 insertions(+), 12 deletions(-)

diff --git a/src/cutecoin/gui/currency_tab.py b/src/cutecoin/gui/currency_tab.py
index 9e17d123..26ea372e 100644
--- a/src/cutecoin/gui/currency_tab.py
+++ b/src/cutecoin/gui/currency_tab.py
@@ -311,3 +311,5 @@ QMessageBox.Ok | QMessageBox.Cancel)
                                                  QModelIndex(),
                                                  QModelIndex(),
                                                  [])
+        if self.tab_informations:
+            self.tab_informations.refresh()
diff --git a/src/cutecoin/gui/informations_tab.py b/src/cutecoin/gui/informations_tab.py
index 3f85b47d..ea83d465 100644
--- a/src/cutecoin/gui/informations_tab.py
+++ b/src/cutecoin/gui/informations_tab.py
@@ -26,14 +26,14 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
         self.refresh()
 
     def refresh(self):
-        # try to request money parameters
+        #  try to request money parameters
         try:
             params = self.community.get_parameters()
         except Exception as e:
             logging.debug('community get_parameters error : ' + str(e))
             return False
 
-        # try to request money variables from last ud block
+        #  try to request money variables from last ud block
         try:
             block = self.community.get_ud_block()
         except Exception as e:
@@ -44,21 +44,24 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
         self.label_general.setText(
             """
             <table cellpadding="5">
-            <tr><td align="right"><b>{:}</b></div></td><td>{:}</td></tr>
+            <tr><td align="right"><b>{:.2f}</b></div></td><td>{:} {:}</td></tr>
+            <tr><td align="right"><b>{:.2f}</b></td><td>{:} {:}</td></tr>
             <tr><td align="right"><b>{:}</b></td><td>{:}</td></tr>
-            <tr><td align="right"><b>{:}</b></td><td>{:}</td></tr>
-            <tr><td align="right"><b>{:.2f}</b></td><td>{:}</td></tr>
+            <tr><td align="right"><b>{:.2f}</b></td><td>{:} {:}</td></tr>
             <tr><td align="right"><b>{:2.2%}</b></td><td>{:}</td></tr>
             </table>
             """.format(
-                block['dividend'],
-                'Universal Dividend UD(t) in currency units',
-                block['monetaryMass'],
-                'Monetary Mass M(t) in currency units',
+                self.get_referential_value(block['dividend']),
+                'Universal Dividend UD(t) in',
+                self.get_referential_name(),
+                self.get_referential_value(block['monetaryMass']),
+                'Monetary Mass M(t) in',
+                self.get_referential_name(),
                 block['membersCount'],
                 'Members N(t)',
-                block['monetaryMass'] / block['membersCount'],
-                'Monetary Mass per member M(t)/N(t) in currency units',
+                self.get_referential_value(block['monetaryMass'] / block['membersCount']),
+                'Monetary Mass per member M(t)/N(t) in',
+                self.get_referential_name(),
                 block['dividend'] / (block['monetaryMass'] - (block['membersCount'] * block['dividend'])) / block[
                     'membersCount'],
                 'Actual % Growth c = UD(t)/[M(t-1)/N(t)]'
@@ -138,7 +141,19 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
                 'Growth percent (c)',
                 "UD t+1 = MAX ( UD t ; c * Mt / Nt+1 )",
                 'Universal Dividend (formula)',
-                "UD t+1 = MAX ( {:} {:} ; {:2.0%} * {:} {:} / Nt+1 )".format(params['ud0'], 'units', params['c'], block['monetaryMass'], 'units'),
+                "UD t+1 = MAX ( {:.2f} {:} ; {:2.0%} * {:.2f} {:} / Nt+1 )".format(
+                    self.get_referential_value(params['ud0']),
+                    self.get_referential_name(),
+                    params['c'],
+                    self.get_referential_value(block['monetaryMass']),
+                    self.get_referential_name()
+                ),
                 'Universal Dividend (computed)'
             )
         )
+
+    def get_referential_value(self, value):
+        return self.account.units_to_ref(value, self.community)
+
+    def get_referential_name(self):
+        return self.account.ref_name(self.community.short_currency)
-- 
GitLab