--- a/videditor/TrimForMms/inc/VeiTrimForMmsContainer.h Fri Jan 29 14:08:33 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,378 +0,0 @@
-/*
-* Copyright (c) 2010 Ixonos Plc.
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the "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:
-* Ixonos Plc
-*
-* Description:
-*
-*/
-
-
-
-
-#ifndef VEITRIMFORMMSCONTAINER_H
-#define VEITRIMFORMMSCONTAINER_H
-
-// INCLUDES
-// System includes
-#include <AknUtils.h> // TAknLayoutText
-#include <coecntrl.h>
-#include <AknProgressDialog.h>
-#include <VedMovie.h>
-#include <VedVideoClipInfo.h>
-// User includes
-#include "VeiVideoDisplay.h"
-#include "VeiFrameTaker.h"
-#include "VeiTrimForMmsView.h"
-#include "VeiDisplayLighter.h"
-
-// FORWARD DECLARATIONS
-class CVeiCutterBar;
-class CVeiTrimForMmsView;
-class CVeiTrimForMmsView;
-class CAknsBasicBackgroundControlContext;
-class CAknProgressDialog;
-//class CEikProgressInfo;
-
-// CLASS DECLARATION
-
-/**
- *
- */
-class CVeiTrimForMmsContainer : public CCoeControl,
- public MVedMovieObserver,
- public MVeiVideoDisplayObserver,
- public MVeiFrameTakerObserver,
- public MProgressDialogCallback
- {
- public:
-
- static CVeiTrimForMmsContainer* NewL( const TRect& aRect,
- CVedMovie& aMovie,
- CVeiTrimForMmsView& aView );
-
- static CVeiTrimForMmsContainer* NewLC( const TRect& aRect,
- CVedMovie& aMovie,
- CVeiTrimForMmsView& aView);
-
- ~CVeiTrimForMmsContainer();
-
- public: // New functions
-
- const TTimeIntervalMicroSeconds& CutInTime() const;
-
- const TTimeIntervalMicroSeconds& CutOutTime() const;
-
- void SetMaxMmsSize( TInt aMaxSizeInBytes );
-
- /**
- * Start full screen preview. Calls CVeiVideoDisplay.
- *
- * @param aFilename filename.
- * @param aRect full screen size.
- */
- void PlayL( const TDesC& aFilename, const TRect& aRect );
-
- /**
- * Stop preview. Stops CVeiVideoDisplay
- *
- * @param aCloseStream
- */
- void Stop( TBool aCloseStream );
-
- /**
- *
- */
- void PauseL();
-
- /**
- * Return the video display state of CVeiTrimForMmsContainer.
- *
- * @param
- */
- TInt PreviewState() const;
-
- void StartFrameTakerL( TInt aIndex );
-
- private: // From CCoeControl
-
- virtual void DialogDismissedL( TInt aButtonId );
-
- CCoeControl* ComponentControl(TInt aIndex) const;
-
- TInt CountComponentControls() const;
-
- /**
- * Gets the control's help context. Associates the control with a
- * particular Help file and topic in a context sensitive application.
- *
- * @param aContext The control's help context.
- */
- void GetHelpContext( TCoeHelpContext& aContext ) const;
-
- void Draw( const TRect& aRect ) const;
-
- void SizeChanged();
-
- TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,
- TEventCode aType);
-
- private: // From MVeiVideoDisplayObserver
-
- virtual void NotifyVideoDisplayEvent( const TPlayerEvent aEvent, const TInt& aInfo = 0 );
-
- virtual void NotifyFramesCompleted( CFbsBitmap* aFirstFrame, CFbsBitmap* aLastFrame,
- CFbsBitmap* /*aTimelineFrame*/, TInt aError );
-
-
- /**
- * Gets an object whose type is encapsulated by the specified TTypeUid
- * object.
- *
- * @param aId Encapsulates the Uid that identifies the type of object
- * required.
- *
- * @return
- */
- virtual TTypeUid::Ptr MopSupplyObject( TTypeUid aId );
-
- protected: // From MVedMovieObserver
-
- virtual void NotifyVideoClipAdded(CVedMovie& aMovie, TInt aIndex);
-
- virtual void NotifyVideoClipAddingFailed(CVedMovie& aMovie, TInt aError);
-
- virtual void NotifyVideoClipRemoved(CVedMovie& aMovie, TInt aIndex);
-
- virtual void NotifyVideoClipIndicesChanged(CVedMovie& aMovie, TInt aOldIndex,
- TInt aNewIndex);
-
- virtual void NotifyVideoClipTimingsChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyVideoClipColorEffectChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyVideoClipAudioSettingsChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyVideoClipGeneratorSettingsChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyVideoClipDescriptiveNameChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyStartTransitionEffectChanged(CVedMovie& aMovie);
-
- virtual void NotifyMiddleTransitionEffectChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyEndTransitionEffectChanged(CVedMovie& aMovie);
-
- virtual void NotifyAudioClipAdded(CVedMovie& aMovie, TInt aIndex);
-
- virtual void NotifyAudioClipAddingFailed(CVedMovie& aMovie, TInt aError);
-
- virtual void NotifyAudioClipRemoved(CVedMovie& aMovie, TInt aIndex);
-
- virtual void NotifyAudioClipIndicesChanged(CVedMovie& aMovie, TInt aOldIndex,
- TInt aNewIndex);
-
- virtual void NotifyAudioClipTimingsChanged(CVedMovie& aMovie,
- TInt aIndex);
-
- virtual void NotifyMovieQualityChanged(CVedMovie& aMovie);
-
- virtual void NotifyMovieReseted(CVedMovie& aMovie);
-
- virtual void NotifyMovieOutputParametersChanged(CVedMovie& aMovie);
-
- virtual void NotifyAudioClipDynamicLevelMarkInserted(CVedMovie& aMovie,
- TInt aClipIndex,
- TInt aMarkIndex);
-
- virtual void NotifyAudioClipDynamicLevelMarkRemoved(CVedMovie& aMovie,
- TInt aClipIndex,
- TInt aMarkIndex);
-
- virtual void NotifyVideoClipDynamicLevelMarkInserted(CVedMovie& aMovie,
- TInt aClipIndex,
- TInt aMarkIndex);
-
- virtual void NotifyVideoClipDynamicLevelMarkRemoved(CVedMovie& aMovie,
- TInt aClipIndex,
- TInt aMarkIndex);
-
- private: // New functions
- TInt TimeIncrement(TInt aKeyCount) const;
-
- private: // Constructors
-
- CVeiTrimForMmsContainer( CVedMovie& aMovie, CVeiTrimForMmsView& aView);
-
- void ConstructL( const TRect& aRect );
-
- private: // Enumeration
-
- enum TTrimForMmsControls
- {
- ECutFrame,
- EVideoDisplayStart,
- EVideoDisplayEnd,
- EVideoPreview,
- ENumberOfControls // This is always the last one!
- };
-
- public:
- enum TPreviewState
- {
- EIdle = 0,
- ELoading,
- EPreview,
- EPlaying,
- EStop,
- EStopAndExit,
- EOpeningFile,
- EPause
- };
-
- private: // Data
-
- /**
- * Whether or not the last key pressed was left or right navi-key.
- */
- TBool iLastKeyLeftOrRight;
-
- /**
- *
- */
- TInt iVideoDisplayStartIndex;
-
- /**
- *
- */
- TInt iVideoDisplayEndIndex;
-
- /**
- *
- */
- TRect iVideoDisplayEndRect;
-
- /**
- * Text layout for main pane's end text.
- */
- TAknLayoutText iLayoutTextEnd;
-
- /**
- * Text layout for main pane's start text.
- */
- TAknLayoutText iLayoutTextStart;
-
- /**
- * Layout for start thumbnail.
- */
- TAknLayoutRect iLayoutRectStart;
-
- /**
- * Layout for end thumbnail.
- */
- TAknLayoutRect iLayoutRectEnd;
-
- /**
- * Layout for trim timeline icon.
- */
- TAknLayoutRect iLayoutRectIcon;
-
- /**
- * Layout for cut frame.
- */
- TAknLayoutRect iLayoutRectCutFrame;
-
- /**
- * Text shown above the end thumbnail.
- */
- HBufC* iEndText;
-
- /**
- * Text shown above the start thumbnail.
- */
- HBufC* iStartText;
-
- /**
- *
- */
- CVeiCutterBar* iCutterBar;
- /**
- *
- */
- CVedMovie& iMovie;
-
- /**
- *
- */
- CVeiVideoDisplay* iVideoDisplayStart;
-
- /**
- *
- */
- CVeiVideoDisplay* iVideoDisplayEnd;
-
- CVeiVideoDisplay* iVideoDisplay;
-
- TPreviewState iPreviewState;
-
- TRect iPreviewRect;
-
- CVeiFrameTaker* iFrameTaker;
-
- /*
- * Updated by NotifyVideoClipAdded( CVedMovie& aMovie, TInt aIndex )
- */
- TInt iClipIndex;
-
- CVeiTrimForMmsView& iView;
-
-
- TRect iStartTextBox;
- TRect iEndTextBox;
- TRect iVideoDisplayStartRect;
- TRect iTimelineRect;
- TRect iCutIconRect;
- TRect iAdjustRect;
-
- TPoint iCutIconPoint;
- TSize iCutIconSize;
-
- TTimeIntervalMicroSeconds iSeekPos;
- TTimeIntervalMicroSeconds iSeekEndPos;
- TTimeIntervalMicroSeconds iDuration;
- TInt iKeyRepeatCount;
- /** Background context. Skin stuff. */
- CAknsBasicBackgroundControlContext* iBgContext;
-
- CVeiDisplayLighter* iScreenLight;
- TInt iMaxMmsSize;
- TBool iBlack;
-
-
- TBool iSeekEvent;
- /**
- * Progress dialog.
- */
- CAknProgressDialog* iProgressNote;
-
- /** Progress info for the progress note. */
- CEikProgressInfo* iProgressInfo;
- TBool iKeyEnable;
- };
-
-#endif