From 95b5f61d8ca589a88dae6d74e99d9095f5ad69ce Mon Sep 17 00:00:00 2001 From: dfighter1985 Date: Thu, 2 Aug 2012 08:12:41 +0200 Subject: [PATCH] CHANGED: #1471 Implemented property querying for CDBViewBar3. --- code/nel/include/nel/gui/dbview_bar3.h | 2 + code/nel/src/gui/dbview_bar3.cpp | 82 +++++++++++++++++++ .../plugins/gui_editor/widgets/DBViewBar3.xml | 78 ++++++++++++++++++ 3 files changed, 162 insertions(+) create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/DBViewBar3.xml diff --git a/code/nel/include/nel/gui/dbview_bar3.h b/code/nel/include/nel/gui/dbview_bar3.h index ad931b304..22119921d 100644 --- a/code/nel/include/nel/gui/dbview_bar3.h +++ b/code/nel/include/nel/gui/dbview_bar3.h @@ -38,6 +38,7 @@ namespace NLGUI /// Constructor CDBViewBar3(const TCtorParam ¶m); + std::string getProperty( const std::string &name ) const; bool parse(xmlNodePtr cur,CInterfaceGroup * parentGroup); virtual uint32 getMemory() { return (uint32)(sizeof(*this)+_Id.size()); } virtual void updateCoords (); @@ -96,6 +97,7 @@ namespace NLGUI void parseValProp(xmlNodePtr cur, CInterfaceProperty &dbProp, sint32 &intProp, const char *name); sint32 getCurrentValProp(const CInterfaceProperty &dbProp, sint32 intProp); + std::string getValProp( const CInterfaceProperty &prop, sint32 intProp ) const; }; } diff --git a/code/nel/src/gui/dbview_bar3.cpp b/code/nel/src/gui/dbview_bar3.cpp index 4a1911e8c..94219efc8 100644 --- a/code/nel/src/gui/dbview_bar3.cpp +++ b/code/nel/src/gui/dbview_bar3.cpp @@ -55,6 +55,80 @@ namespace NLGUI } + std::string CDBViewBar3::getProperty( const std::string &name ) const + { + if( name == "value1" ) + { + return getValProp( _Value[ 0 ], _ValueInt[ 0 ] ); + } + else + if( name == "value2" ) + { + return getValProp( _Value[ 1 ], _ValueInt[ 1 ] ); + } + else + if( name == "value3" ) + { + return getValProp( _Value[ 2 ], _ValueInt[ 2 ] ); + } + else + if( name == "range1" ) + { + return getValProp( _Range[ 0 ], _RangeInt[ 0 ] ); + } + else + if( name == "range2" ) + { + return getValProp( _Range[ 1 ], _RangeInt[ 1 ] ); + } + else + if( name == "range3" ) + { + return getValProp( _Range[ 2 ], _RangeInt[ 2 ] ); + } + else + if( name == "color1" ) + { + return toString( _Colors[ 0 ] ); + } + else + if( name == "color2" ) + { + return toString( _Colors[ 1 ] ); + } + else + if( name == "color3" ) + { + return toString( _Colors[ 2 ] ); + } + else + if( name == "color1_negative" ) + { + return toString( _ColorsNegative[ 0 ] ); + } + else + if( name == "color2_negative" ) + { + return toString( _ColorsNegative[ 1 ] ); + } + else + if( name == "color3_negative" ) + { + return toString( _ColorsNegative[ 2 ] ); + } + else + if( name == "mini" ) + { + if( _Mini ) + return "true"; + else + return "false"; + } + else + return CViewBitmap::getProperty( name ); + } + + // ---------------------------------------------------------------------------- bool CDBViewBar3::parse (xmlNodePtr cur, CInterfaceGroup * parentGroup) { @@ -154,6 +228,14 @@ namespace NLGUI return intProp; } + std::string CDBViewBar3::getValProp( const CInterfaceProperty &prop, sint32 intProp ) const + { + if( prop.getNodePtr() != NULL ) + return prop.getNodePtr()->getFullName(); + else + return toString( intProp ); + } + // ---------------------------------------------------------------------------- void CDBViewBar3::draw () diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/DBViewBar3.xml b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/DBViewBar3.xml new file mode 100644 index 000000000..6464aee83 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/gui_editor/widgets/DBViewBar3.xml @@ -0,0 +1,78 @@ + +
+ DBViewBar3 + CDBViewBar3 + ViewBitmap + + false + +
+ + + value1 + string + 0 + + + value2 + string + 0 + + + value3 + string + 0 + + + range1 + string + 255 + + + range2 + string + 255 + + + range3 + string + 255 + + + color1 + string + 255 255 255 255 + + + color2 + string + 255 255 255 255 + + + color3 + string + 255 255 255 255 + + + color1_negative + string + 0 0 0 0 + + + color2_negative + string + 0 0 0 0 + + + color3_negative + string + 0 0 0 0 + + + mini + bool + false + + + +