--- a/mmsharing/mmshui/src/musuiclipsharingview.cpp Thu Aug 19 09:51:39 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,677 +0,0 @@
-/*
-* Copyright (c) 2005 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: The MUS application's UI class.
-*
-*/
-
-
-
-#include "musuiclipsharingview.h"
-#include "musuiclipsharingviewcontainer.h"
-#include "musuibackgroundviewcontainer.h"
-#include "musuiclipsharingcontroller.h"
-#include "musuiactivitymanger.h"
-#include "musuiappui.h"
-#include "musuistatuspanehandler.h"
-#include "musui.hrh"
-#include "musuidefinitions.h"
-#include "muslogger.h" // debug logging
-#include <musui.rsg>
-#include <musui.mbg>
-#include "musuidialogutil.h"
-
-#include <aknViewAppUi.h>
-#include <avkon.hrh>
-#include <eikmenup.h>
-#include <eikbtgpc.h>
-#include <akntoolbar.h>
-
-
-const TInt KMusUiContainerHeight = 50;
-const TInt KDefaultResolutionHeight = 640;
-
-// -----------------------------------------------------------------------------
-// EPOC two-phased constructor
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::ConstructL()
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::ConstructL" );
-
- CMusUiSendView::ConstructL();
-
- Toolbar()->SetToolbarObserver( this );
- Toolbar()->UpdateBackground();
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::ConstructL" );
- }
-
-
-// -----------------------------------------------------------------------------
-// Destructor
-// -----------------------------------------------------------------------------
-//
-CMusUiClipSharingView::~CMusUiClipSharingView()
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::~CMusUiClipSharingView" );
- if ( iContainer )
- {
- AppUi()->RemoveFromViewStack( *this, iContainer );
- }
- delete iContainer;
-
- delete iController;
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::~CMusUiClipSharingView" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-TUid CMusUiClipSharingView::Id() const
- {
- return KMusUidClipSharingView;
- }
-
-// -----------------------------------------------------------------------------
-// From MEikMenuObserver, Called by framework before constructing menupane
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::DynInitMenuPaneL( TInt aResourceId,
- CEikMenuPane* aMenuPane )
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::DynInitMenuPaneL" );
-
-
- // Base class initiated initialization first
- CMusUiGeneralView::DynInitMenuPaneL( aResourceId, aMenuPane );
-
- if(! MUS_NO_TOOLBAR )
- {
- SetInitialFocusedItemL();
- }
-
- if ( aResourceId == R_MUSUI_VIEW_MENU )
- {
-
- // Delete items not related to clip sharing:
- aMenuPane->DeleteMenuItem( EMusuiCmdRecord );
- aMenuPane->DeleteMenuItem( EMusuiCmdStopRecording );
-
- aMenuPane->DeleteMenuItem( EMusuiCmdToolbarZoom );
- aMenuPane->DeleteMenuItem( EMusuiCmdToolbarBrightness );
- aMenuPane->DeleteMenuItem( EMusuiCmdViewZoom );
- aMenuPane->DeleteMenuItem( EMusuiCmdViewBrightness );
- aMenuPane->DeleteMenuItem( EMusuiCmdViewFullScreen );
-
- // Delete EMusuiCmdViewAudioNormal or EMusuiCmdViewAudioMute
- // depending on the audio state of the clip:
- if ( iController->ClipContainsAudioL() )
- {
- aMenuPane->DeleteMenuItem( iController->ClipMutedL() ?
- EMusuiCmdViewAudioMute :
- EMusuiCmdViewAudioNormal );
- }
- else
- {
- aMenuPane->DeleteMenuItem( EMusuiCmdViewAudioMute );
- aMenuPane->DeleteMenuItem( EMusuiCmdViewAudioNormal );
- }
-
- // Delete "Replay" item, if the end of the clip not reached:
- if ( !iController->ClipEnded() )
- {
- aMenuPane->DeleteMenuItem( EMusuiCmdViewReplay );
- }
-
- }
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::DynInitMenuPaneL" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::HandleToolbarCommandL( TInt aCommand )
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::HandleToolbarCommandL" );
-
- __ASSERT_ALWAYS( iController, User::Leave( KErrNotReady ) );
-
- switch ( aCommand )
- {
- case EKeyLeftArrow:
- {
- HandleCommandL(
- iController->ToolbarVolumeSelected() ? EMusuiCmdViewVolumeDown :
- iController->ToolbarFFRevSelected() ? EMusuiCmdViewFastReverse :
- EMusUiCmdToolbarLastIndex );
- break;
- }
- case EKeyRightArrow:
- {
- HandleCommandL(
- iController->ToolbarVolumeSelected() ? EMusuiCmdViewVolumeUp :
- iController->ToolbarFFRevSelected() ? EMusuiCmdViewFastForward :
- EMusUiCmdToolbarLastIndex );
- break;
- }
- case EKeyUpArrow:
- {
- HandleCommandL(
- iController->ToolbarVolumeSelected() ? EMusuiCmdViewVolumeUp :
- iController->ToolbarFFRevSelected() ? EMusuiCmdViewFastForward :
- EMusUiCmdToolbarLastIndex );
- break;
- }
- case EKeyDownArrow:
- {
- HandleCommandL(
- iController->ToolbarVolumeSelected() ? EMusuiCmdViewVolumeDown :
- iController->ToolbarFFRevSelected() ? EMusuiCmdViewFastReverse :
- EMusUiCmdToolbarLastIndex );
- break;
- }
- case EMusuiCmdViewVolumeDown:
- {
- HandleCommandL( EMusuiCmdViewVolumeDown );
- break;
- }
- case EMusuiCmdViewVolumeUp:
- {
- HandleCommandL( EMusuiCmdViewVolumeUp );
- break;
- }
- default:
- {
- break;
- }
- }
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::HandleToolbarCommandL" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::HandleKeyUpEvent( TInt /*aKeyCode*/ )
- {
- TRAP_IGNORE( iController->StopWindingL() )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::SetInitialFocusedItemL()
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::SetInitialFocusedItemL" );
-
- __ASSERT_ALWAYS( iController, User::Leave( KErrNotReady ) );
-
- if ( iOperatorSpecificFunctionality && !AknLayoutUtils::PenEnabled() )
- {
- MUS_LOG( "Focus changed in OPERATOR mode !!!!!!!!!!!!!" );
-
- if ( !( iController->DeviceHasDedicatedVolumeKeys() ) )
- {
- Toolbar()->SetFocusedItemL( EMusuiCmdToolbarVolume );
- }
- else
- {
-
- Toolbar()->SetFocusedItemL( EventControllerL().IsMicMutedL() ?
- EMusuiCmdToolbarUnmute :
- EMusuiCmdToolbarMute );
- }
-
- }
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::SetInitialFocusedItemL" );
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::DynInitToolbarL( TInt aResourceId,
- CAknToolbar* aToolbar )
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::DynInitToolbarL" );
-
- // Items to be removed in Clip Sharing View:
-
-
- if (!AknLayoutUtils::PenEnabled())//(aResourceId == R_MUS_TOOLBAR_NONTOUCH)//
- {
- if ( iController->DeviceHasDedicatedVolumeKeys() )
- {
- aToolbar->RemoveItem( EMusuiCmdToolbarVolume );
- }
- else
- {
- aToolbar->SetFocusedItemL( EMusuiCmdToolbarVolume );
- }
-
- aToolbar->RemoveItem( EMusuiCmdToolbarZoom );
- aToolbar->RemoveItem( EMusuiCmdToolbarBrightness );
- }
-
- Toolbar()->RemoveItem( EMusuiCmdToolbarPauseLive );
- Toolbar()->RemoveItem( EMusuiCmdToolbarUnPauseLive );
- Toolbar()->RemoveItem( EMusuiCmdToolbarFullScreen );
-
-
- if ( iOperatorSpecificFunctionality )
- {
- // Remove pause/unpause functionality in operator variant case
- Toolbar()->RemoveItem( EMusuiCmdToolbarPause );
- Toolbar()->RemoveItem( EMusuiCmdToolbarUnPause );
-
- if ( aToolbar->FocusedItem() == KErrNotFound &&
- !AknLayoutUtils::PenEnabled() )
- {
- aToolbar->SetFocusedItemL( EventControllerL().IsMicMutedL() ?
- EMusuiCmdToolbarUnmute :
- EMusuiCmdToolbarMute );
- }
-
- }
- else
- {
- // Toggled items to be hidden:
- Toolbar()->HideItem( iPauseSelected ?
- EMusuiCmdToolbarPause :
- EMusuiCmdToolbarUnPause,
- ETrue,
- ETrue );
- if ( aToolbar->FocusedItem() == KErrNotFound &&
- !AknLayoutUtils::PenEnabled() )
- {
- aToolbar->SetFocusedItemL( EMusuiCmdToolbarPause );
- }
- Toolbar()->RemoveItem( EMusuiCmdToolbarBlank );
- }
-
- // Last generic base class functionality
- CMusUiGeneralView::DynInitToolbarL( aResourceId, aToolbar );
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::DynInitToolbarL" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::RunFetchDialogL()
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::RunFetchDialogL" );
- iContainer->RunFetchDialogL();
- if ( iContainer->FileSelected() )
- {
- iController->SetFileNameL( iContainer->FetchedFileName() );
- RefreshView();
- }
- else
- {
- if ( SendController() && SendController()->IsAudioRoutingLoudSpeaker() )
- {
- MusUiDialogUtil::ShowGlobalInformationDialogL(
- R_MUS_NOTE_HF_DEACTIVATED );
- }
- MusAppUi()->HandleExit();
- }
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::RunFetchDialogL" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::ShowTranscodingProgressDialogL()
- {
- iContainer->ShowTranscodingProgressDialogL();
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::UpdateClipTranscodingPercentageL( TInt aPercetage )
- {
- iContainer->UpdateClipTranscodingPercentageL( aPercetage );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::CancelTranscodingDialogL()
- {
- iContainer->CancelTranscodingL();
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::UpdateClipPositionL(
- TInt aPositionInSeconds,
- const TDesC& aFormattedPosition )
- {
- MUS_LOG_TDESC( "mus: [MUSUI ] -> CMusUiClipSharingView::UpdateClipPositionL: ",
- aFormattedPosition );
-
- MusAppUi()->MusStatusPane()->SetRightLabelL( aFormattedPosition );
- iContainer->SetPositionValueL( aPositionInSeconds );
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::UpdateClipPositionL" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::SetDurationValue( TInt aDurationValue )
- {
- iContainer->SetDurationValue( aDurationValue );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::SetPositionValueL( TInt aDurationValue )
- {
- iContainer->SetPositionValueL( aDurationValue );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::SetDurationVisible()
- {
- MUS_LOG1( "mus: [MUSUI ] -> CMusUiLiveSharingView::SetDurationVisible: %d",
- iToolbarItemSelected );
- if ( !iToolbarItemSelected )
- {
- iContainer->SetDurationIndicatorVisible( ETrue );
- }
- else
- {
- iContainer->SetDurationIndicatorVisible( EFalse );
- }
- MUS_LOG( "mus: [MUSUI ] <- CMusUiLiveSharingView::SetDurationVisible" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::ReplaceToolbarCommand( TInt aOldCommand,
- TInt aNewCommand,
- TBool aSetNewCommandFocused )
- {
- MUS_LOG1( "mus: [MUSUI ] -> CMusUiClipSharingView::ReplaceToolbarCommand: %d",
- aOldCommand );
- switch ( aOldCommand )
- {
- case EMusuiCmdToolbarPause:
- {
- iPauseSelected = ETrue;
- break;
- }
- case EMusuiCmdToolbarUnPause:
- {
- iPauseSelected = EFalse;
- break;
- }
- default:
- {
- break;
- }
-
- }
-
- // Call base class version for generic part
-
- CMusUiGeneralView::ReplaceToolbarCommand( aOldCommand,
- aNewCommand,
- aSetNewCommandFocused );
-
- MUS_LOG1( "mus: [MUSUI ] <- CMusUiClipSharingView::ReplaceToolbarCommand: %d",
- aOldCommand );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::RefreshView()
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::RefreshView" );
-
- RefreshBackgroundContainer();
-
- if ( iContainer )
- {
- TInt height = MusAppUi()->ApplicationRect().Height();
- MUS_LOG1( "mus: [MUSUI ] -> application rect height: %d", height );
- TInt containerHeight = (KMusUiContainerHeight * height) / KDefaultResolutionHeight;
-
- MUS_LOG1( "mus: [MUSUI ] -> container rect height: %d", containerHeight );
- TRect containerRect(
- ClientRect().iTl.iX,
- ClientRect().iBr.iY - ToolbarPlaceHolderHeight()
- - containerHeight,//KMusUiContainerHeight,
- ClientRect().iBr.iX,
- ClientRect().iBr.iY - ToolbarPlaceHolderHeight() );
-
- if (!AknLayoutUtils::PenEnabled())
- {
- containerRect = TRect(
- ClientRect().iTl.iX,
- ClientRect().iTl.iY,
- ClientRect().iBr.iX,
- ClientRect().iTl.iY + containerHeight );
- }
- iContainer->SetRect( containerRect );
-
- if ( iController )
- {
-
- TRect videoRect( ClientRect().iTl.iX,
- ClientRect().iTl.iY,
- ClientRect().iBr.iX,
- ClientRect().iBr.iY - ToolbarPlaceHolderHeight()
- - iContainer->Size().iHeight );
-
- if (!AknLayoutUtils::PenEnabled())
- {
- TInt dy = iContainer->Size().iHeight;
- videoRect.Move(0, dy);
- }
- iController->SetRect( videoRect );
-
- }
- }
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::RefreshView" );
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::CancelTranscodingL()
- {
- if ( iController )
- {
- iController->CancelTranscodingL();
- }
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-CMusUiSendController* CMusUiClipSharingView::SendController() const
- {
- return iController;
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-CMusUiSendViewContainer* CMusUiClipSharingView::SendContainer() const
- {
- return iContainer;
- }
-
-
-// -----------------------------------------------------------------------------
-// From CAknView, Gets called from framework when activating this view
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::DoActivateL( const TVwsViewId& aPrevViewId,
- TUid aCustomMessageId,
- const TDesC8& aCustomMessage )
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::DoActivateL" );
-
- // Base class activation first
- CMusUiSendView::DoActivateL( aPrevViewId,
- aCustomMessageId,
- aCustomMessage );
-
- TInt height = MusAppUi()->ApplicationRect().Height();
- MUS_LOG1( "mus: [MUSUI ] -> application rect height: %d", height );
- TInt containerHeight = (KMusUiContainerHeight * height) / KDefaultResolutionHeight;
-
- MUS_LOG1( "mus: [MUSUI ] -> container rect height: %d", containerHeight );
- TRect containerRect(
- ClientRect().iTl.iX,
- ClientRect().iBr.iY - ToolbarPlaceHolderHeight()
- - containerHeight,//KMusUiContainerHeight,
- ClientRect().iBr.iX,
- ClientRect().iBr.iY - ToolbarPlaceHolderHeight() );
-
- if (!AknLayoutUtils::PenEnabled())
- {
- containerRect = TRect(
- ClientRect().iTl.iX,
- ClientRect().iTl.iY,
- ClientRect().iBr.iX,
- ClientRect().iTl.iY + containerHeight );
- }
-
- if ( !iContainer )
- {
- MUS_LOG( "mus: [MUSUI ] CMusUiClipSharingView::DoActivateL: !iContainer" );
- iContainer = new ( ELeave ) CMusUiClipSharingViewContainer();
- iContainer->SetMopParent( this );
- iContainer->ConstructL( this, containerRect );
- AppUi()->AddToViewStackL( *this, iContainer );
- }
-
- /* Increase the ordinal position of background container
- * So that other control will be drawn first.
- */
- UpdateBackgroundOrdinalPosition( ETrue );
-
- TRect videoRect( ClientRect().iTl.iX,
- ClientRect().iTl.iY,
- ClientRect().iBr.iX,
- ClientRect().iBr.iY - ToolbarPlaceHolderHeight()
- - iContainer->Size().iHeight );
-
- if (!AknLayoutUtils::PenEnabled())
- {
- TInt dy = iContainer->Size().iHeight;
- videoRect.Move(0, dy);
- }
- if ( !iController )
- {
- MUS_LOG( "mus: [MUSUI ] CMusUiClipSharingView::DoActivateL: !iController" );
- iController = CMusUiClipSharingController::NewL( *MusAppUi(),
- *this,
- *this,
- *this,
- videoRect );
- }
-
- iContainer->SetController( iController );
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::DoActivateL" );
- }
-
-
-// -----------------------------------------------------------------------------
-// From AknView, Gets called from framework when deactivating this view
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::DoDeactivate()
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::DoDeactivate" );
-
- CMusUiSendView::DoDeactivate(); // Base class deactivation first
-
- if ( iContainer )
- {
- AppUi()->RemoveFromViewStack( *this, iContainer );
- delete iContainer;
- iContainer = NULL;
- }
-
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::DoDeactivate" );
- }
-
-// -----------------------------------------------------------------------------
-// When Mmc is removed, dimmed the pause icon on toolbar
-// -----------------------------------------------------------------------------
-//
-void CMusUiClipSharingView::InvalidVideoFrame( TBool aInvalid )
- {
- MUS_LOG( "mus: [MUSUI ] -> CMusUiClipSharingView::InvalidVideoFrame" );
- Toolbar()->SetItemDimmed( iPauseSelected ?
- EMusuiCmdToolbarUnPause :
- EMusuiCmdToolbarPause,
- aInvalid ?
- ETrue :
- EFalse,
- ETrue );
- MUS_LOG( "mus: [MUSUI ] <- CMusUiClipSharingView::InvalidVideoFrame" );
- }
-
-// end of file