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