Rename feature added
[apps/osp/Gallery.git] / inc / GlFileListEditorForm.h
1 //
2 // Copyright (c) 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 /**
18  * @file                GlFileListEditorForm.h
19  * @brief               This is the header file for FileListEditorForm class.
20  */
21
22 #ifndef _GL_FILE_LIST_EDITOR_FORM_H_
23 #define _GL_FILE_LIST_EDITOR_FORM_H_
24
25 #include <FApp.h>
26 #include <FBase.h>
27 #include <FContent.h>
28 #include <FUi.h>
29 #include "GlBaseForm.h"
30 #include "GlFileMoveTimer.h"
31
32 class FileListPresentationModel;
33 class FileMoveTimer;
34
35 class FileListEditorForm
36         : public BaseForm
37         , public Tizen::Ui::IActionEventListener
38         , public Tizen::Ui::Controls::IFormBackEventListener
39         , public IFileOpInvalidateListener
40 {
41 public:
42         FileListEditorForm(void);
43         virtual ~FileListEditorForm(void);
44         result Initialize(void);
45
46         virtual result OnInitializing(void);
47         virtual result OnTerminating(void);
48         virtual void OnUpdateContentList(void);
49
50         virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
51
52         void OnFormBackRequested(Tizen::Ui::Controls::Form& source);
53
54         void SetTitleText(const Tizen::Base::String& titleText);
55         void RefreshFolderList(void);
56         void SetFooterButtonsState(bool enableState);
57         result MoveToAlbum(Tizen::Base::String& destDirectory);
58
59         bool GetOverlayStatus();
60         //From IFileOpInvalidate
61         void OnFileOpInvalidate(enum FileActionMode __actionId);
62         void OnFileOpComplete(enum FileActionMode __actionId, enum FileActionCompleteRes);
63
64 private:
65         result InitializeFooter(void);
66         Tizen::Base::String GetDirecotyNameFromFullPath(const Tizen::Base::String& fullPath)const;
67         result SetUpPopup(void);
68
69 private:
70         Tizen::Ui::Controls::ContextMenu* __pContextMenuMore;
71         Tizen::Ui::Controls::ContextMenu* __pContextMenuShare;
72         Tizen::Ui::Controls::ContextMenu* __pContextEditorMenuMove;
73         Tizen::Ui::Controls::ContextMenu* __pContextSelectionMenuMove;
74         Tizen::Ui::Controls::Popup* __pDeletePopup;
75         Tizen::Graphics::Point __morePosition;
76         Tizen::Base::Collection::IList* __pContentDirectoryList;
77         Tizen::Base::Collection::IList* __pContentDirectoryNameList;
78         FileListPresentationModel* __pPresentationModel;
79         FileMoveTimer* __pFileMove;
80 };
81
82 #endif /* _GL_FILE_LIST_EDITOR_FORM_H_ */