From 562099a79d596ca12a7893e70d064982f78eea1a Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Wed, 9 May 2012 08:30:59 +0000
Subject: [PATCH] guessModelName

---
 Fltk/onelabWindow.cpp | 26 +++++++++++++++-----------
 1 file changed, 15 insertions(+), 11 deletions(-)

diff --git a/Fltk/onelabWindow.cpp b/Fltk/onelabWindow.cpp
index 25aa759470..8a426bdff2 100644
--- a/Fltk/onelabWindow.cpp
+++ b/Fltk/onelabWindow.cpp
@@ -426,17 +426,21 @@ static std::string getMshFileName(onelab::client *c)
 
 static void guessModelName(onelab::client *c)
 {
-  std::vector<onelab::string> ps;
-  c->get(ps, c->getName() + "/1ModelName");
-  if(ps.empty()){
-    std::vector<std::string> split = SplitFileName(GModel::current()->getFileName());
-    std::string ext = "";
-    onelab::server::instance()->get(ps, c->getName() + "/FileExtension");
-    if(ps.size()) ext = ps[0].getValue();
-    std::string name(split[0] + split[1] + ext);
-    onelab::string o(c->getName() + "/1ModelName", name, "Model name");
-    o.setKind("file");
-    c->set(o);
+  std::vector<onelab::number> n;
+  c->get(n, c->getName() + "/GuessModelName");
+  if(n.size() && n[0].getValue()){
+    std::vector<onelab::string> ps;
+    c->get(ps, c->getName() + "/1ModelName");
+    if(ps.empty()){
+      std::vector<std::string> split = SplitFileName(GModel::current()->getFileName());
+      std::string ext = "";
+      onelab::server::instance()->get(ps, c->getName() + "/FileExtension");
+      if(ps.size()) ext = ps[0].getValue();
+      std::string name(split[0] + split[1] + ext);
+      onelab::string o(c->getName() + "/1ModelName", name, "Model name");
+      o.setKind("file");
+      c->set(o);
+    }
   }
 }
 
-- 
GitLab