Remove dependency to std::vector and property::value from property notification API
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / navigation-frame / page-impl.h
index 2db0ad6..8d2711d 100644 (file)
@@ -1,26 +1,26 @@
 #ifndef __DALI_TOOLKIT_INTERNAL_PAGE_IMPL_H__
 #define __DALI_TOOLKIT_INTERNAL_PAGE_IMPL_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 <string>
 
 // INTERNAL INCLUDES
-#include <dali/dali.h>
 #include <dali-toolkit/public-api/controls/control-impl.h>
 #include <dali-toolkit/public-api/controls/navigation-frame/page.h>
 
@@ -40,7 +40,7 @@ namespace Internal
  * @see Dali::Toolkit::Page for more details
  */
 
-class Page : public ControlImpl
+class Page : public Control
 {
 
 public:
@@ -116,17 +116,23 @@ public:
    */
   Toolkit::Popup GetPopupMenu() const;
 
-private: // From ControlImpl
+  // Properties
 
   /**
-   * @copydoc Toolkit::Control::OnInitialize()
+   * 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.
    */
-  virtual void OnInitialize();
+  static void SetProperty( BaseObject* object, Property::Index index, const Property::Value& value );
 
   /**
-   * @copydoc Dali::CustomActorImpl::OnPropertySet()
+   * 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.
    */
-  virtual void OnPropertySet( Property::Index index, Property::Value propertyValue );
+  static Property::Value GetProperty( BaseObject* object, Property::Index propertyIndex );
 
 private:
 
@@ -144,9 +150,6 @@ private:
 
   ActorContainer                        mTitleBarControls;
   Toolkit::Page::ControlOnBarContainer  mToolBarControls;
-
-  Property::Index  mPropertyTitle;       ///< Property index for title.
-  Property::Index  mPropertySubTitle;    ///< Property index for sub title.
 };
 
 } // namespace Internal