filemanager/src/filemanager/src/fmsplitview.cpp
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 03 May 2010 12:24:39 +0300
changeset 16 ada7962b4308
parent 14 1957042d8c7e
child 18 edd66bde63a4
child 25 b7bfdea70ca2
permissions -rw-r--r--
Revision: 201015 Kit: 201018

/*
* Copyright (c) 2009 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:
*     Zhiqiang Yang <zhiqiang.yang@nokia.com>
* 
* Description:
*     The source file of the split view of file manager
*
*/
#include "fmsplitview.h"
#include "fmfilebrowsewidget.h"
#include "fmdriverlistwidget.h"
#include <QGraphicsLinearLayout>

#include <hbmessagebox.h>
#include <hbmenu.h>
#include <hbaction.h>
#include <hbmainwindow.h>

FmSplitView::FmSplitView() : FmViewBase( ESplitView )
{
    initMenu();
    initMainWidget();

    QMetaObject::connectSlotsByName( this );
}

FmSplitView::~FmSplitView()
{
}

void FmSplitView::on_rotateAction_triggered()
{
	if ( mainWindow()->orientation() == Qt::Vertical ) {
		mainWindow()->setOrientation( Qt::Horizontal );
	}
	else {
		mainWindow()->setOrientation( Qt::Vertical );
	}
}

void FmSplitView::on_normalViewAction_triggered()
{
	mainWindow()->setCurrentView( mainWindow()->viewAt(0) );
}

void FmSplitView::initMenu()
{
    HbAction *action = 0;
#ifdef FM_CHANGE_ORIENT_ENABLE
	action = new HbAction( this );
	action->setObjectName( "rotateAction" );
	action->setText( hbTrId( "Change orientation" ) );
	menu()->addAction( action );
#endif

	action = new HbAction( this );
	action->setObjectName( "normalViewAction" );
	action->setText( hbTrId( "Switch to normal view" ) );
	menu()->addAction( action );
}

void FmSplitView::initMainWidget()
{
	QGraphicsLinearLayout *hLayout = new QGraphicsLinearLayout( this );
	hLayout->setOrientation( Qt::Horizontal );

    mDriverWidget = new FmDriverListWidget( this );
    mDriverWidget->setMaximumWidth( 200.0 );
    hLayout->addItem( mDriverWidget );
     

    mFileWidget = new FmFileBrowseWidget( this, FmFileBrowseWidget::TreeStyle );
    hLayout->addItem( mFileWidget );

    connect( mDriverWidget, SIGNAL( activated( const QString & ) ),
             mFileWidget, SLOT( setRootPath( const QString & ) ) );
}