filebrowser/ui/src/fbfileview.cpp
branchRCL_3
changeset 46 fad26422216a
parent 45 b3cee849fa46
child 49 f8280f3bfeb7
--- a/filebrowser/ui/src/fbfileview.cpp	Tue Aug 31 15:15:20 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1535 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include "fbfileview.h"
-#include "settingsview.h"
-#include "editorview.h"
-#include "searchview.h"
-#include "enginewrapper.h"
-#include "notifications.h"
-
-#include "fbfilemodel.h"
-#include "filebrowsersortfilterproxymodel.h"
-//#include "fbfilelistviewitem.h"
-
-#include <HbMenu>
-#include <HbPopup>
-#include <HbView>
-#include <HbMessageBox>
-#include <HbAction>
-#include <HbLabel>
-#include <HbListView>
-#include <HbListViewItem>
-#include <HbListWidget>
-#include <HbLineEdit>
-#include <HbAbstractViewItem>
-#include <HbSelectionDialog>
-#include <HbValidator>
-#include <HbInputDialog>
-#include <HbToolBar>
-#include <HbToolBarExtension>
-#include <HbSearchPanel>
-
-#include <QString>
-#include <QGraphicsLinearLayout>
-#include <QItemSelection>
-#include <QDebug>
-//TODO check if needed to do this way
-#include <FB.hrh>
-
-// ---------------------------------------------------------------------------
-
-FbFileView::FbFileView() :
-    mEngineWrapper(0),
-    mListView(0),
-    mToolBar(0),
-    mNaviPane(0),
-    mSearchPanel(0),
-    mMainLayout(0),
-    mFbFileModel(0),
-    mSortFilterProxyModel(0),
-    mOptionMenuActions(),
-    mContextMenuActions(),
-    mContextMenu(0),
-    mToolbarBackAction(0),
-    mItemHighlighted(false),
-    mLocationChanged(false),
-    mRemoveFileAfterCopied(false),
-//    mClipBoardInUse(false),
-    mFolderContentChanged(false),
-    mCurrentIndex(),
-    mOldPassword(),
-    mPanicCategory(),
-    mAbsoluteFilePath(),
-    mOverwriteOptions(),
-    mModelIndex(),
-    mNewFileName(),
-    mProceed(false),
-    mEraseMBR(false)
-{
-    setTitle("File Browser");
-
-    createMenu();
-    createContextMenu();
-    createToolBar();
-}
-
-// ---------------------------------------------------------------------------	
-
-void FbFileView::init(EngineWrapper *engineWrapper)
-{
-    mEngineWrapper = engineWrapper;
-
-    mListView = new HbListView(this);
-    mListView->listItemPrototype()->setStretchingStyle(HbListViewItem::StretchLandscape);
-
-//    mListView->setItemPrototype(new FbDiskListViewItem(mListView));
-
-    mFbFileModel = new FbFileModel(mEngineWrapper);
-    if (!mListView->model()) {
-
-        mEngineWrapper->refreshView();
-
-        mSortFilterProxyModel = new FileBrowserSortFilterProxyModel(this);
-        mSortFilterProxyModel->setSourceModel(mFbFileModel);
-        mSortFilterProxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
-        mSearchPanel->setPlaceholderText(QString("Type filter criteria"));
-
-        mListView->setModel(mSortFilterProxyModel);
-    }
-
-    //mListView->setRootIndex(mFileSystemModel->index(startPath));
-    //mListView->setRootIndex(model->index());
-
-    //setItemVisible(Hb::ToolBarItem, !mEngineWrapper->isDriveListViewActive());
-//    mListView->setScrollingStyle(HbScrollArea::PanWithFollowOn);
-
-    connect(mListView, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex)));
-    connect(mListView, SIGNAL(longPressed(HbAbstractViewItem*,QPointF)),
-            this, SLOT(onLongPressed(HbAbstractViewItem*, QPointF)));
-
-    mNaviPane = new HbLabel(this);
-    mNaviPane->setPlainText(QString(" ")); // TODO get from settings or default
-    //mNaviPane->setPlainText(QString(mEngineWrapper->currentPath()));
-    HbFontSpec fontSpec(HbFontSpec::PrimarySmall);
-    mNaviPane->setFontSpec(fontSpec);
-
-    // Create layout and add list view and toolbar into layout:
-    mMainLayout = new QGraphicsLinearLayout(Qt::Vertical);
-    mMainLayout->addItem(mNaviPane);
-    mMainLayout->addItem(mListView);
-    setLayout(mMainLayout);
-}
-
-// ---------------------------------------------------------------------------
-
-FbFileView::~FbFileView()
-{  
-//    if (mEngineWrapper) {
-//        delete mEngineWrapper;
-//    }
-    if (mContextMenu) {
-        mContextMenu->deleteLater();
-    }
-
-    delete mSortFilterProxyModel;
-    delete mFbFileModel;
-    delete mListView;
-    delete mToolBar;
-}
-
-/**
-  Initial setup for options menu.
-  Dynamic menu update during the runtime is performed by updateOptionMenu() which
-  to menu's aboutToShow() signal.
-  */
-void FbFileView::createMenu()
-{
-    createFileMenu();
-    createEditMenu();
-    createViewMenu();
-    createToolsMenu();
-
-    createSelectionMenuItem();
-    createSettingsMenuItem();
-    createAboutMenuItem();
-    createExitMenuItem();
-
-    // menu dynamic update
-    connect(menu(), SIGNAL(aboutToShow()), this, SLOT(updateOptionMenu()));
-}
-
-/**
-  Initial setup for File submenu
-  */
-void FbFileView::createFileMenu()
-{
-    mOptionMenuActions.mFileMenu = menu()->addMenu("File");
-
-    mOptionMenuActions.mFileBackMoveUp = mOptionMenuActions.mFileMenu->addAction("Back/Move up", this, SLOT(fileBackMoveUp()));
-    mOptionMenuActions.mFileSearch = mOptionMenuActions.mFileMenu->addAction("Search...", this, SLOT(fileSearch()));
-    //mOptionMenuActions.mFileSearch->setVisible(false);
-
-    mOptionMenuActions.mFileNewMenu = mOptionMenuActions.mFileMenu->addMenu("New");
-    mOptionMenuActions.mFileNewFile = mOptionMenuActions.mFileNewMenu->addAction("File", this, SLOT(fileNewFile()));
-    mOptionMenuActions.mFileNewDirectory = mOptionMenuActions.mFileNewMenu->addAction("Directory", this, SLOT(fileNewDirectory()));
-
-    mOptionMenuActions.mFileDelete = mOptionMenuActions.mFileMenu->addAction("Delete", this, SLOT(fileDelete()));
-    mOptionMenuActions.mFileRename = mOptionMenuActions.mFileMenu->addAction("Rename", this, SLOT(fileRename()));
-    mOptionMenuActions.mFileTouch = mOptionMenuActions.mFileMenu->addAction("Touch", this, SLOT(fileTouch()));
-
-//    mOptionMenuActions.mFileChecksumsMenu = mOptionMenuActions.mFileMenu->addMenu("Checksums");
-//    mOptionMenuActions.mFileChecksumsMD5 = mOptionMenuActions.mFileChecksumsMenu->addAction("MD5", this, SLOT(fileChecksumsMD5()));
-//    mOptionMenuActions.mFileChecksumsMD2 = mOptionMenuActions.mFileChecksumsMenu->addAction("MD2", this, SLOT(fileChecksumsMD2()));
-//    mOptionMenuActions.mFileChecksumsSHA1 = mOptionMenuActions.mFileChecksumsMenu->addAction("SHA-1", this, SLOT(fileChecksumsSHA1()));
-
-    mOptionMenuActions.mFileSetAttributes = mOptionMenuActions.mFileMenu->addAction("Set attributes...", this, SLOT(fileSetAttributes()));
-    mOptionMenuActions.mFileSetAttributes->setVisible(false);
-}
-
-/**
-  Initial setup for Edit submenu
-  */
-void FbFileView::createEditMenu()
-{
-    mOptionMenuActions.mEditMenu = menu()->addMenu("Edit");
-
-    mOptionMenuActions.mEditSnapShotToE = mOptionMenuActions.mEditMenu->addAction("Snap shot to E:", this, SLOT(editSnapShotToE()));
-    mOptionMenuActions.mEditSnapShotToE->setVisible(false);
-    mOptionMenuActions.mEditCut = mOptionMenuActions.mEditMenu->addAction("Cut", this, SLOT(editCut()));
-    mOptionMenuActions.mEditCopy = mOptionMenuActions.mEditMenu->addAction("Copy", this, SLOT(editCopy()));
-    mOptionMenuActions.mEditPaste = mOptionMenuActions.mEditMenu->addAction("Paste", this, SLOT(editPaste()));
-
-    mOptionMenuActions.mEditCopyToFolder = mOptionMenuActions.mEditMenu->addAction("Copy to folder...", this, SLOT(editCopyToFolder()));
-    mOptionMenuActions.mEditMoveToFolder = mOptionMenuActions.mEditMenu->addAction("Move to folder...", this, SLOT(editMoveToFolder()));
-
-    mOptionMenuActions.mEditSelect = mOptionMenuActions.mEditMenu->addAction("Select", this, SLOT(editSelect()));
-    mOptionMenuActions.mEditUnselect = mOptionMenuActions.mEditMenu->addAction("Unselect", this, SLOT(editUnselect()));
-    mOptionMenuActions.mEditSelectAll = mOptionMenuActions.mEditMenu->addAction("Select all", this, SLOT(editSelectAll()));
-    mOptionMenuActions.mEditUnselectAll = mOptionMenuActions.mEditMenu->addAction("Unselect all", this, SLOT(editUnselectAll()));
-}
-
-/**
-  Initial setup for View submenu
-  */
-void FbFileView::createViewMenu()
-{
-    mOptionMenuActions.mViewMenu = menu()->addMenu("View");
-    //mOptionMenuActions.mViewMenu->menuAction()->setVisible(false);
-
-    mOptionMenuActions.mViewFilterEntries = mOptionMenuActions.mViewMenu->addAction("Filter entries", this, SLOT(viewFilterEntries()));
-    mOptionMenuActions.mViewRefresh = mOptionMenuActions.mViewMenu->addAction("Refresh", this, SLOT(viewRefresh()));
-}
-
-/**
-  Initial setup for Tools submenu
-  */
-void FbFileView::createToolsMenu()
-{
-    mOptionMenuActions.mToolsMenu = menu()->addMenu("Tools");
-
-    mOptionMenuActions.mToolsAllAppsToTextFile = mOptionMenuActions.mToolsMenu->addAction("All apps to a text file", this, SLOT(toolsAllAppsToTextFile()));
-    mOptionMenuActions.mToolsAllAppsToTextFile->setVisible(false);
-    mOptionMenuActions.mToolsAllFilesToTextFile = mOptionMenuActions.mToolsMenu->addAction("All files to a text file", this, SLOT(toolsAllFilesToTextFile()));
-    //mOptionMenuActions.mToolsAllFilesToTextFile->setVisible(false);
-
-//    mOptionMenuActions.mToolsAvkonIconCacheMenu = mOptionMenuActions.mToolsMenu->addMenu("Avkon icon cache");
-//    mOptionMenuActions.mToolsAvkonIconCacheMenu->menuAction()->setVisible(false);
-//    mOptionMenuActions.mToolsAvkonIconCacheEnable = mOptionMenuActions.mToolsAvkonIconCacheMenu->addAction("Enable", this, SLOT(toolsAvkonIconCacheEnable()));
-//    mOptionMenuActions.mToolsAvkonIconCacheDisable = mOptionMenuActions.mToolsAvkonIconCacheMenu->addAction("Clear and disable", this, SLOT(toolsAvkonIconCacheDisable()));
-
-    mOptionMenuActions.mToolsDisableExtendedErrors = mOptionMenuActions.mToolsMenu->addAction("Disable extended errors", this, SLOT(toolsDisableExtendedErrors()));
-    mOptionMenuActions.mToolsDumpMsgStoreWalk = mOptionMenuActions.mToolsMenu->addAction("Dump msg. store walk", this, SLOT(toolsDumpMsgStoreWalk()));
-    mOptionMenuActions.mToolsDumpMsgStoreWalk->setVisible(false);
-    mOptionMenuActions.mToolsEditDataTypes = mOptionMenuActions.mToolsMenu->addAction("Edit data types", this, SLOT(toolsEditDataTypes()));
-    mOptionMenuActions.mToolsEditDataTypes->setVisible(false);
-    mOptionMenuActions.mToolsEnableExtendedErrors = mOptionMenuActions.mToolsMenu->addAction("Enable extended errors", this, SLOT(toolsEnableExtendedErrors()));
-
-    mOptionMenuActions.mToolsErrorSimulateMenu = mOptionMenuActions.mToolsMenu->addMenu("Error simulate");
-    mOptionMenuActions.mToolsErrorSimulateLeave = mOptionMenuActions.mToolsErrorSimulateMenu->addAction("Leave", this, SLOT(toolsErrorSimulateLeave()));
-    mOptionMenuActions.mToolsErrorSimulatePanic = mOptionMenuActions.mToolsErrorSimulateMenu->addAction("Panic", this, SLOT(toolsErrorSimulatePanic()));
-    mOptionMenuActions.mToolsErrorSimulatePanic->setVisible(false);
-    mOptionMenuActions.mToolsErrorSimulateException = mOptionMenuActions.mToolsErrorSimulateMenu->addAction("Exception", this, SLOT(toolsErrorSimulateException()));
-
-//    mOptionMenuActions.mLocalConnectivityMenu = mOptionMenuActions.mToolsMenu->addMenu("Local connectivity");
-//    mOptionMenuActions.mToolsLocalConnectivityActivateInfrared = mOptionMenuActions.mLocalConnectivityMenu->addAction("Activate infrared", this, SLOT(toolsLocalConnectivityActivateInfrared()));
-//    mOptionMenuActions.mToolsLocalConnectivityLaunchBTUI = mOptionMenuActions.mLocalConnectivityMenu->addAction("Launch BT UI", this, SLOT(toolsLocalConnectivityLaunchBTUI()));
-//    mOptionMenuActions.mToolsLocalConnectivityLaunchUSBUI = mOptionMenuActions.mLocalConnectivityMenu->addAction("Launch USB UI", this, SLOT(toolsLocalConnectivityLaunchUSBUI()));
-
-    mOptionMenuActions.mToolsMessageAttachmentsMenu = mOptionMenuActions.mToolsMenu->addMenu("Message attachments");
-    mOptionMenuActions.mToolsMessageAttachmentsMenu->menuAction()->setVisible(false);
-    mOptionMenuActions.mToolsMessageInbox = mOptionMenuActions.mToolsMessageAttachmentsMenu->addAction("Inbox", this, SLOT(toolsMessageInbox()));
-    mOptionMenuActions.mToolsMessageDrafts = mOptionMenuActions.mToolsMessageAttachmentsMenu->addAction("Drafts", this, SLOT(toolsMessageDrafts()));
-    mOptionMenuActions.mToolsMessageSentItems = mOptionMenuActions.mToolsMessageAttachmentsMenu->addAction("Sent items", this, SLOT(toolsMessageSentItems()));
-    mOptionMenuActions.mToolsMessageOutbox = mOptionMenuActions.mToolsMessageAttachmentsMenu->addAction("Outbox", this, SLOT(toolsMessageOutbox()));
-
-    mOptionMenuActions.mToolsMemoryInfo = mOptionMenuActions.mToolsMenu->addAction("Memory info", this, SLOT(toolsMemoryInfo()));
-    mOptionMenuActions.mToolsMemoryInfo->setVisible(false);
-
-    mOptionMenuActions.mToolsSecureBackupMenu = mOptionMenuActions.mToolsMenu->addMenu("Secure backup");
-    mOptionMenuActions.mToolsSecureBackupMenu->menuAction()->setVisible(false);
-    mOptionMenuActions.mToolsSecureBackStart = mOptionMenuActions.mToolsSecureBackupMenu->addAction("Start backup", this, SLOT(toolsSecureBackStart()));
-    mOptionMenuActions.mToolsSecureBackRestore = mOptionMenuActions.mToolsSecureBackupMenu->addAction("Start restore", this, SLOT(toolsSecureBackRestore()));
-    mOptionMenuActions.mToolsSecureBackStop = mOptionMenuActions.mToolsSecureBackupMenu->addAction("Stop", this, SLOT(toolsSecureBackStop()));
-
-    mOptionMenuActions.mToolsSetDebugMask = mOptionMenuActions.mToolsMenu->addAction("Set debug mask", this, SLOT(toolsSetDebugMaskQuestion()));
-    mOptionMenuActions.mToolsShowOpenFilesHere = mOptionMenuActions.mToolsMenu->addAction("Show open files here", this, SLOT(toolsShowOpenFilesHere()));
-    mOptionMenuActions.mToolsShowOpenFilesHere->setVisible(false);
-}
-
-/**
-  Creates Selection mode menu item in option menu
-  */
-void FbFileView::createSelectionMenuItem()
-{
-    if (!mOptionMenuActions.mSelection) {
-        mOptionMenuActions.mSelection = menu()->addAction("Selection mode");
-        mOptionMenuActions.mSelection->setToolTip("Selection mode");
-        mOptionMenuActions.mSelection->setCheckable(true);
-        connect(mOptionMenuActions.mSelection, SIGNAL(triggered()), this, SLOT(selectionModeChanged()));
-    }
-}
-
-/**
-  Creates Setting menu item in option menu
-  */
-void FbFileView::createSettingsMenuItem()
-{
-    mOptionMenuActions.mSetting = menu()->addAction("Settings...");
-    connect(mOptionMenuActions.mSetting, SIGNAL(triggered()), this, SIGNAL(aboutToShowSettingsView()));
-}
-
-
-/**
-  Creates About menu item in option menu
-  */
-void FbFileView::createAboutMenuItem()
-{
-    // about note
-    mOptionMenuActions.mAbout = menu()->addAction("About");
-    connect(mOptionMenuActions.mAbout, SIGNAL(triggered()), this, SLOT(about()));
-}
-
-/**
-  Creates Exit menu item in option menu
-  */
-void FbFileView::createExitMenuItem()
-{
-    // application exit
-    mOptionMenuActions.mExit = menu()->addAction("Exit");
-    connect(mOptionMenuActions.mExit, SIGNAL(triggered()), qApp, SLOT(quit()));
-}
-
-/**
-  update menu: disk admin available only in device root view. edit available only in folder view
-  when file or folder content exist in current folder, or clipboard has copied item.
-  file and view menus updated every time regarding the folder content.
-  tools, settings, about, exit always available.
-  If there's remove and add operations at same time, always remove first
-  to keep to the correct menu items order.
-  */
-void FbFileView::updateOptionMenu()
-{
-    bool isFileItemListEmpty = mFbFileModel->rowCount() == 0;
-    bool isNormalModeActive = true;       //iModel->FileUtils()->IsNormalModeActive();
-    bool isCurrentDriveReadOnly = mEngineWrapper->isCurrentDriveReadOnly();   //iModel->FileUtils()->IsCurrentDriveReadOnly();
-    bool isCurrentItemDirectory = mEngineWrapper->getFileEntry(currentItemIndex()).isDir();
-    // bool currentSelected = true;    //iContainer->ListBox()->View()->ItemIsSelected(iContainer->ListBox()->View()->CurrentItemIndex());
-    bool isAllSelected = mListView->selectionModel()->selection().count() == mFbFileModel->rowCount();
-    //bool isNoneSelected = mListView->selectionModel()->selection().count() != 0;
-    bool hasSelectedItems = mListView->selectionModel()->selection().count() != 0;
-    bool isSelectionMode = mOptionMenuActions.mSelection && mOptionMenuActions.mSelection->isChecked();
-    bool isClipBoardEmpty = !mEngineWrapper->isClipBoardListInUse();
-    //bool showSnapShot = false;           //iModel->FileUtils()->DriveSnapShotPossible();
-
-    bool showEditMenu(true);
-    if (isFileItemListEmpty && isClipBoardEmpty)
-        showEditMenu = false;
-    else
-        showEditMenu = true;
-
-    mOptionMenuActions.mEditMenu->menuAction()->setVisible(showEditMenu);
-
-    //mOptionMenuActions.mFileBackMoveUp->setVisible( !isDriveListViewActive);
-
-    //aMenuPane->SetItemDimmed(EFileBrowserCmdFileView, isFileItemListEmpty || !hasSelectedItems || isCurrentItemDirectory);
-    //aMenuPane->SetItemDimmed(EFileBrowserCmdFileEdit, isFileItemListEmpty || !hasSelectedItems || isCurrentItemDirectory);
-    //aMenuPane->SetItemDimmed(EFileBrowserCmdFileSendTo, isFileItemListEmpty || driveListActive || isCurrentItemDirectory);
-
-    mOptionMenuActions.mFileNewMenu->menuAction()->setVisible(!isCurrentDriveReadOnly);
-    mOptionMenuActions.mFileDelete->setVisible(!isFileItemListEmpty && !isCurrentDriveReadOnly && hasSelectedItems/*isSelectionMode*/);
-    mOptionMenuActions.mFileRename->setVisible(!isFileItemListEmpty && !isCurrentDriveReadOnly && hasSelectedItems/*&& isSelectionMode*/);
-    mOptionMenuActions.mFileTouch->setVisible(!isFileItemListEmpty && !isCurrentDriveReadOnly && hasSelectedItems);
-
-    // TODO mOptionMenuActions.mFileChecksumsMenu->setVisible(!(isFileItemListEmpty || !hasSelectedItems || isCurrentItemDirectory));
-    // TODO mOptionMenuActions.mFileSetAttributes->setVisible(!(isFileItemListEmpty || isCurrentDriveReadOnly));
-    // TODO mOptionMenuActions.mFileCompress->setVisible(!(isCurrentDriveReadOnly || isFileItemListEmpty || !hasSelectedItems || isCurrentItemDirectory));
-    // TODO mOptionMenuActions.mFileDecompress->setVisible(!(isCurrentDriveReadOnly || isFileItemListEmpty || !hasSelectedItems || isCurrentItemDirectory));
-
-    mOptionMenuActions.mEditCut->setVisible(!isFileItemListEmpty && !isCurrentDriveReadOnly && isSelectionMode);
-    mOptionMenuActions.mEditCopy->setVisible(!isFileItemListEmpty && isSelectionMode);
-    mOptionMenuActions.mEditPaste->setVisible(!(isClipBoardEmpty || isCurrentDriveReadOnly));
-    mOptionMenuActions.mEditCopyToFolder->setVisible(!isFileItemListEmpty);
-    mOptionMenuActions.mEditMoveToFolder->setVisible(!(isCurrentDriveReadOnly || isFileItemListEmpty));
-
-    mOptionMenuActions.mEditSelect->setVisible(false/*!currentSelected && !isFileItemListEmpty*/);
-    mOptionMenuActions.mEditUnselect->setVisible(false/*currentSelected && !isFileItemListEmpty*/);
-    mOptionMenuActions.mEditSelectAll->setVisible(isSelectionMode && !isAllSelected && !isFileItemListEmpty);
-    mOptionMenuActions.mEditUnselectAll->setVisible(hasSelectedItems && !isFileItemListEmpty);
-
-    // TODO mOptionMenuActions.mViewSort->setVisible(!(!isNormalModeActive || isFileItemListEmpty));
-    // TODO mOptionMenuActions.mViewOrder->setVisible(!(!isNormalModeActive  || isFileItemListEmpty));
-    mOptionMenuActions.mViewRefresh->setVisible(isNormalModeActive);
-    mOptionMenuActions.mViewFilterEntries->setVisible(!isFileItemListEmpty);
-
-    // TODO R_FILEBROWSER_VIEW_SORT_SUBMENU
-    // aMenuPane->SetItemButtonState(iModel->FileUtils()->SortMode(), EEikMenuItemSymbolOn);
-
-    // TODO R_FILEBROWSER_VIEW_ORDER_SUBMENU
-    // aMenuPane->SetItemButtonState(iModel->FileUtils()->OrderMode(), EEikMenuItemSymbolOn);
-
-    // aResourceId == R_FILEBROWSER_TOOLS_SUBMENU
-    bool noExtendedErrorsAllowed = mEngineWrapper->ErrRdFileExists();
-    mOptionMenuActions.mToolsDisableExtendedErrors->setVisible(noExtendedErrorsAllowed);
-    mOptionMenuActions.mToolsEnableExtendedErrors->setVisible(!noExtendedErrorsAllowed);
-
-//    bool infraRedAllowed = mEngineWrapper->FileExists(KIRAppPath);
-//    bool bluetoothAllowed = mEngineWrapper->FileExists(KBTAppPath);
-//    bool usbAllowed = mEngineWrapper->FileExists(KUSBAppPath);
-//
-//    bool noLocalCon = !infraRedAllowed && !bluetoothAllowed && !usbAllowed;
-//    mOptionMenuActions.mToolsLocalConnectivityMenu->menuAction()->setVisible(!noLocalCon);
-//
-//    mOptionMenuActions.mToolsLocalConnectivityActivateInfrared->setVisible(infraRedAllowed);
-//    mOptionMenuActions.mToolsLocalConnectivityLaunchBTUI->setVisible(bluetoothAllowed);
-//    mOptionMenuActions.mToolsLocalConnectivityLaunchUSBUI->setVisible(usbAllowed);
-}
-
-void FbFileView::createContextMenu()
-{
-    mContextMenu = new HbMenu();
-    connect(mContextMenu, SIGNAL(aboutToShow()), this, SLOT(updateContextMenu()));
-
-    createFileContextMenu();
-    createEditContextMenu();
-    createViewContextMenu();
-}
-
-
-void FbFileView::createFileContextMenu()
-{
-    mContextMenuActions.mFileMenu = mContextMenu->addMenu("File");
-
-    //mContextMenuActions.mFileBackMoveUp = mContextMenuActions.mFileMenu->addAction("Back/Move up (<-)", this, SLOT(fileBackMoveUp()));
-    mContextMenuActions.mFileOpenDirectory = mContextMenuActions.mFileMenu->addAction("Open directory (->)", this, SLOT(fileOpenDirectory()));
-//    mContextMenuActions.mFileSearch = mContextMenuActions.mFileMenu->addAction("Search...", this, SLOT(fileSearch()));
-    //mContextMenuActions.mFileSearch->setVisible(false);
-
-    mContextMenuActions.mFileDelete = mContextMenuActions.mFileMenu->addAction("Delete", this, SLOT(fileDelete()));
-    mContextMenuActions.mFileRename = mContextMenuActions.mFileMenu->addAction("Rename", this, SLOT(fileRename()));
-    mContextMenuActions.mFileTouch = mContextMenuActions.mFileMenu->addAction("Touch", this, SLOT(fileTouch()));
-    mContextMenuActions.mFileProperties = mContextMenuActions.mFileMenu->addAction("Properties", this, SLOT(fileProperties()));
-
-    mContextMenuActions.mFileChecksumsMenu = mContextMenuActions.mFileMenu->addMenu("Checksums");
-    mContextMenuActions.mFileChecksumsMD5 = mContextMenuActions.mFileChecksumsMenu->addAction("MD5", this, SLOT(fileChecksumsMD5()));
-    mContextMenuActions.mFileChecksumsMD2 = mContextMenuActions.mFileChecksumsMenu->addAction("MD2", this, SLOT(fileChecksumsMD2()));
-    mContextMenuActions.mFileChecksumsSHA1 = mContextMenuActions.mFileChecksumsMenu->addAction("SHA-1", this, SLOT(fileChecksumsSHA1()));
-
-//    mContextMenuActions.mFileSetAttributes = mContextMenuActions.mFileMenu->addAction("Set attributes...", this, SLOT(fileSetAttributes()));
-//    mContextMenuActions.mFileSetAttributes->setVisible(false);
-}
-
-void FbFileView::createEditContextMenu()
-{
-    mContextMenuActions.mEditMenu = mContextMenu->addMenu("Edit");
-
-    //mContextMenuActions.mEditSnapShotToE = mContextMenuActions.mEditMenu->addAction("Snap shot to E:", this, SLOT(editSnapShotToE()));
-//    mContextMenuActions.mEditSnapShotToE->setVisible(false);
-    mContextMenuActions.mEditCut = mContextMenuActions.mEditMenu->addAction("Cut", this, SLOT(editCut()));
-    mContextMenuActions.mEditCopy = mContextMenuActions.mEditMenu->addAction("Copy", this, SLOT(editCopy()));
-    mContextMenuActions.mEditPaste = mContextMenuActions.mEditMenu->addAction("Paste", this, SLOT(editPaste()));
-
-    mContextMenuActions.mEditCopyToFolder = mContextMenuActions.mEditMenu->addAction("Copy to folder...", this, SLOT(editCopyToFolder()));
-    mContextMenuActions.mEditMoveToFolder = mContextMenuActions.mEditMenu->addAction("Move to folder...", this, SLOT(editMoveToFolder()));
-}
-
-void FbFileView::createViewContextMenu()
-{
-
-}
-
-void FbFileView::updateContextMenu()
-{
-    bool isFileItemListEmpty = mFbFileModel->rowCount() == 0;
-    bool isDriveListViewActive = mEngineWrapper->isDriveListViewActive();
-//    bool isNormalModeActive = true;       //iModel->FileUtils()->IsNormalModeActive();
-    bool isCurrentDriveReadOnly = mEngineWrapper->isCurrentDriveReadOnly();
-    bool isCurrentItemDirectory = mEngineWrapper->getFileEntry(currentItemIndex()).isDir();
-    bool hasSelectedItems = mListView->selectionModel()->selection().count() != 0;
-    bool isSelectionMode = mOptionMenuActions.mSelection && mOptionMenuActions.mSelection->isChecked();
-    bool isClipBoardEmpty = !mEngineWrapper->isClipBoardListInUse();
-
-    // File submenu
-    //mContextMenuActions.mFileBackMoveUp->setVisible( !isDriveListViewActive);
-    mContextMenuActions.mFileOpenDirectory->setVisible( !isFileItemListEmpty && !isDriveListViewActive && isCurrentItemDirectory);
-
-    mContextMenuActions.mFileDelete->setVisible(!isFileItemListEmpty && !isDriveListViewActive && !isCurrentDriveReadOnly);
-    mContextMenuActions.mFileRename->setVisible(!isFileItemListEmpty && !isDriveListViewActive && !isCurrentDriveReadOnly);
-    mContextMenuActions.mFileTouch->setVisible(!isFileItemListEmpty && !isDriveListViewActive && !isCurrentDriveReadOnly);
-    mContextMenuActions.mFileProperties->setVisible(!isFileItemListEmpty && !isSelectionMode);
-
-    mContextMenuActions.mFileChecksumsMenu->menuAction()->setVisible(!(isFileItemListEmpty || isSelectionMode /*|| !hasSelectedItems*/ || isCurrentItemDirectory || isDriveListViewActive));
-    // Edit submenu
-    mContextMenuActions.mEditMenu->menuAction()->setVisible(!isDriveListViewActive);
-    mContextMenuActions.mEditCut->setVisible(!(isDriveListViewActive || isCurrentDriveReadOnly || isFileItemListEmpty));
-    mContextMenuActions.mEditCopy->setVisible(!(isDriveListViewActive || isFileItemListEmpty));
-    mContextMenuActions.mEditPaste->setVisible(!isDriveListViewActive && !isClipBoardEmpty && !isCurrentDriveReadOnly);
-    mContextMenuActions.mEditCopyToFolder->setVisible(!(isDriveListViewActive || isFileItemListEmpty));
-    mContextMenuActions.mEditMoveToFolder->setVisible(!(isDriveListViewActive || isCurrentDriveReadOnly || isFileItemListEmpty));
-}
-
-// ---------------------------------------------------------------------------
-
-void FbFileView::onLongPressed(HbAbstractViewItem *listViewItem, QPointF coords)
-{
-    QModelIndex proxyIndex = listViewItem->modelIndex();
-    //map to source model
-    mCurrentIndex = mSortFilterProxyModel->mapToSource(proxyIndex);
-
-    mContextMenu->setPreferredPos(coords);
-    mContextMenu->show();
-}
-
-/**
-  Create a file browser tool bar
-  */
-void FbFileView::createToolBar()
-{
-    mToolBar = toolBar();
-
-    mToolbarBackAction = new HbAction(mToolBar);
-    mToolbarBackAction->setToolTip("Back");
-    mToolbarBackAction->setIcon(HbIcon(QString(":/qgn_indi_tb_filebrowser_folder_parent.svg")));
-    connect(mToolbarBackAction, SIGNAL(triggered()), this, SLOT(fileBackMoveUp()));
-    mToolBar->addAction(mToolbarBackAction);
-
-    // Find button and its extension
-    HbToolBarExtension* filterExtension = new HbToolBarExtension();
-    // Set search panel widget
-    mSearchPanel = new HbSearchPanel(filterExtension);
-    mSearchPanel->setMinimumWidth( 360 ); // TODO should be based on layout, screen width
-    connect(mSearchPanel, SIGNAL(criteriaChanged(const QString &)), this, SLOT(filterCriteriaChanged(const QString &)));
-    connect(mSearchPanel, SIGNAL(exitClicked()), filterExtension, SLOT(close()));
-    connect(mSearchPanel, SIGNAL(exitClicked()), this, SLOT(clearFilterCriteria()));
-    filterExtension->setContentWidget(mSearchPanel);
-
-    HbAction* mToolbarFilterAction = mToolBar->addExtension(filterExtension);
-//    mToolbarFilterAction->setText("Filter");
-    mToolbarFilterAction->setToolTip("Filter");
-    mToolbarFilterAction->setIcon(HbIcon(QString(":/qgn_indi_tb_filebrowser_find.svg")));
-    //connect(mToolbarFilterAction, SIGNAL(triggered()), this, SLOT(viewFilterEntries()));
-
-    if (mOptionMenuActions.mSelection) {
-        //mOptionMenuActions.mSelection->setIcon(HbIcon(QString(":/qgn_indi_tb_filebrowser_selection_active.svg")));
-        mToolBar->addAction(mOptionMenuActions.mSelection);
-    }
-
-//    // TODO Paste to be added
-//    if (mOptionMenuActions.mEditPaste) {
-//        //mOptionMenuActions.mEditPaste->setIcon(HbIcon(QString(":/qgn_indi_tb_filebrowser_selection_active.svg")));
-//        mToolBar->addAction(mOptionMenuActions.mEditPaste);
-//    }
-}
-
-/**
-  Refresh FileBrowser view
-  */
-void FbFileView::refreshList()
-{
-    editUnselectAll();
-    mEngineWrapper->refreshView();
-    mSearchPanel->setCriteria(QString(""));
-    mListView->model()->revert();
-    mListView->reset();
-
-    if (mListView->model() && mListView->model()->rowCount() > 0) {
-        QModelIndex firstIndex = mListView->model()->index(0, 0);
-        mListView->scrollTo(firstIndex);
-    }
-
-    TListingMode listingMode = mEngineWrapper->listingMode();
-    if (listingMode == ENormalEntries)
-        mNaviPane->setPlainText(QString(mEngineWrapper->currentPath()));
-    else if (listingMode == ESearchResults)
-        mNaviPane->setPlainText(QString(tr("Search results")));
-    else if (listingMode == EOpenFiles)
-        mNaviPane->setPlainText(QString(tr("Open files")));
-    else if (listingMode == EMsgAttachmentsInbox)
-        mNaviPane->setPlainText(QString(tr("Attachments in Inbox")));
-    else if (listingMode == EMsgAttachmentsDrafts)
-        mNaviPane->setPlainText(QString(tr("Attachments in Drafts")));
-    else if (listingMode == EMsgAttachmentsSentItems)
-        mNaviPane->setPlainText(QString(tr("Attachments in Sent Items")));
-    else if (listingMode == EMsgAttachmentsOutbox)
-        mNaviPane->setPlainText(QString(tr("Attachments in Outbox")));
-}
-
-// ---------------------------------------------------------------------------	
-
-void FbFileView::fileOpen(HbAction *action)
-{
-//    Q_UNUSED(action);
-    HbSelectionDialog *dlg = static_cast<HbSelectionDialog*>(sender());
-    if(!action && dlg && dlg->selectedItems().count()){
-        int selectionIndex = dlg->selectedItems().at(0).toInt();
-
-        if (selectionIndex == 0) {
-            // open editor view
-            emit aboutToShowEditorView(mAbsoluteFilePath, true);
-        } else if (selectionIndex == 1) {
-            // AppArc
-            mEngineWrapper->openAppArc(mAbsoluteFilePath);
-        } else {
-            // DocHandler
-            mEngineWrapper->openDocHandler(mAbsoluteFilePath, true);
-        }
-    }
-}
-
-/**
-  Open overwrite dialog
-  */
-void FbFileView::fileOverwriteDialog()
-{
-    mOverwriteOptions = OverwriteOptions();
-    // open user-dialog to select: view as text/hex,  open w/AppArc or open w/DocH. embed
-    QStringList list;
-    list << QString("Overwrite all")
-         << QString("Skip all existing")
-         << QString("Gen. unique filenames")
-         << QString("Query postfix");
-    openListDialog(list, QString("Overwrite?"), this, SLOT(fileOverwrite(HbAction *)));
-}
-
-/**
-  File overwrite
-  */
-void FbFileView::fileOverwrite(HbAction *action)
-{
-    HbSelectionDialog *dlg = static_cast<HbSelectionDialog*>(sender());
-    if(!action && dlg && dlg->selectedItems().count()) {
-        mOverwriteOptions.queryIndex = dlg->selectedItems().at(0).toInt();
-        if (mOverwriteOptions.queryIndex == EFileActionQueryPostFix) {
-            QString heading = QString("Postfix");
-            HbInputDialog::getText(heading, this, SLOT(fileOverwritePostfix(HbAction *)), QString(), scene());
-        } else if (mOverwriteOptions.queryIndex == EFileActionSkipAllExisting) {
-            mOverwriteOptions.overWriteFlags = 0;
-        }
-    } else {
-        mOverwriteOptions.doFileOperations = false;
-    }
-}
-
-/**
-  File overwrite postfix query dialog
-  */
-void FbFileView::fileOverwritePostfix(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        mOverwriteOptions.postFix = dlg->value().toString();
-    } else {
-        mOverwriteOptions.doFileOperations = false;
-    }
-}
-
-// ---------------------------------------------------------------------------
-/**
-  Show a list dialog
-  \param List aList of item to select item from.
-  \param Title text titleText of a dialog heading widget
-  \return None
-  */
-void FbFileView::openListDialog(const QStringList& items, const QString &titleText, QObject* receiver, const char* member)
-{
-    // Create a list and some simple content for it
-    HbSelectionDialog *dlg = new HbSelectionDialog();
-    dlg->setAttribute(Qt::WA_DeleteOnClose);
-    // Set items to be popup's content
-    dlg->setStringItems(items);
-    dlg->setSelectionMode(HbAbstractItemView::SingleSelection);
-
-    HbLabel *title = new HbLabel(dlg);
-    title->setPlainText(titleText);
-    dlg->setHeadingWidget(title);
-
-    // Launch popup and handle the user response:
-    dlg->open(receiver, member);
-}
-
-// ---------------------------------------------------------------------------
-
-void FbFileView::openPropertyDialog(const QStringList& propertyList, const QString& title)
-{
-    HbDialog *dialog = new HbDialog();
-    dialog->setDismissPolicy(HbPopup::TapOutside);
-    dialog->setTimeout(HbPopup::NoTimeout);
-
-    HbLabel *titleWidget = new HbLabel();
-    titleWidget->setPlainText(title);
-    dialog->setHeadingWidget(titleWidget);
-
-    // Create a list and some simple content for it
-    HbListWidget *list = new HbListWidget();
-    QString str;
-    foreach (str, propertyList) {
-        list->addItem(str);
-    }
-
-    // Connect list item activation signal to close the popup
-    connect(list, SIGNAL(activated(HbListWidgetItem*)), dialog, SLOT(close()));
-
-    HbAction *cancelAction = new HbAction("Close");
-    dialog->setPrimaryAction(cancelAction);
-
-    // Set listwidget to be popup's content
-    dialog->setContentWidget(list);
-    // Launch popup and handle the user response:
-    dialog->open();
-}
-
-/**
-  Stores selection or current index mapped to source model
-  */
-void FbFileView::storeSelectedItemsOrCurrentItem()
-{
-    QItemSelectionModel *selectionIndexes = mListView->selectionModel();
-
-    // by default use selected items
-    if (selectionIndexes) {
-        if (selectionIndexes->hasSelection()) {
-            QItemSelection proxyItemSelection = mListView->selectionModel()->selection();
-            QItemSelection itemSelection = mSortFilterProxyModel->mapSelectionToSource(proxyItemSelection);
-            mSelectionIndexes = itemSelection.indexes();
-        } else { // or if none selected, use the current item index
-            mSelectionIndexes.clear();
-            QModelIndex currentIndex = currentItemIndex();  //alreade mapped to source model
-            mSelectionIndexes.append(currentIndex);
-        }
-    }
-}
-
-// ---------------------------------------------------------------------------
-
-QModelIndex FbFileView::currentItemIndex()
-{
-    return mCurrentIndex;
-}
-
-// ---------------------------------------------------------------------------
-// operations in File Menu
-// ---------------------------------------------------------------------------
-
-/**
-  Move back/up in folder browsing history
-  */
-void FbFileView::fileBackMoveUp()
-{
-    mLocationChanged = true;
-    mEngineWrapper->moveUpOneLevel();
-    //mListView->setRootIndex(currentItemIndex());
-    refreshList();
-    if (mEngineWrapper->isDriveListViewActive()) {
-        emit aboutToShowDriveView();
-    }
-}
-
-void FbFileView::fileOpenDirectory()
-{
-    mLocationChanged = true;
-    // get selected drive or directory from list view model and open it:
-    //if (mListView->selectionModel()->hasSelection()) {
-//    if (mListView->selectionModel()->selection().count() != 0) {
-//        QModelIndex currentIndex = currentItemIndex();
-        mEngineWrapper->moveDownToDirectory(currentItemIndex());
-//        mListView->setRootIndex(currentItemIndex());
-        refreshList();
-//    } else {
-//        Notifications::showErrorNote("not selected item!");
-//    }
-}
-
-void FbFileView::fileSearch()
-{
-    QString searchPath;
-//    if (mEngineWrapper->currentPath() != mInitDirPath.path()) {
-//        searchPath = mDirectory;
-//        searchPath.replace("/", "\\");
-//        searchPath+="\\";
-//    }
-    searchPath = mEngineWrapper->currentPath();
-//    mSearch->open(searchPath);
-    emit aboutToShowSearchView(searchPath);
-}
-
-/**
-  Open new file dialog
-  */
-void FbFileView::fileNewFile()
-{
-    QString heading = QString("Enter filename");
-    HbInputDialog::getText(heading, this, SLOT(doFileNewFile(HbAction*)), QString(), scene());
-}
-
-/**
-  Create a new file in current directory with a name queried from user
-  */
-void FbFileView::doFileNewFile(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        QString newFileName = dlg->value().toString();
-        mEngineWrapper->createNewFile(newFileName);
-        refreshList();
-    }
-}
-
-/**
-  Open new directory dialog
-  */
-void FbFileView::fileNewDirectory()
-{
-    QString heading = QString("Enter directory name");
-    HbInputDialog::getText(heading, this, SLOT(doFileNewDirectory(HbAction*)), QString(), scene());
-}
-
-/**
-  Create a new directory in current directory with a name queried from user
-  */
-void FbFileView::doFileNewDirectory(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        QString newDirectoryName = dlg->value().toString();
-        mEngineWrapper->createNewDirectory(newDirectoryName);
-        refreshList();
-    }
-}
-
-/**
-  Question for Delete actually selected files
-  */
-void FbFileView::fileDelete()
-{
-    storeSelectedItemsOrCurrentItem();
-    const QString messageFormat = "Delete %1 entries?";
-    QString message = messageFormat.arg(mSelectionIndexes.count());
-    HbMessageBox::question(message, this, SLOT(doFileDelete(HbAction*)));
-}
-
-/**
-  Delete actually selected files
-  */
-void FbFileView::doFileDelete(HbAction* action)
-{
-    if (action && action->text().compare(QString("Yes"), Qt::CaseInsensitive) == 0) {
-        //storeSelectedItemsOrCurrentItem();
-        mEngineWrapper->deleteItems(mSelectionIndexes);
-        refreshList();
-    }
-}
-
-/**
-  Open rename dialog for actually selected files
-  */
-void FbFileView::fileRename()
-{
-    storeSelectedItemsOrCurrentItem();
-    mEngineWrapper->setCurrentSelection(mSelectionIndexes);
-
-    for (int i(0), ie(mSelectionIndexes.count()); i < ie; ++i ) {
-        mProceed = (i == ie-1); // if the last item
-        mModelIndex = mSelectionIndexes.at(i);
-        FileEntry entry = mEngineWrapper->getFileEntry(mModelIndex);
-
-        QString heading = QString("Enter new name");
-        HbInputDialog::getText(heading, this, SLOT(doFileRename(HbAction*)), entry.name(), scene());
-    }
-}
-
-/**
-  Rename actually selected files
-  */
-void FbFileView::doFileRename(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        mNewFileName = dlg->value().toString();
-
-        if (mEngineWrapper->targetExists(mModelIndex, mNewFileName)) {
-            const QString messageTemplate = QString("%1 already exists, overwrite?");
-            QString message = messageTemplate.arg(mNewFileName);
-            HbMessageBox::question(message, this, SLOT(doFileRenameFileExist(HbAction *)));
-        } else {
-            mEngineWrapper->rename(mModelIndex, mNewFileName);
-            if (mProceed) {
-                mEngineWrapper->startExecutingCommands(QString("Renaming"));
-                refreshList();
-            }
-        }
-    }
-}
-
-/**
-  Rename actually selected files
-  */
-void FbFileView::doFileRenameFileExist(HbAction *action)
-{
-    if (action && action->text().compare(QString("Yes"), Qt::CaseInsensitive) == 0) {
-        mEngineWrapper->rename(mModelIndex, mNewFileName);
-        if (mProceed) {
-            mEngineWrapper->startExecutingCommands(QString("Renaming"));
-            refreshList();
-        }
-    }
-}
-
-/**
-  Touch actually selected files
-  */
-void FbFileView::fileTouch()
-{
-    storeSelectedItemsOrCurrentItem();
-    mEngineWrapper->setCurrentSelection(mSelectionIndexes);
-
-    if (mEngineWrapper->selectionHasDirs()) {
-        const QString message = "Recurse touch for all selected dirs?";
-        HbMessageBox::question(message, this, SLOT(doFileTouch(HbAction*)));
-    }
-    else{
-        mEngineWrapper->touch(false);
-        refreshList();
-    }
-}
-
-/**
-  Touch actually selected files
-  */
-void FbFileView::doFileTouch(HbAction* action)
-{
-    bool recurse = false;
-    if (action && action->text().compare(QString("Yes"), Qt::CaseInsensitive) == 0) {
-        recurse = true;
-        }
-    mEngineWrapper->touch(recurse);
-    refreshList();
-}
-
-void FbFileView::fileChecksumsMD5()
-{
-    fileChecksums(EFileChecksumsMD5);
-}
-
-void FbFileView::fileChecksumsMD2()
-{
-    fileChecksums(EFileChecksumsMD2);
-}
-
-void FbFileView::fileChecksumsSHA1()
-{
-    fileChecksums(EFileChecksumsSHA1);
-}
-
-void FbFileView::fileChecksums(TFileBrowserCmdFileChecksums checksumType)
-{
-    mEngineWrapper->showFileCheckSums(currentItemIndex(), checksumType);
-}
-
-/**
-  Show file properties
-  */
-void FbFileView::fileProperties()
-{
-    QModelIndex currentIndex = currentItemIndex();
-    QStringList propertyList;
-    QString titleText;
-    mEngineWrapper->properties(currentIndex, propertyList, titleText);
-    openPropertyDialog(propertyList, titleText);
-}
-
-void FbFileView::fileSetAttributes()
-{
-
-}
-
-// edit menu
-void FbFileView::editSnapShotToE()
-{
-
-}
-
-/**
-  Set selected files into clipboard.
-  Selected item will be removed after paste operation.
-  */
-void FbFileView::editCut()
-{
-    storeSelectedItemsOrCurrentItem();
-
-    // Store indices to clipboard
-    mClipboardIndexes.clear();
-    for (int i = 0; i < mSelectionIndexes.size(); ++i) {
-        mClipboardIndexes.append(mSelectionIndexes.at(i));
-    }
-
-    mEngineWrapper->clipboardCut(mClipboardIndexes);
-
-    int operations = mClipboardIndexes.count();
-    const QString message = QString ("%1 entries cut to clipboard");
-    QString noteMsg = message.arg(operations);
-
-    Notifications::showInformationNote(noteMsg);
-}
-
-/**
-  Set selected files into clipboard.
-  Selected item will not be removed after paste operation.
-  */
-void FbFileView::editCopy()
-{
-    storeSelectedItemsOrCurrentItem();
-
-    // Store indices to clipboard
-    mClipboardIndexes.clear();
-    for (int i = 0; i < mSelectionIndexes.size(); ++i) {
-        mClipboardIndexes.append(mSelectionIndexes.at(i));
-    }
-
-    mEngineWrapper->clipboardCopy(mClipboardIndexes);
-
-    int operations = mClipboardIndexes.count();
-
-    const QString message = QString ("%1 entries copied to clipboard");
-    QString noteMsg = message.arg(operations);
-
-    Notifications::showInformationNote(noteMsg);
-}
-
-/**
-  Moves or copies file selection stored in clipboard to a actual directory.
-  Removing files depend on previous operation, i.e. Cut or Copy
-  */
-void FbFileView::editPaste()
-{
-    bool someEntryExists(false);
-
-    // TODO Set entry items here
-
-    someEntryExists = mEngineWrapper->isDestinationEntriesExists(mClipboardIndexes, mEngineWrapper->currentPath());
-    if (someEntryExists) {
-        fileOverwriteDialog();
-    }
-    
-    mEngineWrapper->clipboardPaste(mOverwriteOptions);
-}
-
-/**
-  Open copy to folder new filename dialog
-  */
-void FbFileView::editCopyToFolder()
-{
-    QString heading = QString("Enter new name");
-    HbInputDialog::getText(heading, this, SLOT(doEditCopyToFolder(HbAction*)), mEngineWrapper->currentPath(), scene());
-}
-
-/**
-  Copies current file selection to a queried directory.
-  */
-void FbFileView::doEditCopyToFolder(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        QString targetDir = dlg->value().toString();
-        bool someEntryExists(false);
-
-        // TODO Set entry items here
-        storeSelectedItemsOrCurrentItem();
-        mEngineWrapper->setCurrentSelection(mSelectionIndexes);
-
-        someEntryExists = mEngineWrapper->isDestinationEntriesExists(mSelectionIndexes, targetDir);
-        if (someEntryExists) {
-            fileOverwriteDialog();
-        }
-        mEngineWrapper->copyToFolder(targetDir, mOverwriteOptions, false);
-        refreshList();
-    }
-}
-
-/**
-  Open move to folder new filename dialog.
-  */
-void FbFileView::editMoveToFolder()
-{
-    QString heading = QString("Enter new name");
-    HbInputDialog::getText(heading, this, SLOT(doEditMoveToFolder(HbAction*)), mEngineWrapper->currentPath(), scene());
-}
-
-/**
-  Moves current file selection to a queried directory.
-  */
-void FbFileView::doEditMoveToFolder(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        QString targetDir = dlg->value().toString();
-        bool someEntryExists(false);
-
-        // TODO Set entry items here
-        storeSelectedItemsOrCurrentItem();
-        mEngineWrapper->setCurrentSelection(mSelectionIndexes);
-
-        someEntryExists = mEngineWrapper->isDestinationEntriesExists(mSelectionIndexes, targetDir);
-        if (someEntryExists) {
-            fileOverwriteDialog();
-        }
-        mEngineWrapper->copyToFolder(targetDir, mOverwriteOptions, true);
-        refreshList();
-    }
-}
-
-/**
-  Select current file
-  */
-void FbFileView::editSelect()
-{
-    QItemSelectionModel *selectionModel = mListView->selectionModel();
-    if (selectionModel) {
-        selectionModel->select(selectionModel->currentIndex(), QItemSelectionModel::SelectCurrent);
-        selectionModel->select(selectionModel->currentIndex(), QItemSelectionModel::Select);
-//        itemHighlighted(selectionModel->currentIndex());
-        refreshList();
-    }
-}
-
-/**
-  Unselect current file
-  */
-void FbFileView::editUnselect()
-{
-    QItemSelectionModel *selectionModel = mListView->selectionModel();
-    if (selectionModel) {
-        selectionModel->select(selectionModel->currentIndex(), QItemSelectionModel::Deselect);
-//        itemHighlighted(selectionModel->currentIndex());
-    }
-}
-
-/**
-  Select all files
-  */
-void FbFileView::editSelectAll()
-{
-    QItemSelectionModel *selectionModel = mListView->selectionModel();
-    if (selectionModel) {
-
-        //if (mFileBrowserModel->rowCount() > 0) {
-        if (mListView->model() && mListView->model()->rowCount() > 0) {
-            QModelIndex firstIndex = mListView->model()->index(0, 0);
-            QModelIndex lastIndex = mListView->model()->index( (mListView->model()->rowCount() - 1), 0);
-
-            QItemSelection itemSelection(firstIndex, lastIndex);
-            selectionModel->select(itemSelection, QItemSelectionModel::SelectCurrent);
-        }
-    }
-}
-
-/**
-  Unselect all files
-  */
-void FbFileView::editUnselectAll()
-{
-    QItemSelectionModel *selectionModel = mListView->selectionModel();
-    if (selectionModel) {
-        selectionModel->clearSelection();
-    }
-}
-
-// ---------------------------------------------------------------------------
-// view menu
-// ---------------------------------------------------------------------------
-void FbFileView::viewFilterEntries()
-{
-    if (mToolBar && mToolBar->actions().count() > 1 && mToolBar->actions().at(1)) {
-        HbAction* tbeFilterAction = qobject_cast<HbAction*>(mToolBar->actions().at(1));
-        if (tbeFilterAction && tbeFilterAction->toolBarExtension()) {
-            HbToolBarExtension *tbeFilter = tbeFilterAction->toolBarExtension();
-            tbeFilter->open();
-        }
-    }
-}
-
-/**
-  Set filter criteria to proxy model
-  */
-void FbFileView::filterCriteriaChanged(const QString &criteria)
-{
-    mSortFilterProxyModel->setFilterCriteria(criteria);
-}
-
-/**
-  Set filter criteria to proxy model
-  */
-void FbFileView::clearFilterCriteria()
-{
-    mSearchPanel->setCriteria(QString(""));
-}
-
-/**
-  Refresh view
-  */
-void FbFileView::viewRefresh()
-{
-    refreshList();
-}
-
-// ---------------------------------------------------------------------------
-// tools menu
-// ---------------------------------------------------------------------------
-void FbFileView::toolsAllAppsToTextFile()
-{
-
-}
-
-/**
-  Write all files to text file
-  */
-void FbFileView::toolsAllFilesToTextFile()
-{
-    mEngineWrapper->toolsWriteAllFiles();
-}
-
-//void FbFileView::toolsAvkonIconCacheEnable()
-//{
-//
-//}
-//void FbFileView::toolsAvkonIconCacheDisable()
-//{
-//
-//}
-
-/**
-  Disable extended errors
-  */
-void FbFileView::toolsDisableExtendedErrors()
-{
-    mEngineWrapper->ToolsSetErrRd(false);
-}
-
-void FbFileView::toolsDumpMsgStoreWalk()
-{
-
-}
-void FbFileView::toolsEditDataTypes()
-{
-
-}
-
-/**
-  Enable extended errors
-  */
-void FbFileView::toolsEnableExtendedErrors()
-{
-    mEngineWrapper->ToolsSetErrRd(true);
-}
-
-/**
-  Open simulate leave dialog
-  */
-void FbFileView::toolsErrorSimulateLeave()
-{
-    int leaveCode = -6;
-    QString heading = QString("Leave code");
-    //HbInputDialog::getInteger(heading, this, SLOT(doToolsErrorSimulateLeave(HbAction*)), leaveCode, scene());
-    HbInputDialog::getText(heading, this, SLOT(doToolsErrorSimulateLeave(HbAction*)), QString::number(leaveCode), scene());
-}
-
-
-/**
-  Simulate leave.
-  */
-void FbFileView::doToolsErrorSimulateLeave(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        bool ok;
-        int leaveCode = dlg->value().toString().toInt(&ok);
-        if (leaveCode != 0 || ok) {
-            mEngineWrapper->ToolsErrorSimulateLeave(leaveCode);
-        }
-    }
-}
-
-/**
-  Open simulate panic dialog.
-  */
-void FbFileView::toolsErrorSimulatePanic()
-{
-    mPanicCategory = QString ("Test Category");
-    QString heading = QString("Panic category");
-    HbInputDialog::getText(heading, this, SLOT(doToolsErrorSimulatePanicCode(HbAction*)), mPanicCategory, scene());
-}
-
-/**
-  Simulate panic.
-  */
-void FbFileView::doToolsErrorSimulatePanicCode(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        mPanicCategory = dlg->value().toString();
-        int panicCode(555);
-        QString heading = QString("Panic code");
-        HbInputDialog::getInteger(heading, this, SLOT(doToolsErrorSimulatePanic(HbAction*)), panicCode, scene());
-    }
-}
-
-/**
-  Simulate panic.
-  */
-void FbFileView::doToolsErrorSimulatePanic(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        bool ok;
-        int panicCode = dlg->value().toInt(&ok);
-        if (panicCode != 0 || ok) {
-            mEngineWrapper->ToolsErrorSimulatePanic(mPanicCategory, panicCode);
-        }
-    }
-}
-
-/**
-  Open simulate exception dialog.
-  */
-void FbFileView::toolsErrorSimulateException()
-{
-    int exceptionCode = 0;
-    QString heading = QString("Exception code");
-    HbInputDialog::getInteger(heading, this, SLOT(doToolsErrorSimulateException(HbAction*)), exceptionCode, scene());
-}
-
-/**
-  Simulate exception.
-  */
-void FbFileView::doToolsErrorSimulateException(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        bool ok;
-        int exceptionCode = dlg->value().toInt(&ok);
-        if (exceptionCode != 0 || ok) {
-            mEngineWrapper->ToolsErrorSimulateException(exceptionCode);
-        }
-    }
-}
-
-//    void FbFileView::toolsLocalConnectivityActivateInfrared()
-//{
-//
-//}
-//    void FbFileView::toolsLocalConnectivityLaunchBTUI()
-//{
-//
-//}
-//    void FbFileView::toolsLocalConnectivityLaunchUSBUI()
-//{
-//
-//}
-void FbFileView::toolsMessageInbox()
-{
-
-}
-void FbFileView::toolsMessageDrafts()
-{
-
-}
-void FbFileView::toolsMessageSentItems()
-{
-
-}
-void FbFileView::toolsMessageOutbox()
-{
-
-}
-void FbFileView::toolsMemoryInfo()
-{
-
-}
-void FbFileView::toolsSecureBackStart()
-{
-
-}
-void FbFileView::toolsSecureBackRestore()
-{
-
-}
-void FbFileView::toolsSecureBackStop()
-{
-
-}
-
-/**
-  Open debug mask dialog
-  */
-void FbFileView::toolsSetDebugMaskQuestion()
-{
-    quint32 dbgMask = mEngineWrapper->getDebugMask();
-    QString dbgMaskText = QString("0x").append(QString::number(dbgMask, 16));
-    QString heading = QString("Kernel debug mask in hex format");
-    HbInputDialog::getText(heading, this, SLOT(toolsSetDebugMask(HbAction*)), dbgMaskText, scene());
-}
-
-/**
-  Set debug mask
-  */
-void FbFileView::toolsSetDebugMask(HbAction *action)
-{
-    HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
-    if (dlg && action && action->text().compare(QString("Ok"), Qt::CaseInsensitive) == 0) {
-        QString dbgMaskText = dlg->value().toString();
-        if (dbgMaskText.length() > 2 && dbgMaskText[0]=='0' && dbgMaskText[1]=='x') {
-            bool ok;
-            quint32 dbgMask = dbgMaskText.toUInt(&ok, 16);
-            if (dbgMask != 0 || ok) {
-                mEngineWrapper->toolsSetDebugMask(dbgMask);
-                Notifications::showConfirmationNote(QString("Changed"));
-            } else {
-                Notifications::showErrorNote(QString("Cannot convert value"));
-            }
-        } else {
-            Notifications::showErrorNote(QString("Not in hex format"));
-        }
-    }
-}
-
-void FbFileView::toolsShowOpenFilesHere()
-{
-
-}
-
-// ---------------------------------------------------------------------------
-// main menu items
-// ---------------------------------------------------------------------------
-void FbFileView::selectionModeChanged()
-{
-    if (mOptionMenuActions.mSelection->isChecked()) {
-         activateSelectionMode();
-     } else {
-         deActivateSelectionMode();
-     }
-}
-
-/**
-  Show about note
-  */
-void FbFileView::about()
-{
-    Notifications::showAboutNote();
-}
-
-// ---------------------------------------------------------------------------
-// End of operations
-// ---------------------------------------------------------------------------
-
-// ---------------------------------------------------------------------------
-
-/**
-  Item is selected from list when selection mode is activated from menu
-  */
-void FbFileView::selectionChanged(const QItemSelection &/*selected*/, const QItemSelection &/*deselected*/)
-{
-    //QItemSelectionModel *selectionModel = mListView->selectionModel();
-    //itemHighlighted(selectionModel->currentIndex());
-}
-
-/**
-  An item is clicked from navigation item list. Navigation item list contains
-  drive-, folder- or file items. Opens selected drive, folder or file popup menu
-  */
-void FbFileView::activated(const QModelIndex& index)
-{
-    if (mFbFileModel) {
-        //map to source model
-        QModelIndex activatedIndex = mSortFilterProxyModel->mapToSource(index);
-
-        if (mEngineWrapper->getFileEntry(activatedIndex).isDir()) {
-            // populate new content of changed navigation view.
-            // mLocationChanged = true;
-            // mDirectory = filePath;
-            mEngineWrapper->moveDownToDirectory(activatedIndex);
-            refreshList();
-        } else {  // file item
-            // mSelectedFilePath = filePath;
-            FileEntry fileEntry = mEngineWrapper->getFileEntry(activatedIndex);
-            mAbsoluteFilePath = fileEntry.path() + fileEntry.name();
-
-            // open user-dialog to select: view as text/hex,  open w/AppArc or open w/DocH. embed
-            QStringList list;
-            list << QString("View as text/hex") << QString("Open w/ AppArc") << QString("Open w/ DocH. embed");
-            openListDialog(list, QString("Open file"), this, SLOT(fileOpen(HbAction *)));
-        }
-    }
-}
-
-// ---------------------------------------------------------------------------
-
-void FbFileView::activateSelectionMode()
-{
-    QString path;
-    disconnect(mListView, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex)));
-    mListView->setSelectionMode(HbListView::MultiSelection);
-
-//    QModelIndex index = mFileSystemModel->index(path,0);
-//    mListView->selectionModel()->setCurrentIndex(index, QItemSelectionModel::SelectCurrent);
-//    mListView->selectionModel()->select(index, QItemSelectionModel::Select);
-//    //mListView->setHighlightMode(HbItemHighlight::HighlightAlwaysVisible);
-//    mListView->setFocus();    // TODO use focus in
-    if (mListView->selectionModel()) {
-        connect(mListView->selectionModel(),
-                SIGNAL(selectionChanged(QItemSelection, QItemSelection)),
-                this,
-                SLOT(selectionChanged(QItemSelection, QItemSelection)));
-//        // flag to indicate that selection mode changed, "edit" sub-menu update needed
-//        mFolderContentChanged = true;
-    }
-}
-
-// ---------------------------------------------------------------------------
-
-void FbFileView::deActivateSelectionMode()
-{
-    disconnect(mListView->selectionModel(),
-               SIGNAL(selectionChanged(QItemSelection, QItemSelection)),
-               this,
-               SLOT(selectionChanged(QItemSelection, QItemSelection)));
-    mListView->setSelectionMode(HbListView::NoSelection);
-    connect(mListView, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex)));
-    editUnselectAll();
-    // flag to indicate that selection mode changed, "edit" sub-menu update needed
-    mFolderContentChanged = true;
-}
-
-// ---------------------------------------------------------------------------