--- a/data/fullscreen.docml Mon Sep 20 12:39:08 2010 +0530
+++ b/data/fullscreen.docml Mon Sep 27 15:13:20 2010 +0530
@@ -12,7 +12,7 @@
<enums name="scrollDirections" value="Horizontal"/>
<real name="z" value="7"/>
<integer name="columnCount" value="1"/>
- <sizehint height="44.77612un" type="PREFERRED" width="44.77612un"/>
+ <sizehint height="11.50546un" type="PREFERRED" width="53.731343un"/>
<bool name="frictionEnabled" value="TRUE"/>
<integer name="rowCount" value="1"/>
</widget>
@@ -37,7 +37,7 @@
<anchoritem dst="mCoverFlow" dstEdge="RIGHT" spacing="var(hb-param-margin-view-right)" src="" srcEdge="RIGHT"/>
<anchoritem dst="mCoverFlow" dstEdge="BOTTOM" spacing="var(hb-param-margin-view-bottom)" src="" srcEdge="BOTTOM"/>
<anchoritem dst="mImageStrip" dstEdge="LEFT" spacing="var(hb-param-margin-view-left)" src="" srcEdge="LEFT"/>
- <anchoritem dst="mImageStrip" dstEdge="TOP" spacing="85.51999un" src="" srcEdge="TOP"/>
+ <anchoritem dst="mImageStrip" dstEdge="TOP" spacing="84.016928un" src="" srcEdge="TOP"/>
<anchoritem dst="mImageStrip" dstEdge="RIGHT" spacing="var(hb-param-margin-view-right)" src="" srcEdge="RIGHT"/>
<anchoritem dst="mImageStrip" dstEdge="BOTTOM" spacing="var(hb-param-margin-view-bottom)" src="" srcEdge="BOTTOM"/>
<anchoritem dst="toolBar" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
@@ -55,6 +55,7 @@
<widget name="mImageStrip" type="HbGridView">
<integer name="columnCount" value="4"/>
<integer name="rowCount" value="1"/>
+ <sizehint height="11.50546un" type="PREFERRED" width="53.731343un"/>
</widget>
<widget name="toolBar" type="HbToolBar">
<sizehint height="58.50746un" type="PREFERRED" width="9.40299un"/>
@@ -66,7 +67,7 @@
<anchoritem dst="mCoverFlow" dstEdge="RIGHT" spacing="var(hb-param-margin-view-right)" src="" srcEdge="RIGHT"/>
<anchoritem dst="mCoverFlow" dstEdge="BOTTOM" spacing="var(hb-param-margin-view-bottom)" src="" srcEdge="BOTTOM"/>
<anchoritem dst="mImageStrip" dstEdge="LEFT" spacing="var(hb-param-margin-view-left)" src="" srcEdge="LEFT"/>
- <anchoritem dst="mImageStrip" dstEdge="TOP" spacing="83.59454un" src="" srcEdge="TOP"/>
+ <anchoritem dst="mImageStrip" dstEdge="TOP" spacing="84.016928un" src="" srcEdge="TOP"/>
<anchoritem dst="mImageStrip" dstEdge="RIGHT" spacing="var(hb-param-margin-view-right)" src="" srcEdge="RIGHT"/>
<anchoritem dst="mImageStrip" dstEdge="BOTTOM" spacing="var(hb-param-margin-view-bottom)" src="" srcEdge="BOTTOM"/>
<anchoritem dst="toolBar" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
@@ -86,6 +87,7 @@
<widget name="mImageStrip" type="HbGridView">
<integer name="columnCount" value="6"/>
<integer name="rowCount" value="1"/>
+ <sizehint height="12.2811un" type="PREFERRED" width="85.970158un"/>
</widget>
<widget name="toolBar" type="HbToolBar">
<sizehint height="46.71642un" type="PREFERRED" width="9.4427un"/>
@@ -97,7 +99,7 @@
<anchoritem dst="mCoverFlow" dstEdge="RIGHT" spacing="var(hb-param-margin-view-right)" src="" srcEdge="RIGHT"/>
<anchoritem dst="mCoverFlow" dstEdge="BOTTOM" spacing="var(hb-param-margin-view-bottom)" src="" srcEdge="BOTTOM"/>
<anchoritem dst="mImageStrip" dstEdge="LEFT" spacing="9.55223un" src="" srcEdge="LEFT"/>
- <anchoritem dst="mImageStrip" dstEdge="TOP" spacing="41.2897un" src="" srcEdge="TOP"/>
+ <anchoritem dst="mImageStrip" dstEdge="TOP" spacing="41.450243un" src="" srcEdge="TOP"/>
<anchoritem dst="mImageStrip" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
<anchoritem dst="mImageStrip" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
<anchoritem dst="toolBar" dstEdge="TOP" spacing="9.7015un" src="" srcEdge="TOP"/>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/fullscreentogridportrait.fxml Mon Sep 27 15:13:20 2010 +0530
@@ -0,0 +1,21 @@
+<layers>
+<visual>
+
+<param name="translation_x" type="anim">
+<duration>0.4</duration>
+<style>linear</style>
+ <keyframe at="0">0</keyframe>
+ <keyframe at="1">1</keyframe>
+<start ref="visual.right">1</start>
+<end ref="visual.left">1</end>
+</param>
+
+<param name="translation_y" type="anim">
+ <style>linear</style>
+ <duration>0.4</duration>
+ <keyframe at="0.0">63.0</keyframe>
+ <keyframe at="1.0">63.0</keyframe>
+</param>
+
+</visual>
+</layers>
--- a/photos.qrc Mon Sep 20 12:39:08 2010 +0530
+++ b/photos.qrc Mon Sep 27 15:13:20 2010 +0530
@@ -16,6 +16,7 @@
<file>data/uphide.fxml</file>
<file>data/downshow.fxml</file>
<file>data/fullscreentogrid.fxml</file>
+ <file>data/fullscreentogridportrait.fxml</file>
<file>data/gridtofullscreenhide.fxml</file>
<file>data/gridtofullscreenshow.fxml</file>
<file>data/rotatelandscape.fxml</file>
@@ -37,6 +38,6 @@
<file>data/Wait/qgn_graf_ring_wait_08.svg</file>
<file>data/Wait/qgn_graf_ring_wait_09.svg</file>
<file>data/Wait/qgn_graf_ring_wait_10.svg</file>
- <file>data/details.svg</file>
+ <file>data/details.svg</file>
</qresource>
</RCC>
--- a/tvout/bwins/glxtvoutwrapperu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/bwins/glxtvoutwrapperu.def Mon Sep 27 15:13:20 2010 +0530
@@ -2,11 +2,10 @@
?itemNotSupported@GlxTvOutWrapper@@QAEXXZ @ 1 NONAME ; void GlxTvOutWrapper::itemNotSupported(void)
??1GlxTvOutWrapper@@QAE@XZ @ 2 NONAME ; GlxTvOutWrapper::~GlxTvOutWrapper(void)
?activateZoom@GlxTvOutWrapper@@QAEX_N@Z @ 3 NONAME ; void GlxTvOutWrapper::activateZoom(bool)
- ??0GlxTvOutWrapper@@QAE@XZ @ 4 NONAME ; GlxTvOutWrapper::GlxTvOutWrapper(void)
- ?deactivateZoom@GlxTvOutWrapper@@QAEXXZ @ 5 NONAME ; void GlxTvOutWrapper::deactivateZoom(void)
- ?fadeSurface@GlxTvOutWrapper@@QAEX_N@Z @ 6 NONAME ; void GlxTvOutWrapper::fadeSurface(bool)
- ?setToCloningMode@GlxTvOutWrapper@@QAEXXZ @ 7 NONAME ; void GlxTvOutWrapper::setToCloningMode(void)
- ?setImagetoHDMI@GlxTvOutWrapper@@QAEXXZ @ 8 NONAME ; void GlxTvOutWrapper::setImagetoHDMI(void)
+ ?setModel@GlxTvOutWrapper@@QAEXPAVQAbstractItemModel@@VQSize@@@Z @ 4 NONAME ; void GlxTvOutWrapper::setModel(class QAbstractItemModel *, class QSize)
+ ??0GlxTvOutWrapper@@QAE@XZ @ 5 NONAME ; GlxTvOutWrapper::GlxTvOutWrapper(void)
+ ?deactivateZoom@GlxTvOutWrapper@@QAEXXZ @ 6 NONAME ; void GlxTvOutWrapper::deactivateZoom(void)
+ ?setImagetoHDMI@GlxTvOutWrapper@@QAEXXZ @ 7 NONAME ; void GlxTvOutWrapper::setImagetoHDMI(void)
+ ?setToCloningMode@GlxTvOutWrapper@@QAEXXZ @ 8 NONAME ; void GlxTvOutWrapper::setToCloningMode(void)
?setToNativeMode@GlxTvOutWrapper@@QAEXXZ @ 9 NONAME ; void GlxTvOutWrapper::setToNativeMode(void)
- ?setModel@GlxTvOutWrapper@@QAEXPAVQAbstractItemModel@@VQSize@@_N@Z @ 10 NONAME ; void GlxTvOutWrapper::setModel(class QAbstractItemModel *, class QSize, bool)
--- a/tvout/eabi/glxtvoutwrapperu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/eabi/glxtvoutwrapperu.def Mon Sep 27 15:13:20 2010 +0530
@@ -1,14 +1,13 @@
EXPORTS
- _ZN15GlxTvOutWrapper11fadeSurfaceEb @ 1 NONAME
- _ZN15GlxTvOutWrapper12activateZoomEb @ 2 NONAME
- _ZN15GlxTvOutWrapper14deactivateZoomEv @ 3 NONAME
- _ZN15GlxTvOutWrapper14setImagetoHDMIEv @ 4 NONAME
- _ZN15GlxTvOutWrapper15setToNativeModeEv @ 5 NONAME
- _ZN15GlxTvOutWrapper16itemNotSupportedEv @ 6 NONAME
- _ZN15GlxTvOutWrapper16setToCloningModeEv @ 7 NONAME
- _ZN15GlxTvOutWrapper8setModelEP18QAbstractItemModel5QSizeb @ 8 NONAME
- _ZN15GlxTvOutWrapperC1Ev @ 9 NONAME
- _ZN15GlxTvOutWrapperC2Ev @ 10 NONAME
- _ZN15GlxTvOutWrapperD1Ev @ 11 NONAME
- _ZN15GlxTvOutWrapperD2Ev @ 12 NONAME
+ _ZN15GlxTvOutWrapper12activateZoomEb @ 1 NONAME
+ _ZN15GlxTvOutWrapper14deactivateZoomEv @ 2 NONAME
+ _ZN15GlxTvOutWrapper14setImagetoHDMIEv @ 3 NONAME
+ _ZN15GlxTvOutWrapper15setToNativeModeEv @ 4 NONAME
+ _ZN15GlxTvOutWrapper16itemNotSupportedEv @ 5 NONAME
+ _ZN15GlxTvOutWrapper16setToCloningModeEv @ 6 NONAME
+ _ZN15GlxTvOutWrapper8setModelEP18QAbstractItemModel5QSize @ 7 NONAME
+ _ZN15GlxTvOutWrapperC1Ev @ 8 NONAME
+ _ZN15GlxTvOutWrapperC2Ev @ 9 NONAME
+ _ZN15GlxTvOutWrapperD1Ev @ 10 NONAME
+ _ZN15GlxTvOutWrapperD2Ev @ 11 NONAME
--- a/tvout/tvoutengine/bwins/glxtvoutu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/bwins/glxtvoutu.def Mon Sep 27 15:13:20 2010 +0530
@@ -1,17 +1,16 @@
EXPORTS
?ActivateZoom@CGlxHdmiController@@QAEXH@Z @ 1 NONAME ; void CGlxHdmiController::ActivateZoom(int)
?ScreenSizeL@CGlxTv@@QBE?AVTSize@@XZ @ 2 NONAME ; class TSize CGlxTv::ScreenSizeL(void) const
- ?NewL@CGlxHdmiController@@SAPAV1@VTRect@@H@Z @ 3 NONAME ; class CGlxHdmiController * CGlxHdmiController::NewL(class TRect, int)
- ?SetImageL@CGlxHdmiController@@QAEXABVTDesC16@@PAVCFbsBitmap@@H@Z @ 4 NONAME ; void CGlxHdmiController::SetImageL(class TDesC16 const &, class CFbsBitmap *, int)
- ??1CGlxTv@@UAE@XZ @ 5 NONAME ; CGlxTv::~CGlxTv(void)
- ??1CGlxHdmiController@@UAE@XZ @ 6 NONAME ; CGlxHdmiController::~CGlxHdmiController(void)
- ?IsWidescreen@CGlxTv@@QBEHXZ @ 7 NONAME ; int CGlxTv::IsWidescreen(void) const
- ?ShiftToPostingMode@CGlxHdmiController@@QAEXXZ @ 8 NONAME ; void CGlxHdmiController::ShiftToPostingMode(void)
- ?ShiftToCloningMode@CGlxHdmiController@@QAEXXZ @ 9 NONAME ; void CGlxHdmiController::ShiftToCloningMode(void)
- ?NewL@CGlxTv@@SAPAV1@AAVMGlxTvObserver@@@Z @ 10 NONAME ; class CGlxTv * CGlxTv::NewL(class MGlxTvObserver &)
- ?IsConnected@CGlxTv@@QBEHXZ @ 11 NONAME ; int CGlxTv::IsConnected(void) const
- ?ItemNotSupported@CGlxHdmiController@@QAEXXZ @ 12 NONAME ; void CGlxHdmiController::ItemNotSupported(void)
- ?FadeSurface@CGlxHdmiController@@QAEXH@Z @ 13 NONAME ; void CGlxHdmiController::FadeSurface(int)
- ?IsHDMIConnected@CGlxTv@@QBEHXZ @ 14 NONAME ; int CGlxTv::IsHDMIConnected(void) const
- ?DeactivateZoom@CGlxHdmiController@@QAEXXZ @ 15 NONAME ; void CGlxHdmiController::DeactivateZoom(void)
+ ?SetImageL@CGlxHdmiController@@QAEXABVTDesC16@@PAVCFbsBitmap@@H@Z @ 3 NONAME ; void CGlxHdmiController::SetImageL(class TDesC16 const &, class CFbsBitmap *, int)
+ ??1CGlxTv@@UAE@XZ @ 4 NONAME ; CGlxTv::~CGlxTv(void)
+ ??1CGlxHdmiController@@UAE@XZ @ 5 NONAME ; CGlxHdmiController::~CGlxHdmiController(void)
+ ?IsWidescreen@CGlxTv@@QBEHXZ @ 6 NONAME ; int CGlxTv::IsWidescreen(void) const
+ ?ShiftToPostingMode@CGlxHdmiController@@QAEXXZ @ 7 NONAME ; void CGlxHdmiController::ShiftToPostingMode(void)
+ ?ShiftToCloningMode@CGlxHdmiController@@QAEXXZ @ 8 NONAME ; void CGlxHdmiController::ShiftToCloningMode(void)
+ ?IsConnected@CGlxTv@@QBEHXZ @ 9 NONAME ; int CGlxTv::IsConnected(void) const
+ ?ItemNotSupported@CGlxHdmiController@@QAEXXZ @ 10 NONAME ; void CGlxHdmiController::ItemNotSupported(void)
+ ?NewL@CGlxHdmiController@@SAPAV1@VTRect@@@Z @ 11 NONAME ; class CGlxHdmiController * CGlxHdmiController::NewL(class TRect)
+ ?NewL@CGlxTv@@SAPAV1@AAVMGlxTvObserver@@@Z @ 12 NONAME ; class CGlxTv * CGlxTv::NewL(class MGlxTvObserver &)
+ ?IsHDMIConnected@CGlxTv@@QBEHXZ @ 13 NONAME ; int CGlxTv::IsHDMIConnected(void) const
+ ?DeactivateZoom@CGlxHdmiController@@QAEXXZ @ 14 NONAME ; void CGlxHdmiController::DeactivateZoom(void)
--- a/tvout/tvoutengine/eabi/glxtvoutu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/eabi/glxtvoutu.def Mon Sep 27 15:13:20 2010 +0530
@@ -1,29 +1,28 @@
EXPORTS
- _ZN18CGlxHdmiController11FadeSurfaceEi @ 1 NONAME
- _ZN18CGlxHdmiController12ActivateZoomEi @ 2 NONAME
- _ZN18CGlxHdmiController14DeactivateZoomEv @ 3 NONAME
- _ZN18CGlxHdmiController16ItemNotSupportedEv @ 4 NONAME
- _ZN18CGlxHdmiController18ShiftToCloningModeEv @ 5 NONAME
- _ZN18CGlxHdmiController18ShiftToPostingModeEv @ 6 NONAME
- _ZN18CGlxHdmiController4NewLE5TRecti @ 7 NONAME
- _ZN18CGlxHdmiController9SetImageLERK7TDesC16P10CFbsBitmapi @ 8 NONAME
- _ZN18CGlxHdmiControllerD0Ev @ 9 NONAME
- _ZN18CGlxHdmiControllerD1Ev @ 10 NONAME
- _ZN18CGlxHdmiControllerD2Ev @ 11 NONAME
- _ZN6CGlxTv4NewLER14MGlxTvObserver @ 12 NONAME
- _ZN6CGlxTvD0Ev @ 13 NONAME
- _ZN6CGlxTvD1Ev @ 14 NONAME
- _ZN6CGlxTvD2Ev @ 15 NONAME
- _ZNK6CGlxTv11IsConnectedEv @ 16 NONAME
- _ZNK6CGlxTv11ScreenSizeLEv @ 17 NONAME
- _ZNK6CGlxTv12IsWidescreenEv @ 18 NONAME
- _ZNK6CGlxTv15IsHDMIConnectedEv @ 19 NONAME
- _ZTI17CGlxHdmiContainer @ 20 NONAME
- _ZTI17CGlxHdmiDecoderAO @ 21 NONAME
- _ZTI18CGlxHdmiController @ 22 NONAME
- _ZTI22CGlxHdmiSurfaceUpdater @ 23 NONAME
- _ZTV17CGlxHdmiContainer @ 24 NONAME
- _ZTV17CGlxHdmiDecoderAO @ 25 NONAME
- _ZTV18CGlxHdmiController @ 26 NONAME
- _ZTV22CGlxHdmiSurfaceUpdater @ 27 NONAME
+ _ZN18CGlxHdmiController12ActivateZoomEi @ 1 NONAME
+ _ZN18CGlxHdmiController14DeactivateZoomEv @ 2 NONAME
+ _ZN18CGlxHdmiController16ItemNotSupportedEv @ 3 NONAME
+ _ZN18CGlxHdmiController18ShiftToCloningModeEv @ 4 NONAME
+ _ZN18CGlxHdmiController18ShiftToPostingModeEv @ 5 NONAME
+ _ZN18CGlxHdmiController4NewLE5TRect @ 6 NONAME
+ _ZN18CGlxHdmiController9SetImageLERK7TDesC16P10CFbsBitmapi @ 7 NONAME
+ _ZN18CGlxHdmiControllerD0Ev @ 8 NONAME
+ _ZN18CGlxHdmiControllerD1Ev @ 9 NONAME
+ _ZN18CGlxHdmiControllerD2Ev @ 10 NONAME
+ _ZN6CGlxTv4NewLER14MGlxTvObserver @ 11 NONAME
+ _ZN6CGlxTvD0Ev @ 12 NONAME
+ _ZN6CGlxTvD1Ev @ 13 NONAME
+ _ZN6CGlxTvD2Ev @ 14 NONAME
+ _ZNK6CGlxTv11IsConnectedEv @ 15 NONAME
+ _ZNK6CGlxTv11ScreenSizeLEv @ 16 NONAME
+ _ZNK6CGlxTv12IsWidescreenEv @ 17 NONAME
+ _ZNK6CGlxTv15IsHDMIConnectedEv @ 18 NONAME
+ _ZTI17CGlxHdmiContainer @ 19 NONAME
+ _ZTI17CGlxHdmiDecoderAO @ 20 NONAME
+ _ZTI18CGlxHdmiController @ 21 NONAME
+ _ZTI22CGlxHdmiSurfaceUpdater @ 22 NONAME
+ _ZTV17CGlxHdmiContainer @ 23 NONAME
+ _ZTV17CGlxHdmiDecoderAO @ 24 NONAME
+ _ZTV18CGlxHdmiController @ 25 NONAME
+ _ZTV22CGlxHdmiSurfaceUpdater @ 26 NONAME
--- a/tvout/tvoutengine/group/glxtvout.mmp Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/group/glxtvout.mmp Mon Sep 27 15:13:20 2010 +0530
@@ -63,7 +63,6 @@
LIBRARY apgrfx.lib //
LIBRARY apmime.lib // For ImageViewer mime type extraction
LIBRARY glxlogging.lib
-LIBRARY alfdecoderserverclient.lib
LIBRARY AccPolicy.lib //For RAccessoryConnection status ID's
// Other Dependency Libraries
--- a/tvout/tvoutengine/inc/glxhdmicontroller.h Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/inc/glxhdmicontroller.h Mon Sep 27 15:13:20 2010 +0530
@@ -44,12 +44,10 @@
/**
* NewLC
* @param aRect rect in which the CCoecontrol actually needs to be constructed
- * @param EffectsOn - if the effect should be on, by default it is OFF,
- * used only for SLIDESHOW
*
* @return CGlxHdmiController object.
*/
- IMPORT_C static CGlxHdmiController* NewL(TRect aRect ,TBool aEfectsOn = EFalse);
+ IMPORT_C static CGlxHdmiController* NewL(TRect aRect );
/**
* Destructor
@@ -95,20 +93,12 @@
*/
IMPORT_C void ShiftToPostingMode();
- /**
- * Fadeing of the Surface
- * @param aFadeInOut ETrue - FadeIn ( as in gaining brightness )
- * EFalse - FadeOut ( as in loosing brightness )
- */
- IMPORT_C void FadeSurface(TBool aFadeInOut);
-
private:/// class private method
/**
* Constructor
* @param aRect Rect size
- * @param aEfectsOn if effects needs to be on(used in Slideshow only)
*/
- CGlxHdmiController(TRect aRect ,TBool aEfectsOn);
+ CGlxHdmiController(TRect aRect);
/**
* ConstructL
@@ -160,8 +150,6 @@
TRect iRect;
/// Flag to see if Image is supported
TBool iIsImageSupported;
- /// Flag to set if effects should be on
- TBool iEffectsOn;
};
#endif /* GLXHDMICONTROLLER_H_ */
--- a/tvout/tvoutengine/inc/glxhdmisurfaceupdater.h Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/inc/glxhdmisurfaceupdater.h Mon Sep 27 15:13:20 2010 +0530
@@ -30,7 +30,6 @@
class CGlxActiveCallBack;
class CGlxHdmiDecoderAO;
class CImageDecoder;
-class CAlfCompositionSource;
class TSurfaceConfiguration;
class MGlxGenCallback
@@ -55,10 +54,9 @@
* @param aFsBitmap Fullscreen bitmap (if FS not available,make sure to send grid or default bitmap
* else it would appear white screen on TV )
* @param aCallBack MGlxGenCallback instance
- * @param aEffectsOn If Effects should be on
*/
static CGlxHdmiSurfaceUpdater* NewL(RWindow* aWindow, const TDesC& aImageFile,
- CFbsBitmap* aFsBitmap, MGlxGenCallback* aCallBack,TBool aEffectsOn);
+ CFbsBitmap* aFsBitmap, MGlxGenCallback* aCallBack);
/**
* Destructor
@@ -102,21 +100,13 @@
*/
void ShiftToPostingMode();
- /**
- * Fadeing of the Surface
- * @param aFadeInOut ETrue - FadeIn ( as in gaining brightness )
- * EFalse - FadeOut ( as in loosing brightness )
- */
- void FadeTheSurface(TBool aFadeInOut);
-
private:
/**
* Constructor
* @param aWindow RWindow
* @param aCallBack MGlxGenCallback instance
- * @param aEffectsOn if effects should be on
*/
- CGlxHdmiSurfaceUpdater(RWindow* aWindow, MGlxGenCallback* aCallBack,TBool aEffectsOn);
+ CGlxHdmiSurfaceUpdater(RWindow* aWindow, MGlxGenCallback* aCallBack);
/**
* ConstructL
@@ -236,11 +226,6 @@
*/
void InitiateHdmiL(CFbsBitmap* aFsBitmap,const TDesC& aImageFile);
- /**
- * Animate untill loop is complete
- */
- void Animate();
-
private:
/// window object
RWindow* iWindow;
@@ -250,7 +235,6 @@
MGlxGenCallback* iCallBack;
/// To store the image uri path
HBufC* iImagePath;
- TBool iEffectsOn;
/// If the Fs thumbnail is to be shown before decoding HD images
TBool iShwFsThumbnail;
@@ -283,8 +267,6 @@
/// Surface buffer AO
CGlxActiveCallBack* iSurfBufferAO;
- CAlfCompositionSource* ialfCompositionSurface;
-
/// Internal Image decoder AO
CGlxHdmiDecoderAO* iGlxDecoderAO;
/// Image Decoder
@@ -295,9 +277,6 @@
TPoint iLeftCornerForZoom;
/// Timer for Zoom
CPeriodic* iTimer;
- /// Timer for Animation
- CPeriodic* iAnimTimer;
- TInt iAnimCounter;
/// Various objects to store sizes and count
/// to store the Tv screen size
--- a/tvout/tvoutengine/src/glxhdmicontroller.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/src/glxhdmicontroller.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -27,10 +27,10 @@
// -----------------------------------------------------------------------------
// NewLC
// -----------------------------------------------------------------------------
-EXPORT_C CGlxHdmiController* CGlxHdmiController::NewL(TRect aRect ,TBool aEfectsOn)
+EXPORT_C CGlxHdmiController* CGlxHdmiController::NewL(TRect aRect)
{
TRACER("CGlxHdmiController* CGlxHdmiController::NewL()");
- CGlxHdmiController* self = new (ELeave) CGlxHdmiController(aRect,aEfectsOn);
+ CGlxHdmiController* self = new (ELeave) CGlxHdmiController(aRect);
CleanupStack::PushL(self);
self->ConstructL();
CleanupStack::Pop(self);
@@ -166,27 +166,13 @@
}
}
-
-// -----------------------------------------------------------------------------
-// FadeSurface
-// -----------------------------------------------------------------------------
-EXPORT_C void CGlxHdmiController::FadeSurface(TBool aFadeInOut)
- {
- TRACER("CGlxHdmiController::FadeSurface()");
- if (iSurfaceUpdater)
- {
- iSurfaceUpdater->FadeTheSurface(aFadeInOut);
- }
- }
-
// -----------------------------------------------------------------------------
// Constructor
// -----------------------------------------------------------------------------
-CGlxHdmiController::CGlxHdmiController(TRect aRect,TBool aEffectsOn):
+CGlxHdmiController::CGlxHdmiController(TRect aRect):
iFsBitmap(NULL),
iStoredImagePath(NULL),
- iRect(aRect),
- iEffectsOn(aEffectsOn)
+ iRect(aRect)
{
TRACER("CGlxHdmiController::CGlxHdmiController()");
// Implement nothing here
@@ -243,8 +229,7 @@
{
TRACER("CGlxHdmiController::CreateSurfaceUpdater()");
iSurfaceUpdater = CGlxHdmiSurfaceUpdater::NewL(iHdmiContainer->GetWindow(),
- aImageFile, iFsBitmap,iHdmiContainer,
- iEffectsOn);
+ aImageFile, iFsBitmap,iHdmiContainer);
iHdmiContainer->DrawNow();
}
--- a/tvout/tvoutengine/src/glxhdmisurfaceupdater.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutengine/src/glxhdmisurfaceupdater.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -15,13 +15,13 @@
*
*/
+#include <bitdev.h>
#include <graphics/surface.h>
#include <graphics/surfacemanager.h>
#include <graphics/surfaceupdateclient.h>
#include <graphics/surface_hints.h>
#include <e32math.h>
#include <apgcli.h>
-#include "alf/alfcompositionclient.h"
#include <imageconversion.h>
#include <fbs.h>
@@ -31,23 +31,16 @@
#include "glxactivecallback.h"
#include "glxhdmisurfaceupdater.h"
#include "glxactivedecoder.h"
-#include <bitdev.h>
const TInt KMulFactorToCreateBitmap = 4;
const TInt KZoomDelay = 10000;
-const TInt KAnimationTicker = 26000;
-const TInt KAnimationTickerFadeIn = 45000;
+//const TInt KAnimationTicker = 26000;
+//const TInt KAnimationTickerFadeIn = 45000;
//100 , is decide for 20 steps of zooming , with each step being 5 pixels.
const TInt KMaxZoomLimit = 100;
//evey time we zoom , there is a increase in the ht amd width by 10 pixels.
const TInt KSingleStepForZoom = 10;
-// constants for fade effect
-const TInt KFadeSteps = 19;
-const TReal32 KFadeEachStep = 0.05f;
-const TReal32 KFullTransparent = 0.0f;
-const TReal32 KFullOpaque = 1.0f;
-
_LIT(KMimeJpeg,"image/jpeg");
_LIT(KMimeJpg,"image/jpg");
@@ -56,11 +49,10 @@
// -----------------------------------------------------------------------------
CGlxHdmiSurfaceUpdater* CGlxHdmiSurfaceUpdater::NewL(RWindow* aWindow, const TDesC& aImageFile,
CFbsBitmap* aFsBitmap,
- MGlxGenCallback* aCallBack,
- TBool aEffectsOn)
+ MGlxGenCallback* aCallBack)
{
TRACER("CGlxHdmiSurfaceUpdater* CGlxHdmiSurfaceUpdater::NewL()");
- CGlxHdmiSurfaceUpdater* self = new (ELeave) CGlxHdmiSurfaceUpdater(aWindow, aCallBack, aEffectsOn);
+ CGlxHdmiSurfaceUpdater* self = new (ELeave) CGlxHdmiSurfaceUpdater(aWindow, aCallBack);
CleanupStack::PushL(self);
self->ConstructL(aFsBitmap,aImageFile);
CleanupStack::Pop(self);
@@ -74,13 +66,6 @@
{
TRACER("CGlxHdmiSurfaceUpdater::~CGlxHdmiSurfaceUpdater()");
ReleaseContent();
- if(iAnimTimer && iAnimTimer->IsActive()) // Check for a CPeriodic Instance
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::~CGlxHdmiSurfaceUpdater() - cancel iAnimTimer");
- iAnimTimer->Cancel();
- }
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::~CGlxHdmiSurfaceUpdater() - deleteing ialfCompositionSurface");
- delete ialfCompositionSurface;
if(iWindow)
{
iWindow->RemoveBackgroundSurface(ETrue);
@@ -165,11 +150,9 @@
// CTor
// -----------------------------------------------------------------------------
CGlxHdmiSurfaceUpdater::CGlxHdmiSurfaceUpdater(RWindow* aWindow,
- MGlxGenCallback* aCallBack,TBool aEffectsOn):
- iWindow(aWindow), iCallBack(aCallBack),
- iEffectsOn(aEffectsOn),
- iShwFsThumbnail(ETrue), iIsNonJpeg(EFalse),
- iAnimCounter(0)
+ MGlxGenCallback* aCallBack):
+ iWindow(aWindow), iCallBack(aCallBack),
+ iShwFsThumbnail(ETrue), iIsNonJpeg(EFalse)
{
TRACER("CGlxHdmiSurfaceUpdater::CGlxHdmiSurfaceUpdater()");
// Implement nothing here
@@ -183,11 +166,6 @@
TRACER("CGlxHdmiSurfaceUpdater::ConstructL()");
// Initiate the HDMI by assigning the necessary values
InitiateHdmiL(aFsBitmap,aImageFile);
- if (iEffectsOn)
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ConstructL() Creating iAnimTimer");
- iAnimTimer = CPeriodic::NewL( CActive::EPriorityStandard );
- }
TInt error = iFsSession.Connect ();
GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::ConstructL() FsSession Connect error = %d", error);
@@ -752,19 +730,6 @@
void CGlxHdmiSurfaceUpdater::ShiftToCloningMode()
{
TRACER("CGlxHdmiSurfaceUpdater::ShiftToCloningMode()");
- if (iAnimTimer)
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ShiftToCloningMode() - cancel iAnimTimer");
- iAnimTimer->Cancel();
- delete iAnimTimer;
- iAnimTimer = NULL;
- }
- if (ialfCompositionSurface)
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ShiftToCloningMode() - deleteing ialfCompositionSurface");
- delete ialfCompositionSurface;
- ialfCompositionSurface= NULL;
- }
if (iWindow)
{
GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ShiftToCloningMode() - window present");
@@ -778,11 +743,6 @@
void CGlxHdmiSurfaceUpdater::ShiftToPostingMode()
{
TRACER("CGlxHdmiSurfaceUpdater::ShiftToPostingMode()");
- if (iEffectsOn && !iAnimTimer)
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ShiftToPostingMode() Creating iAnimTimer");
- iAnimTimer = CPeriodic::NewL( CActive::EPriorityStandard );
- }
if(iSurfManager)
{
#ifdef _DEBUG
@@ -816,18 +776,6 @@
ProcessTvImage();
// set the surface onto background
iWindow->SetBackgroundSurface(iConfig, ETrue);
- if (iEffectsOn)
- {
- //Cancel the Animation timer if any
- if(!iAnimTimer->IsActive())
- {
- iAnimCounter = 0;
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ShowFsThumbnailL() - Cancel iAnimTimer Timer");
- iAnimTimer->Cancel();
- }
-
- FadeTheSurface(ETrue);
- }
}
// -----------------------------------------------------------------------------
@@ -890,92 +838,3 @@
GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::ProcessTvImage() Surfaceupdatesession error %d",err);
}
}
-
-// -----------------------------------------------------------------------------
-// FadeTheSurface
-// -----------------------------------------------------------------------------
-void CGlxHdmiSurfaceUpdater::FadeTheSurface(TBool aFadeInOut)
- {
- TRACER("CGlxHdmiSurfaceUpdater::FadeTheSurface()");
- iFadeIn = aFadeInOut;
- if (iEffectsOn && !iAnimTimer)
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::FadeTheSurface() Creating iAnimTimer");
- iAnimTimer = CPeriodic::NewL( CActive::EPriorityStandard );
- }
- if (!ialfCompositionSurface)
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::ShowFsThumbnailL() - Creating alfcompositionsurface");
- ialfCompositionSurface = CAlfCompositionSource::NewL(*iWindow);
- }
- if(!iAnimTimer->IsActive())
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::FadeTheSurface() - Start Timer");
- if (iFadeIn)
- iAnimTimer->Start(0,KAnimationTickerFadeIn,TCallBack( AnimationTimeOut,this ));
- else
- {
- for (TInt i=0;i<=KFadeSteps;i++)
- {
- GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::Animate - Fading Out %d",i);
- ialfCompositionSurface->SetOpacity(KFullOpaque -(i*KFadeEachStep));
- User::After(KAnimationTicker);
- }
- }
- }
- else
- {
- iAnimCounter = 0;
- // this case can be when fast swipe in Slideshow
- ialfCompositionSurface->SetOpacity(KFullOpaque); // set the opacity to maximum when fast swipe
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::FadeTheSurface() - cancel iAnimTimer");
- iAnimTimer->Cancel();
- }
- }
-
-// ---------------------------------------------------------------------------
-// AnimationTimeOut
-// ---------------------------------------------------------------------------
-//
-TInt CGlxHdmiSurfaceUpdater::AnimationTimeOut(TAny* aSelf)
- {
- TRACER("CGlxHdmiSurfaceUpdater::AnimationTimeOut");
- if(aSelf)
- {
- CGlxHdmiSurfaceUpdater* self = static_cast <CGlxHdmiSurfaceUpdater*> (aSelf);
- if (self)
- {
- self->Animate();
- }
- }
- return KErrNone;
- }
-
-// -----------------------------------------------------------------------------
-// Animate
-// -----------------------------------------------------------------------------
-void CGlxHdmiSurfaceUpdater::Animate()
- {
- TRACER("CGlxHdmiSurfaceUpdater::Animate");
- iAnimCounter++;
- if (!ialfCompositionSurface)
- {
- // createing alfcompositiosource
- ialfCompositionSurface = CAlfCompositionSource::NewL(*iWindow);
- }
- if (iAnimCounter <=KFadeSteps && iFadeIn)
- {
- GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::Animate - iAnimCounter=%d",iAnimCounter);
- // gaining brightness
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::Animate - Fading In");
- ialfCompositionSurface->SetOpacity( KFullTransparent +(iAnimCounter*KFadeEachStep));
- }
- else
- {
- GLX_LOG_INFO("CGlxHdmiSurfaceUpdater::Animate() - cancel iAnimTimer");
- iAnimCounter = 0;
- // end the timer , as animation of fade in/out is complete
- iAnimTimer->Cancel();
- }
- }
-
--- a/tvout/tvoutwrapper/inc/glxtvoutwrapper.h Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutwrapper/inc/glxtvoutwrapper.h Mon Sep 27 15:13:20 2010 +0530
@@ -60,9 +60,8 @@
* to pass the model
* @param Model datamodel
* @param screensize the size of the phone screen
- * @param aEfectsOn if slideshow effects on tv needs to be on, off by default
*/
- void setModel(QAbstractItemModel* aModel,QSize aScreenSize,bool aEfectsOn = false);
+ void setModel(QAbstractItemModel* aModel,QSize aScreenSize);
/**
* Set the image on to HDMI
@@ -100,13 +99,6 @@
*/
void deactivateZoom();
- /**
- * Fadeing of the Surface
- * @param aFadeInOut ETrue - FadeIn ( as in gaining brightness )
- * EFalse - FadeOut ( as in loosing brightness )
- */
- void fadeSurface(bool aFadeInOut);
-
private:
/// Private wrapper handler according to PIMPL pattern
GlxTvOutWrapperPrivate* mTvOutWrapperPrivate;
--- a/tvout/tvoutwrapper/inc/glxtvoutwrapper_p.h Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutwrapper/inc/glxtvoutwrapper_p.h Mon Sep 27 15:13:20 2010 +0530
@@ -45,13 +45,11 @@
* @param aTvOutWrapper GlxTvOutWrapper Instance
* @param aModel item model
* @param aScreenSize screensize of the phone
- * @param aEfectsOn to ON the Effects for Slideshow on TV- currently only
- * fade in fade out is supported
*
* @return GlxTvOutWrapperPrivate Instance
*/
static GlxTvOutWrapperPrivate* Instance(GlxTvOutWrapper* aTvOutWrapper,
- QAbstractItemModel* aModel,QSize aScreenSize,bool aEfectsOn);
+ QAbstractItemModel* aModel,QSize aScreenSize);
/**
* destructor
@@ -116,9 +114,8 @@
/**
* constructL()
* @param aScreenSize screensize
- * @param aEffectsOn to On the Effects of Slideshow - currently only fade in fade out
*/
- void ConstructL(QSize aScreenSize,bool aEfectsOn);
+ void ConstructL(QSize aScreenSize);
/**
* SetNewImage
--- a/tvout/tvoutwrapper/src/glxtvoutwrapper.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutwrapper/src/glxtvoutwrapper.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -43,11 +43,11 @@
// setModel
// and Create the private instance to pass the model
// -----------------------------------------------------------------------------
-void GlxTvOutWrapper::setModel(QAbstractItemModel* aModel,QSize aScreenSize,bool aEfectsOn)
+void GlxTvOutWrapper::setModel(QAbstractItemModel* aModel,QSize aScreenSize)
{
if (!mTvOutWrapperPrivate)
{
- mTvOutWrapperPrivate = GlxTvOutWrapperPrivate::Instance(this,aModel,aScreenSize,aEfectsOn);
+ mTvOutWrapperPrivate = GlxTvOutWrapperPrivate::Instance(this,aModel,aScreenSize);
}
else
{
@@ -115,14 +115,4 @@
}
}
-// -----------------------------------------------------------------------------
-// deactivateZoom
-// -----------------------------------------------------------------------------
-void GlxTvOutWrapper::fadeSurface(bool aFadeInOut)
- {
- if(mTvOutWrapperPrivate){
- mTvOutWrapperPrivate->FadeSurface(aFadeInOut);
- }
- }
-
// End of file
--- a/tvout/tvoutwrapper/src/glxtvoutwrapper_p.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/tvout/tvoutwrapper/src/glxtvoutwrapper_p.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -29,12 +29,12 @@
// Static method to create the private wrapper instance
// -----------------------------------------------------------------------------
GlxTvOutWrapperPrivate* GlxTvOutWrapperPrivate::Instance(GlxTvOutWrapper* aTvOutWrapper,
- QAbstractItemModel* aModel,QSize aScreenSize,bool aEfectsOn)
+ QAbstractItemModel* aModel,QSize aScreenSize)
{
TRACER("GlxTvOutWrapperPrivate::Instance()");
GlxTvOutWrapperPrivate* self = new GlxTvOutWrapperPrivate(aTvOutWrapper,aModel);
if (self){
- TRAPD(err,self->ConstructL(aScreenSize,aEfectsOn));
+ TRAPD(err,self->ConstructL(aScreenSize));
if(err != KErrNone){
delete self;
self = NULL;
@@ -47,14 +47,13 @@
// ConstructL
// This creates the Connection observer and the Hdmi Controller
// -----------------------------------------------------------------------------
-void GlxTvOutWrapperPrivate::ConstructL(QSize aScreenSize,bool aEfectsOn)
+void GlxTvOutWrapperPrivate::ConstructL(QSize aScreenSize)
{
TRACER("GlxTvOutWrapperPrivate::ConstructL()");
iConnectionObserver = CGlxConnectionObserver::NewL(this);
if (!iHdmiController) {
TRect rect(0,0,aScreenSize.width(),aScreenSize.height());
- iHdmiController = CGlxHdmiController::NewL(rect,
- aEfectsOn);
+ iHdmiController = CGlxHdmiController::NewL(rect);
iHdmiConnected = iConnectionObserver->IsHdmiConnected();
}
}
@@ -227,16 +226,6 @@
}
// -----------------------------------------------------------------------------
-// FadeSurface
-// -----------------------------------------------------------------------------
-void GlxTvOutWrapperPrivate::FadeSurface(bool aFadeInOut)
- {
- if(iHdmiController && iHdmiConnected){
- iHdmiController->FadeSurface(aFadeInOut);
- }
- }
-
-// -----------------------------------------------------------------------------
// getSubState
// -----------------------------------------------------------------------------
int GlxTvOutWrapperPrivate::getSubState()
--- a/ui/commandhandlers/commandhandlerbase/inc/glxmpxcommandhandler.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/commandhandlers/commandhandlerbase/inc/glxmpxcommandhandler.h Mon Sep 27 15:13:20 2010 +0530
@@ -96,6 +96,8 @@
void CreateMediaListL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType) ;
void CreateMediaListAlbumItemL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType);
void executeMpxCommand(bool execute);
+protected:
+ mutable bool iIsCmdActive;
private:
// Instance of Media List
MGlxMediaList* iMediaList;
--- a/ui/commandhandlers/commandhandlerbase/src/glxmpxcommandhandler.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/commandhandlers/commandhandlerbase/src/glxmpxcommandhandler.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -42,7 +42,7 @@
#include <hbaction.h>
GlxMpxCommandHandler::GlxMpxCommandHandler() :
- iProgressComplete(EFalse)
+ iProgressComplete(EFalse),iIsCmdActive(EFalse)
{
OstTraceFunctionEntry0( GLXMPXCOMMANDHANDLER_GLXMPXCOMMANDHANDLER_ENTRY );
iMediaList = NULL;
@@ -67,53 +67,59 @@
Q_UNUSED(indexList);
int aHierarchyId = 0;
TGlxFilterItemType aFilterType = EGlxFilterImage;
+ if (!iIsCmdActive)
+ {
+ if (collectionId != KGlxAlbumsMediaId)
+ {
+ OstTrace0( TRACE_NORMAL, DUP2_GLXMPXCOMMANDHANDLER_EXECUTECOMMAND, "GlxMpxCommandHandler::executeCommand::CreateMediaListL" );
+ CreateMediaListL(collectionId, aHierarchyId, aFilterType);
+ }
+ else
+ {
+ OstTrace0( TRACE_NORMAL, DUP3_GLXMPXCOMMANDHANDLER_EXECUTECOMMAND, "GlxMpxCommandHandler::executeCommand::CreateMediaListAlbumItemL" );
+ //for creating Medial List for Albums Media path Items
+ CreateMediaListAlbumItemL(collectionId, aHierarchyId, aFilterType);
+ }
- if (collectionId != KGlxAlbumsMediaId)
- {
- OstTrace0( TRACE_NORMAL, DUP2_GLXMPXCOMMANDHANDLER_EXECUTECOMMAND, "GlxMpxCommandHandler::executeCommand::CreateMediaListL" );
- CreateMediaListL(collectionId, aHierarchyId, aFilterType);
+ TBool consume = ETrue;
+ iProgressComplete = EFalse;
+ mProgressDialog = NULL;
+ //Execute Command
+ DoExecuteCommandL(commandId, *iMediaList, consume);
+ mCommandId = commandId;
+ ConfirmationNoteL(*iMediaList);
}
- else
- {
- OstTrace0( TRACE_NORMAL, DUP3_GLXMPXCOMMANDHANDLER_EXECUTECOMMAND, "GlxMpxCommandHandler::executeCommand::CreateMediaListAlbumItemL" );
- //for creating Medial List for Albums Media path Items
- CreateMediaListAlbumItemL(collectionId, aHierarchyId, aFilterType);
- }
-
- TBool consume = ETrue;
- iProgressComplete = EFalse;
- mProgressDialog = NULL;
- //Execute Command
- DoExecuteCommandL(commandId, *iMediaList, consume);
- mCommandId = commandId;
- ConfirmationNoteL(*iMediaList);
OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_EXECUTECOMMAND_EXIT );
}
void GlxMpxCommandHandler::executeMpxCommand(bool execute)
{
- if(execute && !iMediaList->IsCommandActive())
+ if(iMediaList)
{
- TBool consume = ETrue;
- CMPXCommand* command = CreateCommandL(mCommandId, *iMediaList, consume);
- if (command)
+ if (execute && !iMediaList->IsCommandActive())
{
- command->SetTObjectValueL<TAny*> (KMPXCommandGeneralSessionId,
- static_cast<TAny*> (this));
- iMediaList->AddMediaListObserverL(this);
- iMediaList->CommandL(*command);
-
- if(iMediaList->SelectionCount() > 1)
+ TBool consume = ETrue;
+ CMPXCommand* command = CreateCommandL(mCommandId, *iMediaList,
+ consume);
+ if (command)
{
- ProgressNoteL(mCommandId);
+ command->SetTObjectValueL<TAny*> (
+ KMPXCommandGeneralSessionId,
+ static_cast<TAny*> (this));
+ iMediaList->AddMediaListObserverL(this);
+ iMediaList->CommandL(*command);
+
+ if (iMediaList->SelectionCount() > 1)
+ {
+ ProgressNoteL(mCommandId);
+ }
}
}
+ else //command cancelled,so unmark all items
+ {
+ MGlxMediaList::UnmarkAllL(*iMediaList);
+ }
}
- else //command cancelled,so unmark all items
- {
- MGlxMediaList::UnmarkAllL(*iMediaList);
- }
-
}
// ---------------------------------------------------------------------------
@@ -295,11 +301,14 @@
CMPXCommand* aCommandResult, TInt aError, MGlxMediaList* aList)
{
OstTraceFunctionEntry0( GLXMPXCOMMANDHANDLER_HANDLECOMMANDCOMPLETEL_ENTRY );
- MGlxMediaList::UnmarkAllL(*iMediaList);
+ if(iMediaList)
+ {
+ MGlxMediaList::UnmarkAllL(*iMediaList);
- DoHandleCommandCompleteL(aSessionId, aCommandResult, aError, aList);
- iProgressComplete = ETrue;
- TryExitL(aError);
+ DoHandleCommandCompleteL(aSessionId, aCommandResult, aError, aList);
+ iProgressComplete = ETrue;
+ TryExitL(aError);
+ }
OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_HANDLECOMMANDCOMPLETEL_EXIT );
}
@@ -349,10 +358,13 @@
{
// @todo error received. Close progress note
DismissProgressNoteL();
- MGlxMediaList::UnmarkAllL(*iMediaList);
- iMediaList->RemoveMediaListObserver(this);
- iMediaList->Close();
- iMediaList = NULL;
+ if(iMediaList)
+ {
+ MGlxMediaList::UnmarkAllL(*iMediaList);
+ iMediaList->RemoveMediaListObserver(this);
+ iMediaList->Close();
+ iMediaList = NULL;
+ }
// handle error
HandleErrorL(aErrorCode);
}
@@ -365,6 +377,7 @@
CompletionNoteL();
iProgressComplete = EFalse;
}
+ iIsCmdActive = EFalse;
OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_TRYEXITL_EXIT );
}
@@ -418,7 +431,7 @@
void GlxMpxCommandHandler::ConfirmationNoteL(MGlxMediaList& aMediaList)
{
TInt selectionCount = aMediaList.SelectionCount();
-
+ iIsCmdActive = ETrue;
// If media list is not empty, treat focused item as selected
// At this point can assume that the command was disabled
// if static items were not supported
@@ -509,6 +522,7 @@
{
// Cancellation is done.
executeMpxCommand(false);
+ iIsCmdActive = EFalse;
}
}
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -183,10 +183,15 @@
GlxAlbumSelectionPopup popupWidget;
QModelIndexList modelList = popupWidget.GetSelectionList(albumMediaModel, &ok);
if(ok && modelList.count() == 0)
- {
+ {
createNewMedia();
ok = false;
- }
+ }
+ else if(!ok)
+ {
+ // Reset the flag so that next addmedia cmd can be executed
+ iIsCmdActive = false;
+ }
OstTraceExt2( TRACE_NORMAL, GLXCOMMANDHANDLERADDTOCONTAINER_CREATECOMMANDL, "GlxCommandHandlerAddToContainer::CreateCommandL;ok=%d;newMedia=%d", ok, mNewMediaAdded );
if (ok || mNewMediaAdded)
@@ -220,6 +225,8 @@
}
else
{
+ // Reset the flag so that next addmedia cmd can be executed
+ iIsCmdActive = false;
MGlxMediaList::UnmarkAllL(aMediaList);
}
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -72,7 +72,6 @@
iNewMediaCreationError = KErrNone;
if (ok == true)
{
-
TPtrC16 newMediaItemTitleDes
= (reinterpret_cast<const TUint16*> (mediaTitle.utf16()));
@@ -86,6 +85,8 @@
}
else
{
+ // Reset the flag so that next addmedia cmd can be executed
+ iIsCmdActive = false;
iNewMediaCreationError = KErrCancel;
}
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommondialogs.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommondialogs.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -21,6 +21,18 @@
#include <QEventLoop>
const int MAXSTRINGLENGHT = 256;
+// this is regexp for valid file/folder name: no \/:*?"<>| and is not totally empty characters.
+// file name can not end with "." , but it is not include in this RegExp. It should be checked in Regex_ValidNotEndWithDot
+// this expression is composed by two expressions:
+// ^.*[^\\s].*$ used to match un-empty string and is not totally empty characters.
+// [^\\\\/:*?\"<>|] used to math valid file/folder name
+// merge the two regex together:
+// valid file/folder name and is not totally empty.
+#define Regex_ValidFileFolderName QString( "^[^\\\\/:*?\"<>|]*[^\\\\/:*?\"<>|\\s][^\\\\/:*?\"<>|]*$" )
+
+// is not end with dot( trim blank characters in the end first )
+#define Regex_ValidNotEndWithDot QString( "^.*[^\\.\\s][\\s]*$" )
+
GlxTextInputDialog::GlxTextInputDialog(bool disableOkForEmptyText)
: mDialog ( NULL ),
mEventLoop ( 0 ),
@@ -70,7 +82,20 @@
void GlxTextInputDialog::textChanged(const QString &text)
{
- if (text.trimmed().isEmpty()) {
+ // check if all regExp match, disable primary action if not match
+ QStringList regExpList = (QStringList() << Regex_ValidFileFolderName << Regex_ValidNotEndWithDot );
+
+ bool validateResult = true;
+ foreach( const QString ®ExpString, regExpList ) {
+ if( !regExpString.isEmpty() ) {
+ QRegExp regExp( regExpString );
+ if( !regExp.exactMatch( text ) ) {
+ validateResult = false;
+ }
+ }
+ }
+
+ if(!validateResult){
mDialog->actions().first()->setEnabled(false);
}
else {
--- a/ui/inc/glxicondefs.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/inc/glxicondefs.h Mon Sep 27 15:13:20 2010 +0530
@@ -28,14 +28,14 @@
#define GLXICON_USEIMAGE "qtg_small_ovi"
//GRID TOOLBAR
-#define GLXICON_ALL "qtg_mono_photos"
-#define GLXICON_ALBUMS "qtg_mono_photo_albums"
-#define GLXICON_CAMERA "qtg_mono_camera"
-#define GLXICON_OVI "qtg_small_ovi"
+#define GLXICON_ALL "qtg_mono_photos"
+#define GLXICON_ALBUMS "qtg_mono_photo_albums"
+#define GLXICON_CAMERA "qtg_mono_camera"
+#define GLXICON_OVI "qtg_small_ovi"
//ALBUM GRID TOOLBAR
-#define GLXICON_ADD "qtg_mono_add_to_video_collection"
-#define GLXICON_REMOVE "qtg_mono_remove_from_video_collection"
+#define GLXICON_ADD "qtg_mono_add_to_video_collection"
+#define GLXICON_REMOVE "qtg_mono_remove_from_video_collection"
//CORRUPT ICON
#define GLXICON_CORRUPT "qtg_large_corrupted"
@@ -44,7 +44,7 @@
#define GLXICON_PLAY "qtg_mono_play"
//DEFAULT ICON
-#define GLXICON_DEFAULT "qtg_mono_camera"
+#define GLXICON_DEFAULT "qtg_mono_photos"
#define GLXICON_ADD_TO_FAV "qtg_graf_ratingslider_rated"
#define GLXICON_REMOVE_FAV "qtg_graf_ratingslider_unrated"
--- a/ui/inc/glxmodelroles.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/inc/glxmodelroles.h Mon Sep 27 15:13:20 2010 +0530
@@ -21,34 +21,46 @@
#define GLXMODELROLES_H
enum
{
+ //For ItemImageData Function role START
GlxHgVisibilityRole = Qt::UserRole + 1, // VisibilityRole For MediaWall , Dont Change This Value - Depedency To HgWidget
GlxFsImageRole, //to get the fullscreen image
- GlxContextRole, //to get and set the context
- GlxFocusIndexRole, //to get and set the selected item index
- GlxVisualWindowIndex, //to set the visual window index in media list
- GlxUriRole, //to get the URI of the image
- GlxDimensionsRole,
- GlxSelectedIndexRole, //to get and set the seleceted item list
- GlxDateRole, //to get the image created or modified date
- GlxFrameCount, //to get the number of frame in an image
- GlxSubStateRole, //to publish the sub state of a SM states
- GlxHdmiBitmap, //to get the pre decoded thumbnail for HDMI
- GlxListItemCount, //to get the number of item in the album list
- GlxSystemItemRole, //to get the item is system item or not
- GlxFavorites, //to get the image is in favorites folder or not
+ GlxDefaultImage,
GlxQImageSmall, //To Get Grid Thumbnail as QImage
GlxQImageLarge, //To Get FullScreen Thumbnail as QImage
- GlxDefaultImage, //To Get Default Thumbnail
- GlxViewTitle,
+ GlxHdmiBitmap, //to get the pre decoded thumbnail for HDMI
+ GlxItemImageDataEnd = 0x100,
+ //For ItemImageData Function role END
+
+ //For CollectionProperty Function role START
+ GlxFocusIndexRole, //to get and set the selected item index
+ GlxSubStateRole, //to publish the sub state of a SM states
GlxPopulated,
- GlxTimeRole, //to get the time image was modified
- GlxSizeRole, //to get the size of the image
- GlxDescRole, //to get the description of the images
- GlxRemoveContextRole, //to remove the context
- GlxTempVisualWindowIndex, //to store the visual index obtained from AM temporarily
- GlxImageCorruptRole, //To get the corrupt image status
- GlxPaintPageFlag,
- GlxImageTitle //to fetch the title of the image
+ GlxViewTitle,
+ GlxVisualWindowIndex, //to set the visual window index in media list
+ GlxPaintPageFlag,
+ GlxCollectionPropertyEnd = 0x200,
+ //For CollectionProperty Function role END
+
+ //For ItemProperty Function role START
+ GlxFrameCount, //to get the number of frame in an image
+ GlxImageCorruptRole, //To get the corrupt image status
+ GlxUriRole, //to get the URI of the image
+ GlxSizeRole, //to get the size of the image
+ GlxImageTitle, //to fetch the title of the image
+ GlxDimensionsRole,
+ GlxDateRole, //to get the image created or modified date
+ GlxTimeRole, //to get the time image was modified
+ GlxDescRole, //to get the description of the images
+ GlxItemPropertyEnd = 0x300,
+ //For ItemProperty Function role
+
+ GlxContextRole, //to get and set the context
+ GlxSelectedIndexRole, //to get and set the seleceted item list
+ GlxListItemCount, //to get the number of item in the album list
+ GlxSystemItemRole, //to get the item is system item or not
+ GlxFavorites, //to get the image is in favorites folder or not
+ GlxRemoveContextRole, //to remove the context
+ GlxTempVisualWindowIndex, //to store the visual index obtained from AM temporarily
};
--- a/ui/inc/glxuistd.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/inc/glxuistd.h Mon Sep 27 15:13:20 2010 +0530
@@ -59,8 +59,7 @@
GlxTBContextGrid,
GlxTBContextLsFs,
GlxTBContextPtFs,
- GlxTBContextNone,
- GlxTBContextExternal
+ GlxTBContextNone
};
typedef enum
@@ -74,6 +73,7 @@
FADE_EFFECT,
GRID_TO_FULLSCREEN,
FULLSCREEN_TO_GRID,
+ FULLSCREEN_TO_GRID_PORTRAIT,
FULLSCREEN_TO_DETAIL,
DETAIL_TO_FULLSCREEN,
GRID_TO_ALBUMLIST,
--- a/ui/uiengine/medialistwrapper/inc/glxmlwrapper_p.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/uiengine/medialistwrapper/inc/glxmlwrapper_p.h Mon Sep 27 15:13:20 2010 +0530
@@ -1,19 +1,19 @@
/*
-* 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:
-*
-* Description:
-*
-*/
+ * 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:
+ *
+ * Description:
+ *
+ */
/*glxmlwrapper_p.h*/
@@ -40,207 +40,237 @@
class CGlxDefaultListAttributeContext;
class CGlxTitleFetcher;
class CGlxDRMUtility;
-//to use first call GlxMLWrapperPrivate::Instance then set the mode by calling GlxMLWrapperPrivate::SetContextMode()
-//CLASS Declaration
-class GlxMLWrapperPrivate : public QObject,public MGlxTitleFetcherObserver
+
+
+/**
+ * Class Description
+ * Medialist wrapper private class to acess the media property and thumbnail data
+ * To use first call GlxMLWrapperPrivate::Instance then set the mode by calling GlxMLWrapperPrivate::SetContextMode()
+ */
+class GlxMLWrapperPrivate: public QObject, public MGlxTitleFetcherObserver
{
-
+
public:
- /**
+ /**
* Two-phased constructor.
*
* @return Pointer to newly created object. NULL if creation fails. Avoiding Leave as would be called by a QT wrapper Class
*/
- static GlxMLWrapperPrivate* Instance(GlxMLWrapper* aMLWrapper, int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri,GlxFetcherFilterType fetcherFilterType);
+ static GlxMLWrapperPrivate* Instance( GlxMLWrapper* aMLWrapper, int aCollectionId,
+ int aHierarchyId, TGlxFilterItemType aFilterType, QString uri,
+ GlxFetcherFilterType fetcherFilterType );
/**
* Destructor.
*/
- ~GlxMLWrapperPrivate();
+ ~GlxMLWrapperPrivate();
/**
* for setting the attribute context mode will be used mainly for retreiving thumbnail of different sizes.
*/
- void SetContextMode(GlxContextMode aContextMode);
-
- /*
- * For removing the contect used
- */
- void RemoveContextMode(GlxContextMode aContextMode);
-
- /**
+ void SetContextMode( GlxContextMode aContextMode );
+
+ /**
+ * For removing the contect used
+ */
+ void RemoveContextMode( GlxContextMode aContextMode );
+
+ /**
* for retreiving the Media List Count.
*/
- int GetItemCount();
- /*
- * for retrieving the focus Index
- */
- int GetFocusIndex() const;
- /*
- * for setting the focus Index
- */
- void SetFocusIndex(int aItemIndex);
+ int GetItemCount();
+
+ /**
+ * for retrieving the focus Index
+ */
+ int GetFocusIndex() const;
+
+ /**
+ * for setting the focus Index
+ */
+ void SetFocusIndex( int aItemIndex );
- /*
- * for setting the focus Index
- */
- void SetSelectedIndex(int aItemIndex);
+ /**
+ * for setting the focus Index
+ */
+ void SetSelectedIndex( int aItemIndex );
- /*
- * for retrieving the visible window Index
- */
- int GetVisibleWindowIndex();
- /*
- * for setting the visible window Index
- */
- void SetVisibleWindowIndex(int aItemIndex);
+ /**
+ * for retrieving the visible window Index
+ */
+ int GetVisibleWindowIndex();
+
+ /**
+ * for setting the visible window Index
+ */
+ void SetVisibleWindowIndex( int aItemIndex );
+
+public:
+ // From MGlxTitleFetcherObserver
+ IMPORT_C void HandleTitleAvailableL( const TDesC& aTitle );
public:
- // From MGlxTitleFetcherObserver
- IMPORT_C void HandleTitleAvailableL(const TDesC& aTitle);
-
-public:
void HandleItemAddedL( TInt aStartIndex, TInt aEndIndex, MGlxMediaList* aList );
void HandleItemRemovedL( TInt aStartIndex, TInt aEndIndex, MGlxMediaList*/* aList */);
- void HandleAttributesAvailableL( TInt aItemIndex,
- const RArray<TMPXAttribute>& aAttributes, MGlxMediaList* aList );
- void HandleFocusChangedL( NGlxListDefs::TFocusChangeType aType, TInt aNewIndex, TInt aOldIndex, MGlxMediaList* aList );
- void HandleItemSelectedL(TInt aIndex, TBool aSelected, MGlxMediaList* aList );
+ void HandleAttributesAvailableL( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes,
+ MGlxMediaList* aList );
+ void HandleFocusChangedL( NGlxListDefs::TFocusChangeType aType, TInt aNewIndex, TInt aOldIndex,
+ MGlxMediaList* aList );
+ void HandleItemSelectedL( TInt aIndex, TBool aSelected, MGlxMediaList* aList );
void HandleMessageL( const CMPXMessage& aMessage, MGlxMediaList* aList );
void HandleError( TInt aError );
- //todo remove comment void HandleCommandCompleteL( CMPXCommand* aCommandResult, TInt aError,MGlxMediaList* aList );
+ //todo remove comment void HandleCommandCompleteL( CMPXCommand* aCommandResult, TInt aError,MGlxMediaList* aList );
void HandleMediaL( TInt aListIndex, MGlxMediaList* aList );
void HandleItemModifiedL( const RArray<TInt>& aItemIndexes, MGlxMediaList* aList );
- void HandlePopulatedL(MGlxMediaList* aList);
+ void HandlePopulatedL( MGlxMediaList* aList );
public:
- /**
- * RetrieveItemIcon()
- */
- HbIcon* RetrieveItemIcon(int index, GlxTBContextType aTBContextType);
- QImage RetrieveItemImage(int index, GlxTBContextType aTBContextType);
- QString RetrieveListTitle(int index);
- QString RetrieveListDesc(int index);
- QString RetrieveListSubTitle(int index);
- QString RetrieveItemUri(int index);
- QSize RetrieveItemDimension(int index);
- int RetrieveItemSize(int index);
- QDate RetrieveItemDate(int index);
- QTime RetrieveItemTime(int index);
- int RetrieveItemFrameCount(int aItemIndex);
- CFbsBitmap* RetrieveBitmap(int aItemIndex);
- int RetrieveListItemCount( int aItemIndex );
- bool isSystemItem( int aItemIndex );
- /*
- *Sets the context for fetcing comments
- */
- void SetDescontextL();
- QString RetrieveViewTitle();
- bool IsPopulated();
- bool IsDrmProtected(int index );
- bool IsDrmValid(int index);
- void setDrmValid(int index,bool valid);
- bool IsCorruptedImage( int aItemIndex );
+ /**
+ * RetrieveItemIcon() - To retreive the full screen and grid thumbnail
+ */
+ HbIcon* RetrieveItemIcon( int index, GlxTBContextType aTBContextType );
+ QImage RetrieveItemImage( int index, GlxTBContextType aTBContextType );
+ QString RetrieveListTitle( int index );
+ QString RetrieveListDesc( int index );
+ QString RetrieveListSubTitle( int index );
+ QString RetrieveItemUri( int index );
+ QSize RetrieveItemDimension( int index );
+ int RetrieveItemSize( int index );
+ QDate RetrieveItemDate( int index );
+ QTime RetrieveItemTime( int index );
+ int RetrieveItemFrameCount( int aItemIndex );
+ CFbsBitmap* RetrieveBitmap( int aItemIndex );
+ int RetrieveListItemCount( int aItemIndex );
+ bool isSystemItem( int aItemIndex );
+ /*
+ *Sets the context for fetcing comments
+ */
+ void SetDescontextL();
+ QString RetrieveViewTitle();
+ bool IsPopulated();
+ bool IsDrmProtected( int index );
+ bool IsDrmValid( int index );
+ void setDrmValid( int index, bool valid );
+ bool IsCorruptedImage( int aItemIndex );
private:
/**
* C++ default constructor.
*/
- GlxMLWrapperPrivate(GlxMLWrapper* aMLWrapper);
+ GlxMLWrapperPrivate( GlxMLWrapper* aMLWrapper );
/**
* By default Symbian 2nd phase constructor is private.
*/
- void ConstructL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri=NULL,GlxFetcherFilterType fetcherFilterType = EGlxFetcherFilterNone);
- /**
+ void ConstructL( int aCollectionId,
+ int aHierarchyId,
+ TGlxFilterItemType aFilterType,
+ QString uri = NULL,
+ GlxFetcherFilterType fetcherFilterType = EGlxFetcherFilterNone );
+ /**
* Create an instance of Media List.
*
* @leave with error code if creation fails.
*/
- void CreateMediaListL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,GlxFetcherFilterType fetcherFilterType = EGlxFetcherFilterNone);
- void CreateMediaListAlbumItemL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,GlxFetcherFilterType fetcherFilterType);
- void CreateMediaListFavoritesItemL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri);
- void SetThumbnailContextL(GlxContextMode aContextMode);
- void SetListContextL(GlxContextMode aContextMode);
- void SetFavouriteContextL();
- void CreateGridContextL();
- void CreateLsFsContextL();
- void CreatePtFsContextL();
- void RemoveGridContext();
- void RemoveLsFsContext();
- void RemovePtFsContext();
- void RemoveListContext();
- void RemoveFavouriteContext();
- void RemoveDescContext();
- //for the attribute filtering
- TInt CheckTBAttributesPresenceandSanity(TInt aItemIndex,
- const RArray<TMPXAttribute>& aAttributes, TMPXAttribute aThumbnailAttribute );
- void CheckGridTBAttribute(TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes);
- void CheckPtFsTBAttribute(TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes);
- void CheckLsFsTBAttribute(TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes);
- void CheckListAttributes(TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes);
- /*
- * to check the attributes returned for details view is present
- */
- void CheckDetailsAttributes(TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes);
- /*
- * convert the CFbsbitmap to HbIcon
- */
- HbIcon *convertFBSBitmapToHbIcon(CFbsBitmap* aBitmap);
- /*
- * convert the CFbsbitmap to HbIcon and scale down upto itemWidth and itemHeight
- */
- HbIcon * convertFBSBitmapToHbIcon(CFbsBitmap* aBitmap, TInt itemWidth, TInt itemHeight);
+ void CreateMediaListL( int aCollectionId,
+ int aHierarchyId,
+ TGlxFilterItemType aFilterType,
+ GlxFetcherFilterType fetcherFilterType = EGlxFetcherFilterNone );
+
+ void CreateMediaListAlbumItemL( int aCollectionId,
+ int aHierarchyId,
+ TGlxFilterItemType aFilterType, GlxFetcherFilterType fetcherFilterType );
+
+ void CreateMediaListFavoritesItemL( int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType, QString uri );
+ void SetThumbnailContextL( GlxContextMode aContextMode );
+ void SetListContextL( GlxContextMode aContextMode );
+ void SetFavouriteContextL();
+ void CreateGridContextL();
+ void CreateLsFsContextL();
+ void CreatePtFsContextL();
+ void RemoveGridContext();
+ void RemoveLsFsContext();
+ void RemovePtFsContext();
+ void RemoveListContext();
+ void RemoveFavouriteContext();
+ void RemoveDescContext();
+ //for the attribute filtering
+ TInt CheckTBAttributesPresenceandSanity( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes, TMPXAttribute aThumbnailAttribute );
+ void CheckGridTBAttribute( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes );
+ void CheckPtFsTBAttribute( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes );
+ void CheckLsFsTBAttribute( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes );
+ void CheckListAttributes( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes );
+ /*
+ * to check the attributes returned for details view is present
+ */
+ void CheckDetailsAttributes( TInt aItemIndex, const RArray<TMPXAttribute>& aAttributes );
+
+ /**
+ * convertFBSBitmapToHbIcon() - convert the CFbsbitmap to HbIcon
+ * @param - bitmap of media
+ * @return - Hbicon of the modia.
+ */
+ HbIcon *convertFBSBitmapToHbIcon( CFbsBitmap* aBitmap );
+
+ /*
+ * convertFBSBitmapToHbIcon() - convert the CFbsbitmap to HbIcon and scale down upto itemWidth and itemHeight
+ * @param - bitmap of media
+ * @param - expected HbIcon width
+ * @param - expected HbIcon height
+ * @param - aspect ratio parameter in the case of scaling the thumbnail
+ * @return - Hbicon of the modia.
+ */
+ HbIcon * convertFBSBitmapToHbIcon( CFbsBitmap* aBitmap, TInt itemWidth, TInt itemHeight, Qt::AspectRatioMode aspectRatio = Qt::KeepAspectRatio );
private:
// Instance of Media List
MGlxMediaList* iMediaList;
- //observer for ML
- CGlxMLGenericObserver* iMLGenericObserver;
- GlxContextMode iContextMode;
- //Parent QT based Wrapper
- GlxMLWrapper* iMLWrapper;
- //contexts
- // Thumbnail context
- CGlxThumbnailContext* iGridThumbnailContext;
+ //observer for ML
+ CGlxMLGenericObserver* iMLGenericObserver;
+ GlxContextMode iContextMode;
+ //Parent QT based Wrapper
+ GlxMLWrapper* iMLWrapper;
+ //contexts
+ // Thumbnail context
+ CGlxThumbnailContext* iGridThumbnailContext;
- // FS related thumbnail contexts
- CGlxDefaultThumbnailContext* iPtFsThumbnailContext;
- CGlxDefaultThumbnailContext* iLsFsThumbnailContext;
- CGlxDefaultThumbnailContext* iFocusFsThumbnailContext;
- CGlxDefaultThumbnailContext* iFocusGridThumbnailContext;
+ // FS related thumbnail contexts
+ CGlxDefaultThumbnailContext* iPtFsThumbnailContext;
+ CGlxDefaultThumbnailContext* iLsFsThumbnailContext;
+ CGlxDefaultThumbnailContext* iFocusFsThumbnailContext;
+ CGlxDefaultThumbnailContext* iFocusGridThumbnailContext;
- //List related contexts
- // Fetch context for retrieving title attribute
+ //List related contexts
+ // Fetch context for retrieving title attribute
CGlxDefaultListAttributeContext* iTitleAttributeContext;
// Fetch context for retrieving subtitle
CGlxDefaultListAttributeContext* iSubtitleAttributeContext;
//to find if the image is in favorites or not
- CGlxDefaultAttributeContext *iFavouriteContext;
-
- //To fetch the details
+ CGlxDefaultAttributeContext *iFavouriteContext;
+
+ //To fetch the details
CGlxDefaultAttributeContext *iDescContext;
-
+
CGlxThumbnailContext* iListThumbnailContext;
// for thumbnail context
TGlxFromVisibleIndexOutwardListIterator iThumbnailIterator;
- // Iterators for Grid and FS
+ // Iterators for Grid and FS
TGlxScrollingDirectionIterator iBlockyIterator;
TGlxFromManualIndexBlockyIterator iBlockyIteratorForFilmStrip;
- //Variables for checking the active contexts
- //todo merge all these variables into 1 and have bitwise operation on them
- TBool iGridContextActivated;
- TBool iLsFsContextActivated;
- TBool iPtFsContextActivated;
- TBool iLsListContextActivated; //currently not used as we have not implemented the logic for 3 thumbnails
- TBool iPtListContextActivated;
- TBool iDetailsContextActivated; //this is to fetch the comments attributes
- TBool iSelectionListContextActivated;
- CGlxTitleFetcher* iTitleFetcher;
- QImage iCorruptImage;
- QString iViewTitle;
- CGlxDRMUtility * iDrmUtility;
+ //Variables for checking the active contexts
+ //todo merge all these variables into 1 and have bitwise operation on them
+ TBool iGridContextActivated;
+ TBool iLsFsContextActivated;
+ TBool iPtFsContextActivated;
+ TBool iLsListContextActivated; //currently not used as we have not implemented the logic for 3 thumbnails
+ TBool iPtListContextActivated;
+ TBool iDetailsContextActivated; //this is to fetch the comments attributes
+ TBool iSelectionListContextActivated;
+ CGlxTitleFetcher* iTitleFetcher;
+ QImage iCorruptImage;
+ QString iViewTitle;
+ CGlxDRMUtility * iDrmUtility;
};
#endif //GLXMLWRAPPER_P_H
--- a/ui/uiengine/medialistwrapper/src/glxmlwrapper_p.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/uiengine/medialistwrapper/src/glxmlwrapper_p.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -53,10 +53,17 @@
const TInt KTBAttributeUnavailable(0);
const TInt KTBAttributeCorrupt(-1);
const TInt KListDataWindowSize(10);
+//for grid thumbnail
const TInt KGridTNWIdth (127);
const TInt KGridTNHeight (110);
const TInt KGridTNPTWIdth (119);
const TInt KGridTNPTHeight (103);
+//for image strip thumbnail
+const TInt KImageStripLSTNWIdth (95);
+const TInt KImageStripLSTNHeight (83);
+const TInt KImageStripPTTNWIdth (89);
+const TInt KImageStripPTTNHeight (78);
+
const TInt KFullScreenTNLSWidth (640);
const TInt KFullScreenTNLSHeight (360);
const TInt KFullScreenTNPTWidth (360);
@@ -689,7 +696,7 @@
{
TInt itemHeight = 0;
TInt itemWidth = 0;
- switch (aTBContextType) {
+ switch ( aTBContextType ) {
case GlxTBContextGrid: {
itemHeight = KGridTNHeight;
itemWidth = KGridTNWIdth;
@@ -720,10 +727,16 @@
if ( value && value->iBitmap != NULL ) {
if( aTBContextType == GlxTBContextGrid ) {
- GLX_LOG_INFO1("### GlxMLWrapperPrivate::RetrieveItemIcon value-Index is %d",aItemIndex);
+ GLX_LOG_INFO1("### GlxMLWrapperPrivate::RetrieveItemIcon value-Index is %d",aItemIndex );
if ( iContextMode == GlxContextPtGrid ) {
- return convertFBSBitmapToHbIcon( value->iBitmap , KGridTNPTWIdth, KGridTNPTHeight);
+ return convertFBSBitmapToHbIcon( value->iBitmap , KGridTNPTWIdth, KGridTNPTHeight );
+ }
+ else if ( iContextMode == GlxContextLsFs ) {
+ return convertFBSBitmapToHbIcon( value->iBitmap , KImageStripLSTNWIdth, KImageStripLSTNHeight, Qt::IgnoreAspectRatio );
+ }
+ else if ( iContextMode == GlxContextPtFs ) {
+ return convertFBSBitmapToHbIcon( value->iBitmap , KImageStripPTTNWIdth, KImageStripPTTNHeight, Qt::IgnoreAspectRatio );
}
else {
return convertFBSBitmapToHbIcon( value->iBitmap );
@@ -744,72 +757,63 @@
return NULL;
}
-QImage GlxMLWrapperPrivate::RetrieveItemImage(int aItemIndex, GlxTBContextType aTBContextType)
- {
+QImage GlxMLWrapperPrivate::RetrieveItemImage( int aItemIndex, GlxTBContextType aTBContextType )
+{
TInt itemHeight = 0;
TInt itemWidth = 0;
- switch (aTBContextType)
- {
- case GlxTBContextGrid:
- {
- itemHeight = KGridTNHeight;
- itemWidth = KGridTNWIdth;
- }
- break;
- case GlxTBContextPtFs:
- {
- itemHeight = KFullScreenTNPTHeight;
- itemWidth = KFullScreenTNPTWidth;
- }
- break;
- case GlxTBContextLsFs:
- {
- itemHeight = KFullScreenTNLSHeight;
- itemWidth = KFullScreenTNLSWidth;
- }
- break;
- }
+ switch ( aTBContextType ) {
+ case GlxTBContextGrid:
+ itemHeight = KGridTNHeight;
+ itemWidth = KGridTNWIdth;
+ break;
+
+ case GlxTBContextPtFs:
+ itemHeight = KFullScreenTNPTHeight;
+ itemWidth = KFullScreenTNPTWidth;
+ break;
+
+ case GlxTBContextLsFs:
+ itemHeight = KFullScreenTNLSHeight;
+ itemWidth = KFullScreenTNLSWidth;
+ break;
+ }
+
const TGlxMedia& item = iMediaList->Item( aItemIndex );
- TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail,
- GlxFullThumbnailAttributeId( ETrue,itemWidth,itemHeight ) );
- const CGlxThumbnailAttribute* value = item.ThumbnailAttribute(
- thumbnailAttribute );
- TInt tnError = GlxErrorManager::HasAttributeErrorL(
- item.Properties(), KGlxMediaIdThumbnail );
- TSize iconSize(itemWidth, itemHeight);
+ TMPXAttribute thumbnailAttribute( KGlxMediaIdThumbnail, GlxFullThumbnailAttributeId( ETrue, itemWidth, itemHeight ) );
+ const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute );
+ TInt tnError = GlxErrorManager::HasAttributeErrorL( item.Properties(), KGlxMediaIdThumbnail );
- if (value && value->iBitmap != NULL)
- {
+ if ( value && value->iBitmap != NULL ) {
value->iBitmap->LockHeap();
TUint32 *tempData = value->iBitmap->DataAddress();
- uchar *data = (uchar *)(tempData);
- int bytesPerLine = value->iBitmap->ScanLineLength(value->iBitmap->SizeInPixels().iWidth , value->iBitmap->DisplayMode());
- QImage image = QImage(data, value->iBitmap->SizeInPixels().iWidth, value->iBitmap->SizeInPixels().iHeight, bytesPerLine, QImage::Format_RGB16).convertToFormat(QImage::Format_ARGB32_Premultiplied);
+ uchar *data = (uchar *) ( tempData );
+ int bytesPerLine = value->iBitmap->ScanLineLength( value->iBitmap->SizeInPixels().iWidth, value->iBitmap->DisplayMode() );
+ QImage image = QImage( data,
+ value->iBitmap->SizeInPixels().iWidth,
+ value->iBitmap->SizeInPixels().iHeight,
+ bytesPerLine,
+ QImage::Format_RGB16 ).convertToFormat( QImage::Format_ARGB32_Premultiplied );
value->iBitmap->UnlockHeap();
return image;
- }
- else if( tnError == KErrCANoRights)
- {
+ }
+ else if ( tnError == KErrCANoRights ) {
//handle DRM case
- }
- else if( tnError )
- {
- if(iCorruptImage.isNull())
- {
- HbIcon *icon = new HbIcon(GLXICON_CORRUPT);
- if(!icon->isNull())
- {
+ }
+ else if ( tnError ) {
+ if ( iCorruptImage.isNull() ) {
+ HbIcon *icon = new HbIcon( GLXICON_CORRUPT );
+ if ( !icon->isNull() ) {
// this image Creation is Slow.
// But what to do, Q class's Does not undersatnd our Localised File names
iCorruptImage = icon->pixmap().toImage();
- }
+ }
delete icon;
- }
+ }
return iCorruptImage;
- }
+ }
- return QImage();
- }
+ return QImage();
+}
// ---------------------------------------------------------------------------
// RetrieveListTitle
// ---------------------------------------------------------------------------
@@ -1026,7 +1030,7 @@
return defaultBitmap;
}
}
-}
+ }
// ---------------------------------------------------------------------------
// HandleItemAddedL
@@ -1340,7 +1344,7 @@
return targetIcon;
}
-HbIcon * GlxMLWrapperPrivate::convertFBSBitmapToHbIcon(CFbsBitmap* aBitmap, TInt itemWidth, TInt itemHeight)
+HbIcon * GlxMLWrapperPrivate::convertFBSBitmapToHbIcon(CFbsBitmap* aBitmap, TInt itemWidth, TInt itemHeight, Qt::AspectRatioMode aspectRatio )
{
GLX_LOG_INFO1("### GlxMLWrapperPrivate::convertFBSBitmapToHbIcon 1 %d", 0);
@@ -1353,7 +1357,7 @@
QPixmap pixmap = QPixmap::fromImage(image);
if ( aBitmap->SizeInPixels().iWidth > itemWidth || aBitmap->SizeInPixels().iHeight > itemHeight ) {
- pixmap = pixmap.scaled( itemWidth, itemHeight, Qt::KeepAspectRatio );
+ pixmap = pixmap.scaled( itemWidth, itemHeight, aspectRatio );
}
aBitmap->UnlockHeap();
--- a/ui/uiengine/model/bwins/glxmediamodelu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/uiengine/model/bwins/glxmediamodelu.def Mon Sep 27 15:13:20 2010 +0530
@@ -5,41 +5,44 @@
?getStaticMetaObject@GlxMediaModel@@SAABUQMetaObject@@XZ @ 4 NONAME ; struct QMetaObject const & GlxMediaModel::getStaticMetaObject(void)
?updateItemIcon@GlxMediaModel@@AAEXHPAVHbIcon@@W4GlxTBContextType@@@Z @ 5 NONAME ; void GlxMediaModel::updateItemIcon(int, class HbIcon *, enum GlxTBContextType)
?qt_metacast@GlxMediaModel@@UAEPAXPBD@Z @ 6 NONAME ; void * GlxMediaModel::qt_metacast(char const *)
- ?rowCount@GlxMediaModel@@UBEHABVQModelIndex@@@Z @ 7 NONAME ; int GlxMediaModel::rowCount(class QModelIndex const &) const
- ?setSelectedIndex@GlxMediaModel@@AAEXABVQModelIndex@@@Z @ 8 NONAME ; void GlxMediaModel::setSelectedIndex(class QModelIndex const &)
- ?itemUpdated@GlxMediaModel@@QAEXHW4GlxTBContextType@@@Z @ 9 NONAME ; void GlxMediaModel::itemUpdated(int, enum GlxTBContextType)
- ?setFocusIndex@GlxMediaModel@@AAEXABVQModelIndex@@@Z @ 10 NONAME ; void GlxMediaModel::setFocusIndex(class QModelIndex const &)
- ?setContextMode@GlxMediaModel@@AAEXW4GlxContextMode@@@Z @ 11 NONAME ; void GlxMediaModel::setContextMode(enum GlxContextMode)
- ?trUtf8@GlxMediaModel@@SA?AVQString@@PBD0H@Z @ 12 NONAME ; class QString GlxMediaModel::trUtf8(char const *, char const *, int)
- ?staticMetaObject@GlxMediaModel@@2UQMetaObject@@B @ 13 NONAME ; struct QMetaObject const GlxMediaModel::staticMetaObject
- ?GetGridIconItem@GlxMediaModel@@ABEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 14 NONAME ; class HbIcon * GlxMediaModel::GetGridIconItem(int, enum GlxTBContextType) const
- ??_EGlxMediaModel@@UAE@I@Z @ 15 NONAME ; GlxMediaModel::~GlxMediaModel(unsigned int)
- ?getFocusIndex@GlxMediaModel@@ABE?AVQModelIndex@@XZ @ 16 NONAME ; class QModelIndex GlxMediaModel::getFocusIndex(void) const
- ?getCorruptDefaultIcon@GlxMediaModel@@ABEPAVHbIcon@@ABVQModelIndex@@@Z @ 17 NONAME ; class HbIcon * GlxMediaModel::getCorruptDefaultIcon(class QModelIndex const &) const
- ?tr@GlxMediaModel@@SA?AVQString@@PBD0H@Z @ 18 NONAME ; class QString GlxMediaModel::tr(char const *, char const *, int)
- ?itemCorrupted@GlxMediaModel@@QAEXH@Z @ 19 NONAME ; void GlxMediaModel::itemCorrupted(int)
- ?addExternalItems@GlxMediaModel@@QAEXPAV?$QList@UGlxInterfaceParams@@@@@Z @ 20 NONAME ; void GlxMediaModel::addExternalItems(class QList<struct GlxInterfaceParams> *)
- ?modelpopulated@GlxMediaModel@@QAEXXZ @ 21 NONAME ; void GlxMediaModel::modelpopulated(void)
- ?parent@GlxMediaModel@@UBE?AVQModelIndex@@ABV2@@Z @ 22 NONAME ; class QModelIndex GlxMediaModel::parent(class QModelIndex const &) const
- ?tr@GlxMediaModel@@SA?AVQString@@PBD0@Z @ 23 NONAME ; class QString GlxMediaModel::tr(char const *, char const *)
- ?itemsRemoved@GlxMediaModel@@QAEXHH@Z @ 24 NONAME ; void GlxMediaModel::itemsRemoved(int, int)
- ?thumbnailPopulatedCheck@GlxMediaModel@@AAEXH@Z @ 25 NONAME ; void GlxMediaModel::thumbnailPopulatedCheck(int)
- ?columnCount@GlxMediaModel@@UBEHABVQModelIndex@@@Z @ 26 NONAME ; int GlxMediaModel::columnCount(class QModelIndex const &) const
- ?GetFsIconItem@GlxMediaModel@@ABEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 27 NONAME ; class HbIcon * GlxMediaModel::GetFsIconItem(int, enum GlxTBContextType) const
- ??1GlxMediaModel@@UAE@XZ @ 28 NONAME ; GlxMediaModel::~GlxMediaModel(void)
- ?qt_metacall@GlxMediaModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 29 NONAME ; int GlxMediaModel::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?updateDetailsView@GlxMediaModel@@IAEXXZ @ 30 NONAME ; void GlxMediaModel::updateDetailsView(void)
- ?albumTitleUpdated@GlxMediaModel@@QAEXVQString@@@Z @ 31 NONAME ; void GlxMediaModel::albumTitleUpdated(class QString)
- ?setData@GlxMediaModel@@UAE_NABVQModelIndex@@ABVQVariant@@H@Z @ 32 NONAME ; bool GlxMediaModel::setData(class QModelIndex const &, class QVariant const &, int)
- ?data@GlxMediaModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 33 NONAME ; class QVariant GlxMediaModel::data(class QModelIndex const &, int) const
- ?clearExternalItems@GlxMediaModel@@QAEXXZ @ 34 NONAME ; void GlxMediaModel::clearExternalItems(void)
- ?trUtf8@GlxMediaModel@@SA?AVQString@@PBD0@Z @ 35 NONAME ; class QString GlxMediaModel::trUtf8(char const *, char const *)
- ?iconAvailable@GlxMediaModel@@IBEXHPAVHbIcon@@W4GlxTBContextType@@@Z @ 36 NONAME ; void GlxMediaModel::iconAvailable(int, class HbIcon *, enum GlxTBContextType) const
- ?populated@GlxMediaModel@@IAEXXZ @ 37 NONAME ; void GlxMediaModel::populated(void)
- ??0GlxMediaModel@@QAE@AAVGlxModelParm@@@Z @ 38 NONAME ; GlxMediaModel::GlxMediaModel(class GlxModelParm &)
- ?removeContextMode@GlxMediaModel@@AAEXW4GlxContextMode@@@Z @ 39 NONAME ; void GlxMediaModel::removeContextMode(enum GlxContextMode)
- ?updateDetailItems@GlxMediaModel@@QAEXXZ @ 40 NONAME ; void GlxMediaModel::updateDetailItems(void)
- ?index@GlxMediaModel@@UBE?AVQModelIndex@@HHABV2@@Z @ 41 NONAME ; class QModelIndex GlxMediaModel::index(int, int, class QModelIndex const &) const
- ?GetExternalIconItem@GlxMediaModel@@ABEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 42 NONAME ; class HbIcon * GlxMediaModel::GetExternalIconItem(int, enum GlxTBContextType) const
- ?albumTitleAvailable@GlxMediaModel@@IAEXVQString@@@Z @ 43 NONAME ; void GlxMediaModel::albumTitleAvailable(class QString)
+ ?getFullScreenImage@GlxMediaModel@@ABE?AVQImage@@H@Z @ 7 NONAME ; class QImage GlxMediaModel::getFullScreenImage(int) const
+ ?rowCount@GlxMediaModel@@UBEHABVQModelIndex@@@Z @ 8 NONAME ; int GlxMediaModel::rowCount(class QModelIndex const &) const
+ ?setSelectedIndex@GlxMediaModel@@AAEXABVQModelIndex@@@Z @ 9 NONAME ; void GlxMediaModel::setSelectedIndex(class QModelIndex const &)
+ ?itemUpdated@GlxMediaModel@@QAEXHW4GlxTBContextType@@@Z @ 10 NONAME ; void GlxMediaModel::itemUpdated(int, enum GlxTBContextType)
+ ?getFullScreenIcon@GlxMediaModel@@ABE?AVHbIcon@@H@Z @ 11 NONAME ; class HbIcon GlxMediaModel::getFullScreenIcon(int) const
+ ?setFocusIndex@GlxMediaModel@@AAEXABVQModelIndex@@@Z @ 12 NONAME ; void GlxMediaModel::setFocusIndex(class QModelIndex const &)
+ ?setContextMode@GlxMediaModel@@AAEXW4GlxContextMode@@@Z @ 13 NONAME ; void GlxMediaModel::setContextMode(enum GlxContextMode)
+ ?itemProperty@GlxMediaModel@@QBE?AVQVariant@@ABVQModelIndex@@H@Z @ 14 NONAME ; class QVariant GlxMediaModel::itemProperty(class QModelIndex const &, int) const
+ ?trUtf8@GlxMediaModel@@SA?AVQString@@PBD0H@Z @ 15 NONAME ; class QString GlxMediaModel::trUtf8(char const *, char const *, int)
+ ?staticMetaObject@GlxMediaModel@@2UQMetaObject@@B @ 16 NONAME ; struct QMetaObject const GlxMediaModel::staticMetaObject
+ ?GetGridIconItem@GlxMediaModel@@ABEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 17 NONAME ; class HbIcon * GlxMediaModel::GetGridIconItem(int, enum GlxTBContextType) const
+ ??_EGlxMediaModel@@UAE@I@Z @ 18 NONAME ; GlxMediaModel::~GlxMediaModel(unsigned int)
+ ?collectionProperty@GlxMediaModel@@QBE?AVQVariant@@H@Z @ 19 NONAME ; class QVariant GlxMediaModel::collectionProperty(int) const
+ ?getFocusIndex@GlxMediaModel@@ABE?AVQModelIndex@@XZ @ 20 NONAME ; class QModelIndex GlxMediaModel::getFocusIndex(void) const
+ ?getCorruptDefaultIcon@GlxMediaModel@@ABEPAVHbIcon@@ABVQModelIndex@@@Z @ 21 NONAME ; class HbIcon * GlxMediaModel::getCorruptDefaultIcon(class QModelIndex const &) const
+ ?tr@GlxMediaModel@@SA?AVQString@@PBD0H@Z @ 22 NONAME ; class QString GlxMediaModel::tr(char const *, char const *, int)
+ ?itemCorrupted@GlxMediaModel@@QAEXH@Z @ 23 NONAME ; void GlxMediaModel::itemCorrupted(int)
+ ?modelpopulated@GlxMediaModel@@QAEXXZ @ 24 NONAME ; void GlxMediaModel::modelpopulated(void)
+ ?parent@GlxMediaModel@@UBE?AVQModelIndex@@ABV2@@Z @ 25 NONAME ; class QModelIndex GlxMediaModel::parent(class QModelIndex const &) const
+ ?tr@GlxMediaModel@@SA?AVQString@@PBD0@Z @ 26 NONAME ; class QString GlxMediaModel::tr(char const *, char const *)
+ ?thumbnailPopulatedCheck@GlxMediaModel@@AAEXH@Z @ 27 NONAME ; void GlxMediaModel::thumbnailPopulatedCheck(int)
+ ?itemsRemoved@GlxMediaModel@@QAEXHH@Z @ 28 NONAME ; void GlxMediaModel::itemsRemoved(int, int)
+ ?columnCount@GlxMediaModel@@UBEHABVQModelIndex@@@Z @ 29 NONAME ; int GlxMediaModel::columnCount(class QModelIndex const &) const
+ ?GetFsIconItem@GlxMediaModel@@ABEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 30 NONAME ; class HbIcon * GlxMediaModel::GetFsIconItem(int, enum GlxTBContextType) const
+ ??1GlxMediaModel@@UAE@XZ @ 31 NONAME ; GlxMediaModel::~GlxMediaModel(void)
+ ?qt_metacall@GlxMediaModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 32 NONAME ; int GlxMediaModel::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?updateDetailsView@GlxMediaModel@@IAEXXZ @ 33 NONAME ; void GlxMediaModel::updateDetailsView(void)
+ ?albumTitleUpdated@GlxMediaModel@@QAEXVQString@@@Z @ 34 NONAME ; void GlxMediaModel::albumTitleUpdated(class QString)
+ ?itemImageData@GlxMediaModel@@QBE?AVQVariant@@ABVQModelIndex@@H@Z @ 35 NONAME ; class QVariant GlxMediaModel::itemImageData(class QModelIndex const &, int) const
+ ?setData@GlxMediaModel@@UAE_NABVQModelIndex@@ABVQVariant@@H@Z @ 36 NONAME ; bool GlxMediaModel::setData(class QModelIndex const &, class QVariant const &, int)
+ ?data@GlxMediaModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 37 NONAME ; class QVariant GlxMediaModel::data(class QModelIndex const &, int) const
+ ?trUtf8@GlxMediaModel@@SA?AVQString@@PBD0@Z @ 38 NONAME ; class QString GlxMediaModel::trUtf8(char const *, char const *)
+ ?iconAvailable@GlxMediaModel@@IBEXHPAVHbIcon@@W4GlxTBContextType@@@Z @ 39 NONAME ; void GlxMediaModel::iconAvailable(int, class HbIcon *, enum GlxTBContextType) const
+ ?populated@GlxMediaModel@@IAEXXZ @ 40 NONAME ; void GlxMediaModel::populated(void)
+ ?gridToFullscreenIcon@GlxMediaModel@@ABE?AVHbIcon@@PAV2@H@Z @ 41 NONAME ; class HbIcon GlxMediaModel::gridToFullscreenIcon(class HbIcon *, int) const
+ ??0GlxMediaModel@@QAE@AAVGlxModelParm@@@Z @ 42 NONAME ; GlxMediaModel::GlxMediaModel(class GlxModelParm &)
+ ?removeContextMode@GlxMediaModel@@AAEXW4GlxContextMode@@@Z @ 43 NONAME ; void GlxMediaModel::removeContextMode(enum GlxContextMode)
+ ?updateDetailItems@GlxMediaModel@@QAEXXZ @ 44 NONAME ; void GlxMediaModel::updateDetailItems(void)
+ ?index@GlxMediaModel@@UBE?AVQModelIndex@@HHABV2@@Z @ 45 NONAME ; class QModelIndex GlxMediaModel::index(int, int, class QModelIndex const &) const
+ ?albumTitleAvailable@GlxMediaModel@@IAEXVQString@@@Z @ 46 NONAME ; void GlxMediaModel::albumTitleAvailable(class QString)
--- a/ui/uiengine/model/eabi/glxmediamodelu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/uiengine/model/eabi/glxmediamodelu.def Mon Sep 27 15:13:20 2010 +0530
@@ -9,37 +9,40 @@
_ZN13GlxMediaModel14modelpopulatedEv @ 8 NONAME
_ZN13GlxMediaModel14setContextModeE14GlxContextMode @ 9 NONAME
_ZN13GlxMediaModel14updateItemIconEiP6HbIcon16GlxTBContextType @ 10 NONAME
- _ZN13GlxMediaModel16addExternalItemsEP5QListI18GlxInterfaceParamsE @ 11 NONAME
- _ZN13GlxMediaModel16setSelectedIndexERK11QModelIndex @ 12 NONAME
- _ZN13GlxMediaModel16staticMetaObjectE @ 13 NONAME DATA 16
- _ZN13GlxMediaModel17albumTitleUpdatedE7QString @ 14 NONAME
- _ZN13GlxMediaModel17removeContextModeE14GlxContextMode @ 15 NONAME
- _ZN13GlxMediaModel17updateDetailItemsEv @ 16 NONAME
- _ZN13GlxMediaModel17updateDetailsViewEv @ 17 NONAME
- _ZN13GlxMediaModel18clearExternalItemsEv @ 18 NONAME
- _ZN13GlxMediaModel18thumbnailPopulatedEv @ 19 NONAME
- _ZN13GlxMediaModel19albumTitleAvailableE7QString @ 20 NONAME
- _ZN13GlxMediaModel19getStaticMetaObjectEv @ 21 NONAME
- _ZN13GlxMediaModel23thumbnailPopulatedCheckEi @ 22 NONAME
- _ZN13GlxMediaModel7setDataERK11QModelIndexRK8QVarianti @ 23 NONAME
- _ZN13GlxMediaModel9populatedEv @ 24 NONAME
- _ZN13GlxMediaModelC1ER12GlxModelParm @ 25 NONAME
- _ZN13GlxMediaModelC2ER12GlxModelParm @ 26 NONAME
- _ZN13GlxMediaModelD0Ev @ 27 NONAME
- _ZN13GlxMediaModelD1Ev @ 28 NONAME
- _ZN13GlxMediaModelD2Ev @ 29 NONAME
- _ZNK13GlxMediaModel10metaObjectEv @ 30 NONAME
- _ZNK13GlxMediaModel11columnCountERK11QModelIndex @ 31 NONAME
- _ZNK13GlxMediaModel13GetFsIconItemEi16GlxTBContextType @ 32 NONAME
- _ZNK13GlxMediaModel13getFocusIndexEv @ 33 NONAME
- _ZNK13GlxMediaModel13iconAvailableEiP6HbIcon16GlxTBContextType @ 34 NONAME
+ _ZN13GlxMediaModel16setSelectedIndexERK11QModelIndex @ 11 NONAME
+ _ZN13GlxMediaModel16staticMetaObjectE @ 12 NONAME DATA 16
+ _ZN13GlxMediaModel17albumTitleUpdatedE7QString @ 13 NONAME
+ _ZN13GlxMediaModel17removeContextModeE14GlxContextMode @ 14 NONAME
+ _ZN13GlxMediaModel17updateDetailItemsEv @ 15 NONAME
+ _ZN13GlxMediaModel17updateDetailsViewEv @ 16 NONAME
+ _ZN13GlxMediaModel18thumbnailPopulatedEv @ 17 NONAME
+ _ZN13GlxMediaModel19albumTitleAvailableE7QString @ 18 NONAME
+ _ZN13GlxMediaModel19getStaticMetaObjectEv @ 19 NONAME
+ _ZN13GlxMediaModel23thumbnailPopulatedCheckEi @ 20 NONAME
+ _ZN13GlxMediaModel7setDataERK11QModelIndexRK8QVarianti @ 21 NONAME
+ _ZN13GlxMediaModel9populatedEv @ 22 NONAME
+ _ZN13GlxMediaModelC1ER12GlxModelParm @ 23 NONAME
+ _ZN13GlxMediaModelC2ER12GlxModelParm @ 24 NONAME
+ _ZN13GlxMediaModelD0Ev @ 25 NONAME
+ _ZN13GlxMediaModelD1Ev @ 26 NONAME
+ _ZN13GlxMediaModelD2Ev @ 27 NONAME
+ _ZNK13GlxMediaModel10metaObjectEv @ 28 NONAME
+ _ZNK13GlxMediaModel11columnCountERK11QModelIndex @ 29 NONAME
+ _ZNK13GlxMediaModel12itemPropertyERK11QModelIndexi @ 30 NONAME
+ _ZNK13GlxMediaModel13GetFsIconItemEi16GlxTBContextType @ 31 NONAME
+ _ZNK13GlxMediaModel13getFocusIndexEv @ 32 NONAME
+ _ZNK13GlxMediaModel13iconAvailableEiP6HbIcon16GlxTBContextType @ 33 NONAME
+ _ZNK13GlxMediaModel13itemImageDataERK11QModelIndexi @ 34 NONAME
_ZNK13GlxMediaModel15GetGridIconItemEi16GlxTBContextType @ 35 NONAME
- _ZNK13GlxMediaModel19GetExternalIconItemEi16GlxTBContextType @ 36 NONAME
- _ZNK13GlxMediaModel21getCorruptDefaultIconERK11QModelIndex @ 37 NONAME
- _ZNK13GlxMediaModel4dataERK11QModelIndexi @ 38 NONAME
- _ZNK13GlxMediaModel5indexEiiRK11QModelIndex @ 39 NONAME
- _ZNK13GlxMediaModel6parentERK11QModelIndex @ 40 NONAME
- _ZNK13GlxMediaModel8rowCountERK11QModelIndex @ 41 NONAME
- _ZTI13GlxMediaModel @ 42 NONAME
- _ZTV13GlxMediaModel @ 43 NONAME
+ _ZNK13GlxMediaModel17getFullScreenIconEi @ 36 NONAME
+ _ZNK13GlxMediaModel18collectionPropertyEi @ 37 NONAME
+ _ZNK13GlxMediaModel18getFullScreenImageEi @ 38 NONAME
+ _ZNK13GlxMediaModel20gridToFullscreenIconEP6HbIconi @ 39 NONAME
+ _ZNK13GlxMediaModel21getCorruptDefaultIconERK11QModelIndex @ 40 NONAME
+ _ZNK13GlxMediaModel4dataERK11QModelIndexi @ 41 NONAME
+ _ZNK13GlxMediaModel5indexEiiRK11QModelIndex @ 42 NONAME
+ _ZNK13GlxMediaModel6parentERK11QModelIndex @ 43 NONAME
+ _ZNK13GlxMediaModel8rowCountERK11QModelIndex @ 44 NONAME
+ _ZTI13GlxMediaModel @ 45 NONAME
+ _ZTV13GlxMediaModel @ 46 NONAME
--- a/ui/uiengine/model/mediamodel/inc/glxmediamodel.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/uiengine/model/mediamodel/inc/glxmediamodel.h Mon Sep 27 15:13:20 2010 +0530
@@ -42,6 +42,8 @@
class GLX_MEDIAMODEL_EXPORT GlxMediaModel : public QAbstractItemModel
{
Q_OBJECT
+friend class TestGlxMediaModel;
+
public :
/**
* Constructor
@@ -72,6 +74,10 @@
*/
QModelIndex parent( const QModelIndex &child ) const;
+ QVariant itemImageData( const QModelIndex &index, int role ) const;
+ QVariant collectionProperty( int role ) const;
+ QVariant itemProperty( const QModelIndex &index, int role ) const;
+
/**
* data() - return the data of corresponding role.
* @param - model index of interested item.
@@ -94,16 +100,7 @@
*/
QModelIndex index( int row, int column, const QModelIndex &parent = QModelIndex() ) const;
- /**
- * addExternalItems() - for setting external image data to the model.
- */
- void addExternalItems( GlxExternalData* externalItems );
- /**
- * clearExternalItems() - for removing all external image data from the model.
- */
- void clearExternalItems();
-
signals :
/**
* albumTitleAvailable() - emit this signal when album title is available.
@@ -150,17 +147,15 @@
* @param - media list context type
* @return - return the hbicon of the item
*/
- HbIcon* GetFsIconItem( int itemIndex,GlxTBContextType tbContextType )const;
+ HbIcon* GetFsIconItem( int itemIndex, GlxTBContextType tbContextType )const;
+
+ HbIcon gridToFullscreenIcon( HbIcon * icon, int itemIndex ) const;
+
+ HbIcon getFullScreenIcon( int itemIndex ) const;
+
+ QImage getFullScreenImage( int itemIndex ) const;
/**
- * GetExternalIconItem() - To fetch the grid size thumbnail of external item.
- * @param - item index
- * @param - media list context type
- * @return - return the hbicon of the item
- */
- HbIcon* GetExternalIconItem( int itemIndex,GlxTBContextType tbContextType )const;
-
- /**
* setContextMode() - for setting the attribute context mode will be used mainly for
* retreiving thumbnail of different sizes.
*/
@@ -258,23 +253,18 @@
void updateItemIcon( int itemIndex, HbIcon* itemIcon, GlxTBContextType tbContextType );
private:
- GlxMLWrapper* mMLWrapper;
- QCache<int, HbIcon> itemIconCache;
- QCache<int, HbIcon> itemFsIconCache;
- HbIcon* m_DefaultIcon;
- HbIcon* m_CorruptIcon;
-
- GlxContextMode mContextMode;
- //for external data to be populated by model
- GlxExternalData* mExternalItems;
- QCache<int, HbIcon> itemExternalIconCache;
- int externalDataCount;
- int mFocusIndex;
- int mSubState;
- GlxDRMUtilityWrapper* mDRMUtilityWrapper;
- int mTempVisibleWindowIndex;
- bool thumbnailPopulatedFlag;
- bool mPaintPage;
+ GlxMLWrapper* mMLWrapper;
+ QCache<int, HbIcon> itemIconCache;
+ QCache<int, HbIcon> itemFsIconCache;
+ HbIcon* m_DefaultIcon;
+ HbIcon* m_CorruptIcon;
+ GlxContextMode mContextMode;
+ int mFocusIndex;
+ int mSubState;
+ GlxDRMUtilityWrapper* mDRMUtilityWrapper;
+ int mTempVisibleWindowIndex;
+ bool thumbnailPopulatedFlag;
+ bool mPaintPage;
};
--- a/ui/uiengine/model/mediamodel/src/glxmediamodel.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/uiengine/model/mediamodel/src/glxmediamodel.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -1,21 +1,19 @@
/*
-* 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:
-*
-* Description: ?Description
-*
-*/
-
-
+ * 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:
+ *
+ * Description: ?Description
+ *
+ */
#include <glxmediamodel.h>
#include <hbicon.h>
@@ -39,136 +37,105 @@
#define DELTA_IMAGE 5
#define INITIAL_POPULATE_IMAGE_COUNT 30
-GlxMediaModel::GlxMediaModel(GlxModelParm & modelParm)
+GlxMediaModel::GlxMediaModel( GlxModelParm & modelParm )
{
- qDebug("GlxMediaModel::GlxMediaModel");
-
- thumbnailPopulatedFlag = modelParm.collection() == KGlxCollectionPluginAllImplementationUid ? false : true;
- mPaintPage = modelParm.collection() == KGlxCollectionPluginAllImplementationUid ? true : false;
- mMLWrapper = new GlxMLWrapper(modelParm.collection(),0,modelParm.filterType(),NULL,modelParm.fetcherFiterType());
- mMLWrapper->setContextMode( modelParm.contextMode() );
- mContextMode = modelParm.contextMode( ) ;
- mDRMUtilityWrapper = new GlxDRMUtilityWrapper();
-
- int err = connect(mMLWrapper, SIGNAL(updateItem(int, GlxTBContextType)), this, SLOT(itemUpdated(int, GlxTBContextType)));
- qDebug("updateItem() connection status %d", err);
- err = connect(mMLWrapper, SIGNAL(itemCorrupted(int)), this, SLOT(itemCorrupted(int)));
- qDebug("itemCorrupted() connection status %d", err);
- err = connect(mMLWrapper, SIGNAL(insertItems(int, int)), this, SLOT(itemsAdded(int, int)));
- qDebug("updateItem() connection status %d", err);
- err = connect(mMLWrapper, SIGNAL(removeItems(int, int)), this, SLOT(itemsRemoved(int, int)));
- qDebug("updateItem() connection status %d", err);
- err = connect(this, SIGNAL(iconAvailable(int, HbIcon*, GlxTBContextType)), this, SLOT(updateItemIcon(int, HbIcon*, GlxTBContextType)));
- qDebug("iconAvailable() connection status %d", err);
- err = connect( mMLWrapper, SIGNAL(updateAlbumTitle(QString)), this, SLOT(albumTitleUpdated(QString)));
- qDebug("updateAlbumTitle() connection status %d", err);
- err = connect(mMLWrapper, SIGNAL(populated()), this, SLOT(modelpopulated()));
- err = connect(mMLWrapper, SIGNAL(updateDetails()), this, SLOT(updateDetailItems()));
-
- itemIconCache.setMaxCost(20); //Changed While Doing Media Wall
- itemFsIconCache.setMaxCost(5);
- itemExternalIconCache.setMaxCost(0);
-
- m_DefaultIcon = new HbIcon( GLXICON_DEFAULT );
- m_CorruptIcon = new HbIcon( GLXICON_CORRUPT );
- mExternalItems = NULL;
- externalDataCount = 0;
- mFocusIndex = -1;
- mSubState = -1;
- mTempVisibleWindowIndex = 0;
+ qDebug( "GlxMediaModel::GlxMediaModel" );
+
+ thumbnailPopulatedFlag = modelParm.collection() == KGlxCollectionPluginAllImplementationUid
+ ? false : true;
+ mPaintPage = modelParm.collection() == KGlxCollectionPluginAllImplementationUid ? true : false;
+ mMLWrapper = new GlxMLWrapper( modelParm.collection(), 0, modelParm.filterType(), NULL,
+ modelParm.fetcherFiterType() );
+ mMLWrapper->setContextMode( modelParm.contextMode() );
+ mContextMode = modelParm.contextMode();
+ mDRMUtilityWrapper = new GlxDRMUtilityWrapper();
+
+ int err = connect( mMLWrapper, SIGNAL(updateItem(int, GlxTBContextType)), this,
+ SLOT(itemUpdated(int, GlxTBContextType)) );
+ qDebug( "updateItem() connection status %d", err );
+ err = connect( mMLWrapper, SIGNAL(itemCorrupted(int)), this, SLOT(itemCorrupted(int)) );
+ qDebug( "itemCorrupted() connection status %d", err );
+ err = connect( mMLWrapper, SIGNAL(insertItems(int, int)), this, SLOT(itemsAdded(int, int)) );
+ qDebug( "updateItem() connection status %d", err );
+ err = connect( mMLWrapper, SIGNAL(removeItems(int, int)), this, SLOT(itemsRemoved(int, int)) );
+ qDebug( "updateItem() connection status %d", err );
+ err = connect( this, SIGNAL(iconAvailable(int, HbIcon*, GlxTBContextType)), this,
+ SLOT(updateItemIcon(int, HbIcon*, GlxTBContextType)) );
+ qDebug( "iconAvailable() connection status %d", err );
+ err = connect( mMLWrapper, SIGNAL(updateAlbumTitle(QString)), this,
+ SLOT(albumTitleUpdated(QString)) );
+ qDebug( "updateAlbumTitle() connection status %d", err );
+ err = connect( mMLWrapper, SIGNAL(populated()), this, SLOT(modelpopulated()) );
+ err = connect( mMLWrapper, SIGNAL(updateDetails()), this, SLOT(updateDetailItems()) );
+
+ itemIconCache.setMaxCost( 20 ); //Changed While Doing Media Wall
+ itemFsIconCache.setMaxCost( 5 );
+
+ m_DefaultIcon = new HbIcon( GLXICON_DEFAULT );
+ m_CorruptIcon = new HbIcon( GLXICON_CORRUPT );
+ mFocusIndex = -1;
+ mSubState = -1;
+ mTempVisibleWindowIndex = 0;
}
GlxMediaModel::~GlxMediaModel()
{
//itemadded.clear();
- qDebug("GlxMediaModel::~GlxMediaModel");
- itemIconCache.clear();
- itemFsIconCache.clear();
- delete m_DefaultIcon;
- m_DefaultIcon = NULL;
- delete m_CorruptIcon;
- m_CorruptIcon = NULL;
- clearExternalItems();
+ qDebug( "GlxMediaModel::~GlxMediaModel" );
+ itemIconCache.clear();
+ itemFsIconCache.clear();
+ delete m_DefaultIcon;
+ m_DefaultIcon = NULL;
+ delete m_CorruptIcon;
+ m_CorruptIcon = NULL;
delete mMLWrapper;
- delete mDRMUtilityWrapper;
+ delete mDRMUtilityWrapper;
}
//------------------------------------------------------------------------------------------------------------
//setContextMode
//------------------------------------------------------------------------------------------------------------
-void GlxMediaModel::setContextMode(GlxContextMode contextMode)
+void GlxMediaModel::setContextMode( GlxContextMode contextMode )
{
- if(contextMode == GlxContextComment)
- {
- mMLWrapper->setContextMode(contextMode);
+ if ( contextMode == GlxContextComment ) {
+ mMLWrapper->setContextMode( contextMode );
+ }
+ else {
+ if ( mContextMode != contextMode ) {
+
+ itemFsIconCache.clear();
+ mMLWrapper->setContextMode( contextMode );
+ mContextMode = contextMode;
+ if ( mContextMode == GlxContextLsGrid || mContextMode == GlxContextPtGrid ) {
+ itemIconCache.clear();
+ //emit dataChanged( index( 0, 0), index( rowCount() - 1, 0) ); // Not Needed for HgWidget
+ }
}
- else
- {
- if(mContextMode != contextMode) {
-
- itemFsIconCache.clear();
- mMLWrapper->setContextMode(contextMode);
- mContextMode = contextMode;
- if ( mContextMode == GlxContextLsGrid || mContextMode == GlxContextPtGrid ) {
- itemIconCache.clear();
- //emit dataChanged( index( 0, 0), index( rowCount() - 1, 0) ); // Not Needed for HgWidget
- }
- }
- }
+ }
}
//------------------------------------------------------------------------------------------------------------
//removeContextMode
//------------------------------------------------------------------------------------------------------------
-void GlxMediaModel::removeContextMode(GlxContextMode contextMode)
- {
- mMLWrapper->removeContextMode(contextMode);
- }
-
-//to add external data to the model
-void GlxMediaModel::addExternalItems(GlxExternalData* externalItems)
+void GlxMediaModel::removeContextMode( GlxContextMode contextMode )
{
- externalDataCount = externalItems->count();
- beginInsertRows(QModelIndex(), 0, externalDataCount);
- mExternalItems = externalItems;
- itemExternalIconCache.setMaxCost(15);
- endInsertRows();
- setFocusIndex(index(0,0));
+ mMLWrapper->removeContextMode( contextMode );
}
-
-/*
-*for removing all external image data from the model.
-*/
-void GlxMediaModel::clearExternalItems()
+int GlxMediaModel::rowCount( const QModelIndex &parent ) const
{
- if(externalDataCount) {
- beginRemoveRows(QModelIndex(), 0, externalDataCount);
- if(mExternalItems) {
- delete mExternalItems;
- mExternalItems = NULL;
- externalDataCount = 0;
- }
- itemExternalIconCache.clear();
- endRemoveRows();
- }
-
+ Q_UNUSED(parent);
+ qDebug( "GlxMediaModel::rowCount %d", mMLWrapper->getItemCount() );
+ return mMLWrapper->getItemCount();
}
-int GlxMediaModel::rowCount(const QModelIndex &parent ) const
-{
- Q_UNUSED(parent);
- qDebug("GlxMediaModel::rowCount %d", mMLWrapper->getItemCount());
- return (mMLWrapper->getItemCount() + externalDataCount);
-}
-
-int GlxMediaModel::columnCount(const QModelIndex &parent ) const
+int GlxMediaModel::columnCount( const QModelIndex &parent ) const
{
Q_UNUSED(parent);
return 1;
}
-QModelIndex GlxMediaModel::parent(const QModelIndex &child) const
+QModelIndex GlxMediaModel::parent( const QModelIndex &child ) const
{
Q_UNUSED(child);
@@ -177,268 +144,298 @@
}
-//todo refactor this whole function ... too many return statements are not good
-QVariant GlxMediaModel::data( const QModelIndex &index, int role ) const
+QVariant GlxMediaModel::itemImageData( const QModelIndex &index, int role ) const
{
- if (role == GlxViewTitle) {
- return mMLWrapper->retrieveViewTitle();
- }
+ HbIcon* itemIcon = NULL;
+ QImage itemImage;
+ int itemIndex = index.row();
- if(role == GlxPopulated) {
- return mMLWrapper->IsPopulated();
- }
-
- if ( role == GlxSubStateRole ) {
- return mSubState;
+ if ( role == Qt::DisplayRole ) {
+ return QVariant();
}
if ( role == GlxHgVisibilityRole ) {
return TRUE;
}
-
- if ( role == Qt::DisplayRole ) {
+
+ if ( role == GlxDefaultImage ) {
+ // this image Creation is Slow. But what to do, Q class's Does not undersatnd our Localised File names
+ return m_DefaultIcon->pixmap().toImage().convertToFormat( QImage::Format_ARGB32_Premultiplied );
+ }
+
+ qDebug( "GlxMediaModel::data buffer concept index %d role %d", index.row(), role );
+ if ( ( !index.isValid() ) || ( index.row() >= rowCount() ) ) {
return QVariant();
}
-
- if (role == GlxPaintPageFlag) {
- return mPaintPage;
- }
-
- if ( role == GlxDefaultImage ) {
- if(!m_DefaultIcon->isNull()) {
- // this image Creation is Slow.
- // But what to do, Q class's Does not undersatnd our Localised File names
- return m_DefaultIcon->pixmap().toImage().convertToFormat(QImage::Format_ARGB32_Premultiplied);
- }
- else {
- return QImage();
- }
- }
- HbIcon* itemIcon = NULL;
- QImage itemImage;
- int itemIndex = index.row();
- qDebug("GlxMediaModel::data buffer concept index %d role %d", index.row(), role);
- if ((!index.isValid()) || (index.row() > rowCount()-1)) {
- return QVariant();
- }
-
- //retrieve Data from Media List
+ //retrieve Data from Media List
if ( role == Qt::DecorationRole ) {
- itemIcon = GetGridIconItem(itemIndex,GlxTBContextGrid);
- if( itemIcon == NULL || itemIcon->isNull() ) {
+ itemIcon = GetGridIconItem( itemIndex, GlxTBContextGrid );
+ if ( itemIcon == NULL || itemIcon->isNull() ) {
itemIcon = getCorruptDefaultIcon( index );
}
return *itemIcon;
}
-
- if (role == GlxQImageSmall) {
- return mMLWrapper->retrieveItemImage(itemIndex, GlxTBContextGrid);
+
+ if ( role == GlxQImageSmall ) {
+ return mMLWrapper->retrieveItemImage( itemIndex, GlxTBContextGrid );
}
- if (role == GlxFsImageRole){
- if(mContextMode == GlxContextLsFs){
- itemIcon = GetFsIconItem(itemIndex,GlxTBContextLsFs);
- }
- else if (mContextMode == GlxContextPtFs){
- itemIcon = GetFsIconItem(itemIndex,GlxTBContextPtFs);
- }
-
- if ( itemIcon == NULL ) {
- HbIcon* tempIcon = GetGridIconItem( itemIndex, GlxTBContextGrid );
- if (tempIcon && !tempIcon->isNull()) {
- qDebug("GlxMediaModel::scaling thumbnail");
- QPixmap tempPixmap = tempIcon->qicon().pixmap(128, 128);
- QSize itemSize = mMLWrapper->retrieveItemDimension(itemIndex);
- QSize sz = ( mContextMode == GlxContextLsFs ) ? QSize ( 640, 360) : QSize ( 360, 640 );
- if( !( ( itemSize.width() < sz.width() ) && ( itemSize.height() < sz.height() ) ) ) {
- itemSize.scale(sz, Qt::KeepAspectRatio);
- }
- tempPixmap = tempPixmap.scaled(itemSize, Qt::IgnoreAspectRatio );
- HbIcon tmp = HbIcon( QIcon(tempPixmap)) ;
- if(!tmp.isNull()){
- return tmp;
- }
- }
- }
-
- if ( itemIcon == NULL || itemIcon->isNull() ) {
- itemIcon = getCorruptDefaultIcon( index ) ;
- }
- return *itemIcon;
+ if ( role == GlxFsImageRole ) {
+ return getFullScreenIcon( itemIndex );
}
-
- if (role == GlxQImageLarge) {
- if(mContextMode == GlxContextLsFs) {
- itemImage = mMLWrapper->retrieveItemImage(itemIndex, GlxTBContextLsFs);
- }
- else {
- itemImage = mMLWrapper->retrieveItemImage(itemIndex, GlxTBContextPtFs);
- }
- if(!itemImage.isNull()) {
- return itemImage;
- }
- else {
- itemImage = mMLWrapper->retrieveItemImage(itemIndex, GlxTBContextGrid);
- if (!itemImage.isNull()) {
- QSize sz = ( mContextMode == GlxContextLsFs ) ? QSize ( 640, 360) : QSize ( 360, 640 );
- itemImage = itemImage.scaled(sz,Qt::KeepAspectRatio);
- }
- return itemImage;
- }
+
+ if ( role == GlxQImageLarge ) {
+ return getFullScreenImage( itemIndex );
}
- if (role == GlxVisualWindowIndex) {
- return mMLWrapper->getVisibleWindowIndex();
- }
-
+ if ( role == GlxHdmiBitmap ) {
+ return mMLWrapper->RetrieveBitmap( itemIndex );
+ }
+
+ return QVariant();
+}
+
+QVariant GlxMediaModel::collectionProperty( int role ) const
+{
QModelIndex idx;
if ( GlxFocusIndexRole == role ) {
idx = getFocusIndex();
return idx.row();
}
- if(role == GlxUriRole) {
- return (mMLWrapper->retrieveItemUri(itemIndex));
+ if ( role == GlxSubStateRole ) {
+ return mSubState;
+ }
+
+ if ( role == GlxPopulated ) {
+ return mMLWrapper->IsPopulated();
}
- if (role == GlxImageTitle) {
- return mMLWrapper->retrieveListTitle(itemIndex);
+ if ( role == GlxViewTitle ) {
+ return mMLWrapper->retrieveViewTitle();
+ }
+
+ if ( role == GlxVisualWindowIndex ) {
+ return mMLWrapper->getVisibleWindowIndex();
}
-
- if(role == GlxDimensionsRole) {
- return (mMLWrapper->retrieveItemDimension(itemIndex));
+
+ if ( role == GlxPaintPageFlag ) {
+ return mPaintPage;
}
- if(role == GlxDateRole ) {
- return (mMLWrapper->retrieveItemDate(itemIndex));
+ return QVariant();
+}
+
+QVariant GlxMediaModel::itemProperty( const QModelIndex &index, int role ) const
+{
+ if ( ( !index.isValid() ) || ( index.row() >= rowCount() ) ) {
+ return QVariant();
}
- if (role == GlxFrameCount) {
- return (mMLWrapper->retrieveItemFrameCount(itemIndex));
- }
-
- if (role == GlxHdmiBitmap) {
- return mMLWrapper->RetrieveBitmap(itemIndex);
+ int itemIndex = index.row();
+
+ if ( role == GlxFrameCount ) {
+ return ( mMLWrapper->retrieveItemFrameCount( itemIndex ) );
}
if ( role == GlxImageCorruptRole ) {
return mMLWrapper->isCorruptedImage( itemIndex );
}
+
+ if ( role == GlxUriRole ) {
+ return ( mMLWrapper->retrieveItemUri( itemIndex ) );
+ }
- if (role == GlxTimeRole) {
- return mMLWrapper->retrieveItemTime(itemIndex);
+ if ( role == GlxSizeRole ) {
+ return mMLWrapper->retrieveItemSize( itemIndex );
+ }
+
+ if ( role == GlxImageTitle ) {
+ return mMLWrapper->retrieveListTitle( itemIndex );
+ }
+
+ if ( role == GlxDimensionsRole ) {
+ return ( mMLWrapper->retrieveItemDimension( itemIndex ) );
+ }
+
+ if ( role == GlxDateRole ) {
+ return ( mMLWrapper->retrieveItemDate( itemIndex ) );
+ }
+
+ if ( role == GlxTimeRole ) {
+ return mMLWrapper->retrieveItemTime( itemIndex );
}
-
- if (role == GlxSizeRole) {
- return mMLWrapper->retrieveItemSize(itemIndex);
- }
+
+ if ( role == GlxDescRole ) {
+ return mMLWrapper->retrieveListDesc( itemIndex );
+ }
+
+ return QVariant();
- if (role == GlxDescRole) {
- return mMLWrapper->retrieveListDesc(itemIndex);
- }
+}
+
+QVariant GlxMediaModel::data( const QModelIndex &index, int role ) const
+{
+ if ( role < GlxItemImageDataEnd ) {
+ return itemImageData( index, role );
+ }
+
+ if ( role < GlxCollectionPropertyEnd ) {
+ return collectionProperty( role );
+ }
+
+ if ( role < GlxItemPropertyEnd ) {
+ return itemProperty( index, role);
+ }
+
return QVariant();
}
//GetGridIconItem
-HbIcon* GlxMediaModel::GetGridIconItem(int itemIndex, GlxTBContextType tbContextType) const
+HbIcon* GlxMediaModel::GetGridIconItem( int itemIndex, GlxTBContextType tbContextType ) const
{
- HbIcon* itemIcon = itemIconCache[itemIndex]; //Initialize icon from the Cache will be NULL if Item not present
- if (!itemIcon)
- {
- itemIcon = mMLWrapper->retrieveItemIcon(itemIndex, tbContextType);
- if(itemIcon){
- emit iconAvailable(itemIndex,itemIcon, GlxTBContextGrid);
- }
- itemIcon = itemIconCache[itemIndex];
- }
- return itemIcon;
+ HbIcon* itemIcon = itemIconCache[ itemIndex ]; //Initialize icon from the Cache will be NULL if Item not present
+ if ( !itemIcon ) {
+ itemIcon = mMLWrapper->retrieveItemIcon( itemIndex, tbContextType );
+ if ( itemIcon ) {
+ emit iconAvailable( itemIndex, itemIcon, GlxTBContextGrid );
+ }
+ itemIcon = itemIconCache[ itemIndex ];
+ }
+ return itemIcon;
}
-HbIcon* GlxMediaModel::GetFsIconItem(int itemIndex, GlxTBContextType tbContextType) const
+HbIcon* GlxMediaModel::GetFsIconItem( int itemIndex, GlxTBContextType tbContextType ) const
{
- HbIcon* itemIcon = NULL; //Initialize icon from the Cache will be NULL if Item not present
+ HbIcon* itemIcon = NULL; //Initialize icon from the Cache will be NULL if Item not present
- bool drmProtected = mMLWrapper->IsDrmProtected(itemIndex);
- if(drmProtected)
- {
- QString imagePath = mMLWrapper->retrieveItemUri(itemIndex);
- bool rightValid = mMLWrapper->IsDrmValid(itemIndex);
- if(!rightValid)
- {
+ bool drmProtected = mMLWrapper->IsDrmProtected( itemIndex );
+ if ( drmProtected ) {
+ QString imagePath = mMLWrapper->retrieveItemUri( itemIndex );
+ bool rightValid = mMLWrapper->IsDrmValid( itemIndex );
+ if ( !rightValid ) {
//show error note here
- if(itemIndex == mFocusIndex )
- mDRMUtilityWrapper->ShowRightsInfo(imagePath);
- return itemIcon;
+ if ( itemIndex == mFocusIndex ) {
+ mDRMUtilityWrapper->ShowRightsInfo( imagePath );
}
- else
- {
+ return itemIcon;
+ }
+ else {
//consumeDrmRights(imagePath);
- mDRMUtilityWrapper->ConsumeRights(imagePath);
- bool rightValid = mDRMUtilityWrapper->ItemRightsValidityCheck(imagePath,true);
- mMLWrapper->setDrmValid(itemIndex,rightValid);
- }
+ mDRMUtilityWrapper->ConsumeRights( imagePath );
+ bool rightValid = mDRMUtilityWrapper->ItemRightsValidityCheck( imagePath, true );
+ mMLWrapper->setDrmValid( itemIndex, rightValid );
+ }
+ }
+
+ itemIcon = itemFsIconCache[ itemIndex ]; //Initialize icon from the Cache will be NULL if Item not present
+ if ( !itemIcon ) {
+ itemIcon = mMLWrapper->retrieveItemIcon( itemIndex, tbContextType );
+ if ( itemIcon ) {
+ emit iconAvailable( itemIndex, itemIcon, tbContextType );
}
- itemIcon = itemFsIconCache[itemIndex]; //Initialize icon from the Cache will be NULL if Item not present
- if (!itemIcon) {
- itemIcon = mMLWrapper->retrieveItemIcon(itemIndex, tbContextType);
- if(itemIcon){
- emit iconAvailable(itemIndex,itemIcon, tbContextType);
- }
- itemIcon = itemFsIconCache[itemIndex];
- }
- return itemIcon;
+ itemIcon = itemFsIconCache[ itemIndex ];
+ }
+ return itemIcon;
+}
+HbIcon GlxMediaModel::gridToFullscreenIcon( HbIcon * icon, int itemIndex ) const
+{
+ qDebug( "GlxMediaModel::gridToFullscreenIcon" );
+ QPixmap tempPixmap = icon->qicon().pixmap( 128, 128 );
+ QSize itemSize = mMLWrapper->retrieveItemDimension( itemIndex );
+ QSize sz = ( mContextMode == GlxContextLsFs ) ? QSize( 640, 360 ) : QSize( 360, 640 );
+ if ( !( ( itemSize.width() < sz.width() ) && ( itemSize.height() < sz.height() ) ) ) {
+ itemSize.scale( sz, Qt::KeepAspectRatio );
+ }
+ tempPixmap = tempPixmap.scaled( itemSize, Qt::IgnoreAspectRatio );
+ return HbIcon( QIcon( tempPixmap ) );
}
-HbIcon* GlxMediaModel::GetExternalIconItem(int itemIndex,GlxTBContextType tbContextType) const
+HbIcon GlxMediaModel::getFullScreenIcon( int itemIndex ) const
{
- //todo add asserts here as the cache and the array is not preinitialized
- HbIcon* itemIcon = itemExternalIconCache[itemIndex]; //Initialize icon from the Cache will be NULL if Item not present
- if (!itemIcon) {
- QPixmap* itemPixmap = mExternalItems->at(itemIndex).image;
- itemIcon = new HbIcon(QIcon(*itemPixmap));
- emit iconAvailable(itemIndex,itemIcon, tbContextType);
- }
- return itemIcon;
+ HbIcon* itemIcon = NULL;
+ if ( mContextMode == GlxContextLsFs ) {
+ itemIcon = GetFsIconItem( itemIndex, GlxTBContextLsFs );
+ }
+ else if ( mContextMode == GlxContextPtFs ) {
+ itemIcon = GetFsIconItem( itemIndex, GlxTBContextPtFs );
+ }
+
+ if ( itemIcon == NULL ) {
+ HbIcon* tempIcon = GetGridIconItem( itemIndex, GlxTBContextGrid );
+ if ( tempIcon && !tempIcon->isNull() ) {
+ HbIcon tmp = gridToFullscreenIcon( tempIcon, itemIndex );
+ if ( !tmp.isNull() ) {
+ return tmp;
+ }
+ }
+ }
+
+ if ( itemIcon == NULL || itemIcon->isNull() ) {
+ itemIcon = getCorruptDefaultIcon( index( itemIndex, 0 ) );
+ }
+ return *itemIcon;
}
-
-void GlxMediaModel::itemUpdated(int mlIndex,GlxTBContextType tbContextType )
+QImage GlxMediaModel::getFullScreenImage( int itemIndex ) const
{
- qDebug("GlxMediaModel::itemUpdated %d", mlIndex);
- //clear the grid and FS cache if they have any icons with them for that index
- if( tbContextType == GlxTBContextGrid ) {
- if ( !thumbnailPopulatedFlag ) {
- thumbnailPopulatedCheck( mlIndex );
- }
- itemIconCache.remove(mlIndex);
- }
- if(tbContextType == GlxTBContextLsFs || tbContextType == GlxTBContextPtFs) {
- itemFsIconCache.remove(mlIndex);
- }
- emit dataChanged( index( mlIndex , 0 ), index( mlIndex, 0 ) );
+ QImage itemImage;
+ if ( mContextMode == GlxContextLsFs ) {
+ itemImage = mMLWrapper->retrieveItemImage( itemIndex, GlxTBContextLsFs );
+ }
+ else {
+ itemImage = mMLWrapper->retrieveItemImage( itemIndex, GlxTBContextPtFs );
+ }
+ if ( !itemImage.isNull() ) {
+ return itemImage;
+ }
+ else {
+ itemImage = mMLWrapper->retrieveItemImage( itemIndex, GlxTBContextGrid );
+ if ( !itemImage.isNull() ) {
+ QSize sz = ( mContextMode == GlxContextLsFs ) ? QSize( 640, 360 ) : QSize( 360, 640 );
+ itemImage = itemImage.scaled( sz, Qt::KeepAspectRatio );
+ }
+ return itemImage;
+ }
}
-void GlxMediaModel::itemCorrupted(int itemIndex)
+void GlxMediaModel::itemUpdated( int mlIndex, GlxTBContextType tbContextType )
{
- qDebug("GlxMediaModel::itemCorrupted %d", itemIndex);
+ qDebug( "GlxMediaModel::itemUpdated %d", mlIndex );
+ //clear the grid and FS cache if they have any icons with them for that index
+ if ( tbContextType == GlxTBContextGrid ) {
+ if ( !thumbnailPopulatedFlag ) {
+ thumbnailPopulatedCheck( mlIndex );
+ }
+ itemIconCache.remove( mlIndex );
+ }
+ if ( tbContextType == GlxTBContextLsFs || tbContextType == GlxTBContextPtFs ) {
+ itemFsIconCache.remove( mlIndex );
+ }
+ emit dataChanged( index( mlIndex, 0 ), index( mlIndex, 0 ) );
+}
+
+void GlxMediaModel::itemCorrupted( int itemIndex )
+{
+ qDebug( "GlxMediaModel::itemCorrupted %d", itemIndex );
if ( !thumbnailPopulatedFlag ) {
- thumbnailPopulatedCheck( itemIndex );
+ thumbnailPopulatedCheck( itemIndex );
}
- emit dataChanged( index( itemIndex , 0 ), index( itemIndex, 0 ) );
+ emit dataChanged( index( itemIndex, 0 ), index( itemIndex, 0 ) );
}
void GlxMediaModel::modelpopulated()
{
- if ( mTempVisibleWindowIndex!=-1) {
+ if ( mTempVisibleWindowIndex != -1 ) {
//Set the visible Window index only ff the index stored in the activity manager is not out of range
- if( rowCount() > mTempVisibleWindowIndex && mTempVisibleWindowIndex > 0 ) {
- mMLWrapper->setVisibleWindowIndex(mTempVisibleWindowIndex);
+ if ( rowCount() > mTempVisibleWindowIndex && mTempVisibleWindowIndex > 0 ) {
+ mMLWrapper->setVisibleWindowIndex( mTempVisibleWindowIndex );
}
else {
- mMLWrapper->setVisibleWindowIndex(0);
+ mMLWrapper->setVisibleWindowIndex( 0 );
}
mTempVisibleWindowIndex = -1;
}
@@ -450,197 +447,174 @@
//------------------------------------------------------------------------------------------------------------
void GlxMediaModel::updateDetailItems()
{
- qDebug("GlxMediaModel::updateDetailItems");
+ qDebug( "GlxMediaModel::updateDetailItems" );
emit updateDetailsView();
}
-void GlxMediaModel::itemsAdded(int startIndex, int endIndex)
+void GlxMediaModel::itemsAdded( int startIndex, int endIndex )
{
- qDebug("GlxMediaModel::itemsAdded %d %d", startIndex, endIndex);
- mFocusIndex = -1;
- //emit rowsAboutToBeInserted(index(startIndex,0), startIndex, endIndex );
- beginInsertRows(QModelIndex(), startIndex+externalDataCount, endIndex+externalDataCount);
- //itemadded.insert(startIndex,(endIndex - startIndex),NULL );
- itemIconCache.clear();
- itemFsIconCache.clear();
+ qDebug( "GlxMediaModel::itemsAdded %d %d", startIndex, endIndex );
+ mFocusIndex = -1;
+ beginInsertRows( QModelIndex(), startIndex, endIndex );
+ itemIconCache.clear();
+ itemFsIconCache.clear();
endInsertRows();
- //emit rowsInserted(index(startIndex,0), startIndex, endIndex );
-
}
-void GlxMediaModel::itemsRemoved(int startIndex, int endIndex)
+void GlxMediaModel::itemsRemoved( int startIndex, int endIndex )
{
- qDebug("GlxMediaModel::itemsRemoved %d %d", startIndex, endIndex);
- mFocusIndex = -1;
- //emit rowsAboutToBeRemoved(index(startIndex,0), startIndex, endIndex );
- beginRemoveRows(QModelIndex(), startIndex+externalDataCount, endIndex+externalDataCount);
- //itemadded.remove(startIndex,(endIndex - startIndex) );
- itemIconCache.clear();
- itemFsIconCache.clear();
- endRemoveRows();
- //emit rowsRemoved(index(startIndex,0), startIndex, endIndex );
-
+ qDebug( "GlxMediaModel::itemsRemoved %d %d", startIndex, endIndex );
+ mFocusIndex = -1;
+ beginRemoveRows( QModelIndex(), startIndex, endIndex );
+ itemIconCache.clear();
+ itemFsIconCache.clear();
+ endRemoveRows();
+}
+
+void GlxMediaModel::updateItemIcon( int itemIndex, HbIcon* itemIcon, GlxTBContextType tbContextType )
+{
+ qDebug( "GlxMediaModel::updateItemIcon %d", itemIndex );
+ if ( tbContextType == GlxTBContextGrid ) {
+ itemIconCache.insert( itemIndex, itemIcon );
+ }
+ else if ( tbContextType == GlxTBContextLsFs || tbContextType == GlxTBContextPtFs ) {
+ itemFsIconCache.insert( itemIndex, itemIcon );
+ }
}
-void GlxMediaModel::updateItemIcon(int itemIndex, HbIcon* itemIcon, GlxTBContextType tbContextType)
+void GlxMediaModel::albumTitleUpdated( QString aTitle )
{
- qDebug("GlxMediaModel::updateItemIcon %d", itemIndex);
- if(tbContextType == GlxTBContextGrid){
- itemIconCache.insert(itemIndex, itemIcon);
- }
- else if(tbContextType == GlxTBContextLsFs || tbContextType == GlxTBContextPtFs){
- itemFsIconCache.insert(itemIndex, itemIcon);
- }
- else if (tbContextType == GlxTBContextExternal){
- itemExternalIconCache.insert(itemIndex, itemIcon);
- }
-}
-
-void GlxMediaModel::albumTitleUpdated(QString aTitle)
-{
- emit albumTitleAvailable(aTitle);
+ emit albumTitleAvailable( aTitle );
}
-void GlxMediaModel::setFocusIndex(const QModelIndex &index)
+void GlxMediaModel::setFocusIndex( const QModelIndex &index )
{
- qDebug("GlxMediaModel::setFocusIndex%d", index.row());
- int itemIndex = index.row();
- int mlIndex = -1;
- if(itemIndex >=externalDataCount)
- {
- mlIndex = itemIndex - externalDataCount;
- mMLWrapper->setFocusIndex(mlIndex);
- mFocusIndex = -1;
- }
- else{
- mFocusIndex = itemIndex;
- if(rowCount() > externalDataCount) {
- mMLWrapper->setFocusIndex(0);
- mlIndex = 0;
- }
-
- }
- if(mSubState != IMAGEVIEWER_S ){
- if( mMLWrapper->IsDrmProtected(mlIndex) && (!mMLWrapper->IsDrmValid(mlIndex)) )
- {
- QString imagePath = mMLWrapper->retrieveItemUri(mlIndex);
- mDRMUtilityWrapper->ShowRightsInfo(imagePath);
- }
- }else {
+ qDebug( "GlxMediaModel::setFocusIndex%d", index.row() );
+
+ int itemIndex = index.row();
+ if ( itemIndex < rowCount() && itemIndex >= 0 ) {
+ mMLWrapper->setFocusIndex( itemIndex );
+ mFocusIndex = itemIndex;
+ }
+ else if ( rowCount() > 0 ){
+
+ mMLWrapper->setFocusIndex( 0 );
+ mFocusIndex = itemIndex = 0;
+ }
+
+ if ( mSubState != IMAGEVIEWER_S ) {
+ if ( mMLWrapper->IsDrmProtected( itemIndex ) && ( !mMLWrapper->IsDrmValid( itemIndex ) ) ) {
+ QString imagePath = mMLWrapper->retrieveItemUri( itemIndex );
+ mDRMUtilityWrapper->ShowRightsInfo( imagePath );
+ }
+ }
+ else {
CGlxImageViewerManager* CGlxImageViewerManager = CGlxImageViewerManager::InstanceL();
const TDesC& title = CGlxImageViewerManager->ImageUri()->Des();
- QString imagePath = QString::fromUtf16(title.Ptr(),title.Length());
- mDRMUtilityWrapper->ShowRightsInfo(imagePath);
- }
+ QString imagePath = QString::fromUtf16( title.Ptr(), title.Length() );
+ mDRMUtilityWrapper->ShowRightsInfo( imagePath );
+ }
}
QModelIndex GlxMediaModel::getFocusIndex() const
{
- int itemIndex = 0;
- //return index(itemIndex+externalDataCount,0);
- if(mFocusIndex == -1){
- int mlIndex = mMLWrapper->getFocusIndex();
- itemIndex = mlIndex + externalDataCount;
- }
- else {
- itemIndex = mFocusIndex;
- }
- return index(itemIndex,0);
+ int itemIndex = mFocusIndex;
+ if ( mFocusIndex == -1 ) {
+ itemIndex = mMLWrapper->getFocusIndex();
+ }
+
+ return index( itemIndex, 0 );
}
-void GlxMediaModel::setSelectedIndex(const QModelIndex &index)
+void GlxMediaModel::setSelectedIndex( const QModelIndex &index )
{
int itemIndex = index.row();
- qDebug("GlxMediaModel::setSelectedIndex()%d", itemIndex);
- mMLWrapper->setSelectedIndex(itemIndex);
+ qDebug( "GlxMediaModel::setSelectedIndex()%d", itemIndex );
+ mMLWrapper->setSelectedIndex( itemIndex );
}
HbIcon * GlxMediaModel::getCorruptDefaultIcon( const QModelIndex &index ) const
{
if ( mMLWrapper->isCorruptedImage( index.row() ) ) {
- return m_CorruptIcon ;
+ return m_CorruptIcon;
}
- return m_DefaultIcon ;
+ return m_DefaultIcon;
}
void GlxMediaModel::thumbnailPopulatedCheck( int index )
{
- int count = rowCount() - DELTA_IMAGE ;
- int maxRange = INITIAL_POPULATE_IMAGE_COUNT + DELTA_IMAGE ;
- if ( index >= count || ( index >= INITIAL_POPULATE_IMAGE_COUNT && index < maxRange ) ) {
+ int count = rowCount() - DELTA_IMAGE;
+ int maxRange = INITIAL_POPULATE_IMAGE_COUNT + DELTA_IMAGE;
+ if ( index >= count || ( index >= INITIAL_POPULATE_IMAGE_COUNT && index < maxRange ) ) {
thumbnailPopulatedFlag = TRUE;
emit thumbnailPopulated();
}
}
-bool GlxMediaModel::setData ( const QModelIndex & idx, const QVariant & value, int role )
+bool GlxMediaModel::setData( const QModelIndex & idx, const QVariant & value, int role )
{
Q_UNUSED( idx )
-
+
if ( GlxContextRole == role ) {
- if ( value.isValid() && value.canConvert <int> () ) {
- setContextMode( (GlxContextMode) value.value <int> () );
+ if ( value.isValid() && value.canConvert<int> () ) {
+ setContextMode( (GlxContextMode) value.value<int> () );
return TRUE;
}
}
-
+
if ( GlxRemoveContextRole == role ) {
- if ( value.isValid() && value.canConvert <int> () ) {
- removeContextMode( (GlxContextMode) value.value <int> () );
- return TRUE;
- }
- }
-
-
- if ( GlxFocusIndexRole == role ) {
- if ( value.isValid() && value.canConvert <int> () ) {
- setFocusIndex( index( value.value <int> (), 0) );
+ if ( value.isValid() && value.canConvert<int> () ) {
+ removeContextMode( (GlxContextMode) value.value<int> () );
return TRUE;
}
}
-
+
+ if ( GlxFocusIndexRole == role ) {
+ if ( value.isValid() && value.canConvert<int> () ) {
+ setFocusIndex( index( value.value<int> (), 0 ) );
+ return TRUE;
+ }
+ }
+
if ( GlxVisualWindowIndex == role ) {
- if ( value.isValid() && value.canConvert <int> () ) {
- mMLWrapper->setVisibleWindowIndex( value.value <int> () );
+ if ( value.isValid() && value.canConvert<int> () ) {
+ mMLWrapper->setVisibleWindowIndex( value.value<int> () );
return TRUE;
}
}
if ( GlxSelectedIndexRole == role ) {
- qDebug("GlxMediaModel::setData::GlxSelectedIndexRole()::BEFORE%d", idx.row());
- if ( value.isValid() && value.canConvert <int> () ) {
- qDebug("GlxMediaModel::setData()::GlxSelectedIndexRole%d", idx.row());
- setSelectedIndex( index( value.value <int> (), 0) );
+ qDebug( "GlxMediaModel::setData::GlxSelectedIndexRole()::BEFORE%d", idx.row() );
+ if ( value.isValid() && value.canConvert<int> () ) {
+ qDebug( "GlxMediaModel::setData()::GlxSelectedIndexRole%d", idx.row() );
+ setSelectedIndex( index( value.value<int> (), 0 ) );
return TRUE;
}
}
-
- if ( role == GlxSubStateRole && value.isValid() && value.canConvert <int> ()) {
- mSubState = value.value <int> () ;
+
+ if ( role == GlxSubStateRole && value.isValid() && value.canConvert<int> () ) {
+ mSubState = value.value<int> ();
return TRUE;
}
if ( GlxTempVisualWindowIndex == role ) {
- if ( value.isValid() && value.canConvert<int> () ) {
- mTempVisibleWindowIndex = value.value <int> ();
+ if ( value.isValid() && value.canConvert<int> () ) {
+ mTempVisibleWindowIndex = value.value<int> ();
return TRUE;
- }
+ }
}
return FALSE;
}
-QModelIndex GlxMediaModel::index(int row, int column, const QModelIndex &parent) const
+QModelIndex GlxMediaModel::index( int row, int column, const QModelIndex &parent ) const
{
Q_UNUSED(parent)
- qDebug("GlxMediaModel::index row %d column %d", row, column);
-
- if ( ( row < 0 )
- || ( row >= rowCount() )
- || ( column < 0 )
- || ( column >= columnCount() ) ) {
+ qDebug( "GlxMediaModel::index row %d column %d", row, column );
+
+ if ( ( row < 0 ) || ( row >= rowCount() ) || ( column < 0 ) || ( column >= columnCount() ) ) {
return QModelIndex();
}
-
- return QAbstractItemModel::createIndex(row, column);
+
+ return QAbstractItemModel::createIndex( row, column );
}
--- a/ui/viewmanagement/statehandler/src/glxfullscreenstate.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/viewmanagement/statehandler/src/glxfullscreenstate.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -16,10 +16,12 @@
*/
+#include <hbmainwindow.h>
+#include <hbinstance.h>
-#include <glxfullscreenstate.h>
-#include <glxstatemanager.h>
-#include <glxcommandhandlers.hrh>
+#include "glxfullscreenstate.h"
+#include "glxstatemanager.h"
+#include "glxcommandhandlers.hrh"
GlxFullScreenState::GlxFullScreenState(GlxStateManager *stateManager, GlxState *preState) : GlxState(GLX_FULLSCREENVIEW_ID, preState)
{
@@ -63,7 +65,8 @@
}
else if ( dir == BACKWARD_DIR ) {
if ( preState->compare( GLX_GRIDVIEW_ID ) ) {
- effect = FULLSCREEN_TO_GRID;
+ HbMainWindow *window = hbInstance->allMainWindows().first();
+ effect = window->orientation() == Qt::Vertical ? FULLSCREEN_TO_GRID_PORTRAIT : FULLSCREEN_TO_GRID ;
viewEffect = LAUNCH_VIEW;
}
}
--- a/ui/viewmanagement/statehandler/src/glxstatemanager.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/viewmanagement/statehandler/src/glxstatemanager.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -751,27 +751,6 @@
id = EGlxCmdHandled;
}
break;
-
- case EGlxCmdDelete :
- {
- GlxExternalData* externalItems = GlxExternalUtility::instance()->getExternalData();
- if(externalItems){
- QVariant variant = mCurrentModel->data( mCurrentModel->index(0,0), GlxFocusIndexRole );
- if ( variant.isValid() && variant.canConvert<int> () ) {
- int selIndex = variant.value<int>();
- int externalDataCount = externalItems->count();
- if(selIndex < externalDataCount){
- GlxInterfaceParams tmp = externalItems->value(selIndex);
- tmp.isSelected = true;
- externalItems->replace(selIndex,tmp);
- emit externalCommand(EGlxPluginCmdDelete);
- return;
- }
- }
- }
- mActionHandler->handleAction(id,mCollectionId);
- }
- break;
case EGlxCmdMarkAll :
case EGlxCmdUnMarkAll :
@@ -841,8 +820,4 @@
{
qDebug("GlxStateManager::cleanupExternal");
mViewManager->deactivateCurrentView();
- GlxMediaModel *glxModel = dynamic_cast<GlxMediaModel *>(mCurrentModel);
- if(glxModel) {
- glxModel->clearExternalItems();
- }
}
--- a/ui/views/fullscreenview/inc/glxfullscreenview.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/views/fullscreenview/inc/glxfullscreenview.h Mon Sep 27 15:13:20 2010 +0530
@@ -65,6 +65,15 @@
~GlxFullScreenView();
/**
+ * initializeView() - Initialize the coverflow and partially creates the coverflow with one image
+ * to make the widget light weight in order to make transition smooth
+ * and also loads the widgets.
+ * @param - pointer of model to retreive the view releted data
+ * @parm - previous view pointer to get the staus of fullscreen mode of the view
+ */
+ void initializeView( QAbstractItemModel *model, GlxView *preView );
+
+ /**
* activate()
* ///From GlxView
*/
@@ -75,15 +84,6 @@
* ///From GlxView
*/
void deActivate();
-
- /**
- * initializeView() - Initialize the coverflow and partially creates the coverflow with one image
- * to make the widget light weight in order to make transition smooth
- * and also loads the widgets.
- * @param - pointer of model to retreive the view releted data
- * @parm - previous view pointer to get the staus of fullscreen mode of the view
- */
- void initializeView( QAbstractItemModel *model, GlxView *preView );
/**
* resetView() - resets the view, with just one icon being present in the widget
@@ -122,11 +122,6 @@
void orientationChanged( Qt::Orientation );
/**
- * activateUI() - To show the ui content like status bar, toolbar, and imzge strip.
- */
- void activateUI();
-
- /**
* hideUi() - To hide the ui content like status bar, toolbar, and imzge strip.
*/
void hideUi();
@@ -170,11 +165,6 @@
void released(const QModelIndex &index );
/**
- * setVisvalWindowIndex() - Set the viisual window index of medialist.
- */
- void setVisvalWindowIndex();
-
- /**
* coverFlowEventHandle() - Handle the event generated by cover flow.
* @param - cover flow event type
*/
@@ -205,8 +195,7 @@
void zoomOrientChangeAnimFinished( const HbEffect::EffectStatus status );
/**
- * effectFinished - call back when ui on\off effect has finished
- * @param - staus of effect
+ * handleToolBarAction() - call back to handle fullscreen tool bar action
*/
void handleToolBarAction();
@@ -239,6 +228,11 @@
void setLayout();
/**
+ * activateUI() - To show the ui content like status bar, toolbar, and imzge strip.
+ */
+ void activateUI();
+
+ /**
* addConnection() - Add the call back of the widgets.
*/
void addConnection();
@@ -254,6 +248,12 @@
void setImageStripModel();
/**
+ * setHdmiModel() - set the image strip model.
+ * @param - model
+ */
+ void setHdmiModel( QAbstractItemModel *model );
+
+ /**
* loadFullScreenToolBar() - load the fullscreen tool bar from the docml.
*/
void loadFullScreenToolBar();
@@ -267,6 +267,11 @@
void addToolBarAction( int commandId, const QString &iconName, const QString &name) ;
/**
+ * setVisvalWindowIndex() - Set the viisual window index of medialist.
+ */
+ void setVisvalWindowIndex();
+
+ /**
* initAnimationItem() - Initialise the custom animation item.
*/
void initAnimationItem();
@@ -296,12 +301,6 @@
*/
int getSubState();
- /**
- * setHdmiModel() - set the image strip model.
- * @param - model
- */
- void setHdmiModel( QAbstractItemModel *model );
-
private:
QAbstractItemModel *mModel; //no ownership
HbMainWindow *mWindow; //no ownership
--- a/ui/views/fullscreenview/src/glxfullscreenview.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/views/fullscreenview/src/glxfullscreenview.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -82,15 +82,44 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_GLXFULLSCREENVIEW_EXIT );
}
+GlxFullScreenView::~GlxFullScreenView()
+{
+ OstTraceFunctionEntry0( DUP1_GLXFULLSCREENVIEW_GLXFULLSCREENVIEW_ENTRY );
+
+ cleanUp();
+ for ( int i = 0; i < NBR_ANIM_ITEM; i++ ) {
+ delete mIconItems[ i ] ;
+ }
+ delete mBackGroundItem;
+ delete mImageStrip;
+ delete mFullScreenToolBar;
+ delete mCoverFlow;
+ delete mZoomWidget;
+
+ if( mDocLoader != NULL ) {
+ mDocLoader->reset();
+ delete mDocLoader;
+ }
+
+ HbEffect::remove( QString( "HbGridView" ), QString( ":/data/transitionup.fxml" ), QString( "TapShow" ) );
+ HbEffect::remove( QString( "HbGridView" ), QString( ":/data/transitiondown.fxml" ), QString( "TapHide" ) );
+ HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomin.fxml" ), QString( "SelectHide" ) );
+ HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomout.fxml" ), QString( "SelectShow" ) );
+ HbEffect::remove( QString( "HbIconItem" ), QString( ":/data/rotatefslandscape.fxml" ), QString( "RotateFSLS" ) );
+ HbEffect::remove( QString( "HbIconItem" ), QString( ":/data/rotatefsprotrait.fxml" ), QString( "RotateFSPT" ) );
+
+ OstTraceFunctionExit0( DUP1_GLXFULLSCREENVIEW_GLXFULLSCREENVIEW_EXIT );
+}
+
void GlxFullScreenView::initializeView( QAbstractItemModel *model, GlxView *preView )
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_INITIALIZEVIEW_ENTRY );
// if animations is on, then Set the image to HDMI here
- if (!mTvOutWrapper){
+ if ( !mTvOutWrapper ){
mTvOutWrapper = new GlxTvOutWrapper();
}
- setHdmiModel(model);
+ setHdmiModel( model );
loadWidgets();
/*
@@ -114,104 +143,44 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_INITIALIZEVIEW_EXIT );
}
-void GlxFullScreenView::loadWidgets()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_LOADWIDGETS_ENTRY );
-
- mCoverFlow = qobject_cast<GlxCoverFlow*> (mDocLoader->findWidget(GLXFULLSCREEN_COVERFLOW));
-
- mZoomWidget = qobject_cast<GlxZoomWidget*> (mDocLoader->findWidget(GLXFULLSCREENZOOMWIDGET));
- mZoomWidget->connectDecodeRequestToPinchEvent();
- mCoverFlow->setMultitouchFilter(mZoomWidget);
-
- //initialise the cover flow for basic connections and the rest
- mCoverFlow->setCoverFlow();
- mImageStrip = qobject_cast<HbGridView*> (mDocLoader->findWidget(GLXFULLSCREEN_FILMSTRIP));
-
- //When the widget is loaded/retreived the widgets are shown by default.
- //@to do : hide the widgets by default in docml
- mImageStrip->hide();
- mImageStrip->setLayoutName( QString( "ImageStrip" ) ); // To distinguish in CSS file
- mImageStrip->setEnabledAnimations( HbAbstractItemView::None );
- mImageStrip->setHorizontalScrollBarPolicy( HbScrollArea::ScrollBarAlwaysOff );
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_LOADWIDGETS_EXIT );
-}
-
-void GlxFullScreenView::loadFullScreenToolBar()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_LOADFULLSCREENTOOLBAR_ENTRY );
-
- //The fullscreen tool bar is delted when ever the view is deactivated
- //so load the docml once again and retreive the object
- bool loaded =true;
- mDocLoader->load(GLXFULLSCREENDOCMLPATH,&loaded);
- loadViewSection();
-
- mFullScreenToolBar = qobject_cast<HbToolBar *> (mDocLoader->findObject(QString("toolBar")));
- mFullScreenToolBar->clearActions();
-
- addToolBarAction( EGlxCmdDetailsOpen, GLXICON_FLIP, "Flip Action" ); //create Flip tool bar button action
- addToolBarAction( EGlxCmdSend, GLXICON_SEND, "Send Action" ); //create Send tool bar button action
- if( getSubState() != IMAGEVIEWER_S ) {
- addToolBarAction( EGlxCmdDelete, GLXICON_DELETE, "Delete Action" ); //create Delete tool bar button action
- }
- else {
- addToolBarAction( EGlxCmdHandled, GLXICON_USEIMAGE, "Use Action" ); //create Use Image tool bar button action
- }
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_LOADFULLSCREENTOOLBAR_EXIT );
-}
-
-void GlxFullScreenView::addToolBarAction( int commandId, const QString &iconName, const QString &name )
-{
- HbAction *action = new HbAction( this );
- action->setData( commandId );
- action->setIcon( HbIcon( iconName ) );
- action->setObjectName( name );
- mFullScreenToolBar->addAction( action );
- connect(action, SIGNAL(triggered( )), this, SLOT(handleToolBarAction( )) );
-}
-
void GlxFullScreenView::activate()
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_ACTIVATE_ENTRY );
//for zoom might not be required after wk15 release
- mWindow->viewport()->setAttribute(Qt::WA_AcceptTouchEvents,true);
- mWindow->viewport()->grabGesture(Qt::PinchGesture);
-
- QCoreApplication::instance()->installEventFilter(this);
+ mWindow->viewport()->setAttribute( Qt::WA_AcceptTouchEvents, true );
+ mWindow->viewport()->grabGesture( Qt::PinchGesture );
+
+ QCoreApplication::instance()->installEventFilter( this );
if( !mCoverFlow ) {
loadWidgets(); //retrives the widgets
}
//Loads the widgets corresponding to the orientation.
loadViewSection();
-
+
HbView::HbViewFlags flags( HbView::ViewTitleBarTransparent | HbView::ViewStatusBarTransparent);
setViewFlags(flags);
-
- // In case of fetcher don't hide status pane and title bar
+
+ // In case of fetcher don't hide status pane and title bar
if(!(XQServiceUtil::isService() && (0 == XQServiceUtil::interfaceName().compare(QLatin1String("com.nokia.symbian.IImageFetch"))))) {
setViewFlags( viewFlags() | HbView::ViewTitleBarHidden | HbView::ViewStatusBarHidden );
- mUiOff = true;
- }
- else
- {
- HbAction* selectAction = new HbAction(GLX_BUTTON_SELECT);
+ mUiOff = true;
+ }
+ else {
+ HbAction* selectAction = new HbAction( GLX_BUTTON_SELECT );
selectAction->setObjectName( "FS Select" );
- connect(selectAction, SIGNAL(triggered()), this, SLOT(handleFSSelect()));
+ connect( selectAction, SIGNAL( triggered() ), this, SLOT( handleFSSelect() ) );
HbToolBar* toolBar = new HbToolBar();
toolBar->setOrientation( Qt::Horizontal );
- toolBar->setVisible(true);
- toolBar->addAction(selectAction);
- setToolBar(toolBar);
- }
+ toolBar->setVisible( true );
+ toolBar->addAction( selectAction );
+ setToolBar( toolBar );
+ }
mUiOffTimer = new QTimer();
mUiOffTimer->stop();
- mCoverFlow->setUiOn(FALSE);
+ mCoverFlow->setUiOn( FALSE );
addConnection();
setLayout();
@@ -223,26 +192,23 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_ACTIVATE_EXIT );
}
-void GlxFullScreenView::handleFSSelect()
-{
- emit actionTriggered( EGlxCmdFetcherSelect );
-}
-
-void GlxFullScreenView::loadViewSection()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_LOADVIEWSECTION_ENTRY );
+void GlxFullScreenView::deActivate()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_DEACTIVATE_ENTRY );
+
+ cancelSelectionAnimation(); //cancel the image selection effect before cleaning the view
+ //Clean up the rest of the resources allocated
+ cleanUp();
+ QCoreApplication::instance()->removeEventFilter( this );
+ //deletes the iconitems in the coverflow
+ mCoverFlow->ClearCoverFlow();
- bool loaded =true;
- if( mWindow->orientation() == Qt::Horizontal ) {
- //Load the Landscape section for Horizontal
- mDocLoader->load(GLXFULLSCREENDOCMLPATH,GLXFULLSCREENLSSECTION,&loaded);
- }
- else{
- //Load the Portrait section for Horizontal
- mDocLoader->load(GLXFULLSCREENDOCMLPATH,GLXFULLSCREENPTSECTION,&loaded);
- }
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_LOADVIEWSECTION_EXIT );
+ //the coverflow is not deleted as it is loaded by document loader
+ //the coverflow is initialised to null
+ //to just reset to the initial state
+ mCoverFlow = NULL;
+ mWindow->setAutomaticOrientationEffectEnabled( true );
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_DEACTIVATE_EXIT );
}
void GlxFullScreenView::resetView()
@@ -259,23 +225,42 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_RESETVIEW_EXIT );
}
-void GlxFullScreenView::deActivate()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_DEACTIVATE_ENTRY );
+void GlxFullScreenView::setModel( QAbstractItemModel *model )
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETMODEL_ENTRY );
+ OstTraceExt2( TRACE_NORMAL, GLXFULLSCREENVIEW_SETMODEL, "GlxFullScreenView::setModel; model=%x; mModel=%u", ( TUint )( model ), ( TUint ) mModel );
- cancelSelectionAnimation(); //cancel the image selection effect before cleaning the view
- //Clean up the rest of the resources allocated
- cleanUp();
- QCoreApplication::instance()->removeEventFilter(this);
- //deletes the iconitems in the coverflow
- mCoverFlow->ClearCoverFlow();
+ mModel = model;
+ setModelContext();
+ setHdmiModel( mModel );
+ mZoomWidget->setModel( mModel );
+ mCoverFlow->setModel( mModel );
+ setImageStripModel();
+ if( getSubState() == IMAGEVIEWER_S ) {
+ setTitle(GLX_IMAGE_VIEWER);
+ }
+ else if(getSubState() == FETCHER_S){ //do not hide UI in case of fetcher
+ disconnect(mZoomWidget,SIGNAL( pinchGestureReceived(int) ), mCoverFlow, SLOT( zoomStarted(int) ) );
+ }
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETMODEL_EXIT );
+}
- //the coverflow is not deleted as it is loaded by document loader
- //the coverflow is initialised to null
- //to just reset to the initial state
- mCoverFlow = NULL;
- mWindow->setAutomaticOrientationEffectEnabled( true );
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_DEACTIVATE_EXIT );
+void GlxFullScreenView::setModelContext()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETMODELCONTEXT_ENTRY );
+
+ if ( mModel && mWindow ) {
+ if ( mWindow->orientation() == Qt::Horizontal ) {
+ WRITE_TIMESTAMP("set the fullscreen landscape context")
+ mModel->setData(QModelIndex(), (int)GlxContextLsFs, GlxContextRole );
+ }
+ else {
+ WRITE_TIMESTAMP("set the fullscreen portrait context")
+ mModel->setData(QModelIndex(), (int)GlxContextPtFs, GlxContextRole );
+ }
+ }
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETMODELCONTEXT_EXIT );
}
void GlxFullScreenView::cleanUp()
@@ -321,52 +306,6 @@
return NULL;
}
-void GlxFullScreenView::setModel( QAbstractItemModel *model )
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETMODEL_ENTRY );
- OstTraceExt2( TRACE_NORMAL, GLXFULLSCREENVIEW_SETMODEL, "GlxFullScreenView::setModel; model=%x; mModel=%u", ( TUint )( model ), ( TUint ) mModel );
-
- mModel = model;
- setModelContext();
- setHdmiModel(mModel);
- mZoomWidget->setModel(mModel);
- mCoverFlow->setModel(mModel);
- setImageStripModel();
- if(getSubState() == IMAGEVIEWER_S) {
- setTitle(GLX_IMAGE_VIEWER);
- }
- else if(getSubState() == FETCHER_S){ //do not zoom in case of fetcher
- disconnect(mCoverFlow,SIGNAL( doubleTapEventReceived(QPointF) ), mZoomWidget, SLOT( animateZoomIn(QPointF) ) );
- }
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETMODEL_EXIT );
-}
-
-void GlxFullScreenView::setHdmiModel(QAbstractItemModel* model)
-{
- if (mTvOutWrapper) {
- mTvOutWrapper->setModel(model, screenSize());
- mTvOutWrapper->setImagetoHDMI(); // for the first image on screen
- }
-}
-
-void GlxFullScreenView::setModelContext()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETMODELCONTEXT_ENTRY );
-
- if ( mModel && mWindow ) {
- if ( mWindow->orientation() == Qt::Horizontal ) {
- WRITE_TIMESTAMP("set the fullscreen landscape context")
- mModel->setData(QModelIndex(), (int)GlxContextLsFs, GlxContextRole );
- }
- else {
- WRITE_TIMESTAMP("set the fullscreen portrait context")
- mModel->setData(QModelIndex(), (int)GlxContextPtFs, GlxContextRole );
- }
- }
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETMODELCONTEXT_EXIT );
-}
-
void GlxFullScreenView::orientationChanged(Qt::Orientation orient)
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_ORIENTATIONCHANGED_ENTRY );
@@ -390,42 +329,6 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_ORIENTATIONCHANGED_EXIT );
}
-void GlxFullScreenView::activateUI()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_ACTIVATEUI_ENTRY );
-
- if ( mUiOff && getSubState() != FETCHER_S ){
- if( !mFullScreenToolBar ) {
- loadFullScreenToolBar();
- }
- mUiOff = FALSE;
-
- QVariant variant = mModel->data( mModel->index(0,0), GlxFocusIndexRole );
- if ( variant.isValid() && variant.canConvert<int> () ) {
- mImageStrip->setCurrentIndex ( mModel->index( variant.value<int>(), 0) );
- mImageStrip->scrollTo( mModel->index( variant.value<int>(), 0), HbGridView::PositionAtTop );
- }
-
- setItemVisible( Hb::AllItems, TRUE );
- setViewFlags( viewFlags() &~ HbView::ViewTitleBarHidden &~ HbView::ViewStatusBarHidden );
-
- if ( mImageStrip && getSubState() != IMAGEVIEWER_S) {
- mImageStrip->show();
- HbEffect::start(mImageStrip, QString("HbGridView"), QString("TapShow"), this, "effectFinished" );
- }
- else if( getSubState() == IMAGEVIEWER_S){
- setTitle(GLX_IMAGE_VIEWER);
- }
- mFullScreenToolBar->setOpacity( 1 );
- mFullScreenToolBar->show();
- }
- else {
- hideUi();
- }
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_ACTIVATEUI_EXIT );
-}
-
void GlxFullScreenView::hideUi()
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_HIDEUI_ENTRY );
@@ -452,7 +355,7 @@
OstTraceFunctionExit0( DUP1_GLXFULLSCREENVIEW_HIDEUI_EXIT );
}
-void GlxFullScreenView::changeSelectedIndex(const QModelIndex &index)
+void GlxFullScreenView::changeSelectedIndex( const QModelIndex &index )
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_CHANGESELECTEDINDEX_ENTRY );
@@ -481,7 +384,7 @@
OstTraceFunctionExit0( DUP1_GLXFULLSCREENVIEW_CHANGESELECTEDINDEX_EXIT );
}
-void GlxFullScreenView::indexChanged(const QModelIndex &index)
+void GlxFullScreenView::indexChanged( const QModelIndex &index )
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_INDEXCHANGED_ENTRY );
@@ -494,12 +397,11 @@
if (mTvOutWrapper){
// for the indexchnaged through filmstrip
mTvOutWrapper->setImagetoHDMI();
- }
- //disable the animation for the time being
+ }
imageSelectionAnimation( index );
mModel->setData( index, index.row(), GlxFocusIndexRole );
- mZoomWidget->indexChanged(index.row());
+ mZoomWidget->indexChanged( index.row() );
mZoomWidget->setVisible( false );
OstTraceFunctionExit0( DUP1_GLXFULLSCREENVIEW_INDEXCHANGED_EXIT );
@@ -554,26 +456,6 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_RELEASED_EXIT );
}
-void GlxFullScreenView::setVisvalWindowIndex()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETVISVALWINDOWINDEX_ENTRY );
-
- QList< HbAbstractViewItem * > visibleItemList = mImageStrip->visibleItems();
- if ( visibleItemList.count() <= 0 )
- return ;
-
- HbAbstractViewItem *item = visibleItemList.at(0);
- if ( item == NULL )
- return ;
-
- if ( item->modelIndex().row() < 0 || item->modelIndex().row() >= mModel->rowCount() )
- return ;
-
- mModel->setData( item->modelIndex (), item->modelIndex().row(), GlxVisualWindowIndex);
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETVISVALWINDOWINDEX_EXIT );
-}
-
void GlxFullScreenView::coverFlowEventHandle( GlxCoverFlowEvent e )
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_COVERFLOWEVENTHANDLE_ENTRY );
@@ -621,15 +503,16 @@
return ;
}
+ mImageStrip->resetTransform();
if ( mUiOff ) {
mUiOffTimer->stop();
- mCoverFlow->setUiOn(FALSE);
+ mCoverFlow->setUiOn( FALSE );
mImageStrip->hide();
setItemVisible( Hb::AllItems, FALSE );
}
else {
- mUiOffTimer->start(KUiOffTime);
- mCoverFlow->setUiOn(TRUE);
+ mUiOffTimer->start( KUiOffTime );
+ mCoverFlow->setUiOn( TRUE );
}
OstTraceFunctionExit0( GLXFULLSCREENVIEW_EFFECTFINISHED_EXIT );
@@ -670,6 +553,84 @@
mZoomWidget->resetTransform();
}
+void GlxFullScreenView::handleToolBarAction()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_HANDLETOOLBARACTION_ENTRY );
+
+ HbAction *action = qobject_cast<HbAction*>(sender());
+ qint32 commandId = action->data().toInt();
+ emit actionTriggered( commandId );
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_HANDLETOOLBARACTION_EXIT );
+}
+
+void GlxFullScreenView::handleFSSelect()
+{
+ emit actionTriggered( EGlxCmdFetcherSelect );
+}
+
+bool GlxFullScreenView::eventFilter(QObject *obj, QEvent *ev)
+{
+ GLX_LOG_INFO1("GlxFullScreenView::event() %d event type", ev->type());
+ if ( ev->type() == QEvent::ApplicationActivate && mTvOutWrapper) {
+ GLX_LOG_INFO("GlxFullScreenView::event() shift to native - CGlxHdmi");
+ mTvOutWrapper->setToNativeMode();
+ }
+ if (ev->type() == QEvent::ApplicationDeactivate)
+ {
+ if(mZoomWidget) {
+ mZoomWidget->forceZoomToBackground();
+ }
+ if (mTvOutWrapper) {
+ GLX_LOG_INFO("GlxFullScreenView::event() shift to Clone - CGlxHdmi");
+ mTvOutWrapper->setToCloningMode();
+ }
+ }
+ return HbView::eventFilter(obj,ev);
+}
+
+void GlxFullScreenView::loadWidgets()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_LOADWIDGETS_ENTRY );
+
+ mCoverFlow = qobject_cast<GlxCoverFlow*> (mDocLoader->findWidget(GLXFULLSCREEN_COVERFLOW));
+
+ mZoomWidget = qobject_cast<GlxZoomWidget*> (mDocLoader->findWidget(GLXFULLSCREENZOOMWIDGET));
+ mZoomWidget->connectDecodeRequestToPinchEvent();
+ mCoverFlow->setMultitouchFilter(mZoomWidget);
+
+ //initialise the cover flow for basic connections and the rest
+ mCoverFlow->setCoverFlow();
+ mImageStrip = qobject_cast<HbGridView*> (mDocLoader->findWidget(GLXFULLSCREEN_FILMSTRIP));
+
+ //When the widget is loaded/retreived the widgets are shown by default.
+ //@to do : hide the widgets by default in docml
+ mImageStrip->hide();
+ mImageStrip->setLayoutName( QString( "ImageStrip" ) ); // To distinguish in CSS file
+ mImageStrip->setEnabledAnimations( HbAbstractItemView::None );
+ //mImageStrip->setHorizontalScrollBarPolicy( HbScrollArea::ScrollBarAlwaysOff );
+ mImageStrip->setItemPixmapCacheEnabled( true );
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_LOADWIDGETS_EXIT );
+}
+
+void GlxFullScreenView::loadViewSection()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_LOADVIEWSECTION_ENTRY );
+
+ bool loaded =true;
+ if( mWindow->orientation() == Qt::Horizontal ) {
+ //Load the Landscape section for Horizontal
+ mDocLoader->load(GLXFULLSCREENDOCMLPATH,GLXFULLSCREENLSSECTION,&loaded);
+ }
+ else{
+ //Load the Portrait section for Horizontal
+ mDocLoader->load(GLXFULLSCREENDOCMLPATH,GLXFULLSCREENPTSECTION,&loaded);
+ }
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_LOADVIEWSECTION_EXIT );
+}
+
void GlxFullScreenView::setLayout()
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETLAYOUT_ENTRY );
@@ -682,6 +643,42 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETLAYOUT_EXIT );
}
+void GlxFullScreenView::activateUI()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_ACTIVATEUI_ENTRY );
+
+ if ( mUiOff && getSubState() != FETCHER_S ){
+ if( !mFullScreenToolBar ) {
+ loadFullScreenToolBar();
+ }
+ mUiOff = FALSE;
+
+ QVariant variant = mModel->data( mModel->index(0,0), GlxFocusIndexRole );
+ if ( variant.isValid() && variant.canConvert<int> () ) {
+ mImageStrip->setCurrentIndex ( mModel->index( variant.value<int>(), 0) );
+ mImageStrip->scrollTo( mModel->index( variant.value<int>(), 0), HbGridView::PositionAtTop );
+ }
+
+ setItemVisible( Hb::AllItems, TRUE );
+ setViewFlags( viewFlags() &~ HbView::ViewTitleBarHidden &~ HbView::ViewStatusBarHidden );
+
+ if ( mImageStrip && getSubState() != IMAGEVIEWER_S) {
+ mImageStrip->show();
+ HbEffect::start(mImageStrip, QString("HbGridView"), QString("TapShow"), this, "effectFinished" );
+ }
+ else if( getSubState() == IMAGEVIEWER_S){
+ setTitle(GLX_IMAGE_VIEWER);
+ }
+ mFullScreenToolBar->setOpacity( 1 );
+ mFullScreenToolBar->show();
+ }
+ else {
+ hideUi();
+ }
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_ACTIVATEUI_EXIT );
+}
+
void GlxFullScreenView::addConnection()
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_ADDCONNECTION_ENTRY );
@@ -763,33 +760,67 @@
OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETIMAGESTRIPMODEL_EXIT );
}
-GlxFullScreenView::~GlxFullScreenView()
+void GlxFullScreenView::setHdmiModel(QAbstractItemModel* model)
{
- OstTraceFunctionEntry0( DUP1_GLXFULLSCREENVIEW_GLXFULLSCREENVIEW_ENTRY );
+ if (mTvOutWrapper) {
+ mTvOutWrapper->setModel(model, screenSize());
+ mTvOutWrapper->setImagetoHDMI(); // for the first image on screen
+ }
+}
+
+void GlxFullScreenView::loadFullScreenToolBar()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_LOADFULLSCREENTOOLBAR_ENTRY );
- cleanUp();
- for ( int i = 0; i < NBR_ANIM_ITEM; i++ ) {
- delete mIconItems[ i ] ;
- }
- delete mBackGroundItem;
- delete mImageStrip;
- delete mFullScreenToolBar;
- delete mCoverFlow;
- delete mZoomWidget;
+ //The fullscreen tool bar is delted when ever the view is deactivated
+ //so load the docml once again and retreive the object
+ bool loaded =true;
+ mDocLoader->load(GLXFULLSCREENDOCMLPATH,&loaded);
+ loadViewSection();
- if(mDocLoader != NULL) {
- mDocLoader->reset();
- delete mDocLoader;
- }
+ mFullScreenToolBar = qobject_cast<HbToolBar *> (mDocLoader->findObject(QString("toolBar")));
+ mFullScreenToolBar->clearActions();
- HbEffect::remove( QString("HbGridView"), QString(":/data/transitionup.fxml"), QString( "TapShow" ));
- HbEffect::remove( QString("HbGridView"), QString(":/data/transitiondown.fxml"), QString( "TapHide" ));
- HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomin.fxml" ), QString( "SelectHide" ) );
- HbEffect::remove( QString( "HbGridViewItem" ), QString( ":/data/fullscreenzoomout.fxml" ), QString( "SelectShow" ) );
- HbEffect::remove( QString( "HbIconItem" ), QString( ":/data/rotatefslandscape.fxml" ), QString( "RotateFSLS" ) );
- HbEffect::remove( QString( "HbIconItem" ), QString( ":/data/rotatefsprotrait.fxml" ), QString( "RotateFSPT" ) );
-
- OstTraceFunctionExit0( DUP1_GLXFULLSCREENVIEW_GLXFULLSCREENVIEW_EXIT );
+ addToolBarAction( EGlxCmdDetailsOpen, GLXICON_FLIP, "Flip Action" ); //create Flip tool bar button action
+ addToolBarAction( EGlxCmdSend, GLXICON_SEND, "Send Action" ); //create Send tool bar button action
+ if( getSubState() != IMAGEVIEWER_S ) {
+ addToolBarAction( EGlxCmdDelete, GLXICON_DELETE, "Delete Action" ); //create Delete tool bar button action
+ }
+ else {
+ addToolBarAction( EGlxCmdHandled, GLXICON_USEIMAGE, "Use Action" ); //create Use Image tool bar button action
+ }
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_LOADFULLSCREENTOOLBAR_EXIT );
+}
+
+void GlxFullScreenView::addToolBarAction( int commandId, const QString &iconName, const QString &name )
+{
+ HbAction *action = new HbAction( this );
+ action->setData( commandId );
+ action->setIcon( HbIcon( iconName ) );
+ action->setObjectName( name );
+ mFullScreenToolBar->addAction( action );
+ connect(action, SIGNAL(triggered( )), this, SLOT(handleToolBarAction( )) );
+}
+
+void GlxFullScreenView::setVisvalWindowIndex()
+{
+ OstTraceFunctionEntry0( GLXFULLSCREENVIEW_SETVISVALWINDOWINDEX_ENTRY );
+
+ QList< HbAbstractViewItem * > visibleItemList = mImageStrip->visibleItems();
+ if ( visibleItemList.count() <= 0 )
+ return ;
+
+ HbAbstractViewItem *item = visibleItemList.at(0);
+ if ( item == NULL )
+ return ;
+
+ if ( item->modelIndex().row() < 0 || item->modelIndex().row() >= mModel->rowCount() )
+ return ;
+
+ mModel->setData( item->modelIndex (), item->modelIndex().row(), GlxVisualWindowIndex);
+
+ OstTraceFunctionExit0( GLXFULLSCREENVIEW_SETVISVALWINDOWINDEX_EXIT );
}
void GlxFullScreenView::initAnimationItem()
@@ -871,17 +902,6 @@
HbEffect::start( mZoomWidget, QString( "HbIconItem" ), QString( "RotateFSPT" ), this, "zoomOrientChangeAnimFinished" );
}
}
-
-void GlxFullScreenView::handleToolBarAction()
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_HANDLETOOLBARACTION_ENTRY );
-
- HbAction *action = qobject_cast<HbAction*>(sender());
- qint32 commandId = action->data().toInt();
- emit actionTriggered( commandId );
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_HANDLETOOLBARACTION_EXIT );
-}
int GlxFullScreenView::getSubState()
{
@@ -896,23 +916,3 @@
return substate;
}
-bool GlxFullScreenView::eventFilter(QObject *obj, QEvent *ev)
-{
- GLX_LOG_INFO1("GlxFullScreenView::event() %d event type", ev->type());
- if ( ev->type() == QEvent::ApplicationActivate && mTvOutWrapper) {
- GLX_LOG_INFO("GlxFullScreenView::event() shift to native - CGlxHdmi");
- mTvOutWrapper->setToNativeMode();
- }
- if (ev->type() == QEvent::ApplicationDeactivate)
- {
- if(mZoomWidget) {
- mZoomWidget->forceZoomToBackground();
- }
- if (mTvOutWrapper) {
- GLX_LOG_INFO("GlxFullScreenView::event() shift to Clone - CGlxHdmi");
- mTvOutWrapper->setToCloningMode();
- }
- }
- return HbView::eventFilter(obj,ev);
-}
-
--- a/ui/views/gridview/src/glxgridview.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/views/gridview/src/glxgridview.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -97,6 +97,7 @@
mTotalImagesCount->setObjectName( "Count" );
mTotalImagesCount->hide();
}
+ mWidget->resetTransform();
OstTraceFunctionExit0( GLXGRIDVIEW_ACTIVATE_EXIT );
}
@@ -243,8 +244,7 @@
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_ENABLEMARKING, "GlxGridView::enableMarking" );
mWidget->setSelectionMode(HgWidget::MultiSelection);
- if (mMarkingWidget == NULL)
- {
+ if (mMarkingWidget == NULL) {
mMarkingWidget = new HbWidget(this);
mMarkContainer = new QGraphicsLinearLayout(Qt::Horizontal, 0);
mMarkingWidget->setLayout(mMarkContainer);
@@ -262,13 +262,12 @@
mMarkContainer->addItem(mMarkCheckBox);
mMarkContainer->addItem(mMarkCountLabel);
- }
-
- hideorshowitems(mWindow->orientation());
+ }
- connect( mWidget->selectionModel() , SIGNAL( selectionChanged(const QItemSelection &, const QItemSelection& ) ), this, SLOT( showMarkedItemCount() ) );
- connect(mMarkCheckBox, SIGNAL( stateChanged(int) ), this, SLOT( stateChanged(int)));
+ hideorshowitems( mWindow->orientation() );
+ connect( mWidget->selectionModel() , SIGNAL( selectionChanged( const QItemSelection &, const QItemSelection& ) ), this, SLOT( showMarkedItemCount() ) );
+ connect( mMarkCheckBox, SIGNAL( stateChanged( int ) ), this, SLOT( stateChanged( int ) ));
}
void GlxGridView::disableMarking()
@@ -305,9 +304,26 @@
{
int count = mModel->rowCount();
QModelIndexList indexList = mWidget->selectionModel()->selectedIndexes();
- int markItemCount = indexList.count();
- QString text= HbParameterLengthLimiter(GLX_LABEL_MARK_COUNT).arg(markItemCount).arg(count);
- mMarkCountLabel->setPlainText( text );
+ int markItemCount = indexList.count();
+ QString text = HbParameterLengthLimiter(GLX_LABEL_MARK_COUNT).arg(markItemCount).arg(count);
+ mMarkCountLabel->setPlainText(text);
+
+ //Block The signals generated by the CheckBox
+ //if we dont block the signals , then when we call setCheckState to selected and unselect the CheckBox
+ //it causes state change signal to emit which will cause either mark all or un mark all of teh images.
+ mMarkCheckBox->blockSignals(TRUE);
+ if (markItemCount != count && mMarkCheckBox->checkState() == Qt::Checked) {
+ //if the mark all option was checked and then the user un marks an slected item
+ //Then we have to un check the Mark All check Box
+ mMarkCheckBox->setCheckState(Qt::Unchecked);
+ }
+ else if (markItemCount == count) {
+ //if all the images are selected/marked Indiduvally
+ //Then the the Mark All check Box has to checked/Selected
+ mMarkCheckBox->setCheckState(Qt::Checked);
+ }
+ //UnBlock The signals generated by the CheckBox
+ mMarkCheckBox->blockSignals(FALSE);
}
void GlxGridView::showItemCount()
@@ -332,9 +348,10 @@
if (mAlbumNameHeading) {
mAlbumNameHeading->hide();
}
- mTotalImagesCount->setGeometry(QRectF(0,0,screenSize.width(),deviceSize.height()/24));
+
text = HbParameterLengthLimiter(GLX_GRID_VIEW_COUNT_LABEL, count);
mTotalImagesCount->setHeading ( text );
+ mTotalImagesCount->setGeometry(QRectF(0,0,screenSize.width(),deviceSize.height()/24));
mTotalImagesCount->show();
}
else if ( getSubState() == ALBUM_ITEM_S ) {
@@ -397,18 +414,18 @@
//If fetcher service set only title text
if ((XQServiceUtil::isService()) && isItemVisible(Hb::TitleBarItem))
- {
- mAlbumNameHeading->setGeometry(QRectF(0, 0, screenSize.width(),deviceSize.height() / 24));
+ {
mAlbumNameHeading->setHeading(aTitle);
+ mAlbumNameHeading->setGeometry(QRectF(0, 0, screenSize.width(),deviceSize.height() / 24));
mAlbumNameHeading->show();
}
else
{ //handle album tiltle and count display logic here
if (isItemVisible(Hb::TitleBarItem))
{
- mAlbumNameHeading->setGeometry(QRectF(0, 0, screenSize.width(),deviceSize.height() / 24));
- QString text = HbParameterLengthLimiter(GLX_ALBUM_NAME_COUNT_LABEL).arg(aTitle).arg(count);
+ QString text = HbParameterLengthLimiter(GLX_ALBUM_NAME_COUNT_LABEL).arg(aTitle).arg(count);
mAlbumNameHeading->setHeading(text);
+ mAlbumNameHeading->setGeometry(QRectF(0, 0, screenSize.width(),deviceSize.height()/24));
mAlbumNameHeading->show();
}
}
@@ -512,50 +529,47 @@
OstTraceFunctionEntry0( GLXGRIDVIEW_GETANIMATIONITEM_ENTRY );
int selIndex = -1;
- if ( transitionEffect == FULLSCREEN_TO_GRID ) {
+ if ( transitionEffect == FULLSCREEN_TO_GRID || transitionEffect == FULLSCREEN_TO_GRID_PORTRAIT ) {
return mWidget;
}
- if ( transitionEffect == GRID_TO_FULLSCREEN )
- {
- QVariant variant = mModel->data( mModel->index(0,0), GlxFocusIndexRole );
- if ( variant.isValid() && variant.canConvert<int> () )
- {
- selIndex = variant.value<int>();
- }
- else
- {
+ if ( transitionEffect == GRID_TO_FULLSCREEN ) {
+ QVariant variant = mModel->data( mModel->index( 0, 0 ), GlxFocusIndexRole );
+ if ( variant.isValid() && variant.canConvert<int> () ) {
+ selIndex = variant.value<int> ();
+ }
+ else {
return mWidget;
- }
- QVariant variantimage = mModel->data(mModel->index(selIndex,0),Qt::DecorationRole);
- if ( variantimage.isValid() && variantimage.canConvert<HbIcon> () )
- {
+ }
+ QVariant variantimage = mModel->data( mModel->index( selIndex, 0 ), Qt::DecorationRole );
+ if ( variantimage.isValid() && variantimage.canConvert<HbIcon> () ) {
QPolygonF poly;
- if (mModelWrapper && !mWidget->getItemOutline(mModelWrapper->index(selIndex,0), poly))
- {
+ if ( mModelWrapper && !mWidget->getItemOutline( mModelWrapper->index( selIndex, 0 ), poly ) ) {
return mWidget;
- }
+ }
QRectF itemRect = poly.boundingRect();
- mIconItem->setSize(QSize(120,120));
- HbIcon tempIcon = variantimage.value<HbIcon>();
- QPixmap tempPixmap = tempIcon.qicon().pixmap(120, 120);
- QSize sz = QSize ( 120, 120);
- tempPixmap = tempPixmap.scaled(sz, Qt::IgnoreAspectRatio );
- HbIcon tmp = HbIcon( QIcon(tempPixmap)) ;
- mIconItem->setIcon(tmp);
- mIconItem->setPos(itemRect.topLeft());
- mIconItem->setZValue(mIconItem->zValue() + 20);
+ mIconItem->setSize( QSize( 120, 120 ) );
+ HbIcon tempIcon = variantimage.value<HbIcon> ();
+ QPixmap tempPixmap = tempIcon.qicon().pixmap( 120, 120 );
+ QSize sz = QSize( 120, 120 );
+ tempPixmap = tempPixmap.scaled( sz, Qt::IgnoreAspectRatio );
+ HbIcon tmp = HbIcon( QIcon( tempPixmap ) );
+ mIconItem->setIcon( tmp );
+ mIconItem->setPos( itemRect.topLeft() );
+ mIconItem->setZValue( mIconItem->zValue() + 20 );
mIconItem->show();
- return mIconItem;
+ if ( mToolBar ) {
+ mToolBar->setZValue( mIconItem->zValue() - 5 );
}
- else
- {
+ return mIconItem;
+ }
+ else {
return mWidget;
- }
}
+ }
- if ( transitionEffect == GRID_TO_ALBUMLIST || transitionEffect == ALBUMLIST_TO_GRID ){
+ if ( transitionEffect == GRID_TO_ALBUMLIST || transitionEffect == ALBUMLIST_TO_GRID ) {
return mWidget;
}
OstTraceFunctionExit0( GLXGRIDVIEW_GETANIMATIONITEM_EXIT );
@@ -638,10 +652,8 @@
mMarkingWidget->setGeometry(QRectF(0,deviceSize.height()/24,screenSize.width(),deviceSize.height()/72));
mMarkSelectHeading->show();
- mMarkingWidget->show();
-
- showMarkedItemCount();
-
+ mMarkingWidget->show();
+ showMarkedItemCount();
}
}
--- a/ui/views/slideshowview/src/glxslideshowview.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/views/slideshowview/src/glxslideshowview.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -122,7 +122,7 @@
mSlideShowWidget->setModel(mModel);
if (mTvOutWrapper){
- mTvOutWrapper->setModel(mModel, screenSize(), true);
+ mTvOutWrapper->setModel(mModel, screenSize());
mTvOutWrapper->setImagetoHDMI();
}
}
@@ -180,9 +180,6 @@
break;
case EFFECT_STARTED:
- if (mTvOutWrapper){
- mTvOutWrapper->fadeSurface(false);
- }
break;
default :
--- a/ui/viewutilities/effectengine/src/glxeffectengine.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/viewutilities/effectengine/src/glxeffectengine.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -30,20 +30,20 @@
mTransitionEffect( NO_EFFECT ),
mEffectResolver( NULL )
{
- qDebug("GlxSlideShowEffectEngine::GlxSlideShowEffectEngine()");
+ qDebug( "GlxSlideShowEffectEngine::GlxSlideShowEffectEngine()" );
mTransitionEffectList.clear();
}
GlxEffectEngine::~GlxEffectEngine()
{
- qDebug("GlxSlideShowEffectEngine::~GlxSlideShowEffectEngine()");
+ qDebug( "GlxSlideShowEffectEngine::~GlxSlideShowEffectEngine()" );
delete mEffectResolver;
mEffectResolver = NULL;
cleanTransitionEfffect();
}
-void GlxEffectEngine::registerEffect(const QString &itemType)
+void GlxEffectEngine::registerEffect( const QString &itemType )
{
GlxSettingInterface *settingObj = GlxSettingInterface::instance(); // NO ownership
if ( mEffectResolver == NULL ) {
@@ -54,56 +54,56 @@
QList <QString > effectPathList = mEffectPlugin->effectFileList();
- qDebug("GlxSlideShowEffectEngine::registerEffect() item type %s file path %s", itemType.utf16(), effectPathList[0].utf16());
+ qDebug( "GlxSlideShowEffectEngine::registerEffect() item type %s file path %s", itemType.utf16(), effectPathList[0].utf16() );
for ( int i = 0; i < effectPathList.count() ; ++i ) {
- HbEffect::add(itemType, effectPathList.at(i), QString( "Click%1" ).arg(i));
+ HbEffect::add( itemType, effectPathList.at( i ), QString( "Click%1" ).arg( i ) );
}
}
-void GlxEffectEngine::deRegisterEffect(const QString &itemType)
+void GlxEffectEngine::deRegisterEffect( const QString &itemType )
{
- qDebug("GlxSlideShowEffectEngine::deRegisterEffect() item type %s", itemType.utf16());
+ qDebug( "GlxSlideShowEffectEngine::deRegisterEffect() item type %s", itemType.utf16() );
QList <QString > effectPathList = mEffectPlugin->effectFileList();
for ( int i = 0; i < effectPathList.count() ; ++i ) {
- HbEffect::remove(itemType, effectPathList.at(i), QString( "Click%1" ).arg(i));
+ HbEffect::remove( itemType, effectPathList.at( i ), QString( "Click%1" ).arg( i ) );
}
mEffectPlugin = NULL;
}
void GlxEffectEngine::registerTransitionEffect()
{
- qDebug("GlxSlideShowEffectEngine::registerTransitionEffect()");
+ qDebug( "GlxSlideShowEffectEngine::registerTransitionEffect()" );
initTransitionEffect();
}
void GlxEffectEngine::deregistertransitionEffect()
{
- qDebug("GlxSlideShowEffectEngine::deregisterTransitionEffect()");
+ qDebug( "GlxSlideShowEffectEngine::deregisterTransitionEffect()" );
cleanTransitionEfffect();
}
-void GlxEffectEngine::runEffect(QGraphicsItem * item, const QString & itemType )
+void GlxEffectEngine::runEffect( QGraphicsItem * item, const QString & itemType )
{
- qDebug("GlxSlideShowEffectEngine::runEffect()1 item type %s", itemType.utf16());
- HbEffect::start(item, itemType, QString( "Click1" ), this, "slideShowEffectFinished");
+ qDebug( "GlxSlideShowEffectEngine::runEffect()1 item type %s", itemType.utf16() );
+ HbEffect::start( item, itemType, QString( "Click1" ), this, "slideShowEffectFinished" );
++mNbrEffectRunning;
}
-void GlxEffectEngine::runEffect(QList< QGraphicsItem * > & items, const QString & itemType )
+void GlxEffectEngine::runEffect( QList< QGraphicsItem * > & items, const QString & itemType )
{
- qDebug("GlxSlideShowEffectEngine::runEffect()2 item Type %s", itemType.utf16());
+ qDebug( "GlxSlideShowEffectEngine::runEffect()2 item Type %s", itemType.utf16() );
mEffectPlugin->setUpItems(items);
for ( int i = 0; i < items.count() ; ++i ) {
- if ( mEffectPlugin->isAnimationLater(i) == FALSE ) {
- HbEffect::start(items.at(i), itemType, QString( "Click%1").arg(i), this, "slideShowEffectFinished");
+ if ( mEffectPlugin->isAnimationLater( i ) == FALSE ) {
+ HbEffect::start( items.at( i ), itemType, QString( "Click%1" ).arg( i ), this, "slideShowEffectFinished" );
}
++mNbrEffectRunning;
}
}
-void GlxEffectEngine::runEffect(QList< QGraphicsItem * > & items, GlxEffect transitionEffect)
+void GlxEffectEngine::runEffect( QList< QGraphicsItem * > & items, GlxEffect transitionEffect )
{
- qDebug("GlxSlideShowEffectEngine::runEffect()3 effect type %d ", transitionEffect);
+ qDebug( "GlxSlideShowEffectEngine::runEffect()3 effect type %d ", transitionEffect );
GlxTransitionEffectSetting *effectSetting = mTransitionEffectList.value( transitionEffect );
@@ -116,32 +116,32 @@
++mNbrEffectRunning;
if ( ( i == effectSetting->count() -1) && effectSetting->isTransitionLater() )
{
- effectSetting->setAnimationItem( items.at(i) );
- items.at(i)->hide();
+ effectSetting->setAnimationItem( items.at( i ) );
+ items.at( i )->hide();
}
else {
- HbEffect::start(items.at(i), effectSetting->itemType().at(i), effectSetting->eventType().at(i), this, "transitionEffectFinished");
+ HbEffect::start( items.at( i ), effectSetting->itemType().at( i ), effectSetting->eventType().at( i ), this, "transitionEffectFinished" );
}
}
}
-void GlxEffectEngine::cancelEffect(QGraphicsItem * item)
+void GlxEffectEngine::cancelEffect( QGraphicsItem * item )
{
if ( HbEffect::effectRunning( item, QString( "Click1" ) ) ) {
HbEffect::cancel( item, QString( "Click1" ) );
}
}
-void GlxEffectEngine::cancelEffect(const QList< QGraphicsItem * > & items)
+void GlxEffectEngine::cancelEffect( const QList< QGraphicsItem * > & items )
{
for ( int i = 0; i < items.count() ; ++i ) {
- if ( HbEffect::effectRunning( items.at(i), QString( "Click%1").arg(i) ) ) {
- HbEffect::cancel( items.at(i), QString( "Click%1").arg(i) );
+ if ( HbEffect::effectRunning( items.at( i ), QString( "Click%1" ).arg( i ) ) ) {
+ HbEffect::cancel( items.at( i ), QString( "Click%1" ).arg( i ) );
}
}
}
-void GlxEffectEngine::cancelEffect(QList< QGraphicsItem * > & items, GlxEffect transitionEffect)
+void GlxEffectEngine::cancelEffect( QList< QGraphicsItem * > & items, GlxEffect transitionEffect )
{
GlxTransitionEffectSetting *effectSetting = mTransitionEffectList.value( transitionEffect );
@@ -150,11 +150,11 @@
}
for ( int i = 0; i < effectSetting->count() ; ++i) {
- HbEffect::cancel(items.at(i), effectSetting->eventType().at(i) );
+ HbEffect::cancel(items.at( i ), effectSetting->eventType().at( i ) );
}
}
-bool GlxEffectEngine::isEffectRuning(QGraphicsItem * item)
+bool GlxEffectEngine::isEffectRuning( QGraphicsItem * item )
{
if ( HbEffect::effectRunning( item, QString( "Click1" ) ) ) {
return true;
@@ -162,10 +162,10 @@
return false;
}
-bool GlxEffectEngine::isEffectRuning(const QList< QGraphicsItem * > & items)
+bool GlxEffectEngine::isEffectRuning( const QList< QGraphicsItem * > & items )
{
for ( int i = 0; i < items.count() ; ++i ) {
- if ( HbEffect::effectRunning( items.at(i), QString( "Click%1").arg(i) ) ) {
+ if ( HbEffect::effectRunning( items.at( i ), QString( "Click%1" ).arg( i ) ) ) {
return true;
}
}
@@ -175,12 +175,12 @@
void GlxEffectEngine::slideShowEffectFinished( const HbEffect::EffectStatus &status )
{
Q_UNUSED( status )
- qDebug("GlxSlideShowEffectEngine::slideShowEffectFinished() number of effect %d ", mNbrEffectRunning);
+ qDebug( "GlxSlideShowEffectEngine::slideShowEffectFinished() number of effect %d ", mNbrEffectRunning);
--mNbrEffectRunning;
if ( mEffectPlugin->isAnimationLater( mNbrEffectRunning) ) {
- HbEffect::start( mEffectPlugin->animationItem(), mEffectPlugin->ItemType(), QString( "Click%1").arg(mNbrEffectRunning), this, "slideShowEffectFinished");
+ HbEffect::start( mEffectPlugin->animationItem(), mEffectPlugin->ItemType(), QString( "Click%1" ).arg(mNbrEffectRunning), this, "slideShowEffectFinished" );
}
if (mNbrEffectRunning == 0) {
@@ -191,14 +191,14 @@
void GlxEffectEngine::transitionEffectFinished( const HbEffect::EffectStatus &status )
{
Q_UNUSED( status )
- qDebug("GlxSlideShowEffectEngine::transitionEffectFinished() number of effect %d status %d", mNbrEffectRunning, status.reason);
+ qDebug( "GlxSlideShowEffectEngine::transitionEffectFinished() number of effect %d status %d", mNbrEffectRunning, status.reason);
--mNbrEffectRunning;
if ( mNbrEffectRunning == 1 ) {
GlxTransitionEffectSetting *effectSetting = mTransitionEffectList.value( mTransitionEffect );
if ( effectSetting->isTransitionLater() ){
effectSetting->animationItem()->show();
- HbEffect::start( effectSetting->animationItem(), effectSetting->itemType().at(1), effectSetting->eventType().at(1), this, "transitionEffectFinished");
+ HbEffect::start( effectSetting->animationItem(), effectSetting->itemType().at( 1 ), effectSetting->eventType().at( 1 ), this, "transitionEffectFinished" );
mTransitionEffect = NO_EFFECT;
}
}
@@ -212,46 +212,52 @@
{
GlxTransitionEffectSetting *effectSetting = NULL;
- effectSetting = new GlxTransitionEffectSetting(GRID_TO_FULLSCREEN);
+ effectSetting = new GlxTransitionEffectSetting( GRID_TO_FULLSCREEN );
for ( int i = 0; i < effectSetting->count(); ++i ) {
- HbEffect::add( effectSetting->itemType().at(i), effectSetting->effectFileList().at(i), effectSetting->eventType().at(i)) ;
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
}
- mTransitionEffectList[GRID_TO_FULLSCREEN] = effectSetting;
+ mTransitionEffectList[ GRID_TO_FULLSCREEN ] = effectSetting;
effectSetting = new GlxTransitionEffectSetting( FULLSCREEN_TO_GRID );
for ( int i = 0; i < effectSetting->count(); ++i ) {
- HbEffect::add( effectSetting->itemType().at(i), effectSetting->effectFileList().at(i), effectSetting->eventType().at(i)) ;
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
}
- mTransitionEffectList[FULLSCREEN_TO_GRID] = effectSetting;
+ mTransitionEffectList[ FULLSCREEN_TO_GRID ] = effectSetting;
+
+ effectSetting = new GlxTransitionEffectSetting( FULLSCREEN_TO_GRID_PORTRAIT );
+ for ( int i = 0; i < effectSetting->count(); ++i ) {
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
+ }
+ mTransitionEffectList[ FULLSCREEN_TO_GRID_PORTRAIT ] = effectSetting;
effectSetting = new GlxTransitionEffectSetting( GRID_TO_ALBUMLIST );
for ( int i = 0; i < effectSetting->count(); ++i ) {
- HbEffect::add( effectSetting->itemType().at(i), effectSetting->effectFileList().at(i), effectSetting->eventType().at(i)) ;
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
}
- mTransitionEffectList[GRID_TO_ALBUMLIST] = effectSetting;
+ mTransitionEffectList[ GRID_TO_ALBUMLIST ] = effectSetting;
effectSetting = new GlxTransitionEffectSetting( ALBUMLIST_TO_GRID );
for ( int i = 0; i < effectSetting->count(); ++i ) {
- HbEffect::add( effectSetting->itemType().at(i), effectSetting->effectFileList().at(i), effectSetting->eventType().at(i)) ;
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
}
- mTransitionEffectList[ALBUMLIST_TO_GRID] = effectSetting;
+ mTransitionEffectList[ ALBUMLIST_TO_GRID ] = effectSetting;
effectSetting = new GlxTransitionEffectSetting( FULLSCREEN_TO_DETAIL );
for ( int i = 0; i < effectSetting->count(); ++i ) {
- HbEffect::add( effectSetting->itemType().at(i), effectSetting->effectFileList().at(i), effectSetting->eventType().at(i)) ;
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
}
- mTransitionEffectList[FULLSCREEN_TO_DETAIL] = effectSetting;
+ mTransitionEffectList[ FULLSCREEN_TO_DETAIL ] = effectSetting;
effectSetting = new GlxTransitionEffectSetting( DETAIL_TO_FULLSCREEN );
for ( int i = 0; i < effectSetting->count(); ++i ) {
- HbEffect::add( effectSetting->itemType().at(i), effectSetting->effectFileList().at(i), effectSetting->eventType().at(i)) ;
+ HbEffect::add( effectSetting->itemType().at( i ), effectSetting->effectFileList().at( i ), effectSetting->eventType().at( i ) ) ;
}
- mTransitionEffectList[DETAIL_TO_FULLSCREEN] = effectSetting;
+ mTransitionEffectList[ DETAIL_TO_FULLSCREEN ] = effectSetting;
}
void GlxEffectEngine::cleanTransitionEfffect()
{
- qDebug("GlxSlideShowEffectEngine::cleanTrnastionEfffect()");
+ qDebug( "GlxSlideShowEffectEngine::cleanTrnastionEfffect()" );
QHashIterator<GlxEffect, GlxTransitionEffectSetting *> iter( mTransitionEffectList );
@@ -259,7 +265,7 @@
iter.next();
GlxTransitionEffectSetting *list = iter.value();
for ( int i = 0; i < list->count(); ++i ) {
- HbEffect::remove( list->itemType().at(i), list->effectFileList().at(i), list->eventType().at(i)) ;
+ HbEffect::remove( list->itemType().at( i ), list->effectFileList().at( i ), list->eventType().at( i ) ) ;
}
delete list;
}
--- a/ui/viewutilities/effectengine/src/glxtransitioneffect.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/viewutilities/effectengine/src/glxtransitioneffect.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -21,7 +21,7 @@
GlxTransitionEffectSetting::GlxTransitionEffectSetting(GlxEffect effect): mEffect(effect), mTransitionLater(false), mItem(0)
{
- qDebug("GlxTransitionEffectSetting::GlxTransitionEffectSetting() effect id %d ", effect);
+ qDebug( "GlxTransitionEffectSetting::GlxTransitionEffectSetting() effect id %d ", effect );
mEffectFileList.clear();
mItemType.clear();
mEventType.clear();
@@ -30,64 +30,70 @@
void GlxTransitionEffectSetting::init()
{
- qDebug("GlxTransitionEffectSetting::init() effect id %d ", mEffect);
+ qDebug( "GlxTransitionEffectSetting::init() effect id %d ", mEffect );
switch( mEffect ) {
case GRID_TO_FULLSCREEN :
- mEffectFileList.append( QString(":/data/gridtofullscreenhide.fxml"));
- mItemType.append( QString("HbGridViewItem") );
- mEventType.append(QString("click1") );
+ mEffectFileList.append( QString( ":/data/gridtofullscreenhide.fxml" ) );
+ mItemType.append( QString( "HbGridViewItem" ) );
+ mEventType.append(QString( "gridtofshide" ) );
- mEffectFileList.append( QString(":/data/gridtofullscreenshow.fxml"));
- mItemType.append( QString("HbView") );
- mEventType.append(QString("click2") );
+ mEffectFileList.append( QString( ":/data/gridtofullscreenshow.fxml" ) );
+ mItemType.append( QString( "HbView" ) );
+ mEventType.append(QString( "gridtofsshow" ) );
break;
case FULLSCREEN_TO_GRID :
- mEffectFileList.append( QString(":/data/fullscreentogrid.fxml"));
- mItemType.append( QString("HbGridView") );
- mEventType.append(QString("click3") );
+ mEffectFileList.append( QString( ":/data/fullscreentogrid.fxml" ) );
+ mItemType.append( QString( "HbGridView" ) );
+ mEventType.append(QString( "fstogrid" ) );
break;
+ case FULLSCREEN_TO_GRID_PORTRAIT :
+ mEffectFileList.append( QString( ":/data/fullscreentogridportrait.fxml" ) );
+ mItemType.append( QString( "HbGridView" ) );
+ mEventType.append( QString( "fstogridpt" ) );
+ break;
+
case GRID_TO_ALBUMLIST:
mEffectFileList.append( QString( "view_hide_normal" ) );
mItemType.append( QString( "HbView" ) );
- mEventType.append(QString( "click4" ) );
+ mEventType.append( QString( "gridtolisthide" ) );
mEffectFileList.append( QString( "view_show_normal" ) );
mItemType.append( QString( "HbListView" ) );
- mEventType.append( QString( "click5" ) );
+ mEventType.append( QString( "gridtolistshow" ) );
break;
case ALBUMLIST_TO_GRID:
mEffectFileList.append( QString( "view_hide_back" ) );
mItemType.append( QString( "HbListView" ) );
- mEventType.append( QString( "click6" ) );
+ mEventType.append( QString( "listtogridhide" ) );
mEffectFileList.append( QString( "view_show_back" ) );
mItemType.append( QString( "HbView" ) );
- mEventType.append( QString( "click7" ) );
+ mEventType.append( QString( "listtogridshow" ) );
break;
case FULLSCREEN_TO_DETAIL :
mEffectFileList.append( QString( "view_hide_normal_alt" ) );
mItemType.append( QString( "HbView" ) );
- mEventType.append( QString( "click8" ) );
+ mEventType.append( QString( "fstodetailhide" ) );
mEffectFileList.append( QString( "view_show_normal_alt" ) );
mItemType.append( QString( "HbView" ) );
- mEventType.append(QString( "click9" ) );
+ mEventType.append(QString( "fstodetailshow" ) );
mTransitionLater = true;
break;
case DETAIL_TO_FULLSCREEN :
mEffectFileList.append( "view_hide_back_alt" );
mItemType.append( QString( "HbView" ) );
- mEventType.append( QString( "click10" ) );
+ mEventType.append( QString( "detailtofshide" ) );
mEffectFileList.append( "view_show_back_alt" );
mItemType.append( QString( "HbView" ) );
- mEventType.append( QString( "click11" ) );
+ mEventType.append( QString( "detailtofsshow" ) );
mTransitionLater = true;
break;
@@ -98,7 +104,7 @@
GlxTransitionEffectSetting::~GlxTransitionEffectSetting()
{
- qDebug("GlxTransitionEffectSetting::~GlxTransitionEffectSetting() effect id %d ", mEffect);
+ qDebug( "GlxTransitionEffectSetting::~GlxTransitionEffectSetting() effect id %d ", mEffect );
mEffectFileList.clear();
mItemType.clear();
mEventType.clear();
--- a/ui/widgets/bwins/glxzoomwidgetu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/widgets/bwins/glxzoomwidgetu.def Mon Sep 27 15:13:20 2010 +0530
@@ -1,47 +1,49 @@
EXPORTS
?dataChanged@GlxZoomWidget@@IAEXVQModelIndex@@0@Z @ 1 NONAME ; void GlxZoomWidget::dataChanged(class QModelIndex, class QModelIndex)
?limitRequiredSize@GlxZoomWidget@@AAEXAAVQSizeF@@@Z @ 2 NONAME ; void GlxZoomWidget::limitRequiredSize(class QSizeF &)
- ?cleanUp@GlxZoomWidget@@QAEXXZ @ 3 NONAME ; void GlxZoomWidget::cleanUp(void)
- ?setMinMaxZValue@GlxZoomWidget@@QAEXHH@Z @ 4 NONAME ; void GlxZoomWidget::setMinMaxZValue(int, int)
- ?sendDecodeRequest@GlxZoomWidget@@QAEXH@Z @ 5 NONAME ; void GlxZoomWidget::sendDecodeRequest(int)
- ??0GlxZoomWidget@@QAE@PAVQGraphicsItem@@@Z @ 6 NONAME ; GlxZoomWidget::GlxZoomWidget(class QGraphicsItem *)
- ?qt_metacast@GlxZoomWidget@@UAEPAXPBD@Z @ 7 NONAME ; void * GlxZoomWidget::qt_metacast(char const *)
- ?staticMetaObject@GlxZoomWidget@@2UQMetaObject@@B @ 8 NONAME ; struct QMetaObject const GlxZoomWidget::staticMetaObject
- ?tr@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 9 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *, int)
- ?sceneEvent@GlxZoomWidget@@MAE_NPAVQEvent@@@Z @ 10 NONAME ; bool GlxZoomWidget::sceneEvent(class QEvent *)
- ?forceZoomToBackground@GlxZoomWidget@@QAEXXZ @ 11 NONAME ; void GlxZoomWidget::forceZoomToBackground(void)
- ?resetDecoder@GlxZoomWidget@@AAEXXZ @ 12 NONAME ; void GlxZoomWidget::resetDecoder(void)
- ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 13 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *)
- ?getFocusedImage@GlxZoomWidget@@AAE?AVQPixmap@@XZ @ 14 NONAME ; class QPixmap GlxZoomWidget::getFocusedImage(void)
- ?animateDoubleTap@GlxZoomWidget@@QAEXXZ @ 15 NONAME ; void GlxZoomWidget::animateDoubleTap(void)
- ?setModel@GlxZoomWidget@@QAEXPAVQAbstractItemModel@@@Z @ 16 NONAME ; void GlxZoomWidget::setModel(class QAbstractItemModel *)
- ?finalizeWidgetTransform@GlxZoomWidget@@AAEXXZ @ 17 NONAME ; void GlxZoomWidget::finalizeWidgetTransform(void)
- ?executeGestureEvent@GlxZoomWidget@@AAE_NPAVQGraphicsItem@@PAVQGestureEvent@@@Z @ 18 NONAME ; bool GlxZoomWidget::executeGestureEvent(class QGraphicsItem *, class QGestureEvent *)
- ?zoomImage@GlxZoomWidget@@AAEXMVQPointF@@@Z @ 19 NONAME ; void GlxZoomWidget::zoomImage(float, class QPointF)
- ?activate@GlxZoomWidget@@QAEXXZ @ 20 NONAME ; void GlxZoomWidget::activate(void)
- ?connectDecodeRequestToPinchEvent@GlxZoomWidget@@QAEXXZ @ 21 NONAME ; void GlxZoomWidget::connectDecodeRequestToPinchEvent(void)
- ?indexChanged@GlxZoomWidget@@QAEXH@Z @ 22 NONAME ; void GlxZoomWidget::indexChanged(int)
- ?animateZoomIn@GlxZoomWidget@@QAEXVQPointF@@@Z @ 23 NONAME ; void GlxZoomWidget::animateZoomIn(class QPointF)
- ?getStaticMetaObject@GlxZoomWidget@@SAABUQMetaObject@@XZ @ 24 NONAME ; struct QMetaObject const & GlxZoomWidget::getStaticMetaObject(void)
- ?animationTimeLineFinished@GlxZoomWidget@@QAEXXZ @ 25 NONAME ; void GlxZoomWidget::animationTimeLineFinished(void)
- ?isFocussedItemCorrupt@GlxZoomWidget@@AAE_NXZ @ 26 NONAME ; bool GlxZoomWidget::isFocussedItemCorrupt(void)
- ?qt_metacall@GlxZoomWidget@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 27 NONAME ; int GlxZoomWidget::qt_metacall(enum QMetaObject::Call, int, void * *)
- ?zoomWidgetMovedBackground@GlxZoomWidget@@IAEXH@Z @ 28 NONAME ; void GlxZoomWidget::zoomWidgetMovedBackground(int)
- ?indexChanged@GlxZoomWidget@@QAEXXZ @ 29 NONAME ; void GlxZoomWidget::indexChanged(void)
- ?animateZoomOut@GlxZoomWidget@@QAEXVQPointF@@@Z @ 30 NONAME ; void GlxZoomWidget::animateZoomOut(class QPointF)
- ?timerEvent@GlxZoomWidget@@MAEXPAVQTimerEvent@@@Z @ 31 NONAME ; void GlxZoomWidget::timerEvent(class QTimerEvent *)
- ?adjustGestureCenter@GlxZoomWidget@@AAEXAAVQPointF@@AAM@Z @ 32 NONAME ; void GlxZoomWidget::adjustGestureCenter(class QPointF &, float &)
- ?stepZoom@GlxZoomWidget@@IAEXXZ @ 33 NONAME ; void GlxZoomWidget::stepZoom(void)
- ?metaObject@GlxZoomWidget@@UBEPBUQMetaObject@@XZ @ 34 NONAME ; struct QMetaObject const * GlxZoomWidget::metaObject(void) const
- ?decodedImageAvailable@GlxZoomWidget@@QAEXXZ @ 35 NONAME ; void GlxZoomWidget::decodedImageAvailable(void)
- ??_EGlxZoomWidget@@UAE@I@Z @ 36 NONAME ; GlxZoomWidget::~GlxZoomWidget(unsigned int)
- ??1GlxZoomWidget@@UAE@XZ @ 37 NONAME ; GlxZoomWidget::~GlxZoomWidget(void)
- ?sceneEventFilter@GlxZoomWidget@@MAE_NPAVQGraphicsItem@@PAVQEvent@@@Z @ 38 NONAME ; bool GlxZoomWidget::sceneEventFilter(class QGraphicsItem *, class QEvent *)
- ?pinchGestureReceived@GlxZoomWidget@@IAEXH@Z @ 39 NONAME ; void GlxZoomWidget::pinchGestureReceived(int)
- ?setZoomParams@GlxZoomWidget@@AAEXXZ @ 40 NONAME ; void GlxZoomWidget::setZoomParams(void)
- ?setWindowSize@GlxZoomWidget@@QAEXVQSize@@@Z @ 41 NONAME ; void GlxZoomWidget::setWindowSize(class QSize)
- ?retreiveFocusedImage@GlxZoomWidget@@AAEXXZ @ 42 NONAME ; void GlxZoomWidget::retreiveFocusedImage(void)
- ?modelDestroyed@GlxZoomWidget@@IAEXXZ @ 43 NONAME ; void GlxZoomWidget::modelDestroyed(void)
- ?tr@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 44 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *)
- ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 45 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *, int)
+ ?springEffectAtMin@GlxZoomWidget@@AAEXXZ @ 3 NONAME ; void GlxZoomWidget::springEffectAtMin(void)
+ ?cleanUp@GlxZoomWidget@@QAEXXZ @ 4 NONAME ; void GlxZoomWidget::cleanUp(void)
+ ?setMinMaxZValue@GlxZoomWidget@@QAEXHH@Z @ 5 NONAME ; void GlxZoomWidget::setMinMaxZValue(int, int)
+ ?sendDecodeRequest@GlxZoomWidget@@QAEXH@Z @ 6 NONAME ; void GlxZoomWidget::sendDecodeRequest(int)
+ ??0GlxZoomWidget@@QAE@PAVQGraphicsItem@@@Z @ 7 NONAME ; GlxZoomWidget::GlxZoomWidget(class QGraphicsItem *)
+ ?qt_metacast@GlxZoomWidget@@UAEPAXPBD@Z @ 8 NONAME ; void * GlxZoomWidget::qt_metacast(char const *)
+ ?staticMetaObject@GlxZoomWidget@@2UQMetaObject@@B @ 9 NONAME ; struct QMetaObject const GlxZoomWidget::staticMetaObject
+ ?tr@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 10 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *, int)
+ ?sceneEvent@GlxZoomWidget@@MAE_NPAVQEvent@@@Z @ 11 NONAME ; bool GlxZoomWidget::sceneEvent(class QEvent *)
+ ?forceZoomToBackground@GlxZoomWidget@@QAEXXZ @ 12 NONAME ; void GlxZoomWidget::forceZoomToBackground(void)
+ ?resetDecoder@GlxZoomWidget@@AAEXXZ @ 13 NONAME ; void GlxZoomWidget::resetDecoder(void)
+ ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 14 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *)
+ ?getFocusedImage@GlxZoomWidget@@AAE?AVQPixmap@@XZ @ 15 NONAME ; class QPixmap GlxZoomWidget::getFocusedImage(void)
+ ?animateDoubleTap@GlxZoomWidget@@QAEXXZ @ 16 NONAME ; void GlxZoomWidget::animateDoubleTap(void)
+ ?setModel@GlxZoomWidget@@QAEXPAVQAbstractItemModel@@@Z @ 17 NONAME ; void GlxZoomWidget::setModel(class QAbstractItemModel *)
+ ?finalizeWidgetTransform@GlxZoomWidget@@AAEXXZ @ 18 NONAME ; void GlxZoomWidget::finalizeWidgetTransform(void)
+ ?executeGestureEvent@GlxZoomWidget@@AAE_NPAVQGraphicsItem@@PAVQGestureEvent@@@Z @ 19 NONAME ; bool GlxZoomWidget::executeGestureEvent(class QGraphicsItem *, class QGestureEvent *)
+ ?zoomImage@GlxZoomWidget@@AAEXMVQPointF@@@Z @ 20 NONAME ; void GlxZoomWidget::zoomImage(float, class QPointF)
+ ?activate@GlxZoomWidget@@QAEXXZ @ 21 NONAME ; void GlxZoomWidget::activate(void)
+ ?connectDecodeRequestToPinchEvent@GlxZoomWidget@@QAEXXZ @ 22 NONAME ; void GlxZoomWidget::connectDecodeRequestToPinchEvent(void)
+ ?indexChanged@GlxZoomWidget@@QAEXH@Z @ 23 NONAME ; void GlxZoomWidget::indexChanged(int)
+ ?animateZoomIn@GlxZoomWidget@@QAEXVQPointF@@@Z @ 24 NONAME ; void GlxZoomWidget::animateZoomIn(class QPointF)
+ ?getStaticMetaObject@GlxZoomWidget@@SAABUQMetaObject@@XZ @ 25 NONAME ; struct QMetaObject const & GlxZoomWidget::getStaticMetaObject(void)
+ ?animationTimeLineFinished@GlxZoomWidget@@QAEXXZ @ 26 NONAME ; void GlxZoomWidget::animationTimeLineFinished(void)
+ ?isFocussedItemCorrupt@GlxZoomWidget@@AAE_NXZ @ 27 NONAME ; bool GlxZoomWidget::isFocussedItemCorrupt(void)
+ ?qt_metacall@GlxZoomWidget@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 28 NONAME ; int GlxZoomWidget::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?zoomWidgetMovedBackground@GlxZoomWidget@@IAEXH@Z @ 29 NONAME ; void GlxZoomWidget::zoomWidgetMovedBackground(int)
+ ?springEffectAtMax@GlxZoomWidget@@AAEXXZ @ 30 NONAME ; void GlxZoomWidget::springEffectAtMax(void)
+ ?indexChanged@GlxZoomWidget@@QAEXXZ @ 31 NONAME ; void GlxZoomWidget::indexChanged(void)
+ ?animateZoomOut@GlxZoomWidget@@QAEXVQPointF@@@Z @ 32 NONAME ; void GlxZoomWidget::animateZoomOut(class QPointF)
+ ?timerEvent@GlxZoomWidget@@MAEXPAVQTimerEvent@@@Z @ 33 NONAME ; void GlxZoomWidget::timerEvent(class QTimerEvent *)
+ ?adjustGestureCenter@GlxZoomWidget@@AAEXAAVQPointF@@AAM@Z @ 34 NONAME ; void GlxZoomWidget::adjustGestureCenter(class QPointF &, float &)
+ ?stepZoom@GlxZoomWidget@@IAEXXZ @ 35 NONAME ; void GlxZoomWidget::stepZoom(void)
+ ?metaObject@GlxZoomWidget@@UBEPBUQMetaObject@@XZ @ 36 NONAME ; struct QMetaObject const * GlxZoomWidget::metaObject(void) const
+ ?decodedImageAvailable@GlxZoomWidget@@QAEXXZ @ 37 NONAME ; void GlxZoomWidget::decodedImageAvailable(void)
+ ??_EGlxZoomWidget@@UAE@I@Z @ 38 NONAME ; GlxZoomWidget::~GlxZoomWidget(unsigned int)
+ ??1GlxZoomWidget@@UAE@XZ @ 39 NONAME ; GlxZoomWidget::~GlxZoomWidget(void)
+ ?sceneEventFilter@GlxZoomWidget@@MAE_NPAVQGraphicsItem@@PAVQEvent@@@Z @ 40 NONAME ; bool GlxZoomWidget::sceneEventFilter(class QGraphicsItem *, class QEvent *)
+ ?pinchGestureReceived@GlxZoomWidget@@IAEXH@Z @ 41 NONAME ; void GlxZoomWidget::pinchGestureReceived(int)
+ ?setZoomParams@GlxZoomWidget@@AAEXXZ @ 42 NONAME ; void GlxZoomWidget::setZoomParams(void)
+ ?setWindowSize@GlxZoomWidget@@QAEXVQSize@@@Z @ 43 NONAME ; void GlxZoomWidget::setWindowSize(class QSize)
+ ?retreiveFocusedImage@GlxZoomWidget@@AAEXXZ @ 44 NONAME ; void GlxZoomWidget::retreiveFocusedImage(void)
+ ?modelDestroyed@GlxZoomWidget@@IAEXXZ @ 45 NONAME ; void GlxZoomWidget::modelDestroyed(void)
+ ?tr@GlxZoomWidget@@SA?AVQString@@PBD0@Z @ 46 NONAME ; class QString GlxZoomWidget::tr(char const *, char const *)
+ ?trUtf8@GlxZoomWidget@@SA?AVQString@@PBD0H@Z @ 47 NONAME ; class QString GlxZoomWidget::trUtf8(char const *, char const *, int)
--- a/ui/widgets/eabi/glxzoomwidgetu.def Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/widgets/eabi/glxzoomwidgetu.def Mon Sep 27 15:13:20 2010 +0530
@@ -19,35 +19,37 @@
_ZN13GlxZoomWidget16staticMetaObjectE @ 18 NONAME DATA 16
_ZN13GlxZoomWidget17limitRequiredSizeER6QSizeF @ 19 NONAME
_ZN13GlxZoomWidget17sendDecodeRequestEi @ 20 NONAME
- _ZN13GlxZoomWidget19adjustGestureCenterER7QPointFRf @ 21 NONAME
- _ZN13GlxZoomWidget19executeGestureEventEP13QGraphicsItemP13QGestureEvent @ 22 NONAME
- _ZN13GlxZoomWidget19getStaticMetaObjectEv @ 23 NONAME
- _ZN13GlxZoomWidget20pinchGestureReceivedEi @ 24 NONAME
- _ZN13GlxZoomWidget20retreiveFocusedImageEv @ 25 NONAME
- _ZN13GlxZoomWidget21decodedImageAvailableEv @ 26 NONAME
- _ZN13GlxZoomWidget21forceZoomToBackgroundEv @ 27 NONAME
- _ZN13GlxZoomWidget21isFocussedItemCorruptEv @ 28 NONAME
- _ZN13GlxZoomWidget23finalizeWidgetTransformEv @ 29 NONAME
- _ZN13GlxZoomWidget25animationTimeLineFinishedEv @ 30 NONAME
- _ZN13GlxZoomWidget25zoomWidgetMovedBackgroundEi @ 31 NONAME
- _ZN13GlxZoomWidget32connectDecodeRequestToPinchEventEv @ 32 NONAME
- _ZN13GlxZoomWidget7cleanUpEv @ 33 NONAME
- _ZN13GlxZoomWidget8activateEv @ 34 NONAME
- _ZN13GlxZoomWidget8setModelEP18QAbstractItemModel @ 35 NONAME
- _ZN13GlxZoomWidget8stepZoomEv @ 36 NONAME
- _ZN13GlxZoomWidget9zoomImageEf7QPointF @ 37 NONAME
- _ZN13GlxZoomWidgetC1EP13QGraphicsItem @ 38 NONAME
- _ZN13GlxZoomWidgetC2EP13QGraphicsItem @ 39 NONAME
- _ZN13GlxZoomWidgetD0Ev @ 40 NONAME
- _ZN13GlxZoomWidgetD1Ev @ 41 NONAME
- _ZN13GlxZoomWidgetD2Ev @ 42 NONAME
- _ZNK13GlxZoomWidget10metaObjectEv @ 43 NONAME
- _ZTI13GlxZoomWidget @ 44 NONAME
- _ZTV13GlxZoomWidget @ 45 NONAME
- _ZThn16_N13GlxZoomWidgetD0Ev @ 46 NONAME
- _ZThn16_N13GlxZoomWidgetD1Ev @ 47 NONAME
- _ZThn8_N13GlxZoomWidget10sceneEventEP6QEvent @ 48 NONAME
- _ZThn8_N13GlxZoomWidget16sceneEventFilterEP13QGraphicsItemP6QEvent @ 49 NONAME
- _ZThn8_N13GlxZoomWidgetD0Ev @ 50 NONAME
- _ZThn8_N13GlxZoomWidgetD1Ev @ 51 NONAME
+ _ZN13GlxZoomWidget17springEffectAtMaxEv @ 21 NONAME
+ _ZN13GlxZoomWidget17springEffectAtMinEv @ 22 NONAME
+ _ZN13GlxZoomWidget19adjustGestureCenterER7QPointFRf @ 23 NONAME
+ _ZN13GlxZoomWidget19executeGestureEventEP13QGraphicsItemP13QGestureEvent @ 24 NONAME
+ _ZN13GlxZoomWidget19getStaticMetaObjectEv @ 25 NONAME
+ _ZN13GlxZoomWidget20pinchGestureReceivedEi @ 26 NONAME
+ _ZN13GlxZoomWidget20retreiveFocusedImageEv @ 27 NONAME
+ _ZN13GlxZoomWidget21decodedImageAvailableEv @ 28 NONAME
+ _ZN13GlxZoomWidget21forceZoomToBackgroundEv @ 29 NONAME
+ _ZN13GlxZoomWidget21isFocussedItemCorruptEv @ 30 NONAME
+ _ZN13GlxZoomWidget23finalizeWidgetTransformEv @ 31 NONAME
+ _ZN13GlxZoomWidget25animationTimeLineFinishedEv @ 32 NONAME
+ _ZN13GlxZoomWidget25zoomWidgetMovedBackgroundEi @ 33 NONAME
+ _ZN13GlxZoomWidget32connectDecodeRequestToPinchEventEv @ 34 NONAME
+ _ZN13GlxZoomWidget7cleanUpEv @ 35 NONAME
+ _ZN13GlxZoomWidget8activateEv @ 36 NONAME
+ _ZN13GlxZoomWidget8setModelEP18QAbstractItemModel @ 37 NONAME
+ _ZN13GlxZoomWidget8stepZoomEv @ 38 NONAME
+ _ZN13GlxZoomWidget9zoomImageEf7QPointF @ 39 NONAME
+ _ZN13GlxZoomWidgetC1EP13QGraphicsItem @ 40 NONAME
+ _ZN13GlxZoomWidgetC2EP13QGraphicsItem @ 41 NONAME
+ _ZN13GlxZoomWidgetD0Ev @ 42 NONAME
+ _ZN13GlxZoomWidgetD1Ev @ 43 NONAME
+ _ZN13GlxZoomWidgetD2Ev @ 44 NONAME
+ _ZNK13GlxZoomWidget10metaObjectEv @ 45 NONAME
+ _ZTI13GlxZoomWidget @ 46 NONAME
+ _ZTV13GlxZoomWidget @ 47 NONAME
+ _ZThn16_N13GlxZoomWidgetD0Ev @ 48 NONAME
+ _ZThn16_N13GlxZoomWidgetD1Ev @ 49 NONAME
+ _ZThn8_N13GlxZoomWidget10sceneEventEP6QEvent @ 50 NONAME
+ _ZThn8_N13GlxZoomWidget16sceneEventFilterEP13QGraphicsItemP6QEvent @ 51 NONAME
+ _ZThn8_N13GlxZoomWidgetD0Ev @ 52 NONAME
+ _ZThn8_N13GlxZoomWidgetD1Ev @ 53 NONAME
--- a/ui/widgets/glxzoomwidget/inc/glxzoomwidget.h Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/widgets/glxzoomwidget/inc/glxzoomwidget.h Mon Sep 27 15:13:20 2010 +0530
@@ -81,6 +81,8 @@
void modelDestroyed();
private:
+ void springEffectAtMin();
+ void springEffectAtMax();
bool executeGestureEvent(QGraphicsItem *source,QGestureEvent *event);
//Responsible for changing the transforms of the widget wrt the ZF and center
//Also adjusts the ZF, center and final size so as to respect the boundaries
@@ -155,5 +157,6 @@
QSizeF minitSize;
//counter to track the double tap animation steps
int mdoubletapSteps;
+ bool mDoubleTap;
};
#endif //GLXZOOMWIDGET_H
--- a/ui/widgets/glxzoomwidget/src/glxzoomwidget.cpp Mon Sep 20 12:39:08 2010 +0530
+++ b/ui/widgets/glxzoomwidget/src/glxzoomwidget.cpp Mon Sep 27 15:13:20 2010 +0530
@@ -29,6 +29,8 @@
const int NOOFSTEPSZI = 24;
const int NOOFSTEPSZO = 18;
const float MAXDTZOOMIN = 3.5;
+const int NO_OF_STEPS_FOR_SPRINGBACK_AT_MAX = 12;
+const int NO_OF_STEPS_FOR_SPRINGBACK_AT_MIN = 5;
GlxZoomWidget::GlxZoomWidget(QGraphicsItem *parent):HbScrollArea(parent),
mModel(NULL), mMinZValue(MINZVALUE),
@@ -62,6 +64,7 @@
//AA: signal and slot to perform double tap animation
//after every step redraw, signal is emitted to perform the next step
connect( this, SIGNAL( stepZoom() ), this, SLOT( animateDoubleTap() ), Qt::QueuedConnection );
+ mDoubleTap = false;
}
GlxZoomWidget::~GlxZoomWidget()
@@ -144,6 +147,7 @@
resetDecoder();
}
mZoomItem->setPixmap(QPixmap());
+ mBlackBackgroundItem->setParentItem(this);
}
void GlxZoomWidget::activate()
@@ -238,26 +242,26 @@
if (pinchG->state() == Qt::GestureFinished) {
//For giving a spring effect when user has zoomed more than normal.
- if(mStepCurrentSize.width() > mMaxScaleDecSize.width()) {
- //scale the image to limited size
- qreal value = mMaxScaleDecSize.width()/mCurrentSize.width();
- QPointF center(mWindowSize.width()/2, mWindowSize.height()/2);
- QPointF sceneGestureCenter = source->sceneTransform().map(center);
- zoomImage(value, sceneGestureCenter);
- }
- mPinchGestureOngoing = false;
- //finalize the transforms to the geometry else panning will not work
- finalizeWidgetTransform();
+ mPinchGestureOngoing = false;
+ //scale the image to limited size
+ if(mCurrentSize.width() > mMaxScaleDecSize.width() )
+ {
+ QPointF center(mWindowSize.width()/2, mWindowSize.height()/2);
+ m_AnimRefPoint = source->sceneTransform().map(center);
+ springEffectAtMax();
+ return true;
+ }
-//push the Zoom widget to background when zoomed image size nears FS image
- if(mStepCurrentSize.width() <= mMinDecScaleSize.width()*1.3) {
- mBlackBackgroundItem->hide();
- //push the widget back to background
- setZValue(mMinZValue);
- mZoomOngoing = false;
- emit zoomWidgetMovedBackground(mFocusIndex);
+ if(mCurrentSize.width() < mMinDecScaleSize.width())
+ {
+ QPointF center(mWindowSize.width()/2, mWindowSize.height()/2);
+ m_AnimRefPoint = source->sceneTransform().map(center);
+ springEffectAtMin();
+ return true;
//do not reset the transform here as it will then zoom-in the widget to decoded image size
- }
+ }
+ //finalize the transforms to the geometry else panning will not work
+ finalizeWidgetTransform();
}
//gesture accepted
return true;
@@ -269,6 +273,38 @@
return true;
}
+void GlxZoomWidget::springEffectAtMax()
+{
+ //set the no. of steps for double tap animation
+ mdoubletapSteps = NO_OF_STEPS_FOR_SPRINGBACK_AT_MAX;
+ //initiale variable for double tap animation
+ mIncSF = 1;
+
+ //For giving a spring effect when user has zoomed out more than normal.
+ //Zoom out to mMaxScaleDecSize from the currentsize
+ m_FinalAnimatedScaleFactor = mMaxScaleDecSize.width()/mCurrentSize.width();
+ //calculate the step increment SF for each step
+ msfInc = (1 - m_FinalAnimatedScaleFactor)/(mdoubletapSteps);
+ //preserve the size when zoom out was initiated, requried for calculates applicable/req scale factor
+ minitSize = mCurrentSize;
+ animateDoubleTap();
+}
+
+void GlxZoomWidget::springEffectAtMin()
+{
+
+ m_FinalAnimatedScaleFactor = mMinDecScaleSize.width()/mCurrentSize.width();
+ //set the no. of steps for double tap animation
+ mdoubletapSteps = NO_OF_STEPS_FOR_SPRINGBACK_AT_MIN;
+ //initiale variable for double tap animation
+ mIncSF = 1;
+ //SF has to always greater than 1 for upscaling, hence range for zoomout is [1,m_FinalAnimatedScaleFactor]
+ msfInc = (m_FinalAnimatedScaleFactor-1)/mdoubletapSteps;
+ //preserve the size when zoom out was initiated, requried for calculates applicable/req scale factor
+ minitSize = mCurrentSize;
+ animateDoubleTap();
+
+}
void GlxZoomWidget::zoomImage(qreal zoomFactor, QPointF center)
{
@@ -297,8 +333,8 @@
if(requiredSize.width() > mMaxScaleSize.width() ) {
requiredSize = mMaxScaleSize ;
}
- else if(requiredSize.width() < mMinDecScaleSize.width() ) {
- requiredSize = mMinDecScaleSize ;
+ else if(requiredSize.width() < mMinScaleSize.width() ) {
+ requiredSize = mMinScaleSize ;
}
@@ -579,6 +615,7 @@
void GlxZoomWidget::animateDoubleTap()
{
+ mDoubleTap = true;
//calculate increamental scale factor based on the step and then calculate the applicable scale factor this step
//increamental SF works on the ImageSize when double tap started, applicable(required) SF calculates the delate SF
if(m_FinalAnimatedScaleFactor > 1) {
@@ -609,15 +646,24 @@
void GlxZoomWidget::animationTimeLineFinished()
{
finalizeWidgetTransform();
-//push the Zoom widget to background when zoomed image size nears FS image
- if(mStepCurrentSize.width() <= mMinDecScaleSize.width()*1.3) {
+ //push the Zoom widget to background when zoomed image size nears FS image
+ if(mDoubleTap && (mStepCurrentSize.width() <= mMinDecScaleSize.width()*1.3)) {
mBlackBackgroundItem->hide();
//push the widget back to background
setZValue(mMinZValue);
mZoomOngoing = false;
emit zoomWidgetMovedBackground(mFocusIndex);
//do not reset the transform here as it will then zoom-in the widget to decoded image size
- }
+ mDoubleTap = false;
+ }
+ if(mCurrentSize.width() == mMinDecScaleSize.width()) {
+ mBlackBackgroundItem->hide();
+ //push the widget back to background
+ setZValue(mMinZValue);
+ mZoomOngoing = false;
+ emit zoomWidgetMovedBackground(mFocusIndex);
+
+ }
}