Conversion to Apache 2.0 license
[platform/core/uifw/dali-toolkit.git] / capi / dali-toolkit / public-api / controls / control.h
index 84096dc..6fcc7a1 100644 (file)
@@ -1,21 +1,22 @@
 #ifndef __DALI_TOOLKIT_CONTROL_H__
 #define __DALI_TOOLKIT_CONTROL_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.
+ *
+ */
 
 /**
  * @addtogroup CAPI_DALI_TOOLKIT_CONTROLS_MODULE
@@ -33,13 +34,16 @@ namespace Toolkit
 
 //Forward declarations.
 
-class ControlImpl;
+namespace Internal
+{
+class Control;
+}
 
 /**
  * @brief Control is the base class for all controls.
  *
- * The implementation of the control must be supplied; see ControlImpl for more details.
- * @see ControlImpl
+ * The implementation of the control must be supplied; see Internal::Control for more details.
+ * @see Internal::Control
  */
 class Control : public CustomActor, public ConnectionTrackerInterface
 {
@@ -49,6 +53,11 @@ public:
   /** @{ */
   static const Property::Index PROPERTY_BACKGROUND_COLOR;    ///< name "background-color",        @see SetBackgroundColor,        type VECTOR4
   static const Property::Index PROPERTY_BACKGROUND;          ///< name "background",              @see SetBackground,             type MAP
+  static const Property::Index PROPERTY_WIDTH_POLICY;        ///< name "width-policy",            @see SetSizePolicy,             type STRING
+  static const Property::Index PROPERTY_HEIGHT_POLICY;       ///< name "height-policy",           @see SetSizePolicy,             type STRING
+  static const Property::Index PROPERTY_MINIMUM_SIZE;        ///< name "minimum-size",            @see SetMinimumSize,            type VECTOR3
+  static const Property::Index PROPERTY_MAXIMUM_SIZE;        ///< name "maximum-size",            @see SetMaximumSize,            type VECTOR3
+  static const Property::Index PROPERTY_KEY_INPUT_FOCUS;     ///< name "key-input-focus",         @see SetKeyInputFocus,          type BOOLEAN
   /** @} */
 
   /// @name Signals
@@ -160,14 +169,14 @@ public:
    *
    * @return The implementation.
    */
-  ControlImpl& GetImplementation();
+  Internal::Control& GetImplementation();
 
   /**
    * @brief Retrieve the Control implementation.
    *
    * @return The implementation.
    */
-  const ControlImpl& GetImplementation() const;
+  const Internal::Control& GetImplementation() const;
 
   // Size Negotiation
 
@@ -388,7 +397,7 @@ public: // Not intended for application developers
    * @param[in] implementation The implementation for this control.
    * @return A handle to a newly allocated Dali resource.
    */
-  Control(ControlImpl& implementation);
+  Control(Internal::Control& implementation);
 
   /**
    * @brief This constructor is used by CustomActor within Dali core to create additional Control handles