/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* limitations under the License.
*/
-#include <dali/integration-api/debug.h>
-#include <dali/public-api/object/property.h>
-#include <dali/public-api/object/property-index-ranges.h>
-#include <dali-toolkit/public-api/controls/control-impl.h>
#include <dali-toolkit/internal/controls/control/control-data-impl.h>
#include <dali-toolkit/internal/controls/control/control-debug.h>
#include <dali-toolkit/internal/visuals/visual-base-impl.h>
-#include <iostream>
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali/integration-api/debug.h>
+#include <dali/public-api/object/property-index-ranges.h>
+#include <dali/public-api/object/property.h>
#include <algorithm>
#include <functional>
+#include <iostream>
#if defined(DEBUG_ENABLED)
{
namespace Internal
{
-
class JsonWriter
{
public:
- JsonWriter( Property::Value& value )
+ JsonWriter(Property::Value& value)
: mValue(value)
{
}
std::string ToString()
{
std::ostringstream stream;
- ToStream( stream );
+ ToStream(stream);
return stream.str();
}
- void ToStream( std::ostream& stream )
+ void ToStream(std::ostream& stream)
{
- switch( mValue.GetType() )
+ switch(mValue.GetType())
{
case Dali::Property::BOOLEAN:
{
auto value = mValue.Get<bool>();
- stream << ((value)?"true":"false");
+ stream << ((value) ? "true" : "false");
break;
}
case Dali::Property::FLOAT:
{
auto matrix = mValue.Get<Matrix3>();
stream << "[";
- for( int i=0; i<9; ++i )
+ for(int i = 0; i < 9; ++i)
{
- if( i>0)
+ if(i > 0)
stream << ",";
stream << matrix.AsFloat()[i];
}
{
auto matrix = mValue.Get<Matrix>();
stream << "[";
- for( int i=0; i<16; ++i )
+ for(int i = 0; i < 16; ++i)
{
- if( i>0)
+ if(i > 0)
stream << ",";
stream << matrix.AsFloat()[i];
}
{
auto array = mValue.GetArray();
stream << "[ ";
- if( array )
+ if(array)
{
- for( Property::Array::SizeType i=0; i<array->Size(); ++i)
+ for(Property::Array::SizeType i = 0; i < array->Size(); ++i)
{
- if( i>0)
+ if(i > 0)
stream << ", ";
- auto outValue = JsonWriter( array->GetElementAt(i) );
+ auto outValue = JsonWriter(array->GetElementAt(i));
stream << outValue.ToString();
}
}
{
auto map = mValue.GetMap();
stream << "{ ";
- if( map )
+ if(map)
{
- for( Property::Map::SizeType i=0; i<map->Count(); ++i)
+ for(Property::Map::SizeType i = 0; i < map->Count(); ++i)
{
- if( i>0)
+ if(i > 0)
stream << ", ";
- auto key = map->GetKeyAt( i );
- auto outValue = JsonWriter( map->GetValue(i) );
+ auto key = map->GetKeyAt(i);
+ auto outValue = JsonWriter(map->GetValue(i));
stream << '\"' << key << "\":";
stream << outValue.ToString();
}
Property::Value& mValue;
};
-static std::ostream& operator<<( std::ostream& o, JsonWriter& value )
+static std::ostream& operator<<(std::ostream& o, JsonWriter& value)
{
value.ToStream(o);
return o;
}
-
-std::ostream& operator<<( std::ostream& o, const RegisteredVisual& registeredVisual )
+std::ostream& operator<<(std::ostream& o, const RegisteredVisual& registeredVisual)
{
- o << "{\n" << "\"index\":" << registeredVisual.index << ",\n";
- o << "\"enabled\":" << (registeredVisual.enabled?"true":"false") << ",\n";
- o << "\"pending\":" << (registeredVisual.pending?"true":"false") << ",\n";
+ o << "{\n"
+ << "\"index\":" << registeredVisual.index << ",\n";
+ o << "\"enabled\":" << (registeredVisual.enabled ? "true" : "false") << ",\n";
+ o << "\"pending\":" << (registeredVisual.pending ? "true" : "false") << ",\n";
Property::Map map;
- registeredVisual.visual.CreatePropertyMap( map );
+ registeredVisual.visual.CreatePropertyMap(map);
o << "\"visual\": {\n\"name\":\"" << registeredVisual.visual.GetName() << "\",\n";
- o << map << "}\n" << "\n}\n";
+ o << map << "}\n"
+ << "\n}\n";
return o;
}
-std::ostream& operator<<( std::ostream& o, const RegisteredVisualContainer& visualContainer )
+std::ostream& operator<<(std::ostream& o, const RegisteredVisualContainer& visualContainer)
{
- o<<"[\n";
+ o << "[\n";
- bool first=true;
- for( auto&& elem : visualContainer )
+ bool first = true;
+ for(auto&& elem : visualContainer)
{
if(!first)
{
}
first = false;
- o<<*elem<<"\n";
+ o << *elem << "\n";
}
- o<<"]\n";
+ o << "]\n";
return o;
}
-std::ostream& DumpProperty( std::ostream& o, Property::Index index, Handle handle )
+std::ostream& DumpProperty(std::ostream& o, Property::Index index, Handle handle)
{
- auto propertyValue = handle.GetProperty( index );
+ auto propertyValue = handle.GetProperty(index);
auto jsonPropertyValue = JsonWriter(propertyValue);
o << "{\n";
o << "\"index\":" << index << ",\n";
- o << "\"name\":\"" << handle.GetPropertyName( index ) << "\",\n";
+ o << "\"name\":\"" << handle.GetPropertyName(index) << "\",\n";
o << "\"value\":" << jsonPropertyValue << "\n";
o << "}";
return o;
}
-
-std::ostream& DumpPropertiesWithPredicate( std::ostream& o, Dali::Handle handle,
- Property::IndexContainer& indices, std::function<bool(int)> predicate)
+std::ostream& DumpPropertiesWithPredicate(std::ostream& o, Dali::Handle handle, Property::IndexContainer& indices, std::function<bool(int)> predicate)
{
bool first = true;
- for( auto index : indices )
+ for(auto index : indices)
{
- if( predicate( index ) )
+ if(predicate(index))
{
- if( !first )
+ if(!first)
{
o << ",";
}
o << std::endl;
first = false;
- DumpProperty( o, index, handle );
+ DumpProperty(o, index, handle);
}
}
return o;
}
-std::ostream& DumpProperties( std::ostream& o, Handle handle )
+std::ostream& DumpProperties(std::ostream& o, Handle handle)
{
Property::IndexContainer indices;
- handle.GetPropertyIndices( indices );
+ handle.GetPropertyIndices(indices);
- auto childPropertiesP = [](int index) -> bool
- {
- return CHILD_PROPERTY_REGISTRATION_START_INDEX <= index && index <= CHILD_PROPERTY_REGISTRATION_MAX_INDEX;
- };
- auto propertiesP = [](int index) -> bool
- {
- return !(CHILD_PROPERTY_REGISTRATION_START_INDEX <= index && index <= CHILD_PROPERTY_REGISTRATION_MAX_INDEX);
- };
+ auto childPropertiesP = [](int index) -> bool {
+ return CHILD_PROPERTY_REGISTRATION_START_INDEX <= index && index <= CHILD_PROPERTY_REGISTRATION_MAX_INDEX;
+ };
+ auto propertiesP = [](int index) -> bool {
+ return !(CHILD_PROPERTY_REGISTRATION_START_INDEX <= index && index <= CHILD_PROPERTY_REGISTRATION_MAX_INDEX);
+ };
- o << "\"childProperties\":[\n" ;
- DumpPropertiesWithPredicate( o, handle, indices, childPropertiesP );
- o << std::endl << "]," << std::endl;
+ o << "\"childProperties\":[\n";
+ DumpPropertiesWithPredicate(o, handle, indices, childPropertiesP);
+ o << std::endl
+ << "]," << std::endl;
- o << "\"Properties\":[\n" ;
- DumpPropertiesWithPredicate( o, handle, indices, propertiesP );
- o << std::endl << "]" << std::endl;
+ o << "\"Properties\":[\n";
+ DumpPropertiesWithPredicate(o, handle, indices, propertiesP);
+ o << std::endl
+ << "]" << std::endl;
return o;
}
-std::string DumpControl( const Internal::Control& control )
+std::string DumpControl(const Internal::Control& control)
{
- auto& controlData = Internal::Control::Impl::Get( control );
+ auto& controlData = Internal::Control::Impl::Get(control);
std::ostringstream oss;
oss << "{\n ";
- const std::string& name = control.Self().GetProperty< std::string >( Dali::Actor::Property::NAME );
- if( ! name.empty() )
+ const std::string& name = control.Self().GetProperty<std::string>(Dali::Actor::Property::NAME);
+ if(!name.empty())
{
oss << "\"name\":\"" << name << "\",\n";
}
- oss << "\"id\":\"" << control.Self().GetProperty< int >( Actor::Property::ID ) << "\",\n";
- oss << "\"registeredVisuals\":\n" << controlData.mVisuals << ",\n";
- oss << "\"removeVisuals\":\n" << controlData.mRemoveVisuals << ",\n";
+ oss << "\"id\":\"" << control.Self().GetProperty<int>(Actor::Property::ID) << "\",\n";
+ oss << "\"registeredVisuals\":\n"
+ << controlData.mVisuals << ",\n";
+ oss << "\"removeVisuals\":\n"
+ << controlData.mRemoveVisuals << ",\n";
oss << "\"rendererCount\":" << control.Self().GetRendererCount() << ",\n";
oss << "\"properties\":\n{\n";
- DumpProperties( oss, control.Self() ) << "}\n";
+ DumpProperties(oss, control.Self()) << "}\n";
oss << "}\n";
return oss.str();
}
-std::string DumpActor( Actor actor )
+std::string DumpActor(Actor actor)
{
std::ostringstream oss;
oss << "{\n ";
- const std::string& name = actor.GetProperty< std::string >( Dali::Actor::Property::NAME );
- if( ! name.empty() )
+ const std::string& name = actor.GetProperty<std::string>(Dali::Actor::Property::NAME);
+ if(!name.empty())
{
oss << "\"name\":\"" << name << "\",\n";
}
- oss << "\"id\":\"" << actor.GetProperty< int >( Actor::Property::ID ) << "\",\n";
+ oss << "\"id\":\"" << actor.GetProperty<int>(Actor::Property::ID) << "\",\n";
oss << "\"rendererCount\":" << actor.GetRendererCount() << ",\n";
oss << "\"properties\":\n{\n";
- Toolkit::Internal::DumpProperties( oss, actor ) << "}\n";
+ Toolkit::Internal::DumpProperties(oss, actor) << "}\n";
oss << "}\n";
return oss.str();
}
-void DumpControlHierarchy( std::ostream& o, Actor actor )
+void DumpControlHierarchy(std::ostream& o, Actor actor)
{
- auto control = Toolkit::Control::DownCast( actor );
+ auto control = Toolkit::Control::DownCast(actor);
o << "{\n";
- if( control )
+ if(control)
{
- o << "\"Control\":" << DumpControl( Toolkit::Internal::GetImplementation( control ) );
+ o << "\"Control\":" << DumpControl(Toolkit::Internal::GetImplementation(control));
}
else
{
- o << "\"Actor\":" << DumpActor( actor );
+ o << "\"Actor\":" << DumpActor(actor);
}
o << ",\n\"children\":[\n";
- bool first=true;
- for( auto count=actor.GetChildCount(), i=0u; i<count; ++i )
+ bool first = true;
+ for(auto count = actor.GetChildCount(), i = 0u; i < count; ++i)
{
- if( !first )
+ if(!first)
{
o << ",";
}
first = false;
o << "\n";
- DumpControlHierarchy( o, actor.GetChildAt( i ) );
+ DumpControlHierarchy(o, actor.GetChildAt(i));
}
o << "]}\n";
}