X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fmagnifier%2Fmagnifier-impl.h;h=df095b0a859957c485ca8e50739e8f638aa8c1f4;hb=278493dcbeb50938256b776d84c41ae4665d9a29;hp=d18fa246e3bfc8cd228bc54f995df55e1a0c4f4e;hpb=e2eda444afbe82e9591fe198eef339227f90a616;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/magnifier/magnifier-impl.h b/dali-toolkit/internal/controls/magnifier/magnifier-impl.h index d18fa24..df095b0 100644 --- a/dali-toolkit/internal/controls/magnifier/magnifier-impl.h +++ b/dali-toolkit/internal/controls/magnifier/magnifier-impl.h @@ -1,26 +1,31 @@ #ifndef __DALI_TOOLKIT_INTERNAL_MAGNIFIER_H__ #define __DALI_TOOLKIT_INTERNAL_MAGNIFIER_H__ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://floralicense.org/license/ -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an AS IS BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// +/* + * Copyright (c) 2014 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +// EXTERNAL INCLUDES +#include +#include +#include // INTERNAL INCLUDES -#include #include -#include +#include namespace Dali { @@ -38,7 +43,7 @@ typedef IntrusivePtr MagnifierPtr; /** * @copydoc Toolkit::Magnifier */ -class Magnifier : public ControlImpl +class Magnifier : public Control { public: @@ -56,27 +61,30 @@ public: void SetSourceActor(Actor actor); /** - * @copydoc Toolkit::ImageView::SetSourcePosition - */ - void SetSourcePosition(const Vector3& position); - - /** - * @copydoc Toolkit::ImageView::GetFrameVisibility + * Returns whether the frame is visible or not. + * @return true if frame is visible, false if not. */ bool GetFrameVisibility() const; /** - * @copydoc Toolkit::ImageView::SetFrameVisibility + * Sets whether the frame part of the magnifier should be visible or not. + * @param[in] visible true to display frame, false to hide frame. */ void SetFrameVisibility(bool visible); /** - * @copydoc Toolkit::ImageView::GetMagnificationFactor + * Get the magnification factor of the magnifier + * The larger the value the larger the contents magnified. + * A value of 1.0f indications 1x magnification. + * @return Magnification factor is returned */ float GetMagnificationFactor() const; /** - * @copydoc Toolkit::ImageView::SetMagnificationFactor + * Set the magnification factor of the magnifier + * The larger the value the larger the contents magnified. + * A value of 1.0f indications 1x magnification. + * @param[in] value Magnification factor. */ void SetMagnificationFactor(float value); @@ -85,6 +93,24 @@ public: */ void Update(); + // Properties + + /** + * Called when a property of an object of this type is set. + * @param[in] object The object whose property is set. + * @param[in] index The property index. + * @param[in] value The new property value. + */ + static void SetProperty( BaseObject* object, Property::Index index, const Property::Value& value ); + + /** + * Called to retrieve a property of an object of this type. + * @param[in] object The object whose property is to be retrieved. + * @param[in] index The property index. + * @return The current value of the property. + */ + static Property::Value GetProperty( BaseObject* object, Property::Index index ); + protected: /** @@ -111,7 +137,7 @@ private: private: - virtual void OnControlSizeSet(const Vector3& targetSize); + virtual void OnSizeSet(const Vector3& targetSize); private: @@ -125,8 +151,7 @@ private: RenderTask mTask; ///< Render Task to render the source actor contents. CameraActor mCameraActor; ///< CameraActor attached to RenderTask - Layer mFrameLayer; ///< Frame is placed on separate layer added to stage. - Property::Index mPropertySourcePosition; ///< Source Position ("source-position") + Actor mFrame; ///< The Magnifier Frame Actor mSourceActor; ///< Source Delegate Actor represents the source position to read. float mDefaultCameraDistance; ///< Default RenderTask's camera distance from target. Vector3 mActorSize; ///< The Actor size