]> git.mxchange.org Git - flightgear.git/blobdiff - src/GUI/new_gui.cxx
nasal dialogs are separate trees and have an empty name
[flightgear.git] / src / GUI / new_gui.cxx
index eda5ef861091c201401ee0f4a0fa9404fad50bff..e9f19e29e9eab026ad42aa1713755d982ae5e555 100644 (file)
@@ -16,7 +16,7 @@
 SG_USING_STD(map);
 
 extern puFont FONT_HELVETICA_14;
-extern puFont FONT_VERA_12B;
+extern puFont FONT_SANS_12B;
 
 
 
@@ -78,8 +78,8 @@ NewGUI::reinit ()
     bind();
 
     // open remembered dialogs again (no nasal generated ones, unfortunately)
-    for (unsigned int i = 0; i < dlg.size(); i++)
-        showDialog(dlg[i]);
+//    for (unsigned int i = 0; i < dlg.size(); i++)
+//        showDialog(dlg[i]);
 }
 
 void
@@ -296,18 +296,18 @@ NewGUI::setStyle (void)
 
 static const struct {
     char *name;
-    puFont font;
+    puFont *font;
 } guifonts[] = {
-    "default",      FONT_HELVETICA_14,
-    "FIXED_8x13",   PUFONT_8_BY_13,
-    "FIXED_9x15",   PUFONT_9_BY_15,
-    "TIMES_10",     PUFONT_TIMES_ROMAN_10,
-    "TIMES_24",     PUFONT_TIMES_ROMAN_24,
-    "HELVETICA_10", PUFONT_HELVETICA_10,
-    "HELVETICA_12", PUFONT_HELVETICA_12,
-    "HELVETICA_14", FONT_HELVETICA_14,
-    "HELVETICA_18", PUFONT_HELVETICA_18,
-    "VERA_12B",     FONT_VERA_12B,
+    "default",      &FONT_HELVETICA_14,
+    "FIXED_8x13",   &PUFONT_8_BY_13,
+    "FIXED_9x15",   &PUFONT_9_BY_15,
+    "TIMES_10",     &PUFONT_TIMES_ROMAN_10,
+    "TIMES_24",     &PUFONT_TIMES_ROMAN_24,
+    "HELVETICA_10", &PUFONT_HELVETICA_10,
+    "HELVETICA_12", &PUFONT_HELVETICA_12,
+    "HELVETICA_14", &FONT_HELVETICA_14,
+    "HELVETICA_18", &PUFONT_HELVETICA_18,
+    "SANS_12B",     &FONT_SANS_12B,
     0, 0,
 };
 
@@ -324,7 +324,7 @@ NewGUI::setupFont ()
         if (fontname == guifonts[i].name)
             break;
     if (guifonts[i].name)
-        _font = guifonts[i].font;
+        _font = *guifonts[i].font;
     else {
         SGPath fontpath;
         char* envp = ::getenv("FG_FONTS");
@@ -341,7 +341,7 @@ NewGUI::setupFont ()
         if (_tex_font.load((char *)path.c_str())) {
             _font.initialize((fntFont *)&_tex_font, size, slant);
         } else {
-            _font = guifonts[0].font;
+            _font = *guifonts[0].font;
             fontname = "default";
         }
     }
@@ -356,34 +356,38 @@ NewGUI::setupFont ()
 // FGColor class.
 ////////////////////////////////////////////////////////////////////////
 
-void
+bool
 FGColor::merge(const SGPropertyNode *node)
 {
     if (!node)
-        return;
+        return false;
 
+    bool dirty = false;
     const SGPropertyNode * n;
     if ((n = node->getNode("red")))
-        _red = n->getFloatValue();
+        _red = n->getFloatValue(), dirty = true;
     if ((n = node->getNode("green")))
-        _green = n->getFloatValue();
+        _green = n->getFloatValue(), dirty = true;
     if ((n = node->getNode("blue")))
-        _blue = n->getFloatValue();
+        _blue = n->getFloatValue(), dirty = true;
     if ((n = node->getNode("alpha")))
-        _alpha = n->getFloatValue();
+        _alpha = n->getFloatValue(), dirty = true;
+    return dirty;
 }
 
-void
+bool
 FGColor::merge(const FGColor& color)
 {
+    bool dirty = false;
     if (color._red >= 0.0)
-        _red = color._red;
+        _red = color._red, dirty = true;
     if (color._green >= 0.0)
-        _green = color._green;
+        _green = color._green, dirty = true;
     if (color._blue >= 0.0)
-        _blue = color._blue;
+        _blue = color._blue, dirty = true;
     if (color._alpha >= 0.0)
-        _alpha = color._alpha;
+        _alpha = color._alpha, dirty = true;
+    return dirty;
 }
 
 // end of new_gui.cxx