d601f789aaa66aa1186f6f4f72e7b0f416e15913
[apps/home/wrt-setting.git] / webapp-detail / mainview.h
1 /*
2   * Copyright 2012  Samsung Electronics Co., Ltd
3   *
4   * Licensed under the Flora License, Version 1.0 (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 #ifndef WEB_SRC_SETTING_WEBAPP_DETAIL_MAINVIEW_H_
18 #define WEB_SRC_SETTING_WEBAPP_DETAIL_MAINVIEW_H_
19
20 #include <Evas.h>
21 #include <ui-gadget.h>
22 #include <dpl/scoped_ptr.h>
23
24 #include "detailview.h"
25 #include "permview.h"
26 #include "view.h"
27
28 namespace WebAppDetailSetting {
29
30 class MainView : public View
31 {
32     ui_gadget_h m_ug;
33     DPL::String m_appID;
34     Evas_Object *m_subCtnt;
35     DPL::ScopedPtr<DetailView> m_detail;
36     DPL::ScopedPtr<PermView> m_perm;
37     Elm_Object_Item *m_segCtrlDetail;
38     Elm_Object_Item *m_segCtrlPerm;
39
40     static void onBackBtnClicked(void *data,
41                                  Evas_Object *eo,
42                                  void *event_info);
43     static void onSegCtrlChanged(void *data,
44                                  Evas_Object *eo,
45                                  void *event_info);
46
47     Evas_Object *createContent(Evas_Object *parent);
48     Evas_Object *createToolBar(Evas_Object *parent);
49
50   public:
51     MainView(ui_gadget_h ug, DPL::String appId);
52     ~MainView(void);
53
54     Evas_Object *loadView(void);
55     ui_gadget_h getUG(void) { return m_ug; }
56     Evas_Object *getSubCtnt(void) { return m_subCtnt; }
57     Elm_Object_Item *getSegCtrlDetail(void) { return m_segCtrlDetail; }
58     Elm_Object_Item *getSegCtrlPerm(void) { return m_segCtrlPerm; }
59 };
60
61 } /* WebAppDetailSetting */
62
63 #endif /* WEB_SRC_SETTING_WEBAPP_DETAIL_MAINVIEW_H_ */