Tizen 2.0 Release
[apps/osp/Internet.git] / inc / IntAddBookmarkForm.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:    IntAddBookmarkForm.h
20  *@brief:       This header file contains the declarations of the AddBookmarkForm class.
21  *
22  */
23
24 #ifndef _INT_ADD_BOOKMARK_FORM_H_
25 #define _INT_ADD_BOOKMARK_FORM_H_
26
27 #include <FBase.h>
28 #include <FUi.h>
29 #include "IntBookmarkData.h"
30 #include "IntMultipleWindowPresentationModel.h"
31
32 class AddBookmarkForm
33   : public Tizen::Ui::Controls::Form
34   , public Tizen::Ui::IActionEventListener
35   , public Tizen::Ui::IKeypadEventListener
36   , public Tizen::Ui::Controls::IListViewItemEventListener
37   , public Tizen::Ui::Controls::IListViewItemProvider
38   , public Tizen::Ui::IOrientationEventListener
39   , public Tizen::Ui::ITextEventListener
40   , public Tizen::Ui::Scenes::ISceneEventListener
41   {
42   public:
43         /**
44          * @brief The Default Constructor
45          */
46         AddBookmarkForm(void);
47
48         /**
49          * @brief               The Default Destructor
50          */
51         virtual ~AddBookmarkForm(void);
52
53         /**
54          * @brief               Add Radio Buttons to the list panel.
55          */
56         void AddRadioButtonsToListPanel(void);
57
58         /**
59          * @brief               Shows alert message.
60          */
61         void CreateMessage(Tizen::Base::String& str);
62
63         /**
64          * @brief               Initializes this instance of AddBookmarkForm.
65          */
66         bool Initialize(void);
67
68         // Initializes the controls of the UI for AddBookmarkForm.
69         virtual result OnInitializing(void);
70
71         virtual result OnTerminating(void);
72
73         // IListViewItemEventListener
74         virtual void OnListViewContextItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListContextItemStatus state);
75         virtual void OnListViewItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListItemStatus status);
76         virtual void OnListViewItemSwept(Tizen::Ui::Controls::ListView& listView, int index, Tizen::Ui::Controls::SweepDirection direction);
77         virtual void OnListViewItemLongPressed(Tizen::Ui::Controls::ListView& listView, int index, int elementId, bool& invokeListViewItemCallback);
78
79         //IListViewItemProvider
80         virtual Tizen::Ui::Controls::ListItemBase* CreateItem(int index, int itemWidth);
81         virtual bool DeleteItem(int index, Tizen::Ui::Controls::ListItemBase* pItem, int itemWidth);
82         virtual int GetItemCount(void);
83
84         //IActionEventListener
85         virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
86
87         //IKeypadEventListener
88         virtual void OnKeypadActionPerformed(Tizen::Ui::Control& source, Tizen::Ui::KeypadAction keypadAction);
89         virtual void OnKeypadClosed(Tizen::Ui::Control& source);
90         virtual void OnKeypadOpened(Tizen::Ui::Control& source);
91         virtual void OnKeypadWillOpen(Tizen::Ui::Control& source);
92
93         //IOrientationEventListener
94         virtual void OnOrientationChanged(const Tizen::Ui::Control& source, Tizen::Ui::OrientationStatus orientationStatus);
95
96         // ITextEventListener
97         virtual void OnTextValueChanged(const Tizen::Ui::Control& source);
98         virtual void OnTextValueChangeCanceled(const Tizen::Ui::Control& source);
99
100         //ISceneEventListener
101         virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId, const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs);
102         virtual void OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId, const Tizen::Ui::Scenes::SceneId& nextSceneId);
103
104         static const int IDA_CREATE_BOOKMARK_FOLDER;
105         static const int IDA_BUTTON_DONE;
106         static const int IDA_BUTTON_CANCEL;
107         static const int IDA_LIST_LEFT_SIDE_MARGIN;
108         static const int IDA_LIST_LEFT_SIDE_MARGIN_DROPDOWN;
109   private:
110         int __folderCount;                                    // Number of bookmark folders
111         Tizen::Base::String __folderName;                     // Selected folder name
112         int __listHeight;
113         int __oldFolderCount;                                 // Folder count when view is deactivated.
114         BookmarkData* __pBookmark;
115         Tizen::Ui::Controls::EditField* __pEditFieldTitle;    // Title Edit-field
116         Tizen::Ui::Controls::EditField* __pEditFieldUrl;      // URL Editfield
117         Tizen::Ui::Controls::ListView* __pList;               // contains only one item
118         Tizen::Ui::Controls::Panel* __pListPanel;             // Contains the list of Bookmark folders inluding default Bookmark and Create Bookmark Folder Button
119         Tizen::Ui::Scenes::SceneId __previousScene;                       // previous scene id
120         Tizen::Ui::Controls::Label* __pLabel1;
121         Tizen::Ui::Controls::ScrollPanel* __pScrollPanel;     // The Main panel which is a scroll panel
122         WindowInfo* __pWindowInfo;                           // Contains window information of current scene
123         int __selectedIndex;                                 // The index of check-button which is selected
124         bool __showFolderList;
125         Tizen::Base::String __titleOnViewDeactivated;
126         Tizen::Base::String __view;
127         Tizen::Base::String __urlOnViewDeactivated;
128   };
129
130 #endif /* _INT_ADD_BOOKMARK_FORM_H_ */