2 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali/internal/update/nodes/scene-graph-layer.h>
20 #include <dali/internal/event/actors/layer-impl.h>
23 #include <dali/public-api/common/dali-common.h>
34 SceneGraph::Layer* Layer::New()
40 : mSortFunction( Internal::Layer::ZValue ),
41 mClippingBox( 0,0,0,0 ),
44 mDepthTestDisabled( false ),
45 mIsDefaultSortFunction( true )
47 // layer starts off dirty
48 mAllChildTransformsClean[ 0 ] = false;
49 mAllChildTransformsClean[ 1 ] = false;
56 void Layer::SetSortFunction( Dali::Layer::SortFunctionType function )
58 if( mSortFunction != function )
60 // is a custom sort function used
61 if( function != Internal::Layer::ZValue )
63 mIsDefaultSortFunction = false;
67 mIsDefaultSortFunction = true;
70 // changing the sort function makes the layer dirty
71 mAllChildTransformsClean[ 0 ] = false;
72 mAllChildTransformsClean[ 1 ] = false;
73 mSortFunction = function;
77 void Layer::SetClipping(bool enabled)
79 mIsClipping = enabled;
82 void Layer::SetClippingBox(const Dali::ClippingBox& box)
84 mClippingBox.Set(box.x, box.y, box.width, box.height);
87 void Layer::SetDepthTestDisabled( bool disable )
89 mDepthTestDisabled = disable;
92 bool Layer::IsDepthTestDisabled() const
94 return mDepthTestDisabled;
97 } // namespace SceneGraph
99 } // namespace Internal