Browse Source

fixed bug in ReAntTweakbar

Former-commit-id: 7038822363c688620b869108bf0adf987ab63f35
jalec 13 years ago
parent
commit
3b56d427f7
3 changed files with 12 additions and 9 deletions
  1. 4 4
      include/igl/ReAntTweakBar.cpp
  2. 7 5
      include/igl/ReAntTweakBar.h
  3. 1 0
      include/igl/material_colors.h

+ 4 - 4
include/igl/ReAntTweakBar.cpp

@@ -213,7 +213,7 @@ bool igl::ReTwBar::save(const char *file_name)
     it != rw_items.end(); 
     it++)
   {
-    const char * name = (*it).name;
+    const char * name = (*it).name.c_str();
     TwType type = (*it).type;
     void * var = (*it).var;
     fprintf(fp,"%s: %s\n",
@@ -228,7 +228,7 @@ bool igl::ReTwBar::save(const char *file_name)
     it != cb_items.end(); 
     it++)
   {
-    const char * name = it->name;
+    const char * name = it->name.c_str();
     TwType type = it->type;
     //TwSetVarCallback setCallback = it->setCallback;
     TwGetVarCallback getCallback = it->getCallback;
@@ -573,7 +573,7 @@ bool igl::ReTwBar::set_value_from_string(
     it != rw_items.end(); 
     it++)
   {
-    if(strcmp(it->name,name) == 0)
+    if(it->name == name)
     {
       void * var = it->var;
       switch(type)
@@ -669,7 +669,7 @@ bool igl::ReTwBar::set_value_from_string(
       it != cb_items.end(); 
       it++)
     {
-      if(strcmp(it->name,name) == 0)
+      if(it->name==name)
       {
         it->setCallback(value,it->clientData);
         item_found = true;

+ 7 - 5
include/igl/ReAntTweakBar.h

@@ -44,11 +44,12 @@ namespace igl
   
   struct ReTwRWItem
   {
-    const char * name;
+    //const char * name;
+    std::string name;
     TwType type;
     void * var;
     ReTwRWItem(
-      const char * name,
+      const std::string name,
       TwType type, 
       void *var)
     {
@@ -60,13 +61,14 @@ namespace igl
   
   struct ReTwCBItem
   {
-    const char * name;
+    //const char * name;
+    std::string name;
     TwSetVarCallback setCallback;
     TwGetVarCallback getCallback;
     void * clientData;
     TwType type;
     ReTwCBItem(
-      const char * name,
+      const std::string name,
       TwType type, 
       TwSetVarCallback setCallback,
       TwGetVarCallback getCallback,
@@ -158,7 +160,7 @@ namespace igl
       // Returns
       //   true only if string matched a valid type
       bool type_from_string(const char *type_str, TwType & type);
-      // I realize that I mixing std::string and const char * all over the place.
+      // I realize that I mix std::string and const char * all over the place.
       // What can you do...
       bool set_value_from_string(
         const char * name, 

+ 1 - 0
include/igl/material_colors.h

@@ -14,5 +14,6 @@ namespace igl
   const float CYAN_DIFFUSE[4] =   {  94.0/255.0,185.0/255.0,238.0/255.0,1.0f };
   const float CYAN_SPECULAR[4] =   { 163.0/255.0,221.0/255.0,255.0/255.0,1.0f };
   const float DENIS_PURPLE_DIFFUSE[4] =   { 80.0/255.0,64.0/255.0,255.0/255.0,1.0f };
+  const float LADISLAV_ORANGE_DIFFUSE[4] = {1.0f, 125.0f / 255.0f, 19.0f / 255.0f, 0.0f};
 }
 #endif