X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Fupdate%2Fnodes%2Fscene-graph-layer.cpp;h=db6e6f0986a1edeb15da32939e9c76638f99e059;hb=f784286ae2c20dbcd3e9c2d24615df2f35f6f928;hp=8cf81551d38427c7a83c6ada5de51c63c35761cc;hpb=adc926dbb6442d4d24ac8182a63269dfa9525b5a;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/update/nodes/scene-graph-layer.cpp b/dali/internal/update/nodes/scene-graph-layer.cpp old mode 100644 new mode 100755 index 8cf8155..db6e6f0 --- a/dali/internal/update/nodes/scene-graph-layer.cpp +++ b/dali/internal/update/nodes/scene-graph-layer.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -31,20 +31,26 @@ namespace Internal namespace SceneGraph { -SceneGraph::Layer* Layer::New() +SceneGraph::Layer* Layer::New( unsigned int id ) { - return new Layer(); + // Layers are currently heap allocated, unlike Nodes which are in a memory pool + // However Node::Delete( layer ) will correctly delete a layer / node depending on type + return new Layer( id ); } -Layer::Layer() -: mSortFunction( Internal::Layer::ZValue ), +Layer::Layer( unsigned int id ) +: Node( id ), + mSortFunction( Internal::Layer::ZValue ), mClippingBox( 0,0,0,0 ), mLastCamera( NULL ), mBehavior( Dali::Layer::LAYER_2D ), mIsClipping( false ), - mDepthTestDisabled( false ), + mDepthTestDisabled( true ), mIsDefaultSortFunction( true ) { + // set a flag the node to say this is a layer + mIsLayer = true; + // layer starts off dirty mAllChildTransformsClean[ 0 ] = false; mAllChildTransformsClean[ 1 ] = false; @@ -97,7 +103,13 @@ void Layer::SetDepthTestDisabled( bool disable ) bool Layer::IsDepthTestDisabled() const { - return ( mBehavior == Dali::Layer::LAYER_2D ) || mDepthTestDisabled; + return mDepthTestDisabled; +} + +void Layer::ClearRenderables() +{ + colorRenderables.Clear(); + overlayRenderables.Clear(); } } // namespace SceneGraph