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