--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/videditor/VideoEditorUiComponents/inc/VeiTextDisplay.h Fri Jan 29 14:08:33 2010 +0200
@@ -0,0 +1,242 @@
+/*
+* 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 VEITEXTDISPLAY_H
+#define VEITEXTDISPLAY_H
+
+#include <coecntrl.h>
+#include <ConeResLoader.h>
+
+
+/**
+ * CVeiTextDisplay control class.
+ */
+class CVeiTextDisplay : public CCoeControl
+ {
+ public:
+ /**
+ * Destructor.
+ */
+ IMPORT_C virtual ~CVeiTextDisplay();
+
+ /**
+ * Static factory method.
+ *
+ * @return the created CVeiTextDisplay object
+ */
+ IMPORT_C static CVeiTextDisplay* NewL( const TRect& aRect, const CCoeControl* aParent );
+
+ /**
+ * Static factory method. Leaves the created object in the cleanup
+ * stack.
+ *
+ * @return the created CVeiCutAudioBar object
+ */
+ IMPORT_C static CVeiTextDisplay* NewLC( const TRect& aRect, const CCoeControl* aParent );
+
+
+ public:
+
+ enum TVeiLayout
+ {
+ EOnlyName = 0x77,
+ ENameAndDuration,
+ EEverything,
+ ECutInCutOut,
+ EArrowsHorizontal,
+ EArrowsVertical,
+ ERecording,
+ ERecordingPaused,
+ EOnlyDuration
+ };
+
+ /**
+ * CVeiTextDisplay components.
+ */
+ enum TTextDisplayComponent
+ {
+ EStartTimeText= 1,
+ EEndTimeText,
+ EStartTimeIcon,
+ EEndTimeIcon
+ };
+
+ IMPORT_C void SetLandscapeScreenOrientation( TBool aLandscapeScreenOrientation );
+
+ IMPORT_C void SetCutIn( const TTimeIntervalMicroSeconds& aCutInTime );
+
+ IMPORT_C void SetCutOut( const TTimeIntervalMicroSeconds& aCutOutTime );
+
+ IMPORT_C void SetTime( const TTime& aClipTime );
+
+ IMPORT_C void SetLocation( const TDesC& aClipLocation );
+
+ IMPORT_C void SetLayout( TVeiLayout aLayout );
+
+ IMPORT_C void SetName( const TDesC& aName );
+
+ IMPORT_C void SetDuration( const TTimeIntervalMicroSeconds& aDuration );
+
+ /**
+ * Control Up arrow visibility.
+ *
+ * @param aVisible True/False
+ */
+ IMPORT_C void SetUpperArrowVisibility(TBool aVisible);
+
+ /**
+ * Control Lower arrow visibility.
+ *
+ * @param aVisible True/False
+ */
+ IMPORT_C void SetLowerArrowVisibility(TBool aVisible);
+
+ /**
+ * Control Right arrow visibility.
+ *
+ * @param aVisible True/False
+ */
+ IMPORT_C void SetRightArrowVisibility(TBool aVisible);
+
+ /**
+ * Control Left arrow visibility.
+ *
+ * @param aVisible True/False
+ */
+ IMPORT_C void SetLeftArrowVisibility(TBool aVisible);
+
+ /**
+ * Set slow motion on status.
+ *
+ * @param aOn True/False
+ */
+ IMPORT_C void SetSlowMotionOn(TBool aOn);
+
+ /**
+ * slow motion on status.
+ *
+ * @return aOn True/False
+ */
+ IMPORT_C TBool SlowMotionOn() const;
+
+ /**
+ * Set value of slow motion effect.
+ *
+ * @param aPreset
+ */
+ IMPORT_C void SetSlowMotionPreset(TInt aPreset);
+
+ /**
+ * Slow motion effect value.
+ *
+ * @return value
+ */
+ IMPORT_C TInt SlowMotionPreset() const;
+
+ IMPORT_C void SetArrowSize(const TSize& aArrowSize);
+
+ void ParseTimeToMinSec( TDes& aLayoutTime, const TTimeIntervalMicroSeconds& aDuration ) const;
+
+ /**
+ * Sets the rect of a component
+ *
+ * @param aComponentIndex specifies the component
+ * @param aRect the rect that the component is set
+ *
+ * @return the end mark position
+ */
+ IMPORT_C void SetComponentRect(TTextDisplayComponent aComponentIndex, TRect aRect);
+
+ private:
+ /**
+ * Default constructor.
+ *
+ */
+ void ConstructL( const TRect& aRect, const CCoeControl* aParent );
+
+ /**
+ * C++ default constructor.
+ *
+ */
+ CVeiTextDisplay::CVeiTextDisplay();
+
+ /**
+ * From CCoeControl,Draw.
+ *
+ * @param aRect rectangle to draw
+ */
+ void Draw(const TRect& aRect) const;
+
+ static TInt UpdateBlinker( TAny* aThis );
+ void DoUpdateBlinker();
+ void SizeChanged();
+
+ private: // data
+ HBufC* iClipName;
+ TTimeIntervalMicroSeconds iDuration;
+ TTime iClipTime;
+ HBufC* iClipLocation;
+
+ TTimeIntervalMicroSeconds iCutInTime;
+ TTimeIntervalMicroSeconds iCutOutTime;
+
+ TVeiLayout iLayout;
+
+ CFbsBitmap* iUpperArrow;
+ CFbsBitmap* iLowerArrow;
+ CFbsBitmap* iRightArrow;
+ CFbsBitmap* iLeftArrow;
+ CFbsBitmap* iUpperArrowMask;
+ CFbsBitmap* iLowerArrowMask;
+ CFbsBitmap* iRightArrowMask;
+ CFbsBitmap* iLeftArrowMask;
+ CFbsBitmap* iStartMarkIcon;
+ CFbsBitmap* iStartMarkIconMask;
+ CFbsBitmap* iEndMarkIcon;
+ CFbsBitmap* iEndMarkIconMask;
+
+ TBool iUpperArrowVisible;
+ TBool iLowerArrowVisible;
+ TBool iRightArrowVisible;
+ TBool iLeftArrowVisible;
+
+ TBool iLandscapeScreenOrientation;
+ TBool iSlowMotionOn;
+ TInt iPresetValue;
+
+ CPeriodic* iBlinkTimer;
+ TBool iBlinkFlag;
+
+ TSize iDynamicArrowSize;
+
+ TPoint iUpperArrowPoint;
+ TPoint iLowerArrowPoint;
+
+ RConeResourceLoader iResLoader;
+
+ TRect iStartTimeIconRect;
+ TRect iEndTimeIconRect;
+ TRect iStartTimeTextRect;
+ TRect iEndTimeTextRect;
+
+ };
+#endif
+
+// End of File