Tizen 2.0 Release
[apps/osp/Internet.git] / inc / IntSceneRegister.h
1 //
2
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://floralicense.org/license/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 //!Internet
19 /*@file:    IntSceneRegister.h
20  *@brief:       This header file contains the declarations of the %SceneRegister class.
21  *
22  */
23
24 #ifndef _INT_SCENE_REGISTER_H_
25 #define _INT_SCENE_REGISTER_H_
26
27 /// Use 'extern' to eliminate duplicate data allocation.
28 extern const wchar_t* IDSCN_MAIN_VIEW;
29 extern const wchar_t* IDSCN_BOOKMARK_VIEW;
30 extern const wchar_t* IDSCN_HISTORY_LIST;
31 extern const wchar_t* IDSCN_FIND_WORD;
32 extern const wchar_t* IDSCN_EDIT_HISTORY_LIST;
33 extern const wchar_t* IDSCN_SETTINGS_CLEAR_PRIVATE_DATA;
34 extern const wchar_t* IDSCN_MULTIPLE_WINDOW;
35 extern const wchar_t* IDSCN_MULTIPLE_WINDOW_GRID;
36 extern const wchar_t* IDSCN_SETTINGS;
37 extern const wchar_t* IDSCN_ADD_BOOKMARK;
38 extern const wchar_t* IDSCN_ARTICLE_READER;
39 extern const wchar_t* IDSCN_EDIT_BOOKMARK_LIST;
40 extern const wchar_t* IDSCN_CREATE_BOOKMARK_FOLDER;
41 extern const wchar_t* IDSCN_FONT_SIZE;
42 extern const wchar_t* IDSCN_EDIT_HOMEPAGE_VIEW;
43 extern const wchar_t* IDSCN_BRIGHTNESS;
44
45 class SceneRegister
46 {
47 public:
48         /**
49          * Registers all the scenes using Register~SceneRegisterScene() method of the SceneManager class
50          *
51          */
52         static void RegisterAllScenes(void);
53
54         /**
55          * Registers New main view scene for multi window
56          *
57          * @return              no return value
58          * @param[in]   sceneID The sceneID of new view.
59          * @param[in]   formID  The formID of new View.
60          * @exception   E_SUCCESS                       The method is successful.
61          * @exception   E_INVALID_ARG           A specified input parameter is invalid.
62          * @exception   E_OBJ_ALREADY_EXIST     The specified @c sceneId already exists.
63          * @exception   E_OUT_OF_MEMORY         The memory is insufficient.
64          * @exception   E_INVALID_STATE         This instance has not been constructed as yet.
65          * @remarks             Register the new main view in scenemanager.
66          */
67         static result RegisterNewMainView(const Tizen::Base::String& sceneID, const Tizen::Base::String& FormID);
68
69         /**
70          * Unregister and destroy the scene
71          *
72          * @return              An error code
73          * @param[in]   sceneID The sceneID of new view.
74          * @exception   E_SUCCESS                       The method is successful.
75          * @exception   E_INVALID_ARG           A specified input parameter is invalid.
76          * @exception   E_OBJ_ALREADY_EXIST     The specified @c sceneId already exists.
77          * @exception   E_OUT_OF_MEMORY         The memory is insufficient.
78          * @exception   E_INVALID_STATE         This instance has not been constructed as yet.
79          * @remarks             Unregister and destroy the scene
80          */
81         static result DestroyAndUnRegisterScene(const Tizen::Base::String& sceneID);
82
83 private:
84         /**
85          * Default constructor
86          */
87         SceneRegister(void);
88
89         /**
90          *      Default destructor
91          */
92         ~SceneRegister(void);
93 };
94
95 #endif // _INT_SCENE_REGISTER_H_