summaryrefslogtreecommitdiff
path: root/src/currency.h
diff options
context:
space:
mode:
authorPerberos <[email protected]>2011-11-08 13:50:37 -0300
committerPerberos <[email protected]>2011-11-08 13:50:37 -0300
commit2358ba4314dc6d757049bc4871ecf2922614b61b (patch)
tree12e52f491560916f0458c87b2d98ffa94500cb0f /src/currency.h
downloadmate-calc-2358ba4314dc6d757049bc4871ecf2922614b61b.tar.bz2
mate-calc-2358ba4314dc6d757049bc4871ecf2922614b61b.tar.xz
initial
Diffstat (limited to 'src/currency.h')
-rw-r--r--src/currency.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/src/currency.h b/src/currency.h
new file mode 100644
index 0000000..02cbfd8
--- /dev/null
+++ b/src/currency.h
@@ -0,0 +1,67 @@
+#ifndef CURRENCY_H
+#define CURRENCY_H
+
+#include <glib/gi18n.h>
+
+#include "mp.h"
+
+struct currency_name {
+ char *short_name;
+ char *symbol;
+ char *long_name;
+};
+
+/*
+ * List taken from http://www.ecb.int/press/pr/date/2008/html/pr081205.en.html
+ * with euro added.
+ */
+static const struct currency_name currency_names[] = {
+ {"AUD", "$", N_("Australian dollar")},
+ {"BGN", "лв", N_("Bulgarian lev")},
+ {"BRL", "R$", N_("Brazilian real")},
+ {"CAD", "$", N_("Canadian dollar")},
+ {"CHF", "Fr", N_("Swiss franc")},
+ {"CNY", "元", N_("Chinese yuan renminbi")},
+ {"CZK", "Kč", N_("Czech koruna")},
+ {"DKK", "kr", N_("Danish krone")},
+ {"EEK", "KR", N_("Estonian kroon")},
+ {"EUR", "€", N_("Euro")},
+ {"GBP", "£", N_("Pound sterling")},
+ {"HKD", "$", N_("Hong Kong dollar")},
+ {"HRK", "kn", N_("Croatian kuna")},
+ {"HUF", "Ft", N_("Hungarian forint")},
+ {"IDR", "Rp", N_("Indonesian rupiah")},
+ {"INR", "Rs", N_("Indian rupee")},
+ {"ISK", "kr", N_("Icelandic krona")},
+ {"JPY", "¥", N_("Japanese yen")},
+ {"KRW", "₩", N_("South Korean won")},
+ {"LTL", "Lt", N_("Lithuanian litas")},
+ {"LVL", "Ls", N_("Latvian lats")},
+ {"MXN", "$", N_("Mexican peso")},
+ {"MYR", "RM", N_("Malaysian ringgit")},
+ {"NOK", "kr", N_("Norwegian krone")},
+ {"NZD", "$", N_("New Zealand dollar")},
+ {"PHP", "₱", N_("Philippine peso")},
+ {"PLN", "zł", N_("Polish zloty")},
+ {"RON", "L", N_("New Romanian leu")},
+ {"RUB", "руб.", N_("Russian rouble")},
+ {"SEK", "kr", N_("Swedish krona")},
+ {"SGD", "$", N_("Singapore dollar")},
+ {"THB", "฿", N_("Thai baht")},
+ {"TRY", "TL", N_("New Turkish lira")},
+ {"USD", "$", N_("US dollar")},
+ {"ZAR", "R", N_("South African rand")},
+ {NULL, NULL}
+};
+
+// FIXME: Should indicate when rates are updated to UI
+
+/* Converts an amount of money from one currency to another */
+gboolean currency_convert(const MPNumber *from_amount,
+ const char *source_currency, const char *target_currency,
+ MPNumber *to_amount);
+
+/* Frees up all allocated resources */
+void currency_free_resources(void);
+
+#endif /* CURRENCY_H */