1 #ifndef __DALI_WIDGET_VIEW_INTERNAL_WIDGET_VIEW_MANAGER_H__
2 #define __DALI_WIDGET_VIEW_INTERNAL_WIDGET_VIEW_MANAGER_H__
6 * Copyright (c) 2016 Samsung Electronics Co., Ltd.
8 * Licensed under the Flora License, Version 1.1 (the License);
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://floralicense.org/license/
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an AS IS BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
22 #include <public_api/widget_view_manager/widget_view_manager.h>
25 #include <dali/public-api/object/base-object.h>
37 class WidgetViewManager;
38 typedef IntrusivePtr<WidgetViewManager> WidgetViewManagerPtr;
40 class WidgetViewManager : public BaseObject, public ConnectionTracker
45 * @copydoc Dali::WidgetView::WidgetViewManager::New()
47 static WidgetViewManagerPtr New( Application application, const std::string& name );
50 * @copydoc Dali::WidgetView::WidgetViewManager::AddWidget()
52 Dali::WidgetView::WidgetView AddWidget( const std::string& widgetId, const std::string& contentInfo, int width, int height, float updatePeriod );
57 * Construct a new WidgetViewManager.
62 * A reference counted object may only be deleted by calling Unreference()
64 virtual ~WidgetViewManager();
67 * Initialize the WidgetViewManager
69 int Initialize( Application application, const std::string& name );
71 static int WidgetEventCallback( const char* widgetId, const char* instanceId, int event, void* data );
76 WidgetViewManager( const WidgetViewManager& );
79 WidgetViewManager& operator= ( const WidgetViewManager& );
83 typedef std::map<std::string, Dali::WidgetView::WidgetView> WidgetViewContainer;
84 typedef WidgetViewContainer::iterator WidgetViewIter;
86 WidgetViewContainer mWidgetViewContainer;
89 } // namespace Internal
91 // Helpers for public-api forwarding methods
93 inline Internal::WidgetViewManager& GetImplementation( WidgetViewManager& obj )
95 DALI_ASSERT_ALWAYS( obj );
97 Dali::BaseObject& handle = obj.GetBaseObject();
99 return static_cast<Internal::WidgetViewManager&>( handle );
102 inline const Internal::WidgetViewManager& GetImplementation( const WidgetViewManager& obj )
104 DALI_ASSERT_ALWAYS( obj );
106 const Dali::BaseObject& handle = obj.GetBaseObject();
108 return static_cast<const Internal::WidgetViewManager&>( handle );
111 } // namespace WidgetView
115 #endif // __DALI_WIDGET_VIEW_INTERNAL_WIDGET_VIEW_MANAGER_H__