r2404 - in trunk/src/target/OM-2007/applications/openmoko-calculator: . po src
ortalo at sita.openmoko.org
ortalo at sita.openmoko.org
Thu Jul 26 22:53:26 CEST 2007
Author: ortalo
Date: 2007-07-26 22:53:24 +0200 (Thu, 26 Jul 2007)
New Revision: 2404
Modified:
trunk/src/target/OM-2007/applications/openmoko-calculator/configure.ac
trunk/src/target/OM-2007/applications/openmoko-calculator/po/Calculator.pot
trunk/src/target/OM-2007/applications/openmoko-calculator/po/fr.po
trunk/src/target/OM-2007/applications/openmoko-calculator/po/ru.po
trunk/src/target/OM-2007/applications/openmoko-calculator/po/sv.po
trunk/src/target/OM-2007/applications/openmoko-calculator/src/calc-main.c
Log:
Improved display of non-finite numbers (with some special treatment for repeated NaN results...:-)
Modified: trunk/src/target/OM-2007/applications/openmoko-calculator/configure.ac
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-calculator/configure.ac 2007-07-26 20:50:21 UTC (rev 2403)
+++ trunk/src/target/OM-2007/applications/openmoko-calculator/configure.ac 2007-07-26 20:53:24 UTC (rev 2404)
@@ -1,5 +1,5 @@
AC_PREREQ(2.53)
-AC_INIT(openmoko-calculator, 0.0.4, rodolphe.ortalo at free.fr)
+AC_INIT(openmoko-calculator, 0.0.5, rodolphe.ortalo at free.fr)
AM_INIT_AUTOMAKE()
AC_CONFIG_SRCDIR(src/calc-main.c)
AM_CONFIG_HEADER(config.h)
Modified: trunk/src/target/OM-2007/applications/openmoko-calculator/po/Calculator.pot
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-calculator/po/Calculator.pot 2007-07-26 20:50:21 UTC (rev 2403)
+++ trunk/src/target/OM-2007/applications/openmoko-calculator/po/Calculator.pot 2007-07-26 20:53:24 UTC (rev 2404)
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-07-25 22:19+0200\n"
+"POT-Creation-Date: 2007-07-26 22:34+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
"Language-Team: LANGUAGE <LL at li.org>\n"
@@ -16,24 +16,36 @@
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear All"
msgstr ""
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear"
msgstr ""
-#: src/calc-main.c:86
+#: src/calc-main.c:87
msgid "<big><b>.</b></big>"
msgstr ""
+#: src/calc-main.c:132
+msgid "<big>Not a Number</big><span font_desc=\"48\" > <b>NaN</b></span>"
+msgstr ""
+
+#: src/calc-main.c:136
+msgid ""
+"<big>Not a Number</big> <span font_desc=\"48\" ><b>NaN</b></span>\n"
+"<span foreground=\"darkgrey\" size=\"smaller\">covert_channel/ack</span>\n"
+"<span foreground=\"orange\" style=\"italic\">Beam request transmitted...</"
+"span>"
+msgstr ""
+
#. application object
#. MokoApplication* app = MOKO_APPLICATION(moko_application_get_instance());
-#: src/calc-main.c:350
+#: src/calc-main.c:374
msgid "Calculator"
msgstr ""
-#: src/calc-main.c:357
+#: src/calc-main.c:381
msgid "Close"
msgstr ""
Modified: trunk/src/target/OM-2007/applications/openmoko-calculator/po/fr.po
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-calculator/po/fr.po 2007-07-26 20:50:21 UTC (rev 2403)
+++ trunk/src/target/OM-2007/applications/openmoko-calculator/po/fr.po 2007-07-26 20:53:24 UTC (rev 2404)
@@ -7,8 +7,8 @@
msgstr ""
"Project-Id-Version: openmoko-calculator 0.0.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-07-25 22:19+0200\n"
-"PO-Revision-Date: 2007-03-23 21:34+0100\n"
+"POT-Creation-Date: 2007-07-26 22:34+0200\n"
+"PO-Revision-Date: 2007-07-26 22:39+0200\n"
"Last-Translator: ortalo <rodolphe.ortalo at free.fr>\n"
"Language-Team: French <traduc at traduc.org>\n"
"MIME-Version: 1.0\n"
@@ -16,24 +16,40 @@
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear All"
msgstr "RAZ"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear"
msgstr "Effacer"
-#: src/calc-main.c:86
+#: src/calc-main.c:87
msgid "<big><b>.</b></big>"
msgstr "<big><b>,</b></big>"
+#: src/calc-main.c:132
+msgid "<big>Not a Number</big><span font_desc=\"48\" > <b>NaN</b></span>"
+msgstr ""
+
+#: src/calc-main.c:136
+msgid ""
+"<big>Not a Number</big> <span font_desc=\"48\" ><b>NaN</b></span>\n"
+"<span foreground=\"darkgrey\" size=\"smaller\">covert_channel/ack</span>\n"
+"<span foreground=\"orange\" style=\"italic\">Beam request transmitted...</"
+"span>"
+msgstr ""
+"<big>Not a Number</big> <span font_desc=\"48\" ><b>NaN</b></span>\n"
+"<span foreground=\"darkgrey\" size=\"smaller\">canal_caché/ok</span>\n"
+"<span foreground=\"orange\" style=\"italic\">Téléportation "
+"demandée...</span>"
+
#. application object
#. MokoApplication* app = MOKO_APPLICATION(moko_application_get_instance());
-#: src/calc-main.c:350
+#: src/calc-main.c:374
msgid "Calculator"
msgstr "Calculatrice"
-#: src/calc-main.c:357
+#: src/calc-main.c:381
msgid "Close"
msgstr "Fermer"
Modified: trunk/src/target/OM-2007/applications/openmoko-calculator/po/ru.po
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-calculator/po/ru.po 2007-07-26 20:50:21 UTC (rev 2403)
+++ trunk/src/target/OM-2007/applications/openmoko-calculator/po/ru.po 2007-07-26 20:53:24 UTC (rev 2404)
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: openmoko-calculator 0.0.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-07-25 22:19+0200\n"
+"POT-Creation-Date: 2007-07-26 22:34+0200\n"
"PO-Revision-Date: 2007-04-03 17:33+0300\n"
"Last-Translator: Evgeny Ginzburg <Nad.Oby at gmail.com>\n"
"Language-Team: \n"
@@ -15,24 +15,36 @@
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear All"
msgstr "Очистить всё"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear"
msgstr "Очистить"
-#: src/calc-main.c:86
+#: src/calc-main.c:87
msgid "<big><b>.</b></big>"
msgstr "<big><b>.</b></big>"
+#: src/calc-main.c:132
+msgid "<big>Not a Number</big><span font_desc=\"48\" > <b>NaN</b></span>"
+msgstr ""
+
+#: src/calc-main.c:136
+msgid ""
+"<big>Not a Number</big> <span font_desc=\"48\" ><b>NaN</b></span>\n"
+"<span foreground=\"darkgrey\" size=\"smaller\">covert_channel/ack</span>\n"
+"<span foreground=\"orange\" style=\"italic\">Beam request transmitted...</"
+"span>"
+msgstr ""
+
#. application object
#. MokoApplication* app = MOKO_APPLICATION(moko_application_get_instance());
-#: src/calc-main.c:350
+#: src/calc-main.c:374
msgid "Calculator"
msgstr "Калькулятор"
-#: src/calc-main.c:357
+#: src/calc-main.c:381
msgid "Close"
msgstr "Закрыть"
Modified: trunk/src/target/OM-2007/applications/openmoko-calculator/po/sv.po
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-calculator/po/sv.po 2007-07-26 20:50:21 UTC (rev 2403)
+++ trunk/src/target/OM-2007/applications/openmoko-calculator/po/sv.po 2007-07-26 20:53:24 UTC (rev 2404)
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: openmoko calculator\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-07-25 22:19+0200\n"
+"POT-Creation-Date: 2007-07-26 22:34+0200\n"
"PO-Revision-Date: 2007-04-04 11:18+0100\n"
"Last-Translator: Daniel Nylander <po at danielnylander.se>\n"
"Language-Team: Swedish <tp-sv at listor.tp-sv.se>\n"
@@ -15,24 +15,36 @@
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear All"
msgstr "Töm allt"
-#: src/calc-main.c:82
+#: src/calc-main.c:83
msgid "Clear"
msgstr "Töm"
-#: src/calc-main.c:86
+#: src/calc-main.c:87
msgid "<big><b>.</b></big>"
msgstr "<big><b>.</b></big>"
+#: src/calc-main.c:132
+msgid "<big>Not a Number</big><span font_desc=\"48\" > <b>NaN</b></span>"
+msgstr ""
+
+#: src/calc-main.c:136
+msgid ""
+"<big>Not a Number</big> <span font_desc=\"48\" ><b>NaN</b></span>\n"
+"<span foreground=\"darkgrey\" size=\"smaller\">covert_channel/ack</span>\n"
+"<span foreground=\"orange\" style=\"italic\">Beam request transmitted...</"
+"span>"
+msgstr ""
+
#. application object
#. MokoApplication* app = MOKO_APPLICATION(moko_application_get_instance());
-#: src/calc-main.c:350
+#: src/calc-main.c:374
msgid "Calculator"
msgstr "Miniräknare"
-#: src/calc-main.c:357
+#: src/calc-main.c:381
msgid "Close"
msgstr "Stäng"
Modified: trunk/src/target/OM-2007/applications/openmoko-calculator/src/calc-main.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-calculator/src/calc-main.c 2007-07-26 20:50:21 UTC (rev 2403)
+++ trunk/src/target/OM-2007/applications/openmoko-calculator/src/calc-main.c 2007-07-26 20:53:24 UTC (rev 2404)
@@ -21,6 +21,7 @@
#include <stdio.h>
#include <math.h>
+#include <string.h>
#include <libmokoui/moko-application.h>
#include <libmokoui/moko-finger-tool-box.h>
@@ -122,16 +123,39 @@
{
if (the_state.n_digits == 0) {
/* We are certainly displaying a computation result */
- /* Manually build the display string ala %g */
- double value = v;
- int expof10;
+ if (!isfinite(v)) {
+ /* first gets rid of very special cases... */
+ if (isnan(v)) {
+ static int toomany = 0;
+ if ((the_state.func != &noop_func) || (++toomany % 7))
+ gtk_label_set_markup(GTK_LABEL(displayed_label),
+ _("<big>Not a Number</big><span font_desc=\"48\" > <b>NaN</b></span>"));
+ else
+ /* ok, let's have some fun too... */
+ gtk_label_set_markup(GTK_LABEL(displayed_label),
+ _("<big>Not a Number</big> <span font_desc=\"48\" ><b>NaN</b></span>\n"
+ "<span foreground=\"darkgrey\" size=\"smaller\">covert_channel/ack</span>\n"
+ "<span foreground=\"orange\" style=\"italic\">Beam request transmitted...</span>"));
+ } else if (isinf(v)>0) {
+ /* positive infinity */
+ gtk_label_set_markup(GTK_LABEL(displayed_label),"<span font_desc=\"48\" >∞</span>");
+ } else {
+ /* only negative infinity remains... */
+ gtk_label_set_markup(GTK_LABEL(displayed_label),"<span font_desc=\"48\" >-∞</span>");
+ }
+ return; /* short-cut out */
+ } else {
+ /* Manually build the display string ala %g */
+ double value = v;
+ int expof10;
- expof10 = (int) log10((value>=0.)?(value):(-value));
- value *= pow(10,-expof10);
- if (expof10 >= MAX_DISPLAY_CHARS)
- snprintf(dispstring,MAX_DISPLAY_MARKUP,"<span font_desc=\"48\" >%.*g <small>e</small><sup><big>%d</big></sup></span>",(MAX_DISPLAY_CHARS-2),value,expof10);
- else
- snprintf(dispstring,MAX_DISPLAY_MARKUP,"<span font_desc=\"48\" >%.*g</span>",MAX_DISPLAY_CHARS,v);
+ expof10 = (int) log10(fabs(value));
+ value *= pow(10,-expof10);
+ if (expof10 >= MAX_DISPLAY_CHARS)
+ snprintf(dispstring,MAX_DISPLAY_MARKUP,"<span font_desc=\"48\" >%.*g <small>e</small><sup><big>%d</big></sup></span>",(MAX_DISPLAY_CHARS-2),value,expof10);
+ else
+ snprintf(dispstring,MAX_DISPLAY_MARKUP,"<span font_desc=\"48\" >%.*g</span>",MAX_DISPLAY_CHARS,v);
+ }
} else {
/* We display entered value including trailing 0s */
if (the_state.decimal_point == TRUE)
@@ -144,7 +168,7 @@
calc_debug("n_digits = %i n_fractional = %i dec_point = %i", the_state.n_digits, the_state.n_fractional, the_state.decimal_point);
calc_debug(dispstring);
#endif
-
+
gtk_label_set_markup(GTK_LABEL(displayed_label), dispstring);
}
More information about the commitlog
mailing list