Tizen 2.0 Release
[apps/osp/Internet.git] / src / IntFormFactory.cpp
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:  IntFormFactory.cpp
20  *@brief: FormFactory class helps in creating appropriate forms with a specified form ID.
21  *        It Should be derived from Tizen::Ui::Scenes::IFormFactory class
22  */
23
24 #include "IntAddBookmarkForm.h"
25 #include "IntBookmarkListForm.h"
26 #include "IntBrightnessForm.h"
27 #include "IntCreateBookmarkFolderForm.h"
28 #include "IntEditBookmarkListForm.h"
29 #include "IntEditHistoryListForm.h"
30 #include "IntEditHomePageForm.h"
31 #include "IntHistoryListForm.h"
32 #include "IntMainForm.h"
33 #include "IntMultipleWindowForm.h"
34 #include "IntReaderFontSizeForm.h"
35 #include "IntFormFactory.h"
36 #include "IntSettingForm.h"
37
38 using namespace Tizen::Base;
39 using namespace Tizen::Ui::Controls;
40 using namespace Tizen::Ui::Scenes;
41
42 const wchar_t* IDL_FORM_MAIN_VIEW_SCENE = L"FormMainMenu";
43 const wchar_t* IDL_FORM_BOOKMARK_LIST_SCENE = L"BooKmarkList";
44 const wchar_t* IDL_FORM_HISTORY_LIST_SCENE = L"HistoryList";
45 const wchar_t* IDL_FORM_EDIT_HISTORY_LIST_SCENE = L"EditHistoryList";
46 const wchar_t* IDL_FORM_SETTINGS_CLEAR_PRIVATE_DATA_SCENE = L"SettingsClearPrivateData";
47 const wchar_t* IDL_FORM_MULTIPLE_WINDOW_SCENE = L"MultipleWindow";
48 const wchar_t* IDL_FORM_SETTINGS_SCENE = L"Settings";
49 const wchar_t* IDL_FORM_ADD_BOOKMARK_SCENE = L"AddBookmark";
50 const wchar_t* IDL_FORM_ARTICLE_READER_SCENE = L"ArticleReader";
51 const wchar_t* IDL_FORM_EDIT_BOOKMARK_LIST_SCENE = L"EditBookmarkList";
52 const wchar_t* IDL_FORM_FIND_WORD_SCENE = L"FindWord";
53 const wchar_t* IDL_FORM_CREATE_BOOKMARK_FOLDER_SCENE = L"CreateBookmarkFolder";
54 const wchar_t* IDL_FORM_FONT_SIZE_SCENE = L"FontSize";
55 const wchar_t* IDL_FORM_EDIT_HOME_PAGE_SCENE = L"EditHomePage";
56 const wchar_t* IDL_FORM_BRIGHTNESS_SCENE = L"Brightness";
57
58 FormFactory::FormFactory(void)
59 {
60
61 }
62
63 FormFactory::~FormFactory(void)
64 {
65
66 }
67
68 Form*
69 FormFactory::CreateFormN(const String& formId, const SceneId& sceneId)
70 {
71         AppLog("FormFactory createForm");
72
73         Tizen::Ui::Controls::Form* pNewForm = null;
74         SceneManager* pSceneManager = SceneManager::GetInstance();
75
76         if ( pSceneManager == null)
77         {
78                 return null;
79         }
80
81         if (formId.Contains(IDL_FORM_MAIN_VIEW_SCENE) == true)
82         {
83                 MainForm* pForm = new(std::nothrow) MainForm();
84                 if (pForm == null)
85                 {
86                         return null;
87                 }
88                 pForm->Initialize();
89                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
90                 pNewForm = pForm;
91         }
92         else if (formId == IDL_FORM_BOOKMARK_LIST_SCENE)
93         {
94                 BookmarkListForm* pForm = new(std::nothrow) BookmarkListForm();
95                 if (pForm == null)
96                 {
97                         return null;
98                 }
99                 pForm->Initialize();
100                 pNewForm = pForm;
101         }
102         else if (formId == IDL_FORM_HISTORY_LIST_SCENE)
103         {
104                 HistoryListForm* pForm = new(std::nothrow) HistoryListForm();
105                 if (pForm == null)
106                 {
107                         return null;
108                 }
109                 pForm->Initialize();
110                 pNewForm = pForm;
111         }
112         else if (formId == IDL_FORM_EDIT_HISTORY_LIST_SCENE)
113         {
114                 EditHistoryListForm* pForm = new(std::nothrow) EditHistoryListForm();
115                 if (pForm == null)
116                 {
117                         return null;
118                 }
119                 pForm->Initialize();
120                 pNewForm = pForm;
121         }
122
123         else if (formId == IDL_FORM_MULTIPLE_WINDOW_SCENE)
124         {
125                 MultipleWindowForm* pForm = new(std::nothrow) MultipleWindowForm();
126                 if (pForm == null)
127                 {
128                         return null;
129                 }
130                 pForm->Initialize();
131                 pNewForm = pForm;
132         }
133         else if (formId == IDL_FORM_SETTINGS_SCENE)
134         {
135                 SettingForm* pForm = new(std::nothrow) SettingForm();
136                 if (pForm == null)
137                 {
138                         return null;
139                 }
140                 pForm->Initialize();
141                 pNewForm = pForm;
142         }
143         else if (formId == IDL_FORM_ADD_BOOKMARK_SCENE)
144         {
145                 AddBookmarkForm* pForm = new(std::nothrow) AddBookmarkForm();
146                 if (pForm == null)
147                 {
148                         return null;
149                 }
150                 pForm->Initialize();
151                 pNewForm = pForm;
152         }
153
154         else if (formId == IDL_FORM_EDIT_BOOKMARK_LIST_SCENE)
155         {
156                 EditBookmarkListForm* pForm = new(std::nothrow) EditBookmarkListForm();
157                 if (pForm == null)
158                 {
159                         return null;
160                 }
161                 pForm->Initialize();
162                 pNewForm = pForm;
163         }
164
165         else if (formId == IDL_FORM_CREATE_BOOKMARK_FOLDER_SCENE)
166         {
167                 CreateBookmarkFolderForm* pForm = new(std::nothrow) CreateBookmarkFolderForm();
168                 if (pForm == null)
169                 {
170                         return null;
171                 }
172                 pForm->Initialize();
173                 pNewForm = pForm;
174         }
175
176         else if (formId == IDL_FORM_FONT_SIZE_SCENE)
177         {
178                 ReaderFontSizeForm* pForm = new(std::nothrow) ReaderFontSizeForm();
179                 if (pForm == null)
180                 {
181                         return null;
182                 }
183                 pForm->Initialize();
184                 pNewForm = pForm;
185         }
186         else if (formId == IDL_FORM_EDIT_HOME_PAGE_SCENE)
187         {
188                 EditHomePageForm* pForm = new(std::nothrow) EditHomePageForm();
189                 if (pForm == null)
190                 {
191                         return null;
192                 }
193                 pForm->Initialize();
194                 pNewForm = pForm;
195         }
196         else if (formId == IDL_FORM_BRIGHTNESS_SCENE)
197         {
198                 BrightnessForm* pForm = new(std::nothrow) BrightnessForm();
199                 if (pForm == null)
200                 {
201                         return null;
202                 }
203                 pForm->Initialize();
204                 pNewForm = pForm;
205         }
206         AppLogDebug("FormFactory createForm exit");
207         return pNewForm;
208 }