diff --git a/Common/Gmsh.cpp b/Common/Gmsh.cpp index b66c668cf0673fd19e6fdbc893b34a29abcc1212..62e960cafb69422ef3395b4c08cce91adc6acee2 100644 --- a/Common/Gmsh.cpp +++ b/Common/Gmsh.cpp @@ -149,26 +149,29 @@ void GmshSetColorOption(const std::string &category, const std::string &name, int GmshGetOption(const std::string &category, const std::string &name, std::string &value, int index) { - return StringOption(GMSH_GET, category.c_str(), index, name.c_str(), value); + return StringOption(GMSH_GET, category.c_str(), index, name.c_str(), value, + false); } int GmshGetOption(const std::string &category, const std::string &name, double &value, int index) { - return NumberOption(GMSH_GET, category.c_str(), index, name.c_str(), value); + return NumberOption(GMSH_GET, category.c_str(), index, name.c_str(), value, + false); } int GmshGetOption(const std::string &category, const std::string &name, unsigned int &value, int index) { - return ColorOption(GMSH_GET, category.c_str(), index, name.c_str(), value); + return ColorOption(GMSH_GET, category.c_str(), index, name.c_str(), value, + false); } std::string GmshGetStringOption(const std::string &category, const std::string &name, int index) { std::string value; - StringOption(GMSH_GET, category.c_str(), index, name.c_str(), value); + StringOption(GMSH_GET, category.c_str(), index, name.c_str(), value, false); return value; } @@ -176,7 +179,7 @@ double GmshGetNumberOption(const std::string &category, const std::string &name, int index) { double value; - NumberOption(GMSH_GET, category.c_str(), index, name.c_str(), value); + NumberOption(GMSH_GET, category.c_str(), index, name.c_str(), value, false); return value; } @@ -184,7 +187,7 @@ int GmshGetColorOption(const std::string &category, const std::string &name, int index) { unsigned int value; - ColorOption(GMSH_GET, category.c_str(), index, name.c_str(), value); + ColorOption(GMSH_GET, category.c_str(), index, name.c_str(), value, false); return value; } diff --git a/Common/Options.cpp b/Common/Options.cpp index 21d728f195599e2018c5ada2ed7aaaac6a3b423b..fbaf830300f4dfc6f771d9c4ebdce95a1edf3194 100644 --- a/Common/Options.cpp +++ b/Common/Options.cpp @@ -59,7 +59,7 @@ // General routines for string options bool StringOption(int action, const char *category, int num, - const char *name, std::string &val) + const char *name, std::string &val, bool warnIfUnknown) { StringXString *s = 0; if(!strcmp(category, "General")) @@ -77,14 +77,16 @@ bool StringOption(int action, const char *category, int num, else if(!strcmp(category, "Print")) s = PrintOptions_String; else{ - Msg::Error("Unknown string option category '%s'", category); + if(warnIfUnknown) + Msg::Error("Unknown string option category '%s'", category); return false; } int i = 0; while(s[i].str && strcmp(s[i].str, name)) i++; if(!s[i].str){ - Msg::Error("Unknown string option '%s.%s'", category, name); + if(warnIfUnknown) + Msg::Error("Unknown string option '%s.%s'", category, name); return false; } @@ -179,7 +181,7 @@ static void PrintStringOptionsDoc(StringXString s[], const char *prefix, FILE *f // General routines for numeric options bool NumberOption(int action, const char *category, int num, - const char *name, double &val) + const char *name, double &val, bool warnIfUnknown) { StringXNumber *s = 0; if(!strcmp(category, "General")) @@ -197,14 +199,16 @@ bool NumberOption(int action, const char *category, int num, else if(!strcmp(category, "Print")) s = PrintOptions_Number; else{ - Msg::Error("Unknown number option category '%s'", category); + if(warnIfUnknown) + Msg::Error("Unknown number option category '%s'", category); return false; } int i = 0; while(s[i].str && strcmp(s[i].str, name)) i++; if(!s[i].str){ - Msg::Error("Unknown number option '%s.%s'", category, name); + if(warnIfUnknown) + Msg::Error("Unknown number option '%s.%s'", category, name); return false; } @@ -275,7 +279,7 @@ static void PrintNumberOptionsDoc(StringXNumber s[], const char *prefix, FILE * // General routines for color options bool ColorOption(int action, const char *category, int num, - const char *name, unsigned int &val) + const char *name, unsigned int &val, bool warnIfUnknown) { StringXColor *s = 0; if(!strcmp(category, "General")) @@ -293,14 +297,16 @@ bool ColorOption(int action, const char *category, int num, else if(!strcmp(category, "Print")) s = PrintOptions_Color; else{ - Msg::Error("Unknown color option category '%s'", category); + if(warnIfUnknown) + Msg::Error("Unknown color option category '%s'", category); return false; } int i = 0; while(s[i].str && strcmp(s[i].str, name)) i++; if(!s[i].str){ - Msg::Error("Unknown color option '%s.%s'", category, name); + if(warnIfUnknown) + Msg::Error("Unknown color option '%s.%s'", category, name); return false; } diff --git a/Common/Options.h b/Common/Options.h index 53f78967702ad6dc6ef0e850d98c025d79f8221a..d337f7e8dc996dd52f945b7b37ebc74f32d9fa90 100644 --- a/Common/Options.h +++ b/Common/Options.h @@ -849,11 +849,11 @@ void PrintOptions(int num, int level, int diff, int help, const char *filename, void PrintOptionsDoc(); bool StringOption(int action, const char *category, int num, - const char *name, std::string &val); + const char *name, std::string &val, bool warnIfUnknown=true); bool NumberOption(int action, const char *category, int num, - const char *name, double &val); + const char *name, double &val, bool warnIfUnknown=true); bool ColorOption(int action, const char *category, int num, - const char *name, unsigned int &val); + const char *name, unsigned int &val, bool warnIfUnknown=true); GmshColorTable *GetColorTable(int num); int GetColorForString(int alpha, const char *string, int *FlagError);