X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fbuilder%2Ftree-node-manipulator.cpp;h=95673067b5d3b77375569e1bede887e6f0bffd3d;hb=190a30974e11c5792335e3b0493bf1c212beec6a;hp=926842a7071943a25bfd5e977382e1e3e5b9ea35;hpb=d43575da616e1370372b1331f47dce36dc4ac145;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/builder/tree-node-manipulator.cpp b/dali-toolkit/internal/builder/tree-node-manipulator.cpp index 926842a..9567306 100644 --- a/dali-toolkit/internal/builder/tree-node-manipulator.cpp +++ b/dali-toolkit/internal/builder/tree-node-manipulator.cpp @@ -291,6 +291,19 @@ void TreeNodeManipulator::SetType( TreeNode::NodeType type) } } } + else if( TreeNode::ARRAY == mNode->mType ) + { + if( mNode->mFirstChild != NULL ) + { + TreeNode::NodeType type = mNode->mFirstChild->GetType(); + + if( TreeNode::FLOAT == type || TreeNode::INTEGER == type ) + { + // Arrays of numbers should be replaced, not appended to. + RemoveChildren(); + } + } + } } void TreeNodeManipulator::SetName( const char* name ) @@ -385,7 +398,7 @@ void TreeNodeManipulator::DoWrite(const TreeNode *value, std::ostream& output, i { bool groupMyChildren = false; - if( TreeNode::ARRAY == value->GetType() && + if( TreeNode::ARRAY == value->GetType() && value->mFirstChild && ( TreeNode::INTEGER == value->mFirstChild->GetType() || TreeNode::FLOAT == value->mFirstChild->GetType() ) ) {