Initialize Tizen 2.3
[apps/osp/Gallery.git] / src / GlFormFactory.cpp
1 //
2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
3 //
4 // Licensed under the Flora License, Version 1.1 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //     http://floralicense.org/license/
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an AS IS BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16
17 /**
18  * @file                GlFormFactory.cpp
19  * @brief               This is the implementation file for FormFactory class.
20  */
21
22 #include "GlAlbumListEditorForm.h"
23 #include "GlAlbumListForm.h"
24 #include "GlAlbumNameEditorForm.h"
25 #include "GlFileListEditorForm.h"
26 #include "GlFileListForm.h"
27 #include "GlFormFactory.h"
28 #include "GlImageCropForm.h"
29 #include "GlSettingMainForm.h"
30 #include "GlTypes.h"
31
32 using namespace Tizen::Base;
33 using namespace Tizen::Ui;
34 using namespace Tizen::Ui::Controls;
35 using namespace Tizen::Ui::Scenes;
36
37 FormFactory::FormFactory(void)
38 {
39         AppLogDebug("ENTER");
40         AppLogDebug("EXIT(%s)", GetErrorMessage(GetLastResult()));
41 }
42
43 FormFactory::~FormFactory(void)
44 {
45         AppLogDebug("ENTER");
46         AppLogDebug("EXIT(%s)", GetErrorMessage(GetLastResult()));
47 }
48
49 Form*
50 FormFactory::CreateFormN(const String& formId, const SceneId& sceneId)
51 {
52         AppLogDebug("ENTER");
53         SceneManager* pSceneManager = SceneManager::GetInstance();
54         AppAssert(pSceneManager);
55         Form* pNewForm = null;
56
57         if (formId == IDC_FORM_ALBUM_LIST)
58         {
59                 AlbumListForm* pForm = new (std::nothrow) AlbumListForm();
60                 pForm->Initialize();
61                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
62                 pNewForm = pForm;
63         }
64         else if (formId == IDC_FORM_ALBUM_LIST_EDITOR)
65         {
66                 AlbumListEditorForm* pForm = new (std::nothrow) AlbumListEditorForm();
67                 pForm->Initialize();
68                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
69                 pNewForm = pForm;
70         }
71         else if (formId == IDC_FORM_ALBUM_NAME_EDITOR)
72         {
73                 AlbumNameEditorForm* pForm = new (std::nothrow) AlbumNameEditorForm();
74                 pForm->Initialize();
75                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
76                 pNewForm = pForm;
77         }
78         else if (formId == IDC_FORM_FILE_LIST)
79         {
80                 FileListForm* pForm = new (std::nothrow) FileListForm();
81                 pForm->Initialize();
82                 pNewForm = pForm;
83         }
84         else if (formId == IDC_FORM_FILE_LIST_EDITOR)
85         {
86                 FileListEditorForm* pForm = new (std::nothrow) FileListEditorForm();
87                 pForm->Initialize();
88                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
89                 pNewForm = pForm;
90         }
91         else if (formId == IDC_FORM_SETTING_MAIN)
92         {
93                 SettingMainForm* pForm = new (std::nothrow) SettingMainForm();
94                 pForm->Initialize();
95                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
96                 pNewForm = pForm;
97         }
98         else if (formId == IDC_FORM_IMAGE_CROP)
99         {
100                 ImageCropForm* pForm = new (std::nothrow) ImageCropForm();
101                 pForm->Initialize();
102                 pSceneManager->AddSceneEventListener(sceneId, *pForm);
103                 pNewForm = pForm;
104         }
105
106         AppLogDebug("EXIT(%s)", GetErrorMessage(GetLastResult()));
107
108         return pNewForm;
109 }