NABI_SE isues resolved
[apps/osp/MyFiles.git] / inc / MfSubBaseFolderEntryForm.h
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: MfSubBaseFolderEntryForm.h
19  * @brief: This file contains the declaration of SubBaseFolderEntryForm class, which acts as a base form for
20  * the TopMostFileFolderListForm and SubFileFolderListForm.
21  */
22
23 #ifndef _MF_SUB_BASE_FOLDER_ENTRY_FORM_H_
24 #define _MF_SUB_BASE_FOLDER_ENTRY_FORM_H_
25
26 #include "MfBaseForm.h"
27 #include "MfBaseItemProvider.h"
28 #include "MfContentListItem.h"
29 #include "MfCreateFolderForm.h"
30 #include "MfCustomAppControl.h"
31 #include "MfCustomListViewForPopup.h"
32 #include "MfDetailsForm.h"
33 #include "MfDirectoryEntry.h"
34 #include "MfFolderEntryDetailPresentationModel.h"
35 #include "MfFolderEntryEditorPresentationModel.h"
36 #include "MfFolderEntryPresentationModel.h"
37 #include "MfFolderNavigationPresentationModel.h"
38 #include "MfIFileEventNotification.h"
39 #include "MfINotificationListener.h"
40 #include "MfMyFilesApp.h"
41 #include "MfSceneRegister.h"
42 #include "MfThumbnailItemProviderAndListener.h"
43 #include "MfThumbnailManager.h"
44 #include "MfTypes.h"
45 #include "MfUtility.h"
46
47 class SubBaseFolderEntryForm
48         : public BaseForm
49         , public Tizen::App::IAppControlResponseListener
50         , public Tizen::Io::IFileEventListener
51         , public Tizen::Ui::ITouchEventListener
52         , public Tizen::Ui::ITouchLongPressGestureEventListener
53 {
54 public:
55         //! Constructor of the class.
56         /*!@fn SubBaseFolderEntryForm(void)
57          * @brief A public member taking no arguments which initializes the member variables of the class.
58          * @param Takes no parameters
59          * @return No value returned */
60         SubBaseFolderEntryForm(void);
61
62         //! Destructor of the class.
63         /*!@fn ~SubBaseFolderEntryForm(void)
64          * @brief A public virtual member taking no arguments, frees the memory allocated to the member variables.
65          * @param Takes no parameters
66          * @return No value returned
67          * */
68         virtual ~SubBaseFolderEntryForm(void);
69
70         //! IListViewStateChangeListener
71         /*! A public purely virtual member function of IListViewStateChangeListener returning no arguments.
72          * @fn OnIconListViewItemStateChangeNotify(void)
73          * @brief Notifies the form if the iconlistview has to be updated.
74          * @param No Parameters.
75          * @return No Return Values.
76          */
77         virtual void OnIconListViewItemStateChangeNotify(void);
78
79         /*! A public virtual member function of IListViewStateChangeListener returning no arguments.
80          * @fn OnListViewItemStateChangedNotify(ViewType viewType)
81          * @brief Notifies the form if the view type is changed by the User and accordingly updates the lists.
82          * @param [ViewType] viewType, the enum indicating the selected view type: List, List and Details or Thumbnails.
83          * @return No Return Values.
84          */
85         virtual void OnListViewItemStateChangedNotify(ViewType viewType);
86
87         /*! A public virtual member function of IListViewStateChangeListener taking and returning no arguments.
88          * @fn OnFooterStateChangeNotify(void)
89          * @brief Used to personalize the states of the the footeritems of the form.
90          * @param No parameters
91          * @return No Return Values.
92          */
93         virtual void OnFooterStateChangeNotify(void);
94
95         /*! A public virtual member function of IListViewStateChangeListener returning no values.
96          * @fn  OnThumbnailReceived(ThumbRequest* pThumbReq)
97          * @brief Used to refresh the image of the listitem from the default image to the generated thumbnail.
98          * @param [ThumbRequest] pThumbReq, the structure containing the thumbnail corresponding to a filepath.
99          * @return No Return Values.
100          */
101         virtual void OnThumbnailReceived(ThumbRequest* pThumbReq);
102         void OnAppControlCompleted(void);
103
104         /*! @fn OnListViewContextItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListContextItemStatus status)
105          * @brief Called when the state of an element in the ListContextItem is changed.
106          */
107         virtual void OnListViewContextItemStateChanged(Tizen::Ui::Controls::ListView& listView, int index, int elementId, Tizen::Ui::Controls::ListContextItemStatus status);
108
109         //! IOrientationEventListener
110         /*! @fn OnOrientationChanged(const Tizen::Ui::Control& source, Tizen::Ui::OrientationStatus orientationStatus)
111          * @brief Called when an orientation change event occurs.
112          */
113         virtual void OnOrientationChanged(const Tizen::Ui::Control& source, Tizen::Ui::OrientationStatus orientationStatus);
114
115         //IFileEventListener
116         virtual void OnFileEventOccured(const unsigned long events,const Tizen::Base::String &  path, const unsigned int        eventId);
117
118         //ITouchEventListener
119         virtual void OnTouchPressed(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo & touchInfo);
120         virtual void OnTouchReleased(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo);
121         virtual void OnTouchMoved(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo);
122         virtual void OnTouchFocusIn(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo);
123         virtual void OnTouchFocusOut(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo);
124         virtual void OnTouchCanceled(const Tizen::Ui::Control& source, const Tizen::Graphics::Point& currentPosition, const Tizen::Ui::TouchEventInfo& touchInfo) {}
125
126         //ITouchLongPressGestureEventListener
127         /*! @fn OnLongPressGestureDetected(Tizen::Ui::TouchLongPressGestureDetector& gestureDetector)
128          * @brief Called when an the long press gesture is detected on a specified area.
129          */
130         virtual void OnLongPressGestureDetected(Tizen::Ui::TouchLongPressGestureDetector& gestureDetector);
131
132         /*! @fn OnLongPressGestureCanceled(Tizen::Ui::TouchLongPressGestureDetector& gestureDetector)
133          * @brief Called when an the long press gesture detected on a specified area is cancelled.
134          */
135         virtual void OnLongPressGestureCanceled(Tizen::Ui::TouchLongPressGestureDetector& gestureDetector);
136
137         //IFileProcessingListener
138         /*! A public virtual member function of IFileProcessingListener taking and returning no arguments.
139          * @fn OnFileManagingStart(void)
140          * @brief Used to show the FileProcessing Popup.
141          * @param No parameters
142          * @return No Return Values.
143          */
144         void OnFileManagingStart(void);
145
146         /*! A public virtual member function of IFileProcessingListener returning no arguments.
147          * @fn OnFileManagingStop(FileManagingResult fileManagingResult)
148          * @brief Used to hide the FileProcessing Popup.
149          * @param [FileManagingResult]Enumerator indicating the result of file processing.
150          * @return No Return Values.
151          */
152         void OnFileManagingStop(FileManagingResult fileManagingResult);
153
154         // IAppControlResponseListener
155         void OnAppControlCompleteResponseReceived(const Tizen::App::AppId& appId, const Tizen::Base::String& operationId, Tizen::App::AppCtrlResult appControlResult, const Tizen::Base::Collection::IMap* pExtraData);
156
157         // IFolderEntryProviderListener
158         /*! A public virtual member function of IFolderEntryProviderListener returning a pointer to the FileListPresentationModel.
159          * @fn  GetFileListPM(void)
160          * @brief Used to get the pointer to the FileListPresentationModel Class.
161          * @param No parameters taken.
162          * @return [FileListPresentationModel*] A pointer to the filelistpresentation model.
163          */
164         virtual FolderEntryPresentationModel* GetFolderEntryPresentationModel(void);
165
166 protected:
167         /*
168          * A protected member function taking and returning no arguments.
169          * @fn CreateDeleteConfirmationPopUp()
170          * @brief Called OnContextItemStateChanged(), used to personalize the Delete Confirmation PopUp.
171          * @param No parameters taken.
172          * @return[result] An ErrorCode.
173          */
174         result CreateDeleteConfirmationPopUp(void);
175
176         /*
177          * A protected member function taking and returning no arguments.
178          * @fn CreateFileProgressingPopup()
179          * @brief Called during OnInitializing(), used to personalize the Animation PopUp.
180          * @param No parameters taken.
181          * @return[result] An ErrorCode.
182          */
183         result CreateFileProgressingPopup(void);
184
185         /*
186          * A protected member function taking and returning no arguments.
187          * @fn CreateFooterControls
188          * @brief Called during OnInitializing(), gets the form Footer, intializes 3 FooterItems and
189          * adds them to the footer of the form.
190          * @param No parameters
191          * @return[result] Result return type containing the error code.
192          */
193         result CreateFooterControls(void);
194
195         /*
196          * A protected member function taking no parameters and returning an error code.
197          * @fn CreateIconListViewContextMenu
198          * @brief Called to create a new context menu control to be used when an item in the iconlistview is long pressed.
199          * @param No parameters
200          * @return[result] Result return type containing the error code.
201          */
202         result CreateIconListViewContextMenu(void);
203
204         /*
205          * A protected member function returning no arguments.
206          * @fn CreateInstallationConfirmationPopUp(void)
207          * @brief Called to create the InstallationConfirmationPopUp and all controls in it.
208          * @param No parameters taken.
209          * @return Void return type
210          */
211         result CreateInstallationConfirmationPopUp(void);
212
213         /*
214          * A protected member function returning no arguments.
215          * @fn CreateInstallationProgressPopUp(void)
216          * @brief Called to create the CreateInstallationProgressPopUp and all controls in it.
217          * @param No parameters taken.
218          * @return Void return type
219          */
220         result CreateInstallationProgressPopUp(void);
221
222         /*
223          * A protected member function taking no parameters and returning an error code.
224          * @fn CreateMoreContextMenu
225          * @brief Called to create a new context menu control to implement the More functionality.
226          * @param No parameters
227          * @return[result] Result return type containing the error code.
228          */
229         result CreateMoreContextMenu(void);
230
231         /*
232          * A protected member function taking no parameters and returning an error code.
233          * @fn CreateSortByPopup()
234          * @brief Called to create a new Popup control containing a listView to perform the Sort functionality.
235          * @param No parameters
236          * @return[result] Result return type containing the error code.
237          */
238         result CreateSortByPopup(void);
239
240         /*
241          * A protected member function taking no parameters and returning an error code.
242          * @fn CreateViewAsPopupControl
243          * @brief Called to create a new Popup control containing a listView to implement the View As functionality.
244          * @param No parameters
245          * @return[result] Result return type containing the error code.
246          */
247         result CreateViewAsPopupControl(void);
248
249         /*
250          * A private member function taking a string as parameter and returning an error code.
251          * @fn DeleteFile(Tizen::Base::String&).
252          * @brief Used to delete the items selected in the Edit view.
253          * @param[String] Filepath of the String to be deleted.
254          * @return An ErrorCode.
255          */
256         result DeleteFile(Tizen::Base::String&);
257
258         /*
259          * A protected member function taking and returning no arguments.
260          * @fn HideDeleteConfirmationPopup()
261          * @brief Called to hide the delete confirmation popup.
262          * @param No parameters
263          * @return Void return type
264          */
265         void HideDeleteConfirmationPopup(void);
266         /*
267          * A protected member function taking and returning no arguments.
268          * @fn HideFileExtension()
269          * @brief  Called to perform the hide file extension functionality.
270          * @param No parameters
271          * @return Void return type
272          */
273         void HideFileExtension(void);
274         /*
275          * A protected member function taking and returning no arguments.
276          * @fn HideFileProgressingPopup()
277          * @brief  Called to hide the Animation PopUp containing the progress bar from the form.
278          * @param No parameters
279          * @return Void return type
280          */
281         void HideFileProgressingPopup(void);
282
283         /*
284          * A protected member function taking and returning no arguments.
285          * @fn HideInstallationConfirmationPopup()
286          * @brief  Called to hide the Installation Confirmation PopUp.
287          * @param No parameters
288          * @return Void return type
289          */
290         void HideInstallationConfirmationPopup(void);
291
292         /*
293          * A protected member function taking and returning no arguments.
294          * @fn HideInstallationProgressPopup()
295          * @brief  Called to hide the Installation Progress Popup.
296          * @param No parameters
297          * @return Void return type
298          */
299         void HideInstallationProgressPopup(void);
300
301         /*
302          * A protected member function taking and returning no arguments.
303          * @fn HideSortByPopup()
304          * @brief  Called to hide the SortBy PopUp from the form.
305          * @param No parameters
306          * @return Void return type
307          */
308         void HideSortByPopup(void);
309
310         /*
311          * A protected member function taking and returning no arguments.
312          * @fn HidePopup
313          * @brief Called OnActionPerformed on the Cancel button of Popup, hides the popup on the form
314          * if seen.
315          * @param No parameters
316          * @return Void return type
317          */
318         void HideViewAsPopup(void);
319
320         /*
321          * A protected member function taking and returning no arguments.
322          * @fn LoadCreateFolderForm
323          * @brief Called OnActionPerformed on the ContextMenu, initializes the CreateFolder form
324          *  and transfers view to it using SceneManager
325          * @param No parameters
326          * @return Void return type
327          */
328         void LoadCreateFolderForm(void);
329
330         /*
331          * A protected function taking a String parameter and returning no values
332          * @fn LoadDetailForm
333          * @brief Called during OnActionPerformed() Loads the form which shows the details of selected file or folder
334          * @param[String] Fullpath containing the full filepath of the selected directory
335          * @return Void return type
336          */
337         void LoadDetailForm(Tizen::Base::String& Fullpath);
338
339         /*
340          * A protected function taking a no parameter and returning no values
341          * @fn LoadEditForm(void)
342          * @brief Called during OnActionPerformed() Loads the Edit Form
343          * @param No parameters
344          * @return Void return type
345          */
346         void LoadEditForm(void);
347
348         /*
349          * A protected member function taking and returning no arguments.
350          * @fn LoadRenameForm(int index)
351          * @brief Called OnActionPerformed on the ContextItem, initializes the Rename form.
352          * @param [int] index, of the element from where the context item was clicked.
353          * @return Void return type
354          */
355         void LoadRenameForm(int index);
356
357         /*
358          * A protected function taking a no parameter and returning no values
359          * @fn LoadSearchForm(void)
360          * @brief Called during OnActionPerformed() Loads the Search Form
361          * @param No parameters
362          * @return Void return type
363          */
364         void LoadSearchForm(void);
365
366         /*
367          * A protected member function taking and returning no arguments.
368          * @fn SetCurrentDirectoryFlag(bool isTopDirectory)
369          * @brief Called to set the flag if current view is the TopLevelDirectoryView.
370          * @param No parameters
371          * @return An ErrorCode.
372          */
373         void SetCurrentDirectoryFlag(bool isTopDirectory);
374
375         /*
376          * A protected member function taking and returning no arguments.
377          * @fn SetDefaultSelectionForSortByPopUp(void)
378          * @brief Called to enable the default selection of the SortBy Popup.
379          * @param No parameters
380          * @return An ErrorCode.
381          */
382         result SetDefaultSelectionForSortByPopUp(void);
383
384         /*
385          * A protected member function taking and returning no arguments.
386          * @fn SetDefaultSelectionForViewAsPopUp(void)
387          * @brief Called to enable the default selection of the ViewAs Popup.
388          * @param No parameters
389          * @return An ErrorCode.
390          */
391         result SetDefaultSelectionForViewAsPopUp(void);
392
393         /*
394          * A protected member function taking and returning no arguments.
395          * @fn SetFooterVisibility(int mode)
396          * @brief  Called to maintain the footeritem status of the form.
397          * @param No parameters
398          * @return Void return type
399          */
400         void SetFooterVisibility(void);
401
402         /*
403          * A protected member function taking and returning no arguments.
404          * @fn ShowDeleteConfirmationPopup()
405          * @brief Called to show the delete confirmation popup.
406          * @param No parameters
407          * @return Void return type
408          */
409         void ShowDeleteConfirmationPopup(void);
410
411         /*
412          * A protected member function taking and returning no arguments.
413          * @fn ShowFileExtension()
414          * @brief  Called to perform the show file extension functionality.
415          * @param No parameters
416          * @return Void return type
417          */
418         void ShowFileExtension(void);
419
420         /*
421          * A protected member function taking and returning no arguments.
422          * @fn ShowFileProgressingPopup()
423          * @brief  Called to draw the Animation PopUp containing the progress bar on the form.
424          * @param No parameters
425          * @return Void return type
426          */
427         void ShowFileProgressingPopup(void);
428
429         /*
430          * A private member function taking and returning no arguments.
431          * @fn ShowInstallationConfirmationPopup()
432          * @brief Called to show the installation confirmation popup.
433          * @param No parameters
434          * @return Void return type
435          */
436         void ShowInstallationConfirmationPopup(void);
437
438         /*
439          * A private member function taking and returning no arguments.
440          * @fn ShowInstallationProgressPopup()
441          * @brief Called to show the progress popup for installation.
442          * @param No parameters
443          * @return Void return type
444          */
445         void ShowInstallationProgressPopup(void);
446
447         /*
448          * A protected member function taking and returning no arguments.
449          * @fn ShowIconListViewContextMenu()
450          * @brief Called to show context menu.
451          * @param No parameters
452          * @return Void return type
453          */
454         void ShowIconListViewContextMenu(void);
455
456         /*
457          * A protected member function taking and returning no arguments.
458          * @fn ShowMoreContextMenu()
459          * @brief Called to show context menu.
460          * @param No parameters
461          * @return Void return type
462          */
463         void ShowMoreContextMenu(void);
464
465         /*
466          * A protected member function taking and returning no arguments.
467          * @fn ShowSortByPopup()
468          * @brief Called to draw the SortBy PopUp on the form.
469          * @param No parameters
470          * @return Void return type
471          */
472         void ShowSortByPopup(void);
473
474         /*
475          * A protected member function taking and returning no arguments.
476          * @fn ShowPopup
477          * @brief Called OnActionPerformed on the ContextMenu ViewAs, shows the popup on the form
478          * if seen.
479          * @param No parameters
480          * @return Void return type
481          */
482         void ShowViewAsPopup(void);
483
484         /*
485          * A private member function taking a string as parameter and returning an error code.
486          * @fn SubBaseOnActionPerformed(const Tizen::Ui::Control& source, int actionId).
487          * @brief Used to handle the common cases of the ActionPerformed of both forms.
488          * @param[Control, int] source, of the Event Trigger, actionId, associated with the control.
489          * @return An ErrorCode.
490          */
491         void SubBaseOnActionPerformed(const Tizen::Ui::Control& source, int actionId);
492
493         /*
494          * A protected member function taking and returning no arguments.
495          * @fn SwitchViewType(void)
496          * @brief Called to update the corresponding listviews when the view type is changed.
497          * @param No parameters
498          * @return Void return type
499          */
500         void SwitchViewType(void);
501
502         /*
503          * A private member function taking and returning no arguments.
504          * @fn SetNextDisplayPath
505          * @brief Called OnListItemStateChanged to change the path displayed in the label.
506          * @param No parameters.
507          * @return Void return type.
508          */
509         void SetNextDisplayPath(void);
510
511         // Copy Constructor of the class.
512         /*@fn SubBaseFolderEntryForm(const SubBaseFolderEntryForm&)
513          * @brief Copy Constructor
514          * @param Takes Reference of the class
515          * @return No value returned
516          * */
517         SubBaseFolderEntryForm(const SubBaseFolderEntryForm&);
518
519         // Assignment operator of the class.
520         /*@fn SubBaseFolderEntryForm& operator = (const SubBaseFolderEntryForm& pSubBaseFolderEntryForm)
521          * @brief Assignment operator of the class.
522          * @param Takes Reference of the class
523          * @return No value returned
524          * */
525         SubBaseFolderEntryForm& operator =(const SubBaseFolderEntryForm& pSubBaseFolderEntryForm);
526
527         bool CheckSearchHistory(void);
528         //result CreateHeaderControls(Tizen::Base::Collection::ArrayList* pExtraHeaderItemList);
529 protected:
530         //ListView CustomItems
531         static const int IDI_ITEM_TITLE_STRING = 101;
532         static const int IDI_ITEM_IMAGE = 102;
533
534         static const int IDA_BTN_HOME = 103;
535                 static const int IDA_BTN_UP = 104;
536         //ListView ContextItems
537         static const int IDA_CONTEXT_DETAIL = 105;
538         static const int IDA_CONTEXT_RENAME = 106;
539         static const int IDA_CONTEXT_DELETE = 107;
540
541         //FooterItems
542         //static const int IDA_BTN_CANCEL = 109;
543         static const int IDA_BTN_EDIT = 110;
544         static const int IDA_BTN_MORE = 113;
545         static const int IDA_BTN_SHARE = 140;
546
547         //Context Menu
548         static const int IDA_CONTEXT_MENU_BTN_SORT_BY = 111;
549         static const int IDA_CONTEXT_MENU_BTN_SEARCH = 112;
550         static const int IDA_CONTEXT_MENU_VIEW_AS = 116;
551         static const int IDA_CONTEXT_MENU_CREATE_FOLDER = 117;
552         static const int IDA_CONTEXT_MENU_HIDE_EXTENSION = 118;
553         static const int IDA_CONTEXT_MENU_SHOW_EXTENSION = 119;
554
555         //IconListView Context Items
556         static const int IDA_ICONLISTVIEW_DETAILS = 135;
557         static const int IDA_ICONLISTVIEW_RENAME = 136;
558         static const int IDA_ICONLISTVIEW_DELETE = 137;
559
560         static const int IDA_CANCEL_DELETION = 123;
561         static const int IDA_DELETE_FILE = 124;
562
563         //PopUps
564         static const int IDA_BUTTON_OPEN_POPUP = 114;
565         static const int IDA_BUTTON_CLOSE_POPUP = 115;
566
567
568         static const int IDA_BTN_POPUP_CANCEL = 121;
569         static const int IDA_BTN_SORT_POPUP_CANCEL = 122;
570
571         static const int IDA_BTN_ANIMATION_POPUP_CANCEL = 134;
572
573         static const int IDA_TABBAR_ITEM_PHONE = 200;
574         static const int IDA_TABBAR_ITEM_SD_CARD = 201;
575         static const int IDA_TABBAR_ITEM_USB = 202;
576
577         static const int IDA_CANCEL_INSTALLATION = 303;
578         static const int IDA_INSTALL_APP = 304;
579
580         int _flagViewAsStatus;
581         int _indexToDelete;
582         int _indexTracker;
583         int _listItemCount;
584         int _renameIndex;
585         int _renameOrCreate;
586         int _editOrShare;
587         int _currentIndex;
588         int _selectedItemIndex;
589
590         bool _bIsTopLevelDirectory;
591         bool _bIsDirectoryEmpty;
592         bool _bBackFromAppControl;
593
594         Tizen::Base::String _fileEventPath;
595         MemoryType _storageType;
596
597         //FileEventManager
598         Tizen::Io::FileEventManager* _pFileEventManager;
599
600         //PackageManager
601         Tizen::App::Package::PackageManager* _pPackageManager;
602
603         Tizen::Base::Collection::ArrayList* _pFilenames;
604
605         Tizen::Base::String _currentFileName;
606         Tizen::Base::String _extensionKeyName;
607         Tizen::Base::String _filePath;
608         Tizen::Base::String _hideExtension;
609         Tizen::Base::String _showExtension;
610         Tizen::Base::String _pathOfSelectedFile;
611         Tizen::Base::String _displayPath; //Public because of DataBinding with Display Path Label of the Form.
612
613         Tizen::Graphics::Point _currentPosition;
614
615         //UI Controls
616         Tizen::Ui::Controls::Button* _pCancelDeletion;
617         Tizen::Ui::Controls::Button* _pCancelSortBy;
618         Tizen::Ui::Controls::Button* _pCancelViewAs;
619         Tizen::Ui::Controls::Button* _pDeleteFile;
620         Tizen::Ui::Controls::Button* _pFileProgressingCancelButton;
621
622         Tizen::Ui::Controls::ContextMenu* _pIconListViewContextMenu;
623         Tizen::Ui::Controls::ContextMenu* _pMoreContextMenu;
624
625         Tizen::Ui::Controls::Footer* _pFooter;
626         Tizen::Ui::Controls::FooterItem* _pEdit;
627         Tizen::Ui::Controls::FooterItem* _pMore;
628         Tizen::Ui::Controls::FooterItem* _pSearch;
629         Tizen::Ui::Controls::FooterItem* _pSortBy;
630         Tizen::Ui::Controls::FooterItem* _pShare;
631
632         Tizen::Ui::Controls::IconListView* _pIconListView;
633
634         Tizen::Ui::Controls::Label* _pFileProgressingHeaderLabel;
635         Tizen::Ui::Controls::Label* _pFileProgressingLabel;
636         Tizen::Ui::Controls::Label* _pLabelDisplayPath;
637
638         Tizen::Ui::Controls::ListContextItem* _pItemContext;
639         Tizen::Ui::Controls::ListView* _pListView;
640         Tizen::Ui::Controls::ListView* _pSortByListView;
641         Tizen::Ui::Controls::ListView* _pViewAsListView;
642
643         Tizen::Ui::Controls::Popup* _pDeleteConfirmationPopUp;
644         Tizen::Ui::Controls::Popup* _pFileProgressingPopup;
645         Tizen::Ui::Controls::Popup* _pSortByPopup;
646         Tizen::Ui::Controls::Popup* _pViewAsPopup;
647
648         Tizen::Ui::Controls::Progress* _pFileProgressingProgress;
649
650         Tizen::Ui::TouchLongPressGestureDetector* _pLongPressGestureDetector;
651
652         BaseItemProvider* _pBaseItemProvider;
653         CustomListViewForPopup* _pCustomListViewForPopup;
654         FolderEntryDetailPresentationModel _mediaUtility;
655         FolderEntryEditorPresentationModel* _pFileManager;
656         FolderEntryPresentationModel* _pFolderEntryPM;
657         MediaMetaData* _pMediaMetaData;
658         ThumbnailItemProviderAndListener* _pThumbnailItemProvider;
659         ThumbnailManager* _pThumbnailManager;
660
661 };
662
663 #endif /* _MF_SUB_BASE_FOLDER_ENTRY_FORM_H_ */