Binary file commonutilities/common/cenrep/20007194.txt has changed
--- a/commonutilities/common/group/bld.inf Mon May 03 12:31:32 2010 +0300
+++ b/commonutilities/common/group/bld.inf Fri May 14 15:52:22 2010 +0300
@@ -45,12 +45,19 @@
../cenrep/200009EE_orientation_portrait_landscape.txt /epoc32/data/z/private/10202be9/200009EE.txt
// for emulator
../cenrep/200009EE_orientation_portrait_landscape.txt /epoc32/release/winscw/udeb/z/private/10202be9/200009EE.txt
+ //slideshow settings cenrep initialisation file
+ ../cenrep/20007194.txt /epoc32/data/z/private/10202be9/20007194.txt
+ ../cenrep/20007194.txt /epoc32/release/winscw/udeb/z/private/10202be9/20007194.txt
+ ../cenrep/20007194.txt /epoc32/release/winscw/urel/z/private/10202be9/20007194.txt
+
#endif
// Generic configuration interface for component cenrep settings
../../../conf/gallery.confml CONFML_EXPORT_PATH(gallery.confml,customsw)
../../../conf/gallery_200009EE.crml CRML_EXPORT_PATH(gallery_200009EE.crml,customsw)
+../../../conf/slideshowsettings.confml CONFML_EXPORT_PATH(slideshowsettings.confml,customsw)
+../../../conf/slideshowsettings_20007194.crml CRML_EXPORT_PATH(slideshowsettings_20007194.crml,customsw)
PRJ_MMPFILES
glxcommon.mmp
Binary file conf/slideshowsettings.confml has changed
Binary file conf/slideshowsettings_20007194.crml has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/fullscreen.docml Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="1.0">
+ <widget name="mGlxFullscreenView" type="HbView">
+ <widget name="mcontent" role="HbView:widget" type="HbWidget">
+ <widget name="mCoverFlow" type="HbWidget">
+ <enums name="alignment" value="AlignLeft|AlignTop|AlignLeading"/>
+ <enums name="scrollDirections" value="Horizontal"/>
+ <real name="z" value="5"/>
+ <bool name="frictionEnabled" value="TRUE"/>
+ </widget>
+ <widget name="mImageStrip" type="HbGridView">
+ <bool name="itemRecycling" value="TRUE"/>
+ <bool name="textVisible" value="FALSE"/>
+ <bool name="uniformItemSizes" value="TRUE"/>
+ <enums name="scrollDirections" value="Horizontal"/>
+ <real name="z" value="7"/>
+ <integer name="columnCount" value="1"/>
+ <sizehint height="44.77612un" type="PREFERRED" width="44.77612un"/>
+ <bool name="frictionEnabled" value="TRUE"/>
+ <integer name="rowCount" value="1"/>
+ </widget>
+ <widget name="toolBar" type="HbToolBar">
+ <enums name="layoutDirection" value="LeftToRight"/>
+ <real name="z" value="7"/>
+ <sizehint height="60.44776un" type="PREFERRED" width="9.40299un"/>
+ <enums name="orientation" value="Vertical"/>
+ </widget>
+ <string name="toolTipText" value=""/>
+ <bool name="visible" value="TRUE"/>
+ <layout type="anchor">
+ <anchoritem dst="mCoverFlow" dstEdge="LEFT" spacing="var(hb-param-margin-view-left)" src="" srcEdge="LEFT"/>
+ <anchoritem dst="mCoverFlow" dstEdge="TOP" spacing="var(hb-param-margin-view-top)" src="" srcEdge="TOP"/>
+ <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="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"/>
+ <anchoritem dst="toolBar" dstEdge="TOP" spacing="17.46269un" src="" srcEdge="TOP"/>
+ </layout>
+ </widget>
+ <string name="title" value="Photos"/>
+ <bool name="contentFullScreen" value="TRUE"/>
+ </widget>
+ <section name="portrait">
+ <widget name="mImageStrip" type="HbGridView">
+ <integer name="columnCount" value="4"/>
+ <integer name="rowCount" value="1"/>
+ </widget>
+ <widget name="mcontent" role="HbView:widget" type="HbWidget">
+ <layout type="anchor">
+ <anchoritem dst="mCoverFlow" dstEdge="LEFT" spacing="var(hb-param-margin-view-left)" src="" srcEdge="LEFT"/>
+ <anchoritem dst="mCoverFlow" dstEdge="TOP" spacing="var(hb-param-margin-view-top)" src="" srcEdge="TOP"/>
+ <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="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"/>
+ <anchoritem dst="toolBar" dstEdge="TOP" spacing="18.13433un" src="" srcEdge="TOP"/>
+ </layout>
+ </widget>
+ <widget name="toolBar" type="HbToolBar">
+ <sizehint height="58.50746un" type="PREFERRED" width="9.40299un"/>
+ </widget>
+ </section>
+ <section name="landscape">
+ <widget name="mGlxFullscreenView" type="HbView">
+ <real name="z" value="0"/>
+ <string name="HbVkbHost" value=""/>
+ </widget>
+ <widget name="mImageStrip" type="HbGridView">
+ <integer name="columnCount" value="6"/>
+ <integer name="rowCount" value="1"/>
+ </widget>
+ <widget name="mcontent" role="HbView:widget" type="HbWidget">
+ <layout type="anchor">
+ <anchoritem dst="mCoverFlow" dstEdge="LEFT" spacing="var(hb-param-margin-view-left)" src="" srcEdge="LEFT"/>
+ <anchoritem dst="mCoverFlow" dstEdge="TOP" spacing="var(hb-param-margin-view-top)" src="" srcEdge="TOP"/>
+ <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="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"/>
+ <anchoritem dst="toolBar" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="toolBar" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="toolBar" dstEdge="RIGHT" spacing="0un" src="mImageStrip" srcEdge="LEFT"/>
+ </layout>
+ </widget>
+ <widget name="toolBar" type="HbToolBar">
+ <sizehint height="46.71642un" type="PREFERRED" width="9.4427un"/>
+ </widget>
+ </section>
+ <metadata activeUIState="portrait" display="NHD portrait" unit="un">
+ <uistate name="Common ui state" sections="#common"/>
+ <uistate name="portrait" sections="#common portrait"/>
+ <uistate name="landscape" sections="#common landscape"/>
+ <dummydata objectName="mImageStrip" section="#common" value="app_grid_template2"/>
+ </metadata>
+</hbdocument>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/grid.docml Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="0.9">
+ <widget name="glxgridview" type="HbView">
+ <widget name="content" role="HbView:widget" type="HbWidget">
+ <widget name="hbgridview" type="HbGridView">
+ <real name="z" value="1"/>
+ <sizehint height="88.65672un" type="PREFERRED" width="53.28358un"/>
+ </widget>
+ <layout type="anchor">
+ <anchoritem dst="hbgridview" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="hbgridview" dstEdge="TOP" spacing="9un" src="" srcEdge="TOP"/>
+ <anchoritem dst="hbgridview" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="hbgridview" dstEdge="BOTTOM" spacing="-9un" src="" srcEdge="BOTTOM"/>
+ </layout>
+ </widget>
+ <string name="title" value="Photos"/>
+ <bool name="contentFullScreen" value="TRUE"/>
+ </widget>
+ <section name="portrait">
+ <widget name="glxgridview" type="HbView">
+ <real name="z" value="0"/>
+ <string name="HbVkbHost" value=""/>
+ </widget>
+ <widget name="hbgridview" type="HbGridView">
+ <bool name="itemRecycling" value="TRUE"/>
+ <bool name="textVisible" value="FALSE"/>
+ <enums name="verticalScrollBarPolicy" value="ScrollBarAutoHide"/>
+ <enums name="scrollDirections" value="Vertical"/>
+ <bool name="uniformItemSizes" value="TRUE"/>
+ <enums name="horizontalScrollBarPolicy" value="ScrollBarAutoHide"/>
+ <real name="z" value="5"/>
+ <sizehint height="77.52239un" type="PREFERRED" width="53.28358un"/>
+ <integer name="columnCount" value="3"/>
+ <bool name="frictionEnabled" value="TRUE"/>
+ <integer name="rowCount" value="5"/>
+ </widget>
+ <widget name="content" role="HbView:widget" type="HbWidget">
+ <layout type="anchor">
+ <anchoritem dst="hbgridview" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="hbgridview" dstEdge="TOP" spacing="9un" src="" srcEdge="TOP"/>
+ <anchoritem dst="hbgridview" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="hbgridview" dstEdge="BOTTOM" spacing="-9un" src="" srcEdge="BOTTOM"/>
+ </layout>
+ </widget>
+ </section>
+ <section name="landscape">
+ <widget name="hbgridview" type="HbGridView">
+ <bool name="itemRecycling" value="TRUE"/>
+ <bool name="textVisible" value="FALSE"/>
+ <enums name="verticalScrollBarPolicy" value="ScrollBarAutoHide"/>
+ <bool name="uniformItemSizes" value="TRUE"/>
+ <enums name="horizontalScrollBarPolicy" value="ScrollBarAutoHide"/>
+ <enums name="scrollDirections" value="Horizontal"/>
+ <integer name="columnCount" value="5"/>
+ <sizehint height="33.1343un" type="PREFERRED" width="95.52239un"/>
+ <bool name="frictionEnabled" value="TRUE"/>
+ <integer name="rowCount" value="2"/>
+ </widget>
+ <widget name="content" role="HbView:widget" type="HbWidget">
+ <layout type="anchor">
+ <anchoritem dst="hbgridview" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="hbgridview" dstEdge="TOP" spacing="10.4478un" src="" srcEdge="TOP"/>
+ <anchoritem dst="hbgridview" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="hbgridview" dstEdge="BOTTOM" spacing="-9.7015un" src="" srcEdge="BOTTOM"/>
+ </layout>
+ </widget>
+ </section>
+ <metadata activeUIState="portrait" display="NHD portrait" unit="un">
+ <uistate name="Common ui state" sections="#common"/>
+ <uistate name="landscape" sections="#common landscape"/>
+ <uistate name="portrait" sections="#common portrait"/>
+ </metadata>
+</hbdocument>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/listview.docml Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="0.9">
+ <widget name="glxlistview" type="HbView">
+ <widget name="content" role="HbView:widget" type="HbWidget">
+ <widget name="listview" type="HbListView">
+ <widget name="prototype" role="HbListView:prototype" type="HbListViewItem">
+ <enums name="graphicsSize" value="Thumbnail"/>
+ <string name="state" value="normal"/>
+ </widget>
+ <bool name="itemRecycling" value="FALSE"/>
+ <bool name="uniformItemSizes" value="TRUE"/>
+ <bool name="arrangeMode" value="FALSE"/>
+ <real name="z" value="1"/>
+ <sizehint height="47.7612un" type="PREFERRED" width="35.8209un"/>
+ <bool name="frictionEnabled" value="TRUE"/>
+ <enums name="clampingStyle" value="BounceBackClamping"/>
+ </widget>
+ <layout type="anchor">
+ <anchoritem dst="listview" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="listview" dstEdge="TOP" spacing="9un" src="" srcEdge="TOP"/>
+ <anchoritem dst="listview" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="listview" dstEdge="BOTTOM" spacing="-9un" src="" srcEdge="BOTTOM"/>
+ </layout>
+ </widget>
+ <string name="title" value="Photos"/>
+ <bool name="contentFullScreen" value="TRUE"/>
+ </widget>
+ <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+ <uistate name="Common ui state" sections="#common"/>
+ <dummydata objectName="listview" section="#common" value="0"/>
+ </metadata>
+</hbdocument>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data/slideshow.docml Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<hbdocument version="0.9">
+ <widget name="mglxslideshow" type="HbView">
+ <widget name="content" role="HbView:widget" type="HbWidget">
+ <widget name="mslideshowwidget" type="HbWidget">
+ <enums name="alignment" value="AlignVCenter|AlignHCenter"/>
+ <enums name="scrollDirections" value="Horizontal"/>
+ <real name="z" value="14"/>
+ <sizehint height="95.52239un" type="PREFERRED" width="53.73134un"/>
+ </widget>
+ <widget name="mContinueButton" type="HbPushButton">
+ <real name="z" value="10"/>
+ <real name="opacity" value="0.5"/>
+ <sizehint height="expr(var(hb-param-margin-gene-top)+var(hb-param-margin-gene-bottom)+var(hb-param-graphic-size-function))" type="PREFERRED" width="expr(var(hb-param-margin-gene-top)+var(hb-param-margin-gene-bottom)+var(hb-param-graphic-size-function))"/>
+ <string name="text" value=""/>
+ <bool name="visible" value="FALSE"/>
+ <string name="state" value="normal"/>
+ </widget>
+ <real name="z" value="12"/>
+ <layout type="anchor">
+ <anchoritem dst="mslideshowwidget" dstEdge="LEFT" spacing="0un" src="" srcEdge="LEFT"/>
+ <anchoritem dst="mslideshowwidget" dstEdge="TOP" spacing="0un" src="" srcEdge="TOP"/>
+ <anchoritem dst="mslideshowwidget" dstEdge="RIGHT" spacing="0un" src="" srcEdge="RIGHT"/>
+ <anchoritem dst="mslideshowwidget" dstEdge="BOTTOM" spacing="0un" src="" srcEdge="BOTTOM"/>
+ <anchoritem dst="mContinueButton" dstEdge="CENTERV" spacing="0un" src="" srcEdge="CENTERV"/>
+ <anchoritem dst="mContinueButton" dstEdge="CENTERH" spacing="0un" src="" srcEdge="CENTERH"/>
+ </layout>
+ </widget>
+ <string name="title" value="Photos"/>
+ <bool name="contentFullScreen" value="TRUE"/>
+ <real name="z" value="10"/>
+ </widget>
+ <metadata activeUIState="Common ui state" display="NHD portrait" unit="un">
+ <uistate name="Common ui state" sections="#common"/>
+ </metadata>
+</hbdocument>
--- a/engine/collectionframework/plugins/glxcollectionpluginalbums/inc/glxcollectionpluginalbums.hrh Mon May 03 12:31:32 2010 +0300
+++ b/engine/collectionframework/plugins/glxcollectionpluginalbums/inc/glxcollectionpluginalbums.hrh Fri May 14 15:52:22 2010 +0300
@@ -28,6 +28,10 @@
#define KGlxCollectionPluginAlbumsDllUid 0x20007196
#define KGlxCollectionPluginAlbumsImplementationUid 0x20007197
+#define KGlxCollectionPluginFavoritesAlbumId 0x2000A77C
+//This is Used to set the Leavel in the alibum list
+//as favorites is first in album list
+#define KGlxCollectionFavoritesId 1
#endif // GLXCOLLECTIONPLUGINALBUMS_HRH
--- a/gallery/sis/glxgallery.pkg Mon May 03 12:31:32 2010 +0300
+++ b/gallery/sis/glxgallery.pkg Fri May 14 15:52:22 2010 +0300
@@ -87,6 +87,7 @@
;qt dlls
"\epoc32\release\armv5\urel\glxtvoutwrapper.dll" -"!:\sys\bin\glxtvoutwrapper.dll"
"\epoc32\release\armv5\urel\glxmedialistwrapper.dll" -"!:\sys\bin\glxmedialistwrapper.dll"
+"\epoc32\release\armv5\urel\glxmodelwrapper.dll" -"!:\sys\bin\glxmodelwrapper.dll"
"\epoc32\release\armv5\urel\glxexternalutility.dll" -"!:\sys\bin\glxexternalutility.dll"
"\epoc32\release\armv5\urel\glxmediamodel.dll" -"!:\sys\bin\glxmediamodel.dll"
"\epoc32\release\armv5\urel\glxlistmodel.dll" -"!:\sys\bin\glxlistmodel.dll"
--- a/gallery/sis/photosqt_stub.pkg Mon May 03 12:31:32 2010 +0300
+++ b/gallery/sis/photosqt_stub.pkg Fri May 14 15:52:22 2010 +0300
@@ -78,6 +78,7 @@
;qt dlls
""-"z:\sys\bin\glxtvoutwrapper.dll"
""-"z:\sys\bin\glxmedialistwrapper.dll"
+""-"z:\sys\bin\glxmodelwrapper.dll"
""-"z:\sys\bin\glxexternalutility.dll"
""-"z:\sys\bin\glxmediamodel.dll"
""-"z:\sys\bin\glxlistmodel.dll"
--- a/main/glxaiwservicehandler.cpp Mon May 03 12:31:32 2010 +0300
+++ b/main/glxaiwservicehandler.cpp Fri May 14 15:52:22 2010 +0300
@@ -24,8 +24,8 @@
#include <QtDebug>
#include <Qt>
-#include <qstringlist.h>
-#include <qmessagebox.h>
+#include <QDir>
+#include <QStringList>
#include <glxmediamodel.h>
#include <glxviewsfactory.h>
@@ -41,16 +41,34 @@
#include <glximageviewermanager.h>
#include <glxexternalutility.h>
#include "glxlocalisationstrings.h"
+#include <xqaiwdeclplat.h>
+
+#define IMAGE_FETCHER_SERVICE_NAME QLatin1String("photos.com.nokia.symbian.IImageFetch")
+#define IMAGE_FETCHER_SERVICE_DEPINTERFACE_NAME QLatin1String("photos.Image")
+#define IMAGE_FETCHER_DEPSERVICE_DEPINTERFACE_NAME QLatin1String("com.nokia.services.media.Image")
+#define FILE_VIEWER_SERVICE_NAME QLatin1String("photos.com.nokia.symbian.IFileView")
+
// ----------------------------------------------------------------------------
// GlxAiwServiceHandler()
// ----------------------------------------------------------------------------
//
GlxAiwServiceHandler::GlxAiwServiceHandler() :
- HbMainWindow(), mModel(NULL), mView(NULL), mService(NULL),
- mStateMgr(NULL),mFSView(NULL),mFetcherContextMenu(NULL)
+ HbMainWindow(),
+ mModel(NULL),
+ mView(NULL),
+ mStateMgr(NULL),
+ mFSView(NULL),
+ mFetcherContextMenu(NULL),
+ mFetcherService(NULL),
+ mNSDIService(NULL),
+ mDSDIService(NULL),
+ mImageViewerService(NULL)
{
- mService = new GlxGetImageService(this);
+ mFetcherService = new GlxGetImageService(this);
+ mNSDIService = new GlxGetImageServiceNSDI(this);
+ mDSDIService = new GlxGetImageServiceDSDI(this);
+
mImageViewerService = new GlxImageViewerService(this);
#ifdef _DEBUG
@@ -75,10 +93,14 @@
{
removeView(mView);
}
+ delete mStateMgr;
delete mView;
delete mFSView;
delete mModel;
- delete mService;
+ delete mFetcherService;
+ delete mNSDIService;
+ delete mDSDIService;
+ delete mImageViewerService;
}
void GlxAiwServiceHandler::handleClientDisconnect()
@@ -94,16 +116,40 @@
void GlxAiwServiceHandler::itemSelected(const QModelIndex & index)
{
qDebug() << "GlxFetcher::itemSelected";
- if (mService->isActive())
+
+ if (mFetcherService->isActive())
{
- qDebug() << "GlxFetcher::itemSelected :: SERVICE ACTIVE";
+ qDebug() << "GlxFetcher::itemSelected mFetcherService->isActive()";
QVariant variant = mModel->data(index, GlxUriRole);
if (variant.isValid())
{
QString itemPath = variant.value<QString> ();
- qDebug() << "GlxFetcher::itemSelected :: VALID URI -->" << itemPath;
+ QStringList list = (QStringList() << itemPath);
+ mFetcherService->complete(list);
+ }
+ }
+
+ if (mNSDIService->isActive())
+ {
+ qDebug() << "GlxFetcher::itemSelected mNSDIService->isActive()";
+ QVariant variant = mModel->data(index, GlxUriRole);
+ if (variant.isValid())
+ {
+ QString itemPath = variant.value<QString> ();
QStringList list = (QStringList() << itemPath);
- mService->complete(list);
+ mNSDIService->complete(list);
+ }
+ }
+
+ if (mDSDIService->isActive())
+ {
+ qDebug() << "GlxFetcher::itemSelected mDSDIService->isActive()";
+ QVariant variant = mModel->data(index, GlxUriRole);
+ if (variant.isValid())
+ {
+ QString itemPath = variant.value<QString> ();
+ QStringList list = (QStringList() << itemPath);
+ mDSDIService->complete(list);
}
}
}
@@ -112,6 +158,7 @@
void GlxAiwServiceHandler::launchFetcher()
{
+ qDebug() << "GlxAiwServiceHandler::launchFetcher START";
HbStyleLoader::registerFilePath(":/data/photos.css");
GlxModelParm modelParm(KGlxCollectionPluginAllImplementationUid, 0);
mModel = new GlxMediaModel(modelParm);
@@ -133,6 +180,7 @@
connect ( mView, SIGNAL(itemSpecificMenuTriggered(qint32,QPointF ) ),
this, SLOT( itemSpecificMenuTriggered(qint32,QPointF ) ),
Qt::QueuedConnection );
+ qDebug() << "GlxAiwServiceHandler::launchFetcher END";
}
void GlxAiwServiceHandler::itemSpecificMenuTriggered(qint32 viewId,QPointF pos)
@@ -202,8 +250,7 @@
// ----------------------------------------------------------------------------
//
GlxGetImageService::GlxGetImageService(GlxAiwServiceHandler* parent) :
- XQServiceProvider(
- QLatin1String("com.nokia.services.media.Image"), parent),
+ XQServiceProvider(IMAGE_FETCHER_SERVICE_NAME, parent),
mServiceApp(parent)
{
mImageRequestIndex = -1;
@@ -267,7 +314,173 @@
// fetch()
// ----------------------------------------------------------------------------
//
-void GlxGetImageService::fetch(QVariantMap filter, QVariant flag)
+void GlxGetImageService::fetch()
+ {
+ mImageRequestIndex = setCurrentRequestAsync();
+ mServiceApp->launchFetcher();
+ }
+
+// ----------------------------------------------------------------------------
+// GlxGetImageService()
+// ----------------------------------------------------------------------------
+//
+GlxGetImageServiceNSDI::GlxGetImageServiceNSDI(GlxAiwServiceHandler* parent) :
+ XQServiceProvider(IMAGE_FETCHER_SERVICE_DEPINTERFACE_NAME, parent),
+ mServiceApp(parent)
+ {
+ mImageRequestIndex = -1;
+ publishAll();
+ connect(this, SIGNAL(clientDisconnected()), mServiceApp,
+ SLOT(handleClientDisconnect()));
+ }
+
+// ----------------------------------------------------------------------------
+// ~GlxGetImageService()
+// ----------------------------------------------------------------------------
+//
+GlxGetImageServiceNSDI::~GlxGetImageServiceNSDI()
+ {
+ }
+
+// ----------------------------------------------------------------------------
+// fetchFailed()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceNSDI::fetchFailed(int errorCode)
+ {
+ QStringList filesList;
+ filesList.insert(0, QString::number(errorCode));//result
+ doComplete(filesList);
+ }
+
+// ----------------------------------------------------------------------------
+// complete()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceNSDI::complete(QStringList filesList)
+ {
+ doComplete(filesList);
+ }
+
+// ----------------------------------------------------------------------------
+// doComplete()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceNSDI::doComplete(QStringList filesList)
+ {
+ if (isActive())
+ {
+ completeRequest(mImageRequestIndex, filesList);
+ mImageRequestIndex = -1;
+ connect(this, SIGNAL(returnValueDelivered()), qApp, SLOT(quit()));
+ }
+ }
+
+// ----------------------------------------------------------------------------
+// isActive()
+// ----------------------------------------------------------------------------
+//
+bool GlxGetImageServiceNSDI::isActive()
+ {
+ return mImageRequestIndex > -1;
+ }
+
+// ----------------------------------------------------------------------------
+// fetch()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceNSDI::fetch(QVariantMap filter, QVariant flag)
+ {
+ qDebug() << "GlxGetImageServiceNSDI::fetch WITH PARAMETER START";
+ Q_UNUSED(filter)
+ Q_UNUSED(flag)
+ fetch();
+ qDebug() << "GlxGetImageServiceNSDI::fetch WITH PARAMETER END";
+ }
+
+// ----------------------------------------------------------------------------
+// fetch()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceNSDI::fetch()
+ {
+ qDebug() << "GlxGetImageServiceNSDI::fetch START";
+ mImageRequestIndex = setCurrentRequestAsync();
+ mServiceApp->launchFetcher();
+ qDebug() << "GlxGetImageServiceNSDI::fetch END";
+ }
+
+//==============================================================================//
+// ----------------------------------------------------------------------------
+// GlxGetImageService()
+// ----------------------------------------------------------------------------
+//
+GlxGetImageServiceDSDI::GlxGetImageServiceDSDI(GlxAiwServiceHandler* parent) :
+ XQServiceProvider(IMAGE_FETCHER_DEPSERVICE_DEPINTERFACE_NAME, parent),
+ mServiceApp(parent)
+ {
+ mImageRequestIndex = -1;
+ publishAll();
+ connect(this, SIGNAL(clientDisconnected()), mServiceApp,
+ SLOT(handleClientDisconnect()));
+ }
+
+// ----------------------------------------------------------------------------
+// ~GlxGetImageService()
+// ----------------------------------------------------------------------------
+//
+GlxGetImageServiceDSDI::~GlxGetImageServiceDSDI()
+ {
+ }
+
+// ----------------------------------------------------------------------------
+// fetchFailed()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceDSDI::fetchFailed(int errorCode)
+ {
+ QStringList filesList;
+ filesList.insert(0, QString::number(errorCode));//result
+ doComplete(filesList);
+ }
+
+// ----------------------------------------------------------------------------
+// complete()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceDSDI::complete(QStringList filesList)
+ {
+ doComplete(filesList);
+ }
+
+// ----------------------------------------------------------------------------
+// doComplete()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceDSDI::doComplete(QStringList filesList)
+ {
+ if (isActive())
+ {
+ completeRequest(mImageRequestIndex, filesList);
+ mImageRequestIndex = -1;
+ connect(this, SIGNAL(returnValueDelivered()), qApp, SLOT(quit()));
+ }
+ }
+
+// ----------------------------------------------------------------------------
+// isActive()
+// ----------------------------------------------------------------------------
+//
+bool GlxGetImageServiceDSDI::isActive()
+ {
+ return mImageRequestIndex > -1;
+ }
+
+// ----------------------------------------------------------------------------
+// fetch()
+// ----------------------------------------------------------------------------
+//
+void GlxGetImageServiceDSDI::fetch(QVariantMap filter, QVariant flag)
{
Q_UNUSED(filter)
Q_UNUSED(flag)
@@ -278,8 +491,7 @@
// ----------GlxImageViewerService---------------
GlxImageViewerService::GlxImageViewerService(GlxAiwServiceHandler* parent) :
- XQServiceProvider(QLatin1String(
- "com.nokia.services.media.com.nokia.symbian.IFileView"), parent),
+ XQServiceProvider(FILE_VIEWER_SERVICE_NAME, parent),
mServiceApp(parent), mAsyncReqId(-1), mAsyncRequest(false),
mImageViewerInstance(NULL)
@@ -312,8 +524,8 @@
{
mImageViewerInstance = CGlxImageViewerManager::InstanceL();
}
- file.replace(QString("/"), QString("\\"));
- TPtrC16 str(reinterpret_cast<const TUint16*> (file.utf16()));
+ QString filepath(QDir::toNativeSeparators(file.at(0)));
+ TPtrC16 str(reinterpret_cast<const TUint16*> (filepath.utf16()));
HBufC* uri = str.Alloc();
mImageViewerInstance->SetImageUriL(*uri);
--- a/main/glxaiwservicehandler.h Mon May 03 12:31:32 2010 +0300
+++ b/main/glxaiwservicehandler.h Fri May 14 15:52:22 2010 +0300
@@ -34,6 +34,9 @@
class GlxImageViewerService;
class GlxStateManager;
class CGlxImageViewerManager;
+class GlxGetImageServiceNSDI;
+class GlxGetImageServiceDSDI;
+
/**
* GlxAiwServiceHandler
*
@@ -64,11 +67,14 @@
private:
GlxMediaModel *mModel;
GlxView* mView;
- GlxGetImageService* mService;
- GlxImageViewerService* mImageViewerService;
GlxStateManager *mStateMgr;
GlxView* mFSView;
HbMenu *mFetcherContextMenu;
+
+ GlxGetImageService* mFetcherService;
+ GlxGetImageServiceNSDI* mNSDIService;
+ GlxGetImageServiceDSDI* mDSDIService;
+ GlxImageViewerService* mImageViewerService;
};
/**
@@ -85,6 +91,61 @@
void complete( QStringList filesList);
public slots://for QTHighway to notify provider about request
+ void fetch();
+
+public slots://for provider to notify client
+ void fetchFailed( int errorCode );
+
+private:
+ void doComplete( QStringList filesList);
+
+private:
+ int mImageRequestIndex;
+ GlxAiwServiceHandler* mServiceApp;
+};
+
+/**
+ * GlxGetImageServiceDSDI
+ * Service provide for new service and depricated interface
+ */
+class GlxGetImageServiceNSDI : public XQServiceProvider
+{
+ Q_OBJECT
+public:
+ GlxGetImageServiceNSDI( GlxAiwServiceHandler *parent = 0 );
+ ~GlxGetImageServiceNSDI();
+ bool isActive();
+ void complete( QStringList filesList);
+
+public slots://for QTHighway to notify provider about request
+ void fetch( QVariantMap filter , QVariant flag );
+ void fetch();
+
+public slots://for provider to notify client
+ void fetchFailed( int errorCode );
+
+private:
+ void doComplete( QStringList filesList);
+
+private:
+ int mImageRequestIndex;
+ GlxAiwServiceHandler* mServiceApp;
+};
+
+/**
+ * GlxGetImageServiceDSDI
+ * Service provide for depricated service and depricated interface
+ */
+class GlxGetImageServiceDSDI : public XQServiceProvider
+{
+ Q_OBJECT
+public:
+ GlxGetImageServiceDSDI( GlxAiwServiceHandler *parent = 0 );
+ ~GlxGetImageServiceDSDI();
+ bool isActive();
+ void complete( QStringList filesList);
+
+public slots://for QTHighway to notify provider about request
void fetch( QVariantMap filter, QVariant flag);
public slots://for provider to notify client
--- a/main/service_conf.xml Mon May 03 12:31:32 2010 +0300
+++ b/main/service_conf.xml Fri May 14 15:52:22 2010 +0300
@@ -1,13 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<service>
- <name>com.nokia.services.media</name>
+ <name>photos</name>
<filepath>No path</filepath>
<description>Image Fetcher</description>
<interface>
<name>Image</name>
<version>1.0</version>
<description>Interface which may do something</description>
- <customproperty key="txt_aiw_action_text">Fetch</customproperty>
+ <customproperty key="deprecatedsn">com.nokia.services.media</customproperty>
+ </interface>
+ <interface>
+ <name>com.nokia.symbian.IImageFetch</name>
+ <version>1.0</version>
+ <description>Interface which may do something</description>
</interface>
<interface>
<name>com.nokia.symbian.IFileView</name>
--- a/rom/photos.iby Mon May 03 12:31:32 2010 +0300
+++ b/rom/photos.iby Fri May 14 15:52:22 2010 +0300
@@ -63,6 +63,8 @@
file=ABI_DIR/BUILD_DIR/glxmedialistwrapper.dll SHARED_LIB_DIR/glxmedialistwrapper.dll
file=ABI_DIR/BUILD_DIR/glxmediamodel.dll SHARED_LIB_DIR/glxmediamodel.dll
file=ABI_DIR/BUILD_DIR/glxlistmodel.dll SHARED_LIB_DIR/glxlistmodel.dll
+file=ABI_DIR/BUILD_DIR/glxmodelwrapper.dll SHARED_LIB_DIR/glxmodelwrapper.dll
+file=ABI_DIR/BUILD_DIR/glxfavmediamodel.dll SHARED_LIB_DIR/glxfavmediamodel.dll
file=ABI_DIR/BUILD_DIR/glxstatehandler.dll SHARED_LIB_DIR/glxstatehandler.dll
file=ABI_DIR/BUILD_DIR/glxviewmanager.dll SHARED_LIB_DIR/glxviewmanager.dll
@@ -73,7 +75,7 @@
S60_APP_EXE(photos)
data=/epoc32/data/z/private/10003a3f/import/apps/photos_reg.rsc private/10003a3f/import/apps/photos_reg.rsc
data=DATAZ_/APP_RESOURCE_DIR/0xE2C223D9.mif APP_RESOURCE_DIR/0xE2C223D9.mif
-
+data=/epoc32/data/Z/private/10202BE9/20007194.txt private/10202BE9/20007194.txt
//data=/epoc32/data/z/system/install/photos_stub.sis /system/install/photos_stub.sis
#endif //__PHOTOS_IBY__
\ No newline at end of file
--- a/tsrc/unittest/unittest_medialistwrapper/unittest_medialistwrapper.cpp Mon May 03 12:31:32 2010 +0300
+++ b/tsrc/unittest/unittest_medialistwrapper/unittest_medialistwrapper.cpp Fri May 14 15:52:22 2010 +0300
@@ -106,7 +106,7 @@
// After adding grid context should get grid icon
mTestObject->setContextMode(GlxContextPtGrid);
- QTest::qWait(2000);
+ QTest::qWait(10000);
icon = mTestObject->retrieveItemIcon(itemIndex,GlxTBContextGrid);
QVERIFY(icon != NULL);
}
--- a/tvout/tvoutengine/inc/glxhdmicontroller.h Mon May 03 12:31:32 2010 +0300
+++ b/tvout/tvoutengine/inc/glxhdmicontroller.h Fri May 14 15:52:22 2010 +0300
@@ -20,7 +20,6 @@
// Internal includes
#include <mglxtvobserver.h> // for inteface MGlxTvObserver
-#include <fbs.h>
class CGlxHdmiContainer;
class CGlxHdmiSurfaceUpdater;
@@ -128,7 +127,8 @@
CGlxHdmiContainer* iHdmiContainer;
CGlxHdmiSurfaceUpdater* iSurfaceUpdater;
CGlxTv* iGlxTvOut;
- TBool iIsImageSupported;
+ TBool iIsImageSupported; // Flag to see if Image is supported
+ TBool iIsPostingMode; // Flag for determining if the image needs to be in posting mode
};
#endif /* GLXHDMICONTROLLER_H_ */
--- a/tvout/tvoutengine/inc/glxtvconnectionmonitor.h Mon May 03 12:31:32 2010 +0300
+++ b/tvout/tvoutengine/inc/glxtvconnectionmonitor.h Fri May 14 15:52:22 2010 +0300
@@ -114,6 +114,7 @@
*/
void IssueNotificationL();
+ void UpdateConnectionStatusL();
private: // class member data
--- a/tvout/tvoutengine/src/glxhdmicontroller.cpp Mon May 03 12:31:32 2010 +0300
+++ b/tvout/tvoutengine/src/glxhdmicontroller.cpp Fri May 14 15:52:22 2010 +0300
@@ -73,6 +73,7 @@
}
if (iGlxTvOut->IsHDMIConnected())
{
+ iIsPostingMode = ETrue; // the image should be in posting mode
GLX_LOG_INFO("CGlxHdmiController::SetImageL() - 2");
// do not close the surface , use the same surface instead.
// Call a function to pass imagefile
@@ -139,8 +140,10 @@
EXPORT_C void CGlxHdmiController::ShiftToCloningMode()
{
TRACER("CGlxHdmiController::ShiftToCloningMode()");
+ // Shift to cloning only if HDMI is connected and surfaceupdater available.
if (iGlxTvOut->IsHDMIConnected() && iSurfaceUpdater)
{
+ iIsPostingMode = EFalse;
iSurfaceUpdater->ShiftToCloningMode();
}
}
@@ -151,14 +154,27 @@
EXPORT_C void CGlxHdmiController::ShiftToPostingMode()
{
TRACER("CGlxHdmiController::ShiftToPostingMode()");
- if (iGlxTvOut->IsHDMIConnected() && iSurfaceUpdater)
+ if (iGlxTvOut->IsHDMIConnected())
{
- iSurfaceUpdater->ShiftToPostingMode();
+ if (!iSurfaceUpdater)
+ {
+ GLX_LOG_INFO("CGlxHdmiController::ShiftToPostingMode() - 1");
+ // This case would come when HDMI connected, TvOut /headphones being connected
+ // and then it shows a popup of "microphone connected"
+ // thus Background - Foreground when headphones connected during HDMI connected
+ SetImageL(iStoredImagePath->Des(), iFsBitmap, EFalse);
+ }
+ else
+ {
+ GLX_LOG_INFO("CGlxHdmiController::ShiftToPostingMode() - 2");
+ iSurfaceUpdater->ShiftToPostingMode();
+ }
+ iIsPostingMode = ETrue;
}
}
// -----------------------------------------------------------------------------
-// HandleTvStatusChangedL
+// IsHDMIConnected
// -----------------------------------------------------------------------------
EXPORT_C TBool CGlxHdmiController::IsHDMIConnected()
{
@@ -171,7 +187,8 @@
// Constructor
// -----------------------------------------------------------------------------
CGlxHdmiController::CGlxHdmiController():
- iFsBitmap(NULL)
+ iFsBitmap(NULL),
+ iIsPostingMode(EFalse)
{
TRACER("CGlxHdmiController::CGlxHdmiController()");
// Implement nothing here
@@ -211,6 +228,7 @@
delete iSurfaceUpdater;
iSurfaceUpdater = NULL;
}
+ iIsPostingMode = EFalse;
}
// -----------------------------------------------------------------------------
@@ -264,7 +282,14 @@
TRACER("CGlxHdmiController::HandleTvStatusChangedL()");
if ( aChangeType == ETvConnectionChanged )
{
- if ( iGlxTvOut->IsHDMIConnected() && iIsImageSupported )
+ if ( iGlxTvOut->IsHDMIConnected() && iGlxTvOut->IsConnected() && iSurfaceUpdater)
+ {
+ GLX_LOG_INFO("CGlxHdmiController::HandleTvStatusChangedL() - HDMI and TV Connected");
+ // Do nothing , as this means HDMI is already connected and headset/tv cable connected
+ // meaning we shouldnt destroy HDMI and neither have to create surface updater.
+ return;
+ }
+ else if ( iGlxTvOut->IsHDMIConnected() && iIsImageSupported && iIsPostingMode)
{
GLX_LOG_INFO("CGlxHdmiController::HandleTvStatusChangedL() - HDMI Connected");
// Calling SetImageL() with appropriate parameters
@@ -272,8 +297,8 @@
}
else
{
- GLX_LOG_INFO2("CGlxHdmiController::HandleTvStatusChangedL() iIsImageSupported=%d, iGlxTvOut->IsHDMIConnected()=%d",
- iIsImageSupported,iGlxTvOut->IsHDMIConnected());
+ GLX_LOG_INFO3("CGlxHdmiController::HandleTvStatusChangedL() iIsImageSupported=%d, iGlxTvOut->IsHDMIConnected()=%d, iIsPostingMode=%d",
+ iIsImageSupported,iGlxTvOut->IsHDMIConnected(),iIsPostingMode);
// if it gets disconnected, destroy the surface
GLX_LOG_INFO("CGlxHdmiController::HandleTvStatusChangedL() - HDMI Not Connected");
DestroySurfaceUpdater();
--- a/tvout/tvoutengine/src/glxtvconnectionmonitor.cpp Mon May 03 12:31:32 2010 +0300
+++ b/tvout/tvoutengine/src/glxtvconnectionmonitor.cpp Fri May 14 15:52:22 2010 +0300
@@ -29,6 +29,8 @@
// INTERNAL INCLUDES
#include <glxlog.h>
+#include <glxtracer.h>
+
#include <glxpanic.h>
#include "glxtv.h"
#include <AccPolGenericIdDefinitions.h>
@@ -40,7 +42,7 @@
CGlxTvConnectionMonitor* CGlxTvConnectionMonitor::NewL(
MGlxTvConnectionObserver& aConnectionObserver )
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::NewL");
+ TRACER("CGlxTvConnectionMonitor::NewL");
CGlxTvConnectionMonitor* self = new (ELeave)
CGlxTvConnectionMonitor( aConnectionObserver );
CleanupStack::PushL( self );
@@ -56,7 +58,7 @@
//
CGlxTvConnectionMonitor::~CGlxTvConnectionMonitor()
{
- GLX_LOG_INFO("~CGlxTvConnectionMonitor");
+ TRACER("~CGlxTvConnectionMonitor");
Cancel();
iTvAccCon.CloseSubSession();
iTvAccServer.Disconnect();
@@ -70,9 +72,12 @@
CGlxTvConnectionMonitor::CGlxTvConnectionMonitor
( MGlxTvConnectionObserver& aConnectionObserver )
:CActive(EPriorityStandard),
- iConnectionObserver ( aConnectionObserver )
+ iConnectionObserver ( aConnectionObserver ),
+ iTvOutConnectionState(EFalse),
+ iHDMIConnectionState(EFalse)
+
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor");
+ TRACER("CGlxTvConnectionMonitor");
CActiveScheduler::Add( this );
}
@@ -83,20 +88,12 @@
//
void CGlxTvConnectionMonitor::ConstructL()
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::ConstructL");
+ TRACER("CGlxTvConnectionMonitor::ConstructL");
User::LeaveIfError(iTvAccServer.Connect());
User::LeaveIfError(iTvAccCon.CreateSubSession(iTvAccServer));
- User::LeaveIfError(iTvAccCon.GetAccessoryConnectionStatus(iCurrentAccArray));
- for (int i = 0; i < iCurrentAccArray.Count(); i++)
- {
- iTvOutConnectionState
- = (iCurrentAccArray.GetGenericIDL(i).PhysicalConnectionCaps()
- == KPCWired);
- iHDMIConnectionState
- = (iCurrentAccArray.GetGenericIDL(i).PhysicalConnectionCaps()
- == KPCHDMI);
- }
- IssueRequest();
+
+ UpdateConnectionStatusL();
+ IssueRequest();
}
//-----------------------------------------------------------------------------
@@ -106,7 +103,7 @@
//
void CGlxTvConnectionMonitor::RunL()
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::RunL");
+ TRACER("CGlxTvConnectionMonitor::RunL");
// Check for errors
User::LeaveIfError( iStatus.Int() );
// Notify observers
@@ -123,7 +120,7 @@
//
void CGlxTvConnectionMonitor::DoCancel()
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::DoCancel");
+ TRACER("CGlxTvConnectionMonitor::DoCancel");
iTvAccCon.CancelGetAccessoryConnectionStatus();
iTvAccCon.CancelNotifyAccessoryConnectionStatusChanged();
}
@@ -148,7 +145,7 @@
//
TBool CGlxTvConnectionMonitor::IsConnected() const
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::IsConnected");
+ TRACER("CGlxTvConnectionMonitor::IsConnected");
GLX_LOG_INFO1("CGlxTvConnectionMonitor::IsConnected iTvOutConnectionState=%d",iTvOutConnectionState);
return iTvOutConnectionState;
}
@@ -160,7 +157,7 @@
//
TBool CGlxTvConnectionMonitor::IsHDMIConnected() const
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::IsHDMIConnected");
+ TRACER("CGlxTvConnectionMonitor::IsHDMIConnected");
GLX_LOG_INFO1("CGlxTvConnectionMonitor::IsHDMIConnected iHDMIConnectionState=%d",iHDMIConnectionState);
return iHDMIConnectionState;
}
@@ -171,7 +168,7 @@
//
void CGlxTvConnectionMonitor::IssueRequest()
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::IssueRequest");
+ TRACER("CGlxTvConnectionMonitor::IssueRequest");
if (!IsActive()) // required for testing
{
iTvAccCon.NotifyAccessoryConnectionStatusChanged(iStatus,iCurrentAccArray);
@@ -179,74 +176,78 @@
}
}
-
//-----------------------------------------------------------------------------
// Sends notification to observers if TV Out is connected
//-----------------------------------------------------------------------------
//
void CGlxTvConnectionMonitor::IssueNotificationL()
{
- GLX_LOG_INFO("CGlxTvConnectionMonitor::IssueNotificationL");
+ TRACER("CGlxTvConnectionMonitor::IssueNotificationL");
TBool previousTvState = iTvOutConnectionState;
TBool previousHDMIState = iHDMIConnectionState;
- GLX_LOG_INFO2("previousTvState = %d , previousHDMIState = %d",
- previousTvState,previousHDMIState);
+
+ // Update the connection status
+ UpdateConnectionStatusL();
+
+ // trigger tvstatus change only when there is actually a change the in the connection and not
+ // for spurious events
+ if (previousTvState !=iTvOutConnectionState || previousHDMIState != iHDMIConnectionState)
+ {
+ GLX_LOG_INFO("CGlxTvConnectionMonitor::IssueNotificationL - Connection Altered");
+ iConnectionObserver.HandleTvConnectionStatusChangedL();
+ }
+ }
- //gets the TV status in to the iCurrentAccArray and haves the Latest Accesory in 0-index
- User::LeaveIfError(iTvAccCon.GetAccessoryConnectionStatus(iCurrentAccArray));
+//-----------------------------------------------------------------------------
+// UpdateConnectionStatusL()
+//-----------------------------------------------------------------------------
+//
+void CGlxTvConnectionMonitor::UpdateConnectionStatusL()
+ {
+ TRACER("CGlxTvConnectionMonitor::UpdateConnectionStatusL()");
- CAccPolSubblockNameArray* nameArray = CAccPolSubblockNameArray::NewL();
- CleanupStack::PushL(nameArray);
+ GLX_LOG_INFO2("CGlxTvConnectionMonitor::UpdateConnectionStatusL previousTvState = %d , previousHDMIState = %d",
+ iTvOutConnectionState,iHDMIConnectionState);
+
+ //gets the TV status in to the iCurrentAccArray and haves the Latest Accesory in 0-index
+ User::LeaveIfError(iTvAccCon.GetAccessoryConnectionStatus(iCurrentAccArray));
- //
- // Get the number of currently connected accessories
- // Loop through each connected accessory looking for
- // the desired capabilities
- //
- iTvOutConnectionState = EFalse;
- iHDMIConnectionState = EFalse;
- const TInt count = iCurrentAccArray.Count();
- for (TInt index = 0; index < count; index++)
- {
- TAccPolGenericID genId = iCurrentAccArray.GetGenericIDL(index);
- // Get all supported capabilities for this connected accessory.
- iTvAccCon.GetSubblockNameArrayL(genId, *nameArray);
- // Check if this connected accessory supports TV-Out capabality.
- if (nameArray->HasName(KAccVideoOut))
- {
- GLX_LOG_INFO("TV-Out Capabilities Exist");
- TAccPolNameRecord nameRecord;
- nameRecord.SetNameL(KAccVideoOut);
- TAccValueTypeTInt value;
- iTvAccCon.GetValueL(genId, nameRecord, value);
- if (value.iValue == EAccVideoOutEHDMI)
- {
- GLX_LOG_INFO("HDMI is connected Capabilities Exist");
- iHDMIConnectionState = ETrue;
- break;
- }
- else if (value.iValue == EAccVideoOutCVideo)
- {
- GLX_LOG_INFO("TV is connected Capabilities Exist");
- iTvOutConnectionState = ETrue;
- break;
- }
- }
+ CAccPolSubblockNameArray* nameArray = CAccPolSubblockNameArray::NewL();
+ CleanupStack::PushL(nameArray);
+ // Get the number of currently connected accessories
+ // Loop through each connected accessory looking for
+ // the desired capabilities
+ //
+ const TInt count = iCurrentAccArray.Count();
+ GLX_LOG_INFO1("CGlxTvConnectionMonitor::UpdateConnectionStatusL current count value is %d",count);
+ for (TInt index = 0; index <count; index++)
+ {
+ TAccPolGenericID genId = iCurrentAccArray.GetGenericIDL(index);
+ // Get all supported capabilities for this connected accessory.
+ iTvAccCon.GetSubblockNameArrayL(genId, *nameArray);
+ // Check if this connected accessory supports TV-Out capabality.
+ GLX_LOG_INFO1("CGlxTvConnectionMonitor::UpdateConnectionStatusL current index value is %d",index);
+ if (nameArray->HasName(KAccVideoOut))
+ {
+ GLX_LOG_INFO("CGlxTvConnectionMonitor::UpdateConnectionStatusL Video Accessory Supported");
+ TAccPolNameRecord nameRecord;
+ nameRecord.SetNameL(KAccVideoOut);
+ TAccValueTypeTInt value;
+ iTvAccCon.GetValueL(genId, nameRecord, value);
+ if (value.iValue == EAccVideoOutEHDMI)
+ {
+ GLX_LOG_INFO("CGlxTvConnectionMonitor::UpdateConnectionStatusL HDMI is connected");
+ iHDMIConnectionState = ETrue;
+ }
+ else if (value.iValue == EAccVideoOutCVideo)
+ {
+ GLX_LOG_INFO("CGlxTvConnectionMonitor::UpdateConnectionStatusL TV is connected");
+ iTvOutConnectionState = ETrue;
+ }
+ }
+ }
+ CleanupStack::PopAndDestroy(nameArray);
- }
- CleanupStack::PopAndDestroy(nameArray);
-
- if (previousTvState != iTvOutConnectionState || previousHDMIState
- != iHDMIConnectionState)
- {
- GLX_LOG_INFO("CGlxTvConnectionMonitor::IssueNotificationL -"
- " TvConnectionStatusChanged");
- GLX_LOG_INFO2("CurrentTvState = %d , CurrentHDMIState = %d",
- iTvOutConnectionState,iHDMIConnectionState);
- iConnectionObserver.HandleTvConnectionStatusChangedL();
- }
+ GLX_LOG_INFO2("CGlxTvConnectionMonitor::UpdateConnectionStatusL CurrentTvState = %d , CurrentHDMIState = %d",
+ iTvOutConnectionState,iHDMIConnectionState);
}
-
-
-
-
--- a/tvout/tvoutwrapper/inc/glxtvoutwrapper_p.h Mon May 03 12:31:32 2010 +0300
+++ b/tvout/tvoutwrapper/inc/glxtvoutwrapper_p.h Fri May 14 15:52:22 2010 +0300
@@ -99,6 +99,11 @@
* and pass it to HDMI controller
*/
void SetNewImage();
+
+ /*
+ * getsubstate
+ */
+ int getSubState();
private:
GlxTvOutWrapper* iTvOutWrapper; // Instance of the Tv Wrapper
QAbstractItemModel* iModel; // Instance of the model
--- a/tvout/tvoutwrapper/src/glxtvoutwrapper_p.cpp Mon May 03 12:31:32 2010 +0300
+++ b/tvout/tvoutwrapper/src/glxtvoutwrapper_p.cpp Fri May 14 15:52:22 2010 +0300
@@ -20,6 +20,7 @@
#include "glxtvconnectionobserver.h"
#include "glxhdmicontroller.h"
#include "glxmodelparm.h"
+#include "glxviewids.h"
// -----------------------------------------------------------------------------
// Static method to create the private wrapper instance
@@ -89,7 +90,7 @@
iHdmiConnected = aConnected;
// if Connection state positive and uri/bmp are not passed to HDMI already
// then it is a new image - Set it.
- if (!isImageSetToHdmi && iHdmiConnected)
+ if (!isImageSetToHdmi && iHdmiConnected && getSubState() !=IMAGEVIEWER_S)
{
SetNewImage();
}
@@ -123,7 +124,14 @@
// -----------------------------------------------------------------------------
void GlxTvOutWrapperPrivate::SetNewImage()
{
- int focusIndex = (iModel->data(iModel->index(0,0),GlxFocusIndexRole).value<int>());
+ QVariant focusVariant =(iModel->data(iModel->index(0,0),GlxFocusIndexRole));
+ int focusIndex;
+ if (focusVariant.isValid() && focusVariant.canConvert<int>()) {
+ focusIndex = (focusVariant.value<int>());
+ }
+ else{
+ return ;
+ }
// Get the image uri
QString imagePath = (iModel->data(iModel->index(focusIndex,0),GlxUriRole)).value<QString>();
@@ -188,4 +196,17 @@
}
}
+// -----------------------------------------------------------------------------
+// getSubState
+// -----------------------------------------------------------------------------
+int GlxTvOutWrapperPrivate::getSubState()
+{
+ int substate = NO_FULLSCREEN_S;
+ QVariant variant = iModel->data( iModel->index(0,0), GlxSubStateRole );
+ if ( variant.isValid() && variant.canConvert<int> () ) {
+ substate = variant.value<int>();
+ }
+ return substate;
+}
+
// End of file
--- a/ui/commandhandlers/bwins/glxcommandhandlerbaseu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/bwins/glxcommandhandlerbaseu.def Fri May 14 15:52:22 2010 +0300
@@ -1,38 +1,49 @@
EXPORTS
?HandleItemSelectedL@GlxMpxCommandHandler@@MAEXHHPAVMGlxMediaList@@@Z @ 1 NONAME ; void GlxMpxCommandHandler::HandleItemSelectedL(int, int, class MGlxMediaList *)
?CreateMediaListAlbumItemL@GlxMpxCommandHandler@@AAEXHHW4TGlxFilterItemType@@@Z @ 2 NONAME ; void GlxMpxCommandHandler::CreateMediaListAlbumItemL(int, int, enum TGlxFilterItemType)
- ??_EGlxCommandHandler@@UAE@I@Z @ 3 NONAME ; GlxCommandHandler::~GlxCommandHandler(unsigned int)
- ??1GlxCommandHandler@@UAE@XZ @ 4 NONAME ; GlxCommandHandler::~GlxCommandHandler(void)
- ?ConfirmationNoteL@GlxMpxCommandHandler@@ABE_NAAVMGlxMediaList@@@Z @ 5 NONAME ; bool GlxMpxCommandHandler::ConfirmationNoteL(class MGlxMediaList &) const
+ ?ConfirmationNoteL@GlxMpxCommandHandler@@AAEXAAVMGlxMediaList@@@Z @ 3 NONAME ; void GlxMpxCommandHandler::ConfirmationNoteL(class MGlxMediaList &)
+ ??_EGlxCommandHandler@@UAE@I@Z @ 4 NONAME ; GlxCommandHandler::~GlxCommandHandler(unsigned int)
+ ??1GlxCommandHandler@@UAE@XZ @ 5 NONAME ; GlxCommandHandler::~GlxCommandHandler(void)
?executeCommand@GlxModelCommandHandler@@UAEXHHV?$QList@VQModelIndex@@@@@Z @ 6 NONAME ; void GlxModelCommandHandler::executeCommand(int, int, class QList<class QModelIndex>)
- ?CompletionNoteL@GlxMpxCommandHandler@@ABEXXZ @ 7 NONAME ; void GlxMpxCommandHandler::CompletionNoteL(void) const
- ?ProgressTextL@GlxMpxCommandHandler@@MBE?AVQString@@XZ @ 8 NONAME ; class QString GlxMpxCommandHandler::ProgressTextL(void) const
- ?HandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 9 NONAME ; void GlxMpxCommandHandler::HandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
- ?TryExitL@GlxMpxCommandHandler@@AAEXH@Z @ 10 NONAME ; void GlxMpxCommandHandler::TryExitL(int)
- ?HandleMediaL@GlxMpxCommandHandler@@MAEXHPAVMGlxMediaList@@@Z @ 11 NONAME ; void GlxMpxCommandHandler::HandleMediaL(int, class MGlxMediaList *)
- ?HandleErrorL@GlxMpxCommandHandler@@MAEXH@Z @ 12 NONAME ; void GlxMpxCommandHandler::HandleErrorL(int)
- ??0GlxModelCommandHandler@@QAE@XZ @ 13 NONAME ; GlxModelCommandHandler::GlxModelCommandHandler(void)
- ?ConfirmationNoteMultipleL@GlxMpxCommandHandler@@ABE_NAAVMGlxMediaList@@@Z @ 14 NONAME ; bool GlxMpxCommandHandler::ConfirmationNoteMultipleL(class MGlxMediaList &) const
- ?CreateMediaListL@GlxMpxCommandHandler@@AAEXHHW4TGlxFilterItemType@@@Z @ 15 NONAME ; void GlxMpxCommandHandler::CreateMediaListL(int, int, enum TGlxFilterItemType)
- ?ConfirmationNoteSingleL@GlxMpxCommandHandler@@ABE_NAAVMGlxMediaList@@@Z @ 16 NONAME ; bool GlxMpxCommandHandler::ConfirmationNoteSingleL(class MGlxMediaList &) const
- ?CompletionTextL@GlxMpxCommandHandler@@MBE?AVQString@@XZ @ 17 NONAME ; class QString GlxMpxCommandHandler::CompletionTextL(void) const
- ?HandleFocusChangedL@GlxMpxCommandHandler@@MAEXW4TFocusChangeType@NGlxListDefs@@HHPAVMGlxMediaList@@@Z @ 18 NONAME ; void GlxMpxCommandHandler::HandleFocusChangedL(enum NGlxListDefs::TFocusChangeType, int, int, class MGlxMediaList *)
- ?HandleAttributesAvailableL@GlxMpxCommandHandler@@MAEXHABV?$RArray@VTMPXAttribute@@@@PAVMGlxMediaList@@@Z @ 19 NONAME ; void GlxMpxCommandHandler::HandleAttributesAvailableL(int, class RArray<class TMPXAttribute> const &, class MGlxMediaList *)
- ?HandleItemRemovedL@GlxMpxCommandHandler@@MAEXHHPAVMGlxMediaList@@@Z @ 20 NONAME ; void GlxMpxCommandHandler::HandleItemRemovedL(int, int, class MGlxMediaList *)
- ?HandleMessageL@GlxMpxCommandHandler@@MAEXABVCMPXMedia@@PAVMGlxMediaList@@@Z @ 21 NONAME ; void GlxMpxCommandHandler::HandleMessageL(class CMPXMedia const &, class MGlxMediaList *)
- ?ProgressNoteL@GlxMpxCommandHandler@@AAEXH@Z @ 22 NONAME ; void GlxMpxCommandHandler::ProgressNoteL(int)
- ?HandleError@GlxMpxCommandHandler@@MAEXH@Z @ 23 NONAME ; void GlxMpxCommandHandler::HandleError(int)
- ??1GlxMpxCommandHandler@@UAE@XZ @ 24 NONAME ; GlxMpxCommandHandler::~GlxMpxCommandHandler(void)
- ??1GlxModelCommandHandler@@UAE@XZ @ 25 NONAME ; GlxModelCommandHandler::~GlxModelCommandHandler(void)
- ?DismissProgressNoteL@GlxMpxCommandHandler@@AAEXXZ @ 26 NONAME ; void GlxMpxCommandHandler::DismissProgressNoteL(void)
- ?HandleItemAddedL@GlxMpxCommandHandler@@MAEXHHPAVMGlxMediaList@@@Z @ 27 NONAME ; void GlxMpxCommandHandler::HandleItemAddedL(int, int, class MGlxMediaList *)
- ?executeCommand@GlxMpxCommandHandler@@UAEXHHV?$QList@VQModelIndex@@@@@Z @ 28 NONAME ; void GlxMpxCommandHandler::executeCommand(int, int, class QList<class QModelIndex>)
- ?DoExecuteCommandL@GlxMpxCommandHandler@@MAEXHAAVMGlxMediaList@@AAH@Z @ 29 NONAME ; void GlxMpxCommandHandler::DoExecuteCommandL(int, class MGlxMediaList &, int &)
- ??0GlxCommandHandler@@QAE@XZ @ 30 NONAME ; GlxCommandHandler::GlxCommandHandler(void)
- ?ConfirmationTextL@GlxMpxCommandHandler@@MBE?AVQString@@_N@Z @ 31 NONAME ; class QString GlxMpxCommandHandler::ConfirmationTextL(bool) const
- ??0GlxMpxCommandHandler@@QAE@XZ @ 32 NONAME ; GlxMpxCommandHandler::GlxMpxCommandHandler(void)
- ??_EGlxMpxCommandHandler@@UAE@I@Z @ 33 NONAME ; GlxMpxCommandHandler::~GlxMpxCommandHandler(unsigned int)
- ?HandleItemModifiedL@GlxMpxCommandHandler@@MAEXABV?$RArray@H@@PAVMGlxMediaList@@@Z @ 34 NONAME ; void GlxMpxCommandHandler::HandleItemModifiedL(class RArray<int> const &, class MGlxMediaList *)
- ??_EGlxModelCommandHandler@@UAE@I@Z @ 35 NONAME ; GlxModelCommandHandler::~GlxModelCommandHandler(unsigned int)
- ?DoHandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 36 NONAME ; void GlxMpxCommandHandler::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
+ ?ConfirmationNoteMultipleL@GlxMpxCommandHandler@@AAEXAAVMGlxMediaList@@@Z @ 7 NONAME ; void GlxMpxCommandHandler::ConfirmationNoteMultipleL(class MGlxMediaList &)
+ ?CompletionNoteL@GlxMpxCommandHandler@@ABEXXZ @ 8 NONAME ; void GlxMpxCommandHandler::CompletionNoteL(void) const
+ ?trUtf8@GlxMpxCommandHandler@@SA?AVQString@@PBD0@Z @ 9 NONAME ; class QString GlxMpxCommandHandler::trUtf8(char const *, char const *)
+ ?tr@GlxMpxCommandHandler@@SA?AVQString@@PBD0@Z @ 10 NONAME ; class QString GlxMpxCommandHandler::tr(char const *, char const *)
+ ?getStaticMetaObject@GlxMpxCommandHandler@@SAABUQMetaObject@@XZ @ 11 NONAME ; struct QMetaObject const & GlxMpxCommandHandler::getStaticMetaObject(void)
+ ?ProgressTextL@GlxMpxCommandHandler@@MBE?AVQString@@XZ @ 12 NONAME ; class QString GlxMpxCommandHandler::ProgressTextL(void) const
+ ?HandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 13 NONAME ; void GlxMpxCommandHandler::HandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
+ ?metaObject@GlxMpxCommandHandler@@UBEPBUQMetaObject@@XZ @ 14 NONAME ; struct QMetaObject const * GlxMpxCommandHandler::metaObject(void) const
+ ?TryExitL@GlxMpxCommandHandler@@AAEXH@Z @ 15 NONAME ; void GlxMpxCommandHandler::TryExitL(int)
+ ?HandleMediaL@GlxMpxCommandHandler@@MAEXHPAVMGlxMediaList@@@Z @ 16 NONAME ; void GlxMpxCommandHandler::HandleMediaL(int, class MGlxMediaList *)
+ ?HandleErrorL@GlxMpxCommandHandler@@MAEXH@Z @ 17 NONAME ; void GlxMpxCommandHandler::HandleErrorL(int)
+ ??0GlxModelCommandHandler@@QAE@XZ @ 18 NONAME ; GlxModelCommandHandler::GlxModelCommandHandler(void)
+ ?CreateMediaListL@GlxMpxCommandHandler@@AAEXHHW4TGlxFilterItemType@@@Z @ 19 NONAME ; void GlxMpxCommandHandler::CreateMediaListL(int, int, enum TGlxFilterItemType)
+ ?executeMpxCommand@GlxMpxCommandHandler@@AAEX_N@Z @ 20 NONAME ; void GlxMpxCommandHandler::executeMpxCommand(bool)
+ ?ConfirmationNoteSingleL@GlxMpxCommandHandler@@AAEXAAVMGlxMediaList@@@Z @ 21 NONAME ; void GlxMpxCommandHandler::ConfirmationNoteSingleL(class MGlxMediaList &)
+ ?CompletionTextL@GlxMpxCommandHandler@@MBE?AVQString@@XZ @ 22 NONAME ; class QString GlxMpxCommandHandler::CompletionTextL(void) const
+ ?HandleFocusChangedL@GlxMpxCommandHandler@@MAEXW4TFocusChangeType@NGlxListDefs@@HHPAVMGlxMediaList@@@Z @ 23 NONAME ; void GlxMpxCommandHandler::HandleFocusChangedL(enum NGlxListDefs::TFocusChangeType, int, int, class MGlxMediaList *)
+ ?tr@GlxMpxCommandHandler@@SA?AVQString@@PBD0H@Z @ 24 NONAME ; class QString GlxMpxCommandHandler::tr(char const *, char const *, int)
+ ?HandleAttributesAvailableL@GlxMpxCommandHandler@@MAEXHABV?$RArray@VTMPXAttribute@@@@PAVMGlxMediaList@@@Z @ 25 NONAME ; void GlxMpxCommandHandler::HandleAttributesAvailableL(int, class RArray<class TMPXAttribute> const &, class MGlxMediaList *)
+ ?messageDialogClose@GlxMpxCommandHandler@@QAEXPAVHbAction@@@Z @ 26 NONAME ; void GlxMpxCommandHandler::messageDialogClose(class HbAction *)
+ ?HandleItemRemovedL@GlxMpxCommandHandler@@MAEXHHPAVMGlxMediaList@@@Z @ 27 NONAME ; void GlxMpxCommandHandler::HandleItemRemovedL(int, int, class MGlxMediaList *)
+ ?HandleMessageL@GlxMpxCommandHandler@@MAEXABVCMPXMedia@@PAVMGlxMediaList@@@Z @ 28 NONAME ; void GlxMpxCommandHandler::HandleMessageL(class CMPXMedia const &, class MGlxMediaList *)
+ ?qt_metacall@GlxMpxCommandHandler@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 29 NONAME ; int GlxMpxCommandHandler::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?ProgressNoteL@GlxMpxCommandHandler@@AAEXH@Z @ 30 NONAME ; void GlxMpxCommandHandler::ProgressNoteL(int)
+ ?trUtf8@GlxMpxCommandHandler@@SA?AVQString@@PBD0H@Z @ 31 NONAME ; class QString GlxMpxCommandHandler::trUtf8(char const *, char const *, int)
+ ?HandleError@GlxMpxCommandHandler@@MAEXH@Z @ 32 NONAME ; void GlxMpxCommandHandler::HandleError(int)
+ ??1GlxMpxCommandHandler@@UAE@XZ @ 33 NONAME ; GlxMpxCommandHandler::~GlxMpxCommandHandler(void)
+ ??1GlxModelCommandHandler@@UAE@XZ @ 34 NONAME ; GlxModelCommandHandler::~GlxModelCommandHandler(void)
+ ?DismissProgressNoteL@GlxMpxCommandHandler@@AAEXXZ @ 35 NONAME ; void GlxMpxCommandHandler::DismissProgressNoteL(void)
+ ?HandleItemAddedL@GlxMpxCommandHandler@@MAEXHHPAVMGlxMediaList@@@Z @ 36 NONAME ; void GlxMpxCommandHandler::HandleItemAddedL(int, int, class MGlxMediaList *)
+ ?executeCommand@GlxMpxCommandHandler@@UAEXHHV?$QList@VQModelIndex@@@@@Z @ 37 NONAME ; void GlxMpxCommandHandler::executeCommand(int, int, class QList<class QModelIndex>)
+ ?staticMetaObject@GlxMpxCommandHandler@@2UQMetaObject@@B @ 38 NONAME ; struct QMetaObject const GlxMpxCommandHandler::staticMetaObject
+ ?DoExecuteCommandL@GlxMpxCommandHandler@@MAEXHAAVMGlxMediaList@@AAH@Z @ 39 NONAME ; void GlxMpxCommandHandler::DoExecuteCommandL(int, class MGlxMediaList &, int &)
+ ??0GlxCommandHandler@@QAE@XZ @ 40 NONAME ; GlxCommandHandler::GlxCommandHandler(void)
+ ?qt_metacast@GlxMpxCommandHandler@@UAEPAXPBD@Z @ 41 NONAME ; void * GlxMpxCommandHandler::qt_metacast(char const *)
+ ?ConfirmationTextL@GlxMpxCommandHandler@@MBE?AVQString@@_N@Z @ 42 NONAME ; class QString GlxMpxCommandHandler::ConfirmationTextL(bool) const
+ ??0GlxMpxCommandHandler@@QAE@XZ @ 43 NONAME ; GlxMpxCommandHandler::GlxMpxCommandHandler(void)
+ ??_EGlxMpxCommandHandler@@UAE@I@Z @ 44 NONAME ; GlxMpxCommandHandler::~GlxMpxCommandHandler(unsigned int)
+ ?HandleItemModifiedL@GlxMpxCommandHandler@@MAEXABV?$RArray@H@@PAVMGlxMediaList@@@Z @ 45 NONAME ; void GlxMpxCommandHandler::HandleItemModifiedL(class RArray<int> const &, class MGlxMediaList *)
+ ??_EGlxModelCommandHandler@@UAE@I@Z @ 46 NONAME ; GlxModelCommandHandler::~GlxModelCommandHandler(unsigned int)
+ ?DoHandleCommandCompleteL@GlxMpxCommandHandler@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 47 NONAME ; void GlxMpxCommandHandler::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
--- a/ui/commandhandlers/bwins/glxcommoncommandhandlersu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/bwins/glxcommoncommandhandlersu.def Fri May 14 15:52:22 2010 +0300
@@ -4,73 +4,63 @@
?RotateImageL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 3 NONAME ; void GlxCommandHandlerRotate::RotateImageL(class TBuf<256>)
?qt_metacall@GlxCommandHandlerNewMedia@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 4 NONAME ; int GlxCommandHandlerNewMedia::qt_metacall(enum QMetaObject::Call, int, void * *)
?ProgressTextL@GlxCommandHandlerRemoveFrom@@EBE?AVQString@@XZ @ 5 NONAME ; class QString GlxCommandHandlerRemoveFrom::ProgressTextL(void) const
- ??1GlxCommandHandlerAddToContainer@@UAE@XZ @ 6 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(void)
- ?getStaticMetaObject@GlxCommandHandlerNewMedia@@SAABUQMetaObject@@XZ @ 7 NONAME ; struct QMetaObject const & GlxCommandHandlerNewMedia::getStaticMetaObject(void)
- ?SetImageOrientationL@GlxCommandHandlerRotate@@AAEXG@Z @ 8 NONAME ; void GlxCommandHandlerRotate::SetImageOrientationL(unsigned short)
- ?ConfirmationTextL@GlxCommandHandlerDelete@@EBE?AVQString@@_N@Z @ 9 NONAME ; class QString GlxCommandHandlerDelete::ConfirmationTextL(bool) const
- ??_EGlxCommandHandlerSend@@UAE@I@Z @ 10 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(unsigned int)
- ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 11 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *)
- ?HandleErrorL@GlxCommandHandlerNewMedia@@MAEXH@Z @ 12 NONAME ; void GlxCommandHandlerNewMedia::HandleErrorL(int)
- ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 13 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *, int)
- ?trUtf8@GlxCommandHandlerAddToContainer@@SA?AVQString@@PBD0@Z @ 14 NONAME ; class QString GlxCommandHandlerAddToContainer::trUtf8(char const *, char const *)
- ?DoExecuteCommandL@GlxCommandHandlerRotate@@UAEXHAAVMGlxMediaList@@AAH@Z @ 15 NONAME ; void GlxCommandHandlerRotate::DoExecuteCommandL(int, class MGlxMediaList &, int &)
- ?metaObject@GlxCommandHandlerNewMedia@@UBEPBUQMetaObject@@XZ @ 16 NONAME ; struct QMetaObject const * GlxCommandHandlerNewMedia::metaObject(void) const
- ?CreateCommandL@GlxCommandHandlerDelete@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 17 NONAME ; class CMPXMedia * GlxCommandHandlerDelete::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CreateCommandL@GlxCommandHandlerAddToContainer@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 18 NONAME ; class CMPXMedia * GlxCommandHandlerAddToContainer::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CompletionTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 19 NONAME ; class QString GlxCommandHandlerDelete::CompletionTextL(void) const
- ?DoHandleCommandCompleteL@GlxCommandHandlerNewMedia@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 20 NONAME ; void GlxCommandHandlerNewMedia::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
- ?GenerateNewMediaItemTitleL@GlxCommandHandlerNewMedia@@ABE?AVQString@@V2@AAVMGlxMediaList@@@Z @ 21 NONAME ; class QString GlxCommandHandlerNewMedia::GenerateNewMediaItemTitleL(class QString, class MGlxMediaList &) const
- ??1GlxCommandHandlerRemoveFrom@@UAE@XZ @ 22 NONAME ; GlxCommandHandlerRemoveFrom::~GlxCommandHandlerRemoveFrom(void)
- ?qt_metacast@GlxCommandHandlerNewMedia@@UAEPAXPBD@Z @ 23 NONAME ; void * GlxCommandHandlerNewMedia::qt_metacast(char const *)
- ?qt_metacall@GlxCommandHandlerAddToContainer@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 24 NONAME ; int GlxCommandHandlerAddToContainer::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ??0GlxCommandHandlerRename@@QAE@XZ @ 6 NONAME ; GlxCommandHandlerRename::GlxCommandHandlerRename(void)
+ ??1GlxCommandHandlerAddToContainer@@UAE@XZ @ 7 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(void)
+ ?getStaticMetaObject@GlxCommandHandlerNewMedia@@SAABUQMetaObject@@XZ @ 8 NONAME ; struct QMetaObject const & GlxCommandHandlerNewMedia::getStaticMetaObject(void)
+ ?SetImageOrientationL@GlxCommandHandlerRotate@@AAEXG@Z @ 9 NONAME ; void GlxCommandHandlerRotate::SetImageOrientationL(unsigned short)
+ ?ConfirmationTextL@GlxCommandHandlerDelete@@EBE?AVQString@@_N@Z @ 10 NONAME ; class QString GlxCommandHandlerDelete::ConfirmationTextL(bool) const
+ ??_EGlxCommandHandlerSend@@UAE@I@Z @ 11 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(unsigned int)
+ ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 12 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *)
+ ?HandleErrorL@GlxCommandHandlerNewMedia@@MAEXH@Z @ 13 NONAME ; void GlxCommandHandlerNewMedia::HandleErrorL(int)
+ ?GetName@GlxCommandHandlerRename@@ABE?AVQString@@AAVMGlxMediaList@@@Z @ 14 NONAME ; class QString GlxCommandHandlerRename::GetName(class MGlxMediaList &) const
+ ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 15 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *, int)
+ ?DoExecuteCommandL@GlxCommandHandlerRotate@@UAEXHAAVMGlxMediaList@@AAH@Z @ 16 NONAME ; void GlxCommandHandlerRotate::DoExecuteCommandL(int, class MGlxMediaList &, int &)
+ ?metaObject@GlxCommandHandlerNewMedia@@UBEPBUQMetaObject@@XZ @ 17 NONAME ; struct QMetaObject const * GlxCommandHandlerNewMedia::metaObject(void) const
+ ?CreateCommandL@GlxCommandHandlerDelete@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 18 NONAME ; class CMPXMedia * GlxCommandHandlerDelete::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CreateCommandL@GlxCommandHandlerAddToContainer@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 19 NONAME ; class CMPXMedia * GlxCommandHandlerAddToContainer::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CompletionTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 20 NONAME ; class QString GlxCommandHandlerDelete::CompletionTextL(void) const
+ ?DoHandleCommandCompleteL@GlxCommandHandlerNewMedia@@MAEXPAXPAVCMPXMedia@@HPAVMGlxMediaList@@@Z @ 21 NONAME ; void GlxCommandHandlerNewMedia::DoHandleCommandCompleteL(void *, class CMPXMedia *, int, class MGlxMediaList *)
+ ?GenerateNewMediaItemTitleL@GlxCommandHandlerNewMedia@@ABE?AVQString@@V2@AAVMGlxMediaList@@@Z @ 22 NONAME ; class QString GlxCommandHandlerNewMedia::GenerateNewMediaItemTitleL(class QString, class MGlxMediaList &) const
+ ??1GlxCommandHandlerRemoveFrom@@UAE@XZ @ 23 NONAME ; GlxCommandHandlerRemoveFrom::~GlxCommandHandlerRemoveFrom(void)
+ ?qt_metacast@GlxCommandHandlerNewMedia@@UAEPAXPBD@Z @ 24 NONAME ; void * GlxCommandHandlerNewMedia::qt_metacast(char const *)
??0GlxCommandHandlerRemoveFrom@@QAE@XZ @ 25 NONAME ; GlxCommandHandlerRemoveFrom::GlxCommandHandlerRemoveFrom(void)
?HandleItemAddedL@GlxCommandHandlerNewMedia@@MAEXHHPAVMGlxMediaList@@@Z @ 26 NONAME ; void GlxCommandHandlerNewMedia::HandleItemAddedL(int, int, class MGlxMediaList *)
- ?tr@GlxCommandHandlerAddToContainer@@SA?AVQString@@PBD0@Z @ 27 NONAME ; class QString GlxCommandHandlerAddToContainer::tr(char const *, char const *)
- ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 28 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *)
- ?metaObject@GlxCommandHandlerAddToContainer@@UBEPBUQMetaObject@@XZ @ 29 NONAME ; struct QMetaObject const * GlxCommandHandlerAddToContainer::metaObject(void) const
- ?ReadImageOrientationL@GlxCommandHandlerRotate@@AAEGXZ @ 30 NONAME ; unsigned short GlxCommandHandlerRotate::ReadImageOrientationL(void)
- ??1GlxCommandHandlerRotate@@UAE@XZ @ 31 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(void)
+ ?tr@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0@Z @ 27 NONAME ; class QString GlxCommandHandlerNewMedia::tr(char const *, char const *)
+ ?createNewMedia@GlxCommandHandlerAddToContainer@@ABEXXZ @ 28 NONAME ; void GlxCommandHandlerAddToContainer::createNewMedia(void) const
+ ?ReadImageOrientationL@GlxCommandHandlerRotate@@AAEGXZ @ 29 NONAME ; unsigned short GlxCommandHandlerRotate::ReadImageOrientationL(void)
+ ??1GlxCommandHandlerRotate@@UAE@XZ @ 30 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(void)
+ ?CreateCommandL@GlxCommandHandlerRename@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 31 NONAME ; class CMPXMedia * GlxCommandHandlerRename::CreateCommandL(int, class MGlxMediaList &, int &) const
??1GlxCommandHandlerNewMedia@@UAE@XZ @ 32 NONAME ; GlxCommandHandlerNewMedia::~GlxCommandHandlerNewMedia(void)
??_EGlxCommandHandlerNewMedia@@UAE@I@Z @ 33 NONAME ; GlxCommandHandlerNewMedia::~GlxCommandHandlerNewMedia(unsigned int)
?CompletionTextL@GlxCommandHandlerRemoveFrom@@EBE?AVQString@@XZ @ 34 NONAME ; class QString GlxCommandHandlerRemoveFrom::CompletionTextL(void) const
??_EGlxCommandHandlerDelete@@UAE@I@Z @ 35 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(unsigned int)
?ProgressTextL@GlxCommandHandlerDelete@@EBE?AVQString@@XZ @ 36 NONAME ; class QString GlxCommandHandlerDelete::ProgressTextL(void) const
- ?staticMetaObject@GlxCommandHandlerNewMedia@@2UQMetaObject@@B @ 37 NONAME ; struct QMetaObject const GlxCommandHandlerNewMedia::staticMetaObject
- ??0GlxCommandHandlerDelete@@QAE@XZ @ 38 NONAME ; GlxCommandHandlerDelete::GlxCommandHandlerDelete(void)
+ ?CompletionTextL@GlxCommandHandlerRename@@EBE?AVQString@@XZ @ 37 NONAME ; class QString GlxCommandHandlerRename::CompletionTextL(void) const
+ ?staticMetaObject@GlxCommandHandlerNewMedia@@2UQMetaObject@@B @ 38 NONAME ; struct QMetaObject const GlxCommandHandlerNewMedia::staticMetaObject
?DestroyExifWriter@GlxCommandHandlerRotate@@AAEXXZ @ 39 NONAME ; void GlxCommandHandlerRotate::DestroyExifWriter(void)
- ??0GlxCommandHandlerSend@@QAE@XZ @ 40 NONAME ; GlxCommandHandlerSend::GlxCommandHandlerSend(void)
- ?HandleError@GlxCommandHandlerNewMedia@@MAEXH@Z @ 41 NONAME ; void GlxCommandHandlerNewMedia::HandleError(int)
- ??0GlxCommandHandlerAddToContainer@@QAE@XZ @ 42 NONAME ; GlxCommandHandlerAddToContainer::GlxCommandHandlerAddToContainer(void)
- ?getStaticMetaObject@GlxCommandHandlerAddToContainer@@SAABUQMetaObject@@XZ @ 43 NONAME ; struct QMetaObject const & GlxCommandHandlerAddToContainer::getStaticMetaObject(void)
- ??_EGlxCommandHandlerRotate@@UAE@I@Z @ 44 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(unsigned int)
- ?ProgressTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 45 NONAME ; class QString GlxCommandHandlerAddToContainer::ProgressTextL(void) const
- ??1GlxCommandHandlerSend@@UAE@XZ @ 46 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(void)
- ?tr@GlxCommandHandlerAddToContainer@@SA?AVQString@@PBD0H@Z @ 47 NONAME ; class QString GlxCommandHandlerAddToContainer::tr(char const *, char const *, int)
- ?GetSelectionList@GlxCommandHandlerAddToContainer@@QBE?AV?$QList@VQModelIndex@@@@PAVGlxAlbumModel@@PA_N@Z @ 48 NONAME ; class QList<class QModelIndex> GlxCommandHandlerAddToContainer::GetSelectionList(class GlxAlbumModel *, bool *) const
- ?CompletionTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 49 NONAME ; class QString GlxCommandHandlerAddToContainer::CompletionTextL(void) const
- ??0GlxCommandHandlerNewMedia@@QAE@XZ @ 50 NONAME ; GlxCommandHandlerNewMedia::GlxCommandHandlerNewMedia(void)
- ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 51 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *, int)
- ?doHandleUserAction@GlxCommandHandlerSend@@UBEXPAVGlxMediaModel@@V?$QList@VQModelIndex@@@@@Z @ 52 NONAME ; void GlxCommandHandlerSend::doHandleUserAction(class GlxMediaModel *, class QList<class QModelIndex>) const
- ??_EGlxCommandHandlerAddToContainer@@UAE@I@Z @ 53 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(unsigned int)
- ?ProgressTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 54 NONAME ; class QString GlxCommandHandlerNewMedia::ProgressTextL(void) const
- ?staticMetaObject@GlxCommandHandlerAddToContainer@@2UQMetaObject@@B @ 55 NONAME ; struct QMetaObject const GlxCommandHandlerAddToContainer::staticMetaObject
+ ??0GlxCommandHandlerDelete@@QAE@XZ @ 40 NONAME ; GlxCommandHandlerDelete::GlxCommandHandlerDelete(void)
+ ??1GlxCommandHandlerRename@@UAE@XZ @ 41 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(void)
+ ??0GlxCommandHandlerSend@@QAE@XZ @ 42 NONAME ; GlxCommandHandlerSend::GlxCommandHandlerSend(void)
+ ?HandleError@GlxCommandHandlerNewMedia@@MAEXH@Z @ 43 NONAME ; void GlxCommandHandlerNewMedia::HandleError(int)
+ ??0GlxCommandHandlerAddToContainer@@QAE@XZ @ 44 NONAME ; GlxCommandHandlerAddToContainer::GlxCommandHandlerAddToContainer(void)
+ ??_EGlxCommandHandlerRename@@UAE@I@Z @ 45 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(unsigned int)
+ ?HandleErrorL@GlxCommandHandlerRename@@EAEXH@Z @ 46 NONAME ; void GlxCommandHandlerRename::HandleErrorL(int)
+ ??_EGlxCommandHandlerRotate@@UAE@I@Z @ 47 NONAME ; GlxCommandHandlerRotate::~GlxCommandHandlerRotate(unsigned int)
+ ?ProgressTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 48 NONAME ; class QString GlxCommandHandlerAddToContainer::ProgressTextL(void) const
+ ??1GlxCommandHandlerSend@@UAE@XZ @ 49 NONAME ; GlxCommandHandlerSend::~GlxCommandHandlerSend(void)
+ ?CompletionTextL@GlxCommandHandlerAddToContainer@@EBE?AVQString@@XZ @ 50 NONAME ; class QString GlxCommandHandlerAddToContainer::CompletionTextL(void) const
+ ??0GlxCommandHandlerNewMedia@@QAE@XZ @ 51 NONAME ; GlxCommandHandlerNewMedia::GlxCommandHandlerNewMedia(void)
+ ?trUtf8@GlxCommandHandlerNewMedia@@SA?AVQString@@PBD0H@Z @ 52 NONAME ; class QString GlxCommandHandlerNewMedia::trUtf8(char const *, char const *, int)
+ ?doHandleUserAction@GlxCommandHandlerSend@@UBEXPAVGlxMediaModel@@V?$QList@VQModelIndex@@@@@Z @ 53 NONAME ; void GlxCommandHandlerSend::doHandleUserAction(class GlxMediaModel *, class QList<class QModelIndex>) const
+ ??_EGlxCommandHandlerAddToContainer@@UAE@I@Z @ 54 NONAME ; GlxCommandHandlerAddToContainer::~GlxCommandHandlerAddToContainer(unsigned int)
+ ?ProgressTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 55 NONAME ; class QString GlxCommandHandlerNewMedia::ProgressTextL(void) const
?ExecuteLD@GlxCommandHandlerNewMedia@@QAEHAAVTGlxMediaId@@@Z @ 56 NONAME ; int GlxCommandHandlerNewMedia::ExecuteLD(class TGlxMediaId &)
- ?createNewMedia@GlxCommandHandlerAddToContainer@@AAEXXZ @ 57 NONAME ; void GlxCommandHandlerAddToContainer::createNewMedia(void)
- ?CreateCommandL@GlxCommandHandlerRotate@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 58 NONAME ; class CMPXMedia * GlxCommandHandlerRotate::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?trUtf8@GlxCommandHandlerAddToContainer@@SA?AVQString@@PBD0H@Z @ 59 NONAME ; class QString GlxCommandHandlerAddToContainer::trUtf8(char const *, char const *, int)
- ?CompletionTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 60 NONAME ; class QString GlxCommandHandlerNewMedia::CompletionTextL(void) const
- ?CreateCommandL@GlxCommandHandlerRemoveFrom@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 61 NONAME ; class CMPXMedia * GlxCommandHandlerRemoveFrom::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CalculateFinalOrientationL@GlxCommandHandlerRotate@@AAEGG@Z @ 62 NONAME ; unsigned short GlxCommandHandlerRotate::CalculateFinalOrientationL(unsigned short)
- ?InitializeExifWriterL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 63 NONAME ; void GlxCommandHandlerRotate::InitializeExifWriterL(class TBuf<256>)
- ?CreateCommandL@GlxCommandHandlerNewMedia@@MBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 64 NONAME ; class CMPXMedia * GlxCommandHandlerNewMedia::CreateCommandL(int, class MGlxMediaList &, int &) const
- ??1GlxCommandHandlerDelete@@UAE@XZ @ 65 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(void)
- ??0GlxCommandHandlerRotate@@QAE@XZ @ 66 NONAME ; GlxCommandHandlerRotate::GlxCommandHandlerRotate(void)
- ?qt_metacast@GlxCommandHandlerAddToContainer@@UAEPAXPBD@Z @ 67 NONAME ; void * GlxCommandHandlerAddToContainer::qt_metacast(char const *)
- ??0GlxCommandHandlerRename@@QAE@XZ @ 68 NONAME ; GlxCommandHandlerRename::GlxCommandHandlerRename(void)
- ?GetName@GlxCommandHandlerRename@@ABE?AVQString@@AAVMGlxMediaList@@@Z @ 69 NONAME ; class QString GlxCommandHandlerRename::GetName(class MGlxMediaList &) const
- ?CreateCommandL@GlxCommandHandlerRename@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 70 NONAME ; class CMPXMedia * GlxCommandHandlerRename::CreateCommandL(int, class MGlxMediaList &, int &) const
- ?CompletionTextL@GlxCommandHandlerRename@@EBE?AVQString@@XZ @ 71 NONAME ; class QString GlxCommandHandlerRename::CompletionTextL(void) const
- ??1GlxCommandHandlerRename@@UAE@XZ @ 72 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(void)
- ??_EGlxCommandHandlerRename@@UAE@I@Z @ 73 NONAME ; GlxCommandHandlerRename::~GlxCommandHandlerRename(unsigned int)
- ?HandleErrorL@GlxCommandHandlerRename@@EAEXH@Z @ 74 NONAME ; void GlxCommandHandlerRename::HandleErrorL(int)
+ ?CreateCommandL@GlxCommandHandlerRotate@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 57 NONAME ; class CMPXMedia * GlxCommandHandlerRotate::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CompletionTextL@GlxCommandHandlerNewMedia@@EBE?AVQString@@XZ @ 58 NONAME ; class QString GlxCommandHandlerNewMedia::CompletionTextL(void) const
+ ?CreateCommandL@GlxCommandHandlerRemoveFrom@@UBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 59 NONAME ; class CMPXMedia * GlxCommandHandlerRemoveFrom::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ?CalculateFinalOrientationL@GlxCommandHandlerRotate@@AAEGG@Z @ 60 NONAME ; unsigned short GlxCommandHandlerRotate::CalculateFinalOrientationL(unsigned short)
+ ?InitializeExifWriterL@GlxCommandHandlerRotate@@AAEXV?$TBuf@$0BAA@@@@Z @ 61 NONAME ; void GlxCommandHandlerRotate::InitializeExifWriterL(class TBuf<256>)
+ ?CreateCommandL@GlxCommandHandlerNewMedia@@MBEPAVCMPXMedia@@HAAVMGlxMediaList@@AAH@Z @ 62 NONAME ; class CMPXMedia * GlxCommandHandlerNewMedia::CreateCommandL(int, class MGlxMediaList &, int &) const
+ ??1GlxCommandHandlerDelete@@UAE@XZ @ 63 NONAME ; GlxCommandHandlerDelete::~GlxCommandHandlerDelete(void)
+ ??0GlxCommandHandlerRotate@@QAE@XZ @ 64 NONAME ; GlxCommandHandlerRotate::GlxCommandHandlerRotate(void)
--- a/ui/commandhandlers/commandhandlerbase/commandhandlerbase.pro Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/commandhandlerbase.pro Fri May 14 15:52:22 2010 +0300
@@ -48,7 +48,12 @@
}
# Input
-HEADERS += inc/glxcommandhandler.h inc/glxmpxcommandhandler.h inc/glxmodelcommandhandler.h
-SOURCES += src/glxcommandhandler.cpp src/glxmpxcommandhandler.cpp src/glxmodelcommandhandler.cpp
+HEADERS += inc/glxcommandhandler.h
+HEADERS += inc/glxmpxcommandhandler.h
+HEADERS += inc/glxmodelcommandhandler.h
+
+SOURCES += src/glxcommandhandler.cpp
+SOURCES += src/glxmpxcommandhandler.cpp
+SOURCES += src/glxmodelcommandhandler.cpp
DEFINES += QT_NO_DEBUG_OUTPUT QT_NO_WARNING_OUTPUT
--- a/ui/commandhandlers/commandhandlerbase/inc/glxcommandhandler.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/inc/glxcommandhandler.h Fri May 14 15:52:22 2010 +0300
@@ -35,4 +35,4 @@
virtual void executeCommand(int commandId,int collectionId ,QList<QModelIndex> indexList = QList<QModelIndex>() ) = 0;
};
-#endif //GLXCOMMANDHANDLER_H
\ No newline at end of file
+#endif //GLXCOMMANDHANDLER_H
--- a/ui/commandhandlers/commandhandlerbase/inc/glxmpxcommandhandler.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/inc/glxmpxcommandhandler.h Fri May 14 15:52:22 2010 +0300
@@ -30,14 +30,19 @@
#endif
class MGlxMediaList;
class HbProgressDialog;
+class HbAction;
class GLX_COMMANDHANDLERBASE_EXPORT GlxMpxCommandHandler : public GlxCommandHandler, public MGlxMediaListObserver
{
+Q_OBJECT
public:
GlxMpxCommandHandler();
virtual ~GlxMpxCommandHandler();
virtual void executeCommand(int commandId,int collectionId,QList<QModelIndex> indexList = QList<QModelIndex>() );
+public slots:
+ void messageDialogClose(HbAction* action);
+
protected: // From MGlxMediaListObserver
/// See @ref MGlxMediaListObserver::HandleItemAddedL
void HandleItemAddedL(TInt aStartIndex, TInt aEndIndex, MGlxMediaList* aList);
@@ -81,19 +86,21 @@
virtual QString ProgressTextL() const;
virtual QString ConfirmationTextL(bool multiSelection = false) const;
private:
- bool ConfirmationNoteL(MGlxMediaList& aMediaList) const;
- bool ConfirmationNoteSingleL(MGlxMediaList& aMediaList) const;
- bool ConfirmationNoteMultipleL(MGlxMediaList& aMediaList) const;
+ void ConfirmationNoteL(MGlxMediaList& aMediaList);
+ void ConfirmationNoteSingleL(MGlxMediaList& aMediaList) ;
+ void ConfirmationNoteMultipleL(MGlxMediaList& aMediaList) ;
void ProgressNoteL(TInt aCommandId);
void DismissProgressNoteL();
void CompletionNoteL() const;
void TryExitL(TInt aErrorCode);
void CreateMediaListL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType) ;
void CreateMediaListAlbumItemL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType);
+ void executeMpxCommand(bool execute);
private:
// Instance of Media List
MGlxMediaList* iMediaList;
TBool iProgressComplete;
HbProgressDialog* mProgressDialog;
+ int mCommandId;
};
-#endif //GLXMPXCOMMANDHANDLER_H
\ No newline at end of file
+#endif //GLXMPXCOMMANDHANDLER_H
--- a/ui/commandhandlers/commandhandlerbase/src/glxmpxcommandhandler.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commandhandlerbase/src/glxmpxcommandhandler.cpp Fri May 14 15:52:22 2010 +0300
@@ -22,7 +22,6 @@
#include <glxfilterfactory.h>
#include <glxcollectionpluginall.hrh>
#include <mglxmedialist.h>
-#include <glxcommandfactory.h>
#include <glxmpxcommandhandler.h>
#include <glxfetchcontextremover.h>
#include <glxmedialistiterator.h>
@@ -40,6 +39,8 @@
#include "glxmpxcommandhandlerTraces.h"
#endif
+#include <hbaction.h>
+
GlxMpxCommandHandler::GlxMpxCommandHandler() :
iProgressComplete(EFalse)
{
@@ -66,7 +67,6 @@
int aHierarchyId = 0;
TGlxFilterItemType aFilterType = EGlxFilterImage;
- //CreateMediaListL(aCollectionId, aHierarchyId,aFilterType);
if (collectionId != KGlxAlbumsMediaId)
{
OstTrace0( TRACE_NORMAL, DUP2_GLXMPXCOMMANDHANDLER_EXECUTECOMMAND, "GlxMpxCommandHandler::executeCommand::CreateMediaListL" );
@@ -81,27 +81,38 @@
TBool consume = ETrue;
iProgressComplete = EFalse;
+ mProgressDialog = NULL;
//Execute Command
DoExecuteCommandL(commandId, *iMediaList, consume);
- //Create MPX command if any
- consume = ConfirmationNoteL(*iMediaList);
- if(consume)
+ mCommandId = commandId;
+ ConfirmationNoteL(*iMediaList);
+ OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_EXECUTECOMMAND_EXIT );
+ }
+
+void GlxMpxCommandHandler::executeMpxCommand(bool execute)
+ {
+ if(execute && !iMediaList->IsCommandActive())
{
- CMPXCommand* command = CreateCommandL(commandId, *iMediaList, consume);
+ TBool consume = ETrue;
+ CMPXCommand* command = CreateCommandL(mCommandId, *iMediaList, consume);
if (command)
{
command->SetTObjectValueL<TAny*> (KMPXCommandGeneralSessionId,
static_cast<TAny*> (this));
iMediaList->AddMediaListObserverL(this);
iMediaList->CommandL(*command);
- ProgressNoteL(commandId);
+
+ if(iMediaList->SelectionCount() > 1)
+ {
+ ProgressNoteL(mCommandId);
+ }
}
}
else //command cancelled,so unmark all items
{
MGlxMediaList::UnmarkAllL(*iMediaList);
}
- OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_EXECUTECOMMAND_EXIT );
+
}
// ---------------------------------------------------------------------------
@@ -347,6 +358,7 @@
DismissProgressNoteL();
iMediaList->RemoveMediaListObserver(this);
CompletionNoteL();
+ iProgressComplete = EFalse;
}
OstTraceFunctionExit0( GLXMPXCOMMANDHANDLER_TRYEXITL_EXIT );
}
@@ -394,18 +406,20 @@
{
mProgressDialog = new HbProgressDialog(HbProgressDialog::WaitDialog);
mProgressDialog->setText(ProgressTextL());
- mProgressDialog->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
mProgressDialog->show();
}
void GlxMpxCommandHandler::DismissProgressNoteL()
{
- mProgressDialog->close();
- delete mProgressDialog;
- mProgressDialog = NULL;
+ if(mProgressDialog)
+ {
+ mProgressDialog->close();
+ delete mProgressDialog;
+ mProgressDialog = NULL;
+ }
}
-bool GlxMpxCommandHandler::ConfirmationNoteL(MGlxMediaList& aMediaList) const
+void GlxMpxCommandHandler::ConfirmationNoteL(MGlxMediaList& aMediaList)
{
TInt selectionCount = aMediaList.SelectionCount();
@@ -418,23 +432,18 @@
}
// Show confirmation note
- bool confirmed = true;
if ( selectionCount == 1 )
{
- confirmed = ConfirmationNoteSingleL(aMediaList);
+ ConfirmationNoteSingleL(aMediaList);
}
else
{
- confirmed = ConfirmationNoteMultipleL(aMediaList);
+ ConfirmationNoteMultipleL(aMediaList);
}
-
- return confirmed;
}
-bool GlxMpxCommandHandler::ConfirmationNoteSingleL(MGlxMediaList& aMediaList) const
+void GlxMpxCommandHandler::ConfirmationNoteSingleL(MGlxMediaList& aMediaList)
{
- bool confirmAction = true;
-
QString qtText = ConfirmationTextL();
if(!qtText.isEmpty ())
@@ -472,46 +481,41 @@
qtText.append(QString("%1").arg(qtItemName));
}
// (else) If error, assume confirmed anyway
-
- CleanupStack::PopAndDestroy(attributeContext);
-
- HbMessageBox box(HbMessageBox::MessageTypeQuestion);
- box.setDismissPolicy(HbDialog::NoDismiss);
+ CleanupStack::PopAndDestroy(attributeContext);
+ HbMessageBox::question(qtText, this, SLOT(messageDialogClose(HbAction*)));
+ }
+ else{
+ executeMpxCommand(true);
+ }
+ }
- // Set timeout to zero to wait user to either click Ok or Cancel
- box.setTimeout(HbDialog::NoTimeout);
-
- box.setText(qtText);
- HbAction *action = box.exec();
- if(action != box.primaryAction())
- {
- confirmAction = false;
- }
- }
- return confirmAction;
- }
-
-bool GlxMpxCommandHandler::ConfirmationNoteMultipleL(MGlxMediaList& /*aMediaList*/) const
+void GlxMpxCommandHandler::ConfirmationNoteMultipleL(MGlxMediaList& /*aMediaList*/)
{
- bool confirmAction = true;
-
QString qtText = ConfirmationTextL(true);
if(!qtText.isEmpty ())
{
- HbMessageBox box(HbMessageBox::MessageTypeQuestion);
- box.setDismissPolicy(HbDialog::NoDismiss);
- // Set timeout to zero to wait user to either click Ok or Cancel
- box.setTimeout(HbDialog::NoTimeout);
- box.setText(qtText);
- HbAction *action = box.exec();
- if(action != box.primaryAction())
- {
- confirmAction = false;
- }
+ HbMessageBox::question(qtText, this, SLOT(messageDialogClose(HbAction*)));
}
- return confirmAction;
+ else{
+ executeMpxCommand(true);
+ }
}
-
+
+void GlxMpxCommandHandler::messageDialogClose(HbAction* action)
+ {
+ HbMessageBox *dlg = static_cast<HbMessageBox*>(sender());
+ if(action == dlg->actions().at(0))
+ {
+ executeMpxCommand(true);
+ }
+ else
+ {
+ // Cancellation is done.
+ executeMpxCommand(false);
+ }
+ }
+
+
QString GlxMpxCommandHandler::ConfirmationTextL(bool /*multiSelection */) const
{
return QString();
--- a/ui/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h Fri May 14 15:52:22 2010 +0300
@@ -33,38 +33,47 @@
class QGraphicsGridLayout;
class GlxAlbumModel;
class QGraphicsItem;
+class HbDialog;
+class QItemSelectionModel;
+class QEventLoop;
class GLX_COMMONCOMMANDHANDLERS_EXPORT GlxCommandHandlerAddToContainer : public GlxMpxCommandHandler
- {
- Q_OBJECT
+{
+
public:
GlxCommandHandlerAddToContainer();
~GlxCommandHandlerAddToContainer();
CMPXCommand* CreateCommandL(TInt aCommandId, MGlxMediaList& aMediaList, TBool& aConsume) const ;
- QModelIndexList GetSelectionList(GlxAlbumModel *model,bool *ok = 0) const;
private:
QString CompletionTextL() const;
QString ProgressTextL() const;
+ void createNewMedia() const;
+
private:
static TInt iSelectionCount;
mutable bool mNewMediaAdded ;
mutable CMPXCollectionPath* mTargetContainers ;
+};
-private slots:
- void createNewMedia();
- };
-
-class GlxQueryContentWidget :public QGraphicsWidget
+class GlxAlbumSelectionPopup: public QObject
{
- Q_OBJECT
+ Q_OBJECT
+
public:
- HbPushButton* mButton;
- HbListView* mListView;
- QGraphicsGridLayout *mGrid;
- GlxQueryContentWidget(QGraphicsItem* parent = 0);
- ~GlxQueryContentWidget();
+ GlxAlbumSelectionPopup();
+ ~GlxAlbumSelectionPopup();
+ QModelIndexList GetSelectionList(GlxAlbumModel *model,bool *ok = 0) ;
+
+private slots:
+ void changeButtonText();
+ void dialogClosed( HbAction *action ) ;
+
+private :
+ HbDialog* mPopupDlg;
+ QItemSelectionModel * mSelectionModel; //no owner ship
+ QEventLoop *mEventLoop;
+ bool mResult;
};
-
#endif // GLXCOMMANDHANDLERADDTOCONTAINER_H
--- a/ui/commandhandlers/commoncommandhandlers/inc/glxcommondialogs.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/inc/glxcommondialogs.h Fri May 14 15:52:22 2010 +0300
@@ -19,8 +19,9 @@
#define GLXCOMMONDIALOGS_H
#include <QObject>
+#include <hbinputdialog.h>
-#include <hbinputdialog.h>
+class QEventLoop;
class GlxTextInputDialog : public QObject
{
@@ -32,9 +33,12 @@
public slots:
void textChanged(const QString &text);
+ void dialogClosed(HbAction *action);
private:
HbInputDialog* mDialog;
+ QEventLoop *mEventLoop;
+ bool mResult;
};
#endif // GLXCOMMONDIALOGS_H
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Fri May 14 15:52:22 2010 +0300
@@ -29,6 +29,7 @@
#include <glxcollectionpluginalbums.hrh>
#include <glxmodelparm.h>
#include <glxfilterfactory.h>
+#include <QEventLoop>
#include <hblistwidget.h>
#include <hbview.h>
@@ -37,6 +38,7 @@
#include <hbdialog.h>
#include <hbmessagebox.h>
+#include <glxcommandhandlers.hrh>
#include "glxlocalisationstrings.h"
#include "OstTraceDefinitions.h"
@@ -50,32 +52,88 @@
const TInt KSelectionPopupListHierarchy = 5;
const TInt KListPrefferedHeight = 400;
-GlxQueryContentWidget::GlxQueryContentWidget(QGraphicsItem* parent) :
- QGraphicsWidget(parent), mButton(0), mListView(0), mGrid(0)
- {
- OstTraceFunctionEntry0( DUP1_GLXQUERYCONTENTWIDGET_GLXQUERYCONTENTWIDGET_ENTRY );
- mGrid = new QGraphicsGridLayout;
- mGrid->setContentsMargins(0, 0, 0, 0);
+GlxAlbumSelectionPopup::GlxAlbumSelectionPopup()
+ : mPopupDlg( 0 ),
+ mSelectionModel( 0 ),
+ mEventLoop( 0 ),
+ mResult( false )
+{
+}
+
+GlxAlbumSelectionPopup::~GlxAlbumSelectionPopup()
+{
+}
- mButton = new HbPushButton("New Item");
- mListView = new HbListView(this);
- mListView->setSelectionMode(HbAbstractItemView::MultiSelection);
- mListView->setPreferredHeight(KListPrefferedHeight);
+QModelIndexList GlxAlbumSelectionPopup::GetSelectionList(GlxAlbumModel *model, bool *ok)
+{
+ // Create a popup
+ HbDialog popup;
+ QEventLoop eventLoop;
+ mEventLoop = &eventLoop;
+
+ popup.setPreferredHeight( KListPrefferedHeight );
+ // Set dismiss policy that determines what tap events will cause the popup
+ // to be dismissed
+ popup.setDismissPolicy(HbDialog::NoDismiss);
+
+ // Set timeout to zero to wait user to either click Ok or Cancel
+ popup.setTimeout(HbDialog::NoTimeout);
+ popup.setHeadingWidget( new HbLabel("Select Album") );
+
+ mPopupDlg = &popup;
+ HbListView *listview = new HbListView();
+ listview->setSelectionMode(HbAbstractItemView::MultiSelection);
+ listview->setModel(model);
+ mSelectionModel = listview->selectionModel() ;
+ connect( mSelectionModel, SIGNAL( selectionChanged( const QItemSelection &, const QItemSelection& ) ), this, SLOT( changeButtonText() ) );
+
+ HbAction *primary = new HbAction( "New" );
+ popup.addAction( primary ) ;
- mGrid->addItem(mButton, 0, 0);
- mGrid->addItem(mListView, 1, 0);
- setLayout(mGrid); //ownership transfered
+ HbAction *secondary = new HbAction( GLX_BUTTON_CANCEL );
+ popup.addAction( secondary );
+
+ popup.setContentWidget( listview ); //ownership transfer
+ listview->show();
+
+ popup.open( this, SLOT( dialogClosed( HbAction* ) ) );
+ eventLoop.exec( );
+ mEventLoop = 0 ;
+ if ( ok ) {
+ *ok = mResult ;
+ }
+ QModelIndexList selectedIndexes = mSelectionModel->selectedIndexes();
+ disconnect( mSelectionModel, SIGNAL( selectionChanged( const QItemSelection &, const QItemSelection& ) ), this, SLOT( changeButtonText() ) );
+ delete primary;
+ delete secondary;
- OstTraceFunctionExit0( DUP1_GLXQUERYCONTENTWIDGET_GLXQUERYCONTENTWIDGET_EXIT );
- }
+ return selectedIndexes;
+}
-GlxQueryContentWidget::~GlxQueryContentWidget()
- {
- OstTraceFunctionEntry0( GLXQUERYCONTENTWIDGET_GLXQUERYCONTENTWIDGET_ENTRY );
- delete mListView;
- delete mButton;
- OstTraceFunctionExit0( GLXQUERYCONTENTWIDGET_GLXQUERYCONTENTWIDGET_EXIT );
+void GlxAlbumSelectionPopup::changeButtonText()
+{
+ if ( mSelectionModel->selectedIndexes().count() ) {
+ mPopupDlg->actions().first()->setText( GLX_BUTTON_OK );
}
+ else {
+ mPopupDlg->actions().first()->setText("New");
+ }
+}
+
+
+void GlxAlbumSelectionPopup::dialogClosed(HbAction *action)
+{
+ HbDialog *dlg = static_cast<HbDialog*>(sender());
+ if( action == dlg->actions().first() ) {
+ mResult = true ;
+ }
+ else {
+ mResult = false ;
+ }
+ if ( mEventLoop && mEventLoop->isRunning( ) ) {
+ mEventLoop->exit( 0 );
+ }
+}
GlxCommandHandlerAddToContainer::GlxCommandHandlerAddToContainer() :
mNewMediaAdded(false)
@@ -92,147 +150,111 @@
OstTraceFunctionExit0( DUP1_GLXCOMMANDHANDLERADDTOCONTAINER_GLXCOMMANDHANDLERADDTOCONTAINER_EXIT );
}
-CMPXCommand* GlxCommandHandlerAddToContainer::CreateCommandL(TInt /*aCommandId*/,
+CMPXCommand* GlxCommandHandlerAddToContainer::CreateCommandL(TInt aCommandId,
MGlxMediaList& aMediaList, TBool& /*aConsume*/) const
{
OstTraceFunctionEntry0( GLXCOMMANDHANDLERADDTOCONTAINER_CREATECOMMANDL_ENTRY );
iSelectionCount = 0;
-
- CMPXCollectionPath* sourceItems = aMediaList.PathLC(
- NGlxListDefs::EPathFocusOrSelection);
- bool ok = false;
-
- //create target medialist
- CMPXCollectionPath* path = CMPXCollectionPath::NewL();
- CleanupStack::PushL(path);
- path->AppendL(KGlxCollectionPluginAlbumsImplementationUid);
-
- CMPXFilter* filter =
- TGlxFilterFactory::CreateCameraAlbumExclusionFilterL();
- CleanupStack::PushL(filter);
-
- // Create the media list
- MGlxMediaList* targetMediaList = MGlxMediaList::InstanceL(*path,
- TGlxHierarchyId(KSelectionPopupListHierarchy), filter); //todo take actual hierarchy
- CleanupStack::PopAndDestroy(filter);
- CleanupStack::PopAndDestroy(path);
-
- //create target model
- GlxModelParm modelParm(KGlxCollectionPluginAlbumsImplementationUid,
- KSelectionPopupListHierarchy, EGlxFilterExcludeCamera);
- GlxAlbumModel *albumMediaModel = new GlxAlbumModel(modelParm);
- albumMediaModel->setData(QModelIndex(), (int) GlxContextSelectionList,
- GlxContextRole);
+ CMPXCommand* command = NULL;
- QModelIndexList modelList = GetSelectionList(albumMediaModel, &ok);
-
- CMPXCommand* command = NULL;
- OstTraceExt2( TRACE_NORMAL, GLXCOMMANDHANDLERADDTOCONTAINER_CREATECOMMANDL, "GlxCommandHandlerAddToContainer::CreateCommandL;ok=%d;newMedia=%d", ok, mNewMediaAdded );
-
- if (ok || mNewMediaAdded)
+ if(aCommandId == EGlxCmdAddToFav)
{
- int count = modelList.count();
-
- for (int i = 0; i < count; i++)
- {
- albumMediaModel->setData(modelList[i], modelList[i].row(),
- GlxSelectedIndexRole);
- }
-
- if (!mNewMediaAdded)
- {
- CMPXCollectionPath* targetContainers = targetMediaList->PathLC(
- NGlxListDefs::EPathFocusOrSelection);
- CleanupStack::Pop(targetContainers);
- delete mTargetContainers;
- mTargetContainers = NULL;
- mTargetContainers = targetContainers;
- }
-
- command = TGlxCommandFactory::AddToContainerCommandLC(*sourceItems,
- *mTargetContainers);
- CleanupStack::Pop(command);
- mNewMediaAdded = false;
+ CMPXCollectionPath* targetCollection = CMPXCollectionPath::NewL();
+ CleanupStack::PushL(targetCollection);
+ // The target collection has to be appeneded with the albums plugin id
+ targetCollection->AppendL(KGlxCollectionPluginAlbumsImplementationUid);
+ // The target collection has also to be appeneded with the the relation id.
+ // appending another level into the albums to get favourites and 1 is the relation id of albums
+ targetCollection->AppendL( TMPXItemId(KGlxCollectionFavoritesId) );
+ targetCollection->Set( 0 );
+
+ CMPXCollectionPath* sourceItems = aMediaList.PathLC( NGlxListDefs::EPathFocusOrSelection );
+
+ command = TGlxCommandFactory::AddToContainerCommandLC(
+ *sourceItems, *targetCollection);
+ CleanupStack::Pop(command);
+
+ CleanupStack::PopAndDestroy(sourceItems);
+ CleanupStack::PopAndDestroy(targetCollection);
}
else
{
- MGlxMediaList::UnmarkAllL(aMediaList);
+
+ CMPXCollectionPath* sourceItems = aMediaList.PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+ bool ok = false;
+
+ //create target medialist
+ CMPXCollectionPath* path = CMPXCollectionPath::NewL();
+ CleanupStack::PushL(path);
+ path->AppendL(KGlxCollectionPluginAlbumsImplementationUid);
+
+ CMPXFilter* filter =
+ TGlxFilterFactory::CreateCameraAlbumExclusionFilterL();
+ CleanupStack::PushL(filter);
+
+ // Create the media list
+ MGlxMediaList* targetMediaList = MGlxMediaList::InstanceL(*path,
+ TGlxHierarchyId(KSelectionPopupListHierarchy), filter); //todo take actual hierarchy
+ CleanupStack::PopAndDestroy(filter);
+ CleanupStack::PopAndDestroy(path);
+
+ //create target model
+ GlxModelParm modelParm(KGlxCollectionPluginAlbumsImplementationUid,
+ KSelectionPopupListHierarchy, EGlxFilterExcludeCamera);
+ GlxAlbumModel *albumMediaModel = new GlxAlbumModel(modelParm);
+ albumMediaModel->setData(QModelIndex(), (int) GlxContextSelectionList,
+ GlxContextRole);
+
+ GlxAlbumSelectionPopup popupWidget;
+ QModelIndexList modelList = popupWidget.GetSelectionList(albumMediaModel, &ok);
+ if(ok && modelList.count() == 0)
+ {
+ createNewMedia();
+ ok = false;
+ }
+ OstTraceExt2( TRACE_NORMAL, GLXCOMMANDHANDLERADDTOCONTAINER_CREATECOMMANDL, "GlxCommandHandlerAddToContainer::CreateCommandL;ok=%d;newMedia=%d", ok, mNewMediaAdded );
+
+ if (ok || mNewMediaAdded)
+ {
+ int count = modelList.count();
+
+ for (int i = 0; i < count; i++)
+ {
+ albumMediaModel->setData(modelList[i], modelList[i].row(),
+ GlxSelectedIndexRole);
+ }
+
+ if (!mNewMediaAdded)
+ {
+ CMPXCollectionPath* targetContainers = targetMediaList->PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+ CleanupStack::Pop(targetContainers);
+ delete mTargetContainers;
+ mTargetContainers = NULL;
+ mTargetContainers = targetContainers;
+ }
+
+ command = TGlxCommandFactory::AddToContainerCommandLC(*sourceItems,
+ *mTargetContainers);
+ CleanupStack::Pop(command);
+ mNewMediaAdded = false;
+ }
+ else
+ {
+ MGlxMediaList::UnmarkAllL(aMediaList);
+ }
+
+ MGlxMediaList::UnmarkAllL(*targetMediaList);
+ targetMediaList->Close();
+ CleanupStack::PopAndDestroy(sourceItems);
+ delete albumMediaModel;
}
-
- MGlxMediaList::UnmarkAllL(*targetMediaList);
- targetMediaList->Close();
- CleanupStack::PopAndDestroy(sourceItems);
- delete albumMediaModel;
OstTraceFunctionExit0( GLXCOMMANDHANDLERADDTOCONTAINER_CREATECOMMANDL_EXIT );
return command;
}
-
-QModelIndexList GlxCommandHandlerAddToContainer::GetSelectionList(
- GlxAlbumModel *model, bool *ok) const
- {
- OstTraceFunctionEntry0( GLXCOMMANDHANDLERADDTOCONTAINER_GETSELECTIONLIST_ENTRY );
- // Create a popup
- HbDialog popup;
- popup.setPreferredHeight(400);
- // Set dismiss policy that determines what tap events will cause the popup
- // to be dismissed
- popup.setDismissPolicy(HbDialog::NoDismiss);
-
- // Set timeout to zero to wait user to either click Ok or Cancel
- popup.setTimeout(HbDialog::NoTimeout);
- popup.setHeadingWidget(new HbLabel("Selection List"));
-
- GlxQueryContentWidget* view = new GlxQueryContentWidget();
- view->mListView->setModel(model);
-
- connect(view->mButton, SIGNAL(released ()), &popup, SLOT(close()));
- connect(view->mButton, SIGNAL(released ()), this, SLOT(createNewMedia()));
-
-
- HbAction *primary = new HbAction(GLX_BUTTON_OK);
- popup.setPrimaryAction(primary);
-
- HbAction *secondary = new HbAction(GLX_BUTTON_CANCEL);
- popup.setSecondaryAction(secondary);
-
- popup.setContentWidget(view); //ownership transfer
- view->mListView->show();
-
- QModelIndexList selectedIndexes;
-
- do
- {
- HbAction* action = popup.exec();
- if (action == popup.primaryAction())
- {
- *ok = true;
- }
- else
- {
- *ok = false;
- }
- OstTrace1( TRACE_NORMAL, GLXCOMMANDHANDLERADDTOCONTAINER_GETSELECTIONLIST, "GlxCommandHandlerAddToContainer::GetSelectionList;ok=%d", *ok );
-
-
- if (*ok)
- {
- GlxQueryContentWidget* cWidget = qobject_cast<
- GlxQueryContentWidget*> (popup.contentWidget());
- QItemSelectionModel* selModel =
- cWidget->mListView->selectionModel();
- selectedIndexes = selModel->selectedIndexes();
- }
- }
- while (*ok && selectedIndexes.count() == 0); //continue until user select one album list or new item
-
- delete primary;
- delete secondary;
-
- OstTraceFunctionExit0( GLXCOMMANDHANDLERADDTOCONTAINER_GETSELECTIONLIST_EXIT );
- return selectedIndexes;
- }
-
-void GlxCommandHandlerAddToContainer::createNewMedia()
+
+void GlxCommandHandlerAddToContainer::createNewMedia() const
{
OstTraceFunctionEntry0( GLXCOMMANDHANDLERADDTOCONTAINER_CREATENEWMEDIA_ENTRY );
GlxCommandHandlerNewMedia* commandHandlerNewMedia =
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Fri May 14 15:52:22 2010 +0300
@@ -61,17 +61,6 @@
CMPXCollectionPath* path = aMediaList.PathLC(NGlxListDefs::EPathParent);
CMPXCommand* command = NULL;
-
- _LIT(KName, "TEST");
- HBufC* newMediaItemTitle = HBufC::NewL(40);
- TPtr newMediaItemTitleDes = newMediaItemTitle->Des();
- newMediaItemTitleDes.Append(KName);
-
-
- delete iNewMediaItemTitle;
- iNewMediaItemTitle = NULL;
- iNewMediaItemTitle = newMediaItemTitle;
-
QString title("NEW MEDIA");
QString mainPane = GenerateNewMediaItemTitleL("Album",aMediaList);
bool ok = false;
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlerremovefrom.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlerremovefrom.cpp Fri May 14 15:52:22 2010 +0300
@@ -19,6 +19,8 @@
#include <mglxmedialist.h>
#include <glxcommandfactory.h>
#include <glxcommandhandlerremovefrom.h>
+#include <glxcollectionpluginalbums.hrh>
+#include <glxcommandhandlers.hrh>
#include "OstTraceDefinitions.h"
#ifdef OST_TRACE_COMPILER_IN_USE
#include "glxcommandhandlerremovefromTraces.h"
@@ -43,11 +45,22 @@
OstTraceFunctionEntry0( GLXCOMMANDHANDLERREMOVEFROM_CREATECOMMANDL_ENTRY );
Q_UNUSED(aCommandId);
Q_UNUSED(aConsume);
- CMPXCollectionPath* path = aMediaList.PathLC(
- NGlxListDefs::EPathFocusOrSelection);
- CMPXCommand* command = TGlxCommandFactory::RemoveFromContainerCommandLC(
- *path);
+ CMPXCommand* command = NULL;
+ CMPXCollectionPath* path = aMediaList.PathLC(
+ NGlxListDefs::EPathFocusOrSelection);
+
+ if(aCommandId == EGlxCmdRemoveFromFav)
+ {
+ // adding to the favourites
+ TGlxMediaId favId(KGlxCollectionFavoritesId);
+ command = TGlxCommandFactory::RemoveFromContainerCommandLC(favId, *path);
+ }
+ else
+ {
+ command = TGlxCommandFactory::RemoveFromContainerCommandLC(*path);
+ }
+
CleanupStack::Pop(command);
CleanupStack::PopAndDestroy(path);
OstTraceFunctionExit0( GLXCOMMANDHANDLERREMOVEFROM_CREATECOMMANDL_EXIT );
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlersend.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommandhandlersend.cpp Fri May 14 15:52:22 2010 +0300
@@ -17,7 +17,7 @@
#include "glxcommandhandlersend.h"
#include <QModelIndex>
-#include <shareuidialog.h>
+#include <shareui.h>
#include <glxmodelparm.h>
#include <glxmediamodel.h>
#include <QAbstractItemModel>
--- a/ui/commandhandlers/commoncommandhandlers/src/glxcommondialogs.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/commoncommandhandlers/src/glxcommondialogs.cpp Fri May 14 15:52:22 2010 +0300
@@ -18,56 +18,71 @@
#include <glxcommondialogs.h>
#include <hbaction.h>
+#include <QEventLoop>
-GlxTextInputDialog::GlxTextInputDialog()
- {
- }
+GlxTextInputDialog::GlxTextInputDialog()
+ : mDialog ( NULL ),
+ mEventLoop ( 0 ),
+ mResult ( false )
+{
+}
GlxTextInputDialog::~GlxTextInputDialog()
- {
- }
+{
+}
QString GlxTextInputDialog::getText(const QString &label,
const QString &text, bool *ok)
- {
+{
+ QEventLoop eventLoop;
+ mEventLoop = &eventLoop;
+
mDialog = new HbInputDialog();
mDialog->setPromptText(label);
mDialog->setInputMode(HbInputDialog::TextInput);
mDialog->setValue(text);
connect(mDialog->lineEdit(0), SIGNAL( textChanged (const QString &) ),
this, SLOT( textChanged (const QString &)));
- HbAction* action = mDialog->exec();
+
+ mDialog->open( this, SLOT( dialogClosed( HbAction* ) ) );
+ eventLoop.exec( );
+ mEventLoop = 0 ;
+
+ if ( ok ) {
+ *ok = mResult ;
+ }
QString retText = NULL;
- if (action == mDialog->secondaryAction())
- { //Cancel was pressed
- if (ok)
- {
- *ok = false;
- }
- }
- else
- { //OK was pressed
- if (ok)
- {
- *ok = true;
- }
+ if ( mResult ) {
retText = mDialog->value().toString().trimmed();
- }
+ }
+
disconnect(mDialog->lineEdit(0), SIGNAL( textChanged (const QString &) ),
- this, SLOT( textChanged (const QString &)));
+ this, SLOT( textChanged (const QString &)));
delete mDialog;
mDialog = NULL;
return retText;
- }
+}
void GlxTextInputDialog::textChanged(const QString &text)
- {
- if (text.trimmed().isEmpty())
- {
- mDialog->primaryAction()->setEnabled(false);
- }
- else
- {
- mDialog->primaryAction()->setEnabled(true);
- }
+{
+ if (text.trimmed().isEmpty()) {
+ mDialog->actions().first()->setEnabled(false);
+ }
+ else {
+ mDialog->actions().first()->setEnabled(true);
}
+}
+
+void GlxTextInputDialog::dialogClosed(HbAction *action)
+{
+ HbInputDialog *dlg = static_cast<HbInputDialog*>(sender());
+ if( action == dlg->actions().first() ) {
+ mResult = true ;
+ }
+ else {
+ mResult = false ;
+ }
+ if ( mEventLoop && mEventLoop->isRunning( ) ) {
+ mEventLoop->exit( 0 );
+ }
+}
--- a/ui/commandhandlers/eabi/glxcommandhandlerbaseu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/eabi/glxcommandhandlerbaseu.def Fri May 14 15:52:22 2010 +0300
@@ -4,54 +4,61 @@
_ZN17GlxCommandHandlerD1Ev @ 3 NONAME
_ZN17GlxCommandHandlerD2Ev @ 4 NONAME
_ZN20GlxMpxCommandHandler11HandleErrorEi @ 5 NONAME
- _ZN20GlxMpxCommandHandler12HandleErrorLEi @ 6 NONAME
- _ZN20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 7 NONAME
- _ZN20GlxMpxCommandHandler13ProgressNoteLEi @ 8 NONAME
- _ZN20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 9 NONAME
- _ZN20GlxMpxCommandHandler14executeCommandEii5QListI11QModelIndexE @ 10 NONAME
- _ZN20GlxMpxCommandHandler16CreateMediaListLEii18TGlxFilterItemType @ 11 NONAME
- _ZN20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 12 NONAME
- _ZN20GlxMpxCommandHandler17DoExecuteCommandLEiR13MGlxMediaListRi @ 13 NONAME
- _ZN20GlxMpxCommandHandler18HandleItemRemovedLEiiP13MGlxMediaList @ 14 NONAME
- _ZN20GlxMpxCommandHandler19HandleFocusChangedLEN12NGlxListDefs16TFocusChangeTypeEiiP13MGlxMediaList @ 15 NONAME
- _ZN20GlxMpxCommandHandler19HandleItemModifiedLERK6RArrayIiEP13MGlxMediaList @ 16 NONAME
- _ZN20GlxMpxCommandHandler19HandleItemSelectedLEiiP13MGlxMediaList @ 17 NONAME
- _ZN20GlxMpxCommandHandler20DismissProgressNoteLEv @ 18 NONAME
- _ZN20GlxMpxCommandHandler22HandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 19 NONAME
- _ZN20GlxMpxCommandHandler24DoHandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 20 NONAME
- _ZN20GlxMpxCommandHandler25CreateMediaListAlbumItemLEii18TGlxFilterItemType @ 21 NONAME
- _ZN20GlxMpxCommandHandler26HandleAttributesAvailableLEiRK6RArrayI13TMPXAttributeEP13MGlxMediaList @ 22 NONAME
- _ZN20GlxMpxCommandHandler8TryExitLEi @ 23 NONAME
- _ZN20GlxMpxCommandHandlerC2Ev @ 24 NONAME
- _ZN20GlxMpxCommandHandlerD0Ev @ 25 NONAME
- _ZN20GlxMpxCommandHandlerD1Ev @ 26 NONAME
- _ZN20GlxMpxCommandHandlerD2Ev @ 27 NONAME
- _ZN22GlxModelCommandHandler14executeCommandEii5QListI11QModelIndexE @ 28 NONAME
- _ZN22GlxModelCommandHandlerC2Ev @ 29 NONAME
- _ZN22GlxModelCommandHandlerD0Ev @ 30 NONAME
- _ZN22GlxModelCommandHandlerD1Ev @ 31 NONAME
- _ZN22GlxModelCommandHandlerD2Ev @ 32 NONAME
- _ZNK20GlxMpxCommandHandler13ProgressTextLEv @ 33 NONAME
- _ZNK20GlxMpxCommandHandler15CompletionNoteLEv @ 34 NONAME
- _ZNK20GlxMpxCommandHandler15CompletionTextLEv @ 35 NONAME
- _ZNK20GlxMpxCommandHandler17ConfirmationNoteLER13MGlxMediaList @ 36 NONAME
- _ZNK20GlxMpxCommandHandler17ConfirmationTextLEb @ 37 NONAME
- _ZNK20GlxMpxCommandHandler23ConfirmationNoteSingleLER13MGlxMediaList @ 38 NONAME
- _ZNK20GlxMpxCommandHandler25ConfirmationNoteMultipleLER13MGlxMediaList @ 39 NONAME
- _ZTI17GlxCommandHandler @ 40 NONAME
- _ZTI20GlxMpxCommandHandler @ 41 NONAME
- _ZTI22GlxModelCommandHandler @ 42 NONAME
- _ZTV17GlxCommandHandler @ 43 NONAME
- _ZTV20GlxMpxCommandHandler @ 44 NONAME
- _ZTV22GlxModelCommandHandler @ 45 NONAME
- _ZThn8_N20GlxMpxCommandHandler11HandleErrorEi @ 46 NONAME
- _ZThn8_N20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 47 NONAME
- _ZThn8_N20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 48 NONAME
- _ZThn8_N20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 49 NONAME
- _ZThn8_N20GlxMpxCommandHandler18HandleItemRemovedLEiiP13MGlxMediaList @ 50 NONAME
- _ZThn8_N20GlxMpxCommandHandler19HandleFocusChangedLEN12NGlxListDefs16TFocusChangeTypeEiiP13MGlxMediaList @ 51 NONAME
- _ZThn8_N20GlxMpxCommandHandler19HandleItemModifiedLERK6RArrayIiEP13MGlxMediaList @ 52 NONAME
- _ZThn8_N20GlxMpxCommandHandler19HandleItemSelectedLEiiP13MGlxMediaList @ 53 NONAME
- _ZThn8_N20GlxMpxCommandHandler22HandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 54 NONAME
- _ZThn8_N20GlxMpxCommandHandler26HandleAttributesAvailableLEiRK6RArrayI13TMPXAttributeEP13MGlxMediaList @ 55 NONAME
+ _ZN20GlxMpxCommandHandler11qt_metacallEN11QMetaObject4CallEiPPv @ 6 NONAME
+ _ZN20GlxMpxCommandHandler11qt_metacastEPKc @ 7 NONAME
+ _ZN20GlxMpxCommandHandler12HandleErrorLEi @ 8 NONAME
+ _ZN20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 9 NONAME
+ _ZN20GlxMpxCommandHandler13ProgressNoteLEi @ 10 NONAME
+ _ZN20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 11 NONAME
+ _ZN20GlxMpxCommandHandler14executeCommandEii5QListI11QModelIndexE @ 12 NONAME
+ _ZN20GlxMpxCommandHandler16CreateMediaListLEii18TGlxFilterItemType @ 13 NONAME
+ _ZN20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 14 NONAME
+ _ZN20GlxMpxCommandHandler16staticMetaObjectE @ 15 NONAME DATA 16
+ _ZN20GlxMpxCommandHandler17ConfirmationNoteLER13MGlxMediaList @ 16 NONAME
+ _ZN20GlxMpxCommandHandler17DoExecuteCommandLEiR13MGlxMediaListRi @ 17 NONAME
+ _ZN20GlxMpxCommandHandler17executeMpxCommandEb @ 18 NONAME
+ _ZN20GlxMpxCommandHandler18HandleItemRemovedLEiiP13MGlxMediaList @ 19 NONAME
+ _ZN20GlxMpxCommandHandler18messageDialogCloseEP8HbAction @ 20 NONAME
+ _ZN20GlxMpxCommandHandler19HandleFocusChangedLEN12NGlxListDefs16TFocusChangeTypeEiiP13MGlxMediaList @ 21 NONAME
+ _ZN20GlxMpxCommandHandler19HandleItemModifiedLERK6RArrayIiEP13MGlxMediaList @ 22 NONAME
+ _ZN20GlxMpxCommandHandler19HandleItemSelectedLEiiP13MGlxMediaList @ 23 NONAME
+ _ZN20GlxMpxCommandHandler19getStaticMetaObjectEv @ 24 NONAME
+ _ZN20GlxMpxCommandHandler20DismissProgressNoteLEv @ 25 NONAME
+ _ZN20GlxMpxCommandHandler22HandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 26 NONAME
+ _ZN20GlxMpxCommandHandler23ConfirmationNoteSingleLER13MGlxMediaList @ 27 NONAME
+ _ZN20GlxMpxCommandHandler24DoHandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 28 NONAME
+ _ZN20GlxMpxCommandHandler25ConfirmationNoteMultipleLER13MGlxMediaList @ 29 NONAME
+ _ZN20GlxMpxCommandHandler25CreateMediaListAlbumItemLEii18TGlxFilterItemType @ 30 NONAME
+ _ZN20GlxMpxCommandHandler26HandleAttributesAvailableLEiRK6RArrayI13TMPXAttributeEP13MGlxMediaList @ 31 NONAME
+ _ZN20GlxMpxCommandHandler8TryExitLEi @ 32 NONAME
+ _ZN20GlxMpxCommandHandlerC2Ev @ 33 NONAME
+ _ZN20GlxMpxCommandHandlerD0Ev @ 34 NONAME
+ _ZN20GlxMpxCommandHandlerD1Ev @ 35 NONAME
+ _ZN20GlxMpxCommandHandlerD2Ev @ 36 NONAME
+ _ZN22GlxModelCommandHandler14executeCommandEii5QListI11QModelIndexE @ 37 NONAME
+ _ZN22GlxModelCommandHandlerC2Ev @ 38 NONAME
+ _ZN22GlxModelCommandHandlerD0Ev @ 39 NONAME
+ _ZN22GlxModelCommandHandlerD1Ev @ 40 NONAME
+ _ZN22GlxModelCommandHandlerD2Ev @ 41 NONAME
+ _ZNK20GlxMpxCommandHandler10metaObjectEv @ 42 NONAME
+ _ZNK20GlxMpxCommandHandler13ProgressTextLEv @ 43 NONAME
+ _ZNK20GlxMpxCommandHandler15CompletionNoteLEv @ 44 NONAME
+ _ZNK20GlxMpxCommandHandler15CompletionTextLEv @ 45 NONAME
+ _ZNK20GlxMpxCommandHandler17ConfirmationTextLEb @ 46 NONAME
+ _ZTI17GlxCommandHandler @ 47 NONAME
+ _ZTI20GlxMpxCommandHandler @ 48 NONAME
+ _ZTI22GlxModelCommandHandler @ 49 NONAME
+ _ZTV17GlxCommandHandler @ 50 NONAME
+ _ZTV20GlxMpxCommandHandler @ 51 NONAME
+ _ZTV22GlxModelCommandHandler @ 52 NONAME
+ _ZThn8_N20GlxMpxCommandHandler11HandleErrorEi @ 53 NONAME
+ _ZThn8_N20GlxMpxCommandHandler12HandleMediaLEiP13MGlxMediaList @ 54 NONAME
+ _ZThn8_N20GlxMpxCommandHandler14HandleMessageLERK9CMPXMediaP13MGlxMediaList @ 55 NONAME
+ _ZThn8_N20GlxMpxCommandHandler16HandleItemAddedLEiiP13MGlxMediaList @ 56 NONAME
+ _ZThn8_N20GlxMpxCommandHandler18HandleItemRemovedLEiiP13MGlxMediaList @ 57 NONAME
+ _ZThn8_N20GlxMpxCommandHandler19HandleFocusChangedLEN12NGlxListDefs16TFocusChangeTypeEiiP13MGlxMediaList @ 58 NONAME
+ _ZThn8_N20GlxMpxCommandHandler19HandleItemModifiedLERK6RArrayIiEP13MGlxMediaList @ 59 NONAME
+ _ZThn8_N20GlxMpxCommandHandler19HandleItemSelectedLEiiP13MGlxMediaList @ 60 NONAME
+ _ZThn8_N20GlxMpxCommandHandler22HandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 61 NONAME
+ _ZThn8_N20GlxMpxCommandHandler26HandleAttributesAvailableLEiRK6RArrayI13TMPXAttributeEP13MGlxMediaList @ 62 NONAME
--- a/ui/commandhandlers/eabi/glxcommoncommandhandlersu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/commandhandlers/eabi/glxcommoncommandhandlersu.def Fri May 14 15:52:22 2010 +0300
@@ -9,90 +9,84 @@
_ZN23GlxCommandHandlerDeleteD0Ev @ 8 NONAME
_ZN23GlxCommandHandlerDeleteD1Ev @ 9 NONAME
_ZN23GlxCommandHandlerDeleteD2Ev @ 10 NONAME
- _ZN23GlxCommandHandlerRotate12RotateImageLE4TBufILi256EE @ 11 NONAME
- _ZN23GlxCommandHandlerRotate17DestroyExifWriterEv @ 12 NONAME
- _ZN23GlxCommandHandlerRotate17DoExecuteCommandLEiR13MGlxMediaListRi @ 13 NONAME
- _ZN23GlxCommandHandlerRotate20SetImageOrientationLEt @ 14 NONAME
- _ZN23GlxCommandHandlerRotate21InitializeExifWriterLE4TBufILi256EE @ 15 NONAME
- _ZN23GlxCommandHandlerRotate21ReadImageOrientationLEv @ 16 NONAME
- _ZN23GlxCommandHandlerRotate26CalculateFinalOrientationLEt @ 17 NONAME
- _ZN23GlxCommandHandlerRotateC1Ev @ 18 NONAME
- _ZN23GlxCommandHandlerRotateC2Ev @ 19 NONAME
- _ZN23GlxCommandHandlerRotateD0Ev @ 20 NONAME
- _ZN23GlxCommandHandlerRotateD1Ev @ 21 NONAME
- _ZN23GlxCommandHandlerRotateD2Ev @ 22 NONAME
- _ZN25GlxCommandHandlerNewMedia11HandleErrorEi @ 23 NONAME
- _ZN25GlxCommandHandlerNewMedia11qt_metacallEN11QMetaObject4CallEiPPv @ 24 NONAME
- _ZN25GlxCommandHandlerNewMedia11qt_metacastEPKc @ 25 NONAME
- _ZN25GlxCommandHandlerNewMedia12HandleErrorLEi @ 26 NONAME
- _ZN25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 27 NONAME
- _ZN25GlxCommandHandlerNewMedia16staticMetaObjectE @ 28 NONAME DATA 16
- _ZN25GlxCommandHandlerNewMedia19getStaticMetaObjectEv @ 29 NONAME
- _ZN25GlxCommandHandlerNewMedia24DoHandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 30 NONAME
- _ZN25GlxCommandHandlerNewMedia9ExecuteLDER11TGlxMediaId @ 31 NONAME
- _ZN25GlxCommandHandlerNewMediaC1Ev @ 32 NONAME
- _ZN25GlxCommandHandlerNewMediaC2Ev @ 33 NONAME
- _ZN25GlxCommandHandlerNewMediaD0Ev @ 34 NONAME
- _ZN25GlxCommandHandlerNewMediaD1Ev @ 35 NONAME
- _ZN25GlxCommandHandlerNewMediaD2Ev @ 36 NONAME
- _ZN27GlxCommandHandlerRemoveFromC1Ev @ 37 NONAME
- _ZN27GlxCommandHandlerRemoveFromC2Ev @ 38 NONAME
- _ZN27GlxCommandHandlerRemoveFromD0Ev @ 39 NONAME
- _ZN27GlxCommandHandlerRemoveFromD1Ev @ 40 NONAME
- _ZN27GlxCommandHandlerRemoveFromD2Ev @ 41 NONAME
- _ZN31GlxCommandHandlerAddToContainer11qt_metacallEN11QMetaObject4CallEiPPv @ 42 NONAME
- _ZN31GlxCommandHandlerAddToContainer11qt_metacastEPKc @ 43 NONAME
- _ZN31GlxCommandHandlerAddToContainer14createNewMediaEv @ 44 NONAME
- _ZN31GlxCommandHandlerAddToContainer15iSelectionCountE @ 45 NONAME DATA 4
- _ZN31GlxCommandHandlerAddToContainer16staticMetaObjectE @ 46 NONAME DATA 16
- _ZN31GlxCommandHandlerAddToContainer19getStaticMetaObjectEv @ 47 NONAME
- _ZN31GlxCommandHandlerAddToContainerC1Ev @ 48 NONAME
- _ZN31GlxCommandHandlerAddToContainerC2Ev @ 49 NONAME
- _ZN31GlxCommandHandlerAddToContainerD0Ev @ 50 NONAME
- _ZN31GlxCommandHandlerAddToContainerD1Ev @ 51 NONAME
- _ZN31GlxCommandHandlerAddToContainerD2Ev @ 52 NONAME
- _ZNK21GlxCommandHandlerSend18doHandleUserActionEP13GlxMediaModel5QListI11QModelIndexE @ 53 NONAME
- _ZNK23GlxCommandHandlerDelete13ProgressTextLEv @ 54 NONAME
- _ZNK23GlxCommandHandlerDelete14CreateCommandLEiR13MGlxMediaListRi @ 55 NONAME
- _ZNK23GlxCommandHandlerDelete15CompletionTextLEv @ 56 NONAME
- _ZNK23GlxCommandHandlerDelete17ConfirmationTextLEb @ 57 NONAME
- _ZNK23GlxCommandHandlerRotate14CreateCommandLEiR13MGlxMediaListRi @ 58 NONAME
- _ZNK25GlxCommandHandlerNewMedia10metaObjectEv @ 59 NONAME
- _ZNK25GlxCommandHandlerNewMedia13ProgressTextLEv @ 60 NONAME
- _ZNK25GlxCommandHandlerNewMedia14CreateCommandLEiR13MGlxMediaListRi @ 61 NONAME
- _ZNK25GlxCommandHandlerNewMedia15CompletionTextLEv @ 62 NONAME
- _ZNK25GlxCommandHandlerNewMedia26GenerateNewMediaItemTitleLE7QStringR13MGlxMediaList @ 63 NONAME
- _ZNK27GlxCommandHandlerRemoveFrom13ProgressTextLEv @ 64 NONAME
- _ZNK27GlxCommandHandlerRemoveFrom14CreateCommandLEiR13MGlxMediaListRi @ 65 NONAME
- _ZNK27GlxCommandHandlerRemoveFrom15CompletionTextLEv @ 66 NONAME
- _ZNK31GlxCommandHandlerAddToContainer10metaObjectEv @ 67 NONAME
- _ZNK31GlxCommandHandlerAddToContainer13ProgressTextLEv @ 68 NONAME
- _ZNK31GlxCommandHandlerAddToContainer14CreateCommandLEiR13MGlxMediaListRi @ 69 NONAME
- _ZNK31GlxCommandHandlerAddToContainer15CompletionTextLEv @ 70 NONAME
- _ZNK31GlxCommandHandlerAddToContainer16GetSelectionListEP13GlxAlbumModelPb @ 71 NONAME
- _ZTI21GlxCommandHandlerSend @ 72 NONAME
- _ZTI23GlxCommandHandlerDelete @ 73 NONAME
- _ZTI23GlxCommandHandlerRotate @ 74 NONAME
- _ZTI25GlxCommandHandlerNewMedia @ 75 NONAME
- _ZTI27GlxCommandHandlerRemoveFrom @ 76 NONAME
- _ZTI31GlxCommandHandlerAddToContainer @ 77 NONAME
- _ZTV21GlxCommandHandlerSend @ 78 NONAME
- _ZTV23GlxCommandHandlerDelete @ 79 NONAME
- _ZTV23GlxCommandHandlerRotate @ 80 NONAME
- _ZTV25GlxCommandHandlerNewMedia @ 81 NONAME
- _ZTV27GlxCommandHandlerRemoveFrom @ 82 NONAME
- _ZTV31GlxCommandHandlerAddToContainer @ 83 NONAME
- _ZThn8_N25GlxCommandHandlerNewMedia11HandleErrorEi @ 84 NONAME
- _ZThn8_N25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 85 NONAME
- _ZN23GlxCommandHandlerRenameC1Ev @ 86 NONAME
- _ZN23GlxCommandHandlerRenameC2Ev @ 87 NONAME
- _ZN23GlxCommandHandlerRenameD0Ev @ 88 NONAME
- _ZN23GlxCommandHandlerRenameD1Ev @ 89 NONAME
- _ZN23GlxCommandHandlerRenameD2Ev @ 90 NONAME
- _ZNK23GlxCommandHandlerRename14CreateCommandLEiR13MGlxMediaListRi @ 91 NONAME
- _ZNK23GlxCommandHandlerRename15CompletionTextLEv @ 92 NONAME
- _ZNK23GlxCommandHandlerRename7GetNameER13MGlxMediaList @ 93 NONAME
- _ZTI23GlxCommandHandlerRename @ 94 NONAME
- _ZTV23GlxCommandHandlerRename @ 95 NONAME
- _ZN23GlxCommandHandlerRename12HandleErrorLEi @ 96 NONAME
+ _ZN23GlxCommandHandlerRename12HandleErrorLEi @ 11 NONAME
+ _ZN23GlxCommandHandlerRenameC1Ev @ 12 NONAME
+ _ZN23GlxCommandHandlerRenameC2Ev @ 13 NONAME
+ _ZN23GlxCommandHandlerRenameD0Ev @ 14 NONAME
+ _ZN23GlxCommandHandlerRenameD1Ev @ 15 NONAME
+ _ZN23GlxCommandHandlerRenameD2Ev @ 16 NONAME
+ _ZN23GlxCommandHandlerRotate12RotateImageLE4TBufILi256EE @ 17 NONAME
+ _ZN23GlxCommandHandlerRotate17DestroyExifWriterEv @ 18 NONAME
+ _ZN23GlxCommandHandlerRotate17DoExecuteCommandLEiR13MGlxMediaListRi @ 19 NONAME
+ _ZN23GlxCommandHandlerRotate20SetImageOrientationLEt @ 20 NONAME
+ _ZN23GlxCommandHandlerRotate21InitializeExifWriterLE4TBufILi256EE @ 21 NONAME
+ _ZN23GlxCommandHandlerRotate21ReadImageOrientationLEv @ 22 NONAME
+ _ZN23GlxCommandHandlerRotate26CalculateFinalOrientationLEt @ 23 NONAME
+ _ZN23GlxCommandHandlerRotateC1Ev @ 24 NONAME
+ _ZN23GlxCommandHandlerRotateC2Ev @ 25 NONAME
+ _ZN23GlxCommandHandlerRotateD0Ev @ 26 NONAME
+ _ZN23GlxCommandHandlerRotateD1Ev @ 27 NONAME
+ _ZN23GlxCommandHandlerRotateD2Ev @ 28 NONAME
+ _ZN25GlxCommandHandlerNewMedia11HandleErrorEi @ 29 NONAME
+ _ZN25GlxCommandHandlerNewMedia11qt_metacallEN11QMetaObject4CallEiPPv @ 30 NONAME
+ _ZN25GlxCommandHandlerNewMedia11qt_metacastEPKc @ 31 NONAME
+ _ZN25GlxCommandHandlerNewMedia12HandleErrorLEi @ 32 NONAME
+ _ZN25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 33 NONAME
+ _ZN25GlxCommandHandlerNewMedia16staticMetaObjectE @ 34 NONAME DATA 16
+ _ZN25GlxCommandHandlerNewMedia19getStaticMetaObjectEv @ 35 NONAME
+ _ZN25GlxCommandHandlerNewMedia24DoHandleCommandCompleteLEPvP9CMPXMediaiP13MGlxMediaList @ 36 NONAME
+ _ZN25GlxCommandHandlerNewMedia9ExecuteLDER11TGlxMediaId @ 37 NONAME
+ _ZN25GlxCommandHandlerNewMediaC1Ev @ 38 NONAME
+ _ZN25GlxCommandHandlerNewMediaC2Ev @ 39 NONAME
+ _ZN25GlxCommandHandlerNewMediaD0Ev @ 40 NONAME
+ _ZN25GlxCommandHandlerNewMediaD1Ev @ 41 NONAME
+ _ZN25GlxCommandHandlerNewMediaD2Ev @ 42 NONAME
+ _ZN27GlxCommandHandlerRemoveFromC1Ev @ 43 NONAME
+ _ZN27GlxCommandHandlerRemoveFromC2Ev @ 44 NONAME
+ _ZN27GlxCommandHandlerRemoveFromD0Ev @ 45 NONAME
+ _ZN27GlxCommandHandlerRemoveFromD1Ev @ 46 NONAME
+ _ZN27GlxCommandHandlerRemoveFromD2Ev @ 47 NONAME
+ _ZN31GlxCommandHandlerAddToContainer15iSelectionCountE @ 48 NONAME DATA 4
+ _ZN31GlxCommandHandlerAddToContainerC1Ev @ 49 NONAME
+ _ZN31GlxCommandHandlerAddToContainerC2Ev @ 50 NONAME
+ _ZN31GlxCommandHandlerAddToContainerD0Ev @ 51 NONAME
+ _ZN31GlxCommandHandlerAddToContainerD1Ev @ 52 NONAME
+ _ZN31GlxCommandHandlerAddToContainerD2Ev @ 53 NONAME
+ _ZNK21GlxCommandHandlerSend18doHandleUserActionEP13GlxMediaModel5QListI11QModelIndexE @ 54 NONAME
+ _ZNK23GlxCommandHandlerDelete13ProgressTextLEv @ 55 NONAME
+ _ZNK23GlxCommandHandlerDelete14CreateCommandLEiR13MGlxMediaListRi @ 56 NONAME
+ _ZNK23GlxCommandHandlerDelete15CompletionTextLEv @ 57 NONAME
+ _ZNK23GlxCommandHandlerDelete17ConfirmationTextLEb @ 58 NONAME
+ _ZNK23GlxCommandHandlerRename14CreateCommandLEiR13MGlxMediaListRi @ 59 NONAME
+ _ZNK23GlxCommandHandlerRename15CompletionTextLEv @ 60 NONAME
+ _ZNK23GlxCommandHandlerRename7GetNameER13MGlxMediaList @ 61 NONAME
+ _ZNK23GlxCommandHandlerRotate14CreateCommandLEiR13MGlxMediaListRi @ 62 NONAME
+ _ZNK25GlxCommandHandlerNewMedia10metaObjectEv @ 63 NONAME
+ _ZNK25GlxCommandHandlerNewMedia13ProgressTextLEv @ 64 NONAME
+ _ZNK25GlxCommandHandlerNewMedia14CreateCommandLEiR13MGlxMediaListRi @ 65 NONAME
+ _ZNK25GlxCommandHandlerNewMedia15CompletionTextLEv @ 66 NONAME
+ _ZNK25GlxCommandHandlerNewMedia26GenerateNewMediaItemTitleLE7QStringR13MGlxMediaList @ 67 NONAME
+ _ZNK27GlxCommandHandlerRemoveFrom13ProgressTextLEv @ 68 NONAME
+ _ZNK27GlxCommandHandlerRemoveFrom14CreateCommandLEiR13MGlxMediaListRi @ 69 NONAME
+ _ZNK27GlxCommandHandlerRemoveFrom15CompletionTextLEv @ 70 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer13ProgressTextLEv @ 71 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer14CreateCommandLEiR13MGlxMediaListRi @ 72 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer14createNewMediaEv @ 73 NONAME
+ _ZNK31GlxCommandHandlerAddToContainer15CompletionTextLEv @ 74 NONAME
+ _ZTI21GlxCommandHandlerSend @ 75 NONAME
+ _ZTI23GlxCommandHandlerDelete @ 76 NONAME
+ _ZTI23GlxCommandHandlerRename @ 77 NONAME
+ _ZTI23GlxCommandHandlerRotate @ 78 NONAME
+ _ZTI25GlxCommandHandlerNewMedia @ 79 NONAME
+ _ZTI27GlxCommandHandlerRemoveFrom @ 80 NONAME
+ _ZTI31GlxCommandHandlerAddToContainer @ 81 NONAME
+ _ZTV21GlxCommandHandlerSend @ 82 NONAME
+ _ZTV23GlxCommandHandlerDelete @ 83 NONAME
+ _ZTV23GlxCommandHandlerRename @ 84 NONAME
+ _ZTV23GlxCommandHandlerRotate @ 85 NONAME
+ _ZTV25GlxCommandHandlerNewMedia @ 86 NONAME
+ _ZTV27GlxCommandHandlerRemoveFrom @ 87 NONAME
+ _ZTV31GlxCommandHandlerAddToContainer @ 88 NONAME
+ _ZThn8_N25GlxCommandHandlerNewMedia11HandleErrorEi @ 89 NONAME
+ _ZThn8_N25GlxCommandHandlerNewMedia16HandleItemAddedLEiiP13MGlxMediaList @ 90 NONAME
--- a/ui/inc/glxcommandhandlers.hrh Mon May 03 12:31:32 2010 +0300
+++ b/ui/inc/glxcommandhandlers.hrh Fri May 14 15:52:22 2010 +0300
@@ -59,6 +59,8 @@
EGlxCmdSelectSlideshow, //play the slide show with selected item
EGlxCmdAlbumSlideShow, //play the slide show for a album
EGlxCmdRename,
+ EGlxCmdAddToFav,
+ EGlxCmdRemoveFromFav,
EGlxCmdPlay,
EGlxCmdDRMOpen,
EGlxCmdShowOnlineInfo,
@@ -106,6 +108,7 @@
EGlxCmdCancel,
EGlxCmdMarkAll,
EGlxCmdUnMarkAll,
+ EGlxCmdContextRemoveFrom,
EGlxCmdContextAddToAlbum,
EGlxCmdContextDelete,
EGlxCmdContextAlbumDelete,
--- a/ui/inc/glxdocloaderdefs.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/inc/glxdocloaderdefs.h Fri May 14 15:52:22 2010 +0300
@@ -31,7 +31,7 @@
//SLIDE SHOW
#define GLXSLIDESHOW_VIEW "mglxslideshow"
-#define GLXSLIDESHOW_WIDGET "mscrollArea"
+#define GLXSLIDESHOW_WIDGET "mslideshowwidget"
#define GLXSLIDESHOW_PATH ":/data/slideshow.docml"
#define GLXSLIDESHOW_PB "mContinueButton"
--- a/ui/inc/glxicondefs.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/inc/glxicondefs.h Fri May 14 15:52:22 2010 +0300
@@ -42,4 +42,7 @@
//DEFAULT ICON
#define GLXICON_DEFAULT "qtg_mono_camera"
+#define GLXICON_ADD_TO_FAV "qtg_graf_ratingslider_rated"
+#define GLXICON_REMOVE_FAV "qtg_graf_ratingslider_unrated"
+
#endif /* GLXICONDEFS_H */
--- a/ui/inc/glxmodelparm.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/inc/glxmodelparm.h Fri May 14 15:52:22 2010 +0300
@@ -25,7 +25,8 @@
enum
{
- GlxFsImageRole = Qt::UserRole + 1, //to get the fullscreen image
+ 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
@@ -36,17 +37,24 @@
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
+ GlxQImageSmall, //To Get Grid Thumbnail as QImage
+ GlxQImageLarge, //To Get FullScreen Thumbnail as QImage
+ GlxDefaultImage //To Get Default Thumbnail
};
class GlxModelParm
{
public:
- GlxModelParm (qint32 collectionId = 0, qint32 depth = 0 , TGlxFilterItemType filterType = EGlxFilterItemAll , GlxContextMode contextMode = GlxContextPtGrid )
+ GlxModelParm (qint32 collectionId = 0, qint32 depth = 0 , TGlxFilterItemType filterType = EGlxFilterItemAll , GlxContextMode contextMode = GlxContextPtGrid ,QString uri = NULL)
: mCollectionId(collectionId) ,
mDepth(depth) ,
mFilterType( filterType ),
- mContextMode( contextMode )
+ mContextMode( contextMode ),
+ mUri(uri)
{
}
@@ -55,6 +63,8 @@
qint32 collection() { return mCollectionId; }
void setDepth (qint32 depth = 0) { mDepth = depth ; }
qint32 depth() { return mDepth; }
+ QString path() { return mUri; }
+ void setPath(QString uri = NULL) { mUri=uri; }
TGlxFilterItemType filterType() { return mFilterType; }
void setContextMode( GlxContextMode contextMode ) { mContextMode = contextMode ; }
GlxContextMode contextMode() { return mContextMode ; }
@@ -64,6 +74,7 @@
qint32 mDepth;
TGlxFilterItemType mFilterType;
GlxContextMode mContextMode;
+ QString mUri;
};
--- a/ui/inc/glxuistd.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/inc/glxuistd.h Fri May 14 15:52:22 2010 +0300
@@ -40,7 +40,8 @@
GlxContextPtFs, //TB context check would be applied here . Please do not add any context between GlxContextLsFs and GlxContextPtFs
GlxContextLsList,
GlxContextPtList,
- GlxContextSelectionList
+ GlxContextSelectionList,
+ GlxContextFavorite
};
enum GlxTBContextType
@@ -55,6 +56,9 @@
typedef enum
{
NO_EFFECT,
+ WAVE_EFFECT,
+ SMOOTH_FADE,
+ ZOOM_TO_FACE,
TRANSITION_EFFECT,
FADE_EFFECT,
GRID_TO_FULLSCREEN,
@@ -67,6 +71,12 @@
typedef enum
{
+ SLOW,
+ MEDIUM,
+ FAST
+}GlxSlideShowDelay;
+typedef enum
+{
NO_VIEW,
CURRENT_VIEW,
LAUNCH_VIEW,
--- a/ui/uiengine/bwins/glxmedialistwrapperu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/bwins/glxmedialistwrapperu.def Fri May 14 15:52:22 2010 +0300
@@ -12,29 +12,32 @@
?qt_metacall@GlxMLWrapper@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 11 NONAME ; int GlxMLWrapper::qt_metacall(enum QMetaObject::Call, int, void * *)
?retrieveItemFrameCount@GlxMLWrapper@@QAEHH@Z @ 12 NONAME ; int GlxMLWrapper::retrieveItemFrameCount(int)
?retrieveListTitle@GlxMLWrapper@@QAE?AVQString@@H@Z @ 13 NONAME ; class QString GlxMLWrapper::retrieveListTitle(int)
- ?tr@GlxMLWrapper@@SA?AVQString@@PBD0@Z @ 14 NONAME ; class QString GlxMLWrapper::tr(char const *, char const *)
- ?setVisibleWindowIndex@GlxMLWrapper@@QAEXH@Z @ 15 NONAME ; void GlxMLWrapper::setVisibleWindowIndex(int)
- ?getStaticMetaObject@GlxMLWrapper@@SAABUQMetaObject@@XZ @ 16 NONAME ; struct QMetaObject const & GlxMLWrapper::getStaticMetaObject(void)
- ?retrieveListSubTitle@GlxMLWrapper@@QAE?AVQString@@H@Z @ 17 NONAME ; class QString GlxMLWrapper::retrieveListSubTitle(int)
- ?staticMetaObject@GlxMLWrapper@@2UQMetaObject@@B @ 18 NONAME ; struct QMetaObject const GlxMLWrapper::staticMetaObject
- ?handleListItemAvailable@GlxMLWrapper@@QAEXH@Z @ 19 NONAME ; void GlxMLWrapper::handleListItemAvailable(int)
- ?trUtf8@GlxMLWrapper@@SA?AVQString@@PBD0@Z @ 20 NONAME ; class QString GlxMLWrapper::trUtf8(char const *, char const *)
- ?itemsRemoved@GlxMLWrapper@@QAEXHH@Z @ 21 NONAME ; void GlxMLWrapper::itemsRemoved(int, int)
- ?metaObject@GlxMLWrapper@@UBEPBUQMetaObject@@XZ @ 22 NONAME ; struct QMetaObject const * GlxMLWrapper::metaObject(void) const
- ?insertItems@GlxMLWrapper@@IAEXHH@Z @ 23 NONAME ; void GlxMLWrapper::insertItems(int, int)
- ?getFocusIndex@GlxMLWrapper@@QBEHXZ @ 24 NONAME ; int GlxMLWrapper::getFocusIndex(void) const
- ?handleIconCorrupt@GlxMLWrapper@@QAEXH@Z @ 25 NONAME ; void GlxMLWrapper::handleIconCorrupt(int)
- ?retrieveItemDimension@GlxMLWrapper@@QAE?AVQSize@@H@Z @ 26 NONAME ; class QSize GlxMLWrapper::retrieveItemDimension(int)
- ?RetrieveL@GlxAttributeRetriever@@SAHABVMGlxFetchContext@@AAVMGlxMediaList@@H@Z @ 27 NONAME ; int GlxAttributeRetriever::RetrieveL(class MGlxFetchContext const &, class MGlxMediaList &, int)
- ?handleReceivedIcon@GlxMLWrapper@@QAEXHW4GlxTBContextType@@@Z @ 28 NONAME ; void GlxMLWrapper::handleReceivedIcon(int, enum GlxTBContextType)
- ?tr@GlxMLWrapper@@SA?AVQString@@PBD0H@Z @ 29 NONAME ; class QString GlxMLWrapper::tr(char const *, char const *, int)
- ??_EGlxMLWrapper@@UAE@I@Z @ 30 NONAME ; GlxMLWrapper::~GlxMLWrapper(unsigned int)
- ??0GlxMLWrapper@@QAE@HHW4TGlxFilterItemType@@@Z @ 31 NONAME ; GlxMLWrapper::GlxMLWrapper(int, int, enum TGlxFilterItemType)
- ?setContextMode@GlxMLWrapper@@QAEXW4GlxContextMode@@@Z @ 32 NONAME ; void GlxMLWrapper::setContextMode(enum GlxContextMode)
- ??1GlxMLWrapper@@UAE@XZ @ 33 NONAME ; GlxMLWrapper::~GlxMLWrapper(void)
- ?RetrieveBitmap@GlxMLWrapper@@QAE?AVQVariant@@H@Z @ 34 NONAME ; class QVariant GlxMLWrapper::RetrieveBitmap(int)
- ?qt_metacast@GlxMLWrapper@@UAEPAXPBD@Z @ 35 NONAME ; void * GlxMLWrapper::qt_metacast(char const *)
- ?setSelectedIndex@GlxMLWrapper@@QAEXH@Z @ 36 NONAME ; void GlxMLWrapper::setSelectedIndex(int)
- ?itemsAdded@GlxMLWrapper@@QAEXHH@Z @ 37 NONAME ; void GlxMLWrapper::itemsAdded(int, int)
- ?retrieveItemIcon@GlxMLWrapper@@QAEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 38 NONAME ; class HbIcon * GlxMLWrapper::retrieveItemIcon(int, enum GlxTBContextType)
+ ?retrieveListItemCount@GlxMLWrapper@@QAEHH@Z @ 14 NONAME ; int GlxMLWrapper::retrieveListItemCount(int)
+ ?tr@GlxMLWrapper@@SA?AVQString@@PBD0@Z @ 15 NONAME ; class QString GlxMLWrapper::tr(char const *, char const *)
+ ?setVisibleWindowIndex@GlxMLWrapper@@QAEXH@Z @ 16 NONAME ; void GlxMLWrapper::setVisibleWindowIndex(int)
+ ?getStaticMetaObject@GlxMLWrapper@@SAABUQMetaObject@@XZ @ 17 NONAME ; struct QMetaObject const & GlxMLWrapper::getStaticMetaObject(void)
+ ?retrieveListSubTitle@GlxMLWrapper@@QAE?AVQString@@H@Z @ 18 NONAME ; class QString GlxMLWrapper::retrieveListSubTitle(int)
+ ?staticMetaObject@GlxMLWrapper@@2UQMetaObject@@B @ 19 NONAME ; struct QMetaObject const GlxMLWrapper::staticMetaObject
+ ?handleListItemAvailable@GlxMLWrapper@@QAEXH@Z @ 20 NONAME ; void GlxMLWrapper::handleListItemAvailable(int)
+ ?trUtf8@GlxMLWrapper@@SA?AVQString@@PBD0@Z @ 21 NONAME ; class QString GlxMLWrapper::trUtf8(char const *, char const *)
+ ?itemsRemoved@GlxMLWrapper@@QAEXHH@Z @ 22 NONAME ; void GlxMLWrapper::itemsRemoved(int, int)
+ ?metaObject@GlxMLWrapper@@UBEPBUQMetaObject@@XZ @ 23 NONAME ; struct QMetaObject const * GlxMLWrapper::metaObject(void) const
+ ?insertItems@GlxMLWrapper@@IAEXHH@Z @ 24 NONAME ; void GlxMLWrapper::insertItems(int, int)
+ ?isSystemItem@GlxMLWrapper@@QAE_NH@Z @ 25 NONAME ; bool GlxMLWrapper::isSystemItem(int)
+ ?getFocusIndex@GlxMLWrapper@@QBEHXZ @ 26 NONAME ; int GlxMLWrapper::getFocusIndex(void) const
+ ?handleIconCorrupt@GlxMLWrapper@@QAEXH@Z @ 27 NONAME ; void GlxMLWrapper::handleIconCorrupt(int)
+ ?retrieveItemDimension@GlxMLWrapper@@QAE?AVQSize@@H@Z @ 28 NONAME ; class QSize GlxMLWrapper::retrieveItemDimension(int)
+ ?RetrieveL@GlxAttributeRetriever@@SAHABVMGlxFetchContext@@AAVMGlxMediaList@@H@Z @ 29 NONAME ; int GlxAttributeRetriever::RetrieveL(class MGlxFetchContext const &, class MGlxMediaList &, int)
+ ?handleReceivedIcon@GlxMLWrapper@@QAEXHW4GlxTBContextType@@@Z @ 30 NONAME ; void GlxMLWrapper::handleReceivedIcon(int, enum GlxTBContextType)
+ ?tr@GlxMLWrapper@@SA?AVQString@@PBD0H@Z @ 31 NONAME ; class QString GlxMLWrapper::tr(char const *, char const *, int)
+ ??_EGlxMLWrapper@@UAE@I@Z @ 32 NONAME ; GlxMLWrapper::~GlxMLWrapper(unsigned int)
+ ?setContextMode@GlxMLWrapper@@QAEXW4GlxContextMode@@@Z @ 33 NONAME ; void GlxMLWrapper::setContextMode(enum GlxContextMode)
+ ??1GlxMLWrapper@@UAE@XZ @ 34 NONAME ; GlxMLWrapper::~GlxMLWrapper(void)
+ ?RetrieveBitmap@GlxMLWrapper@@QAE?AVQVariant@@H@Z @ 35 NONAME ; class QVariant GlxMLWrapper::RetrieveBitmap(int)
+ ?qt_metacast@GlxMLWrapper@@UAEPAXPBD@Z @ 36 NONAME ; void * GlxMLWrapper::qt_metacast(char const *)
+ ?retrieveItemImage@GlxMLWrapper@@QAE?AVQImage@@HW4GlxTBContextType@@@Z @ 37 NONAME ; class QImage GlxMLWrapper::retrieveItemImage(int, enum GlxTBContextType)
+ ??0GlxMLWrapper@@QAE@HHW4TGlxFilterItemType@@VQString@@@Z @ 38 NONAME ; GlxMLWrapper::GlxMLWrapper(int, int, enum TGlxFilterItemType, class QString)
+ ?setSelectedIndex@GlxMLWrapper@@QAEXH@Z @ 39 NONAME ; void GlxMLWrapper::setSelectedIndex(int)
+ ?itemsAdded@GlxMLWrapper@@QAEXHH@Z @ 40 NONAME ; void GlxMLWrapper::itemsAdded(int, int)
+ ?retrieveItemIcon@GlxMLWrapper@@QAEPAVHbIcon@@HW4GlxTBContextType@@@Z @ 41 NONAME ; class HbIcon * GlxMLWrapper::retrieveItemIcon(int, enum GlxTBContextType)
--- a/ui/uiengine/eabi/glxmedialistwrapperu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/eabi/glxmedialistwrapperu.def Fri May 14 15:52:22 2010 +0300
@@ -6,34 +6,37 @@
_ZN12GlxMLWrapper11qt_metacastEPKc @ 5 NONAME
_ZN12GlxMLWrapper11removeItemsEii @ 6 NONAME
_ZN12GlxMLWrapper12getItemCountEv @ 7 NONAME
- _ZN12GlxMLWrapper12itemsRemovedEii @ 8 NONAME
- _ZN12GlxMLWrapper13itemCorruptedEi @ 9 NONAME
- _ZN12GlxMLWrapper13setFocusIndexEi @ 10 NONAME
- _ZN12GlxMLWrapper14RetrieveBitmapEi @ 11 NONAME
- _ZN12GlxMLWrapper14setContextModeE14GlxContextMode @ 12 NONAME
- _ZN12GlxMLWrapper15retrieveItemUriEi @ 13 NONAME
- _ZN12GlxMLWrapper16retrieveItemDateEi @ 14 NONAME
- _ZN12GlxMLWrapper16retrieveItemIconEi16GlxTBContextType @ 15 NONAME
- _ZN12GlxMLWrapper16setSelectedIndexEi @ 16 NONAME
- _ZN12GlxMLWrapper16staticMetaObjectE @ 17 NONAME DATA 16
- _ZN12GlxMLWrapper17handleIconCorruptEi @ 18 NONAME
- _ZN12GlxMLWrapper17retrieveListTitleEi @ 19 NONAME
- _ZN12GlxMLWrapper18handleGeneralErrorEi @ 20 NONAME
- _ZN12GlxMLWrapper18handleReceivedIconEi16GlxTBContextType @ 21 NONAME
- _ZN12GlxMLWrapper19getStaticMetaObjectEv @ 22 NONAME
- _ZN12GlxMLWrapper20retrieveListSubTitleEi @ 23 NONAME
- _ZN12GlxMLWrapper21getVisibleWindowIndexEv @ 24 NONAME
- _ZN12GlxMLWrapper21retrieveItemDimensionEi @ 25 NONAME
- _ZN12GlxMLWrapper21setVisibleWindowIndexEi @ 26 NONAME
- _ZN12GlxMLWrapper22retrieveItemFrameCountEi @ 27 NONAME
- _ZN12GlxMLWrapper23handleListItemAvailableEi @ 28 NONAME
- _ZN12GlxMLWrapperC1Eii18TGlxFilterItemType @ 29 NONAME
- _ZN12GlxMLWrapperC2Eii18TGlxFilterItemType @ 30 NONAME
- _ZN12GlxMLWrapperD0Ev @ 31 NONAME
- _ZN12GlxMLWrapperD1Ev @ 32 NONAME
- _ZN12GlxMLWrapperD2Ev @ 33 NONAME
- _ZNK12GlxMLWrapper10metaObjectEv @ 34 NONAME
- _ZNK12GlxMLWrapper13getFocusIndexEv @ 35 NONAME
- _ZTI12GlxMLWrapper @ 36 NONAME
- _ZTV12GlxMLWrapper @ 37 NONAME
+ _ZN12GlxMLWrapper12isSystemItemEi @ 8 NONAME
+ _ZN12GlxMLWrapper12itemsRemovedEii @ 9 NONAME
+ _ZN12GlxMLWrapper13itemCorruptedEi @ 10 NONAME
+ _ZN12GlxMLWrapper13setFocusIndexEi @ 11 NONAME
+ _ZN12GlxMLWrapper14RetrieveBitmapEi @ 12 NONAME
+ _ZN12GlxMLWrapper14setContextModeE14GlxContextMode @ 13 NONAME
+ _ZN12GlxMLWrapper15retrieveItemUriEi @ 14 NONAME
+ _ZN12GlxMLWrapper16retrieveItemDateEi @ 15 NONAME
+ _ZN12GlxMLWrapper16retrieveItemIconEi16GlxTBContextType @ 16 NONAME
+ _ZN12GlxMLWrapper16setSelectedIndexEi @ 17 NONAME
+ _ZN12GlxMLWrapper16staticMetaObjectE @ 18 NONAME DATA 16
+ _ZN12GlxMLWrapper17handleIconCorruptEi @ 19 NONAME
+ _ZN12GlxMLWrapper17retrieveItemImageEi16GlxTBContextType @ 20 NONAME
+ _ZN12GlxMLWrapper17retrieveListTitleEi @ 21 NONAME
+ _ZN12GlxMLWrapper18handleGeneralErrorEi @ 22 NONAME
+ _ZN12GlxMLWrapper18handleReceivedIconEi16GlxTBContextType @ 23 NONAME
+ _ZN12GlxMLWrapper19getStaticMetaObjectEv @ 24 NONAME
+ _ZN12GlxMLWrapper20retrieveListSubTitleEi @ 25 NONAME
+ _ZN12GlxMLWrapper21getVisibleWindowIndexEv @ 26 NONAME
+ _ZN12GlxMLWrapper21retrieveItemDimensionEi @ 27 NONAME
+ _ZN12GlxMLWrapper21retrieveListItemCountEi @ 28 NONAME
+ _ZN12GlxMLWrapper21setVisibleWindowIndexEi @ 29 NONAME
+ _ZN12GlxMLWrapper22retrieveItemFrameCountEi @ 30 NONAME
+ _ZN12GlxMLWrapper23handleListItemAvailableEi @ 31 NONAME
+ _ZN12GlxMLWrapperC1Eii18TGlxFilterItemType7QString @ 32 NONAME
+ _ZN12GlxMLWrapperC2Eii18TGlxFilterItemType7QString @ 33 NONAME
+ _ZN12GlxMLWrapperD0Ev @ 34 NONAME
+ _ZN12GlxMLWrapperD1Ev @ 35 NONAME
+ _ZN12GlxMLWrapperD2Ev @ 36 NONAME
+ _ZNK12GlxMLWrapper10metaObjectEv @ 37 NONAME
+ _ZNK12GlxMLWrapper13getFocusIndexEv @ 38 NONAME
+ _ZTI12GlxMLWrapper @ 39 NONAME
+ _ZTV12GlxMLWrapper @ 40 NONAME
--- a/ui/uiengine/medialists/bwins/glxmedialistsu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/bwins/glxmedialistsu.def Fri May 14 15:52:22 2010 +0300
@@ -40,88 +40,91 @@
?SetRange@TGlxSequentialIterator@@QAEXH@Z @ 39 NONAME ; void TGlxSequentialIterator::SetRange(int)
??1TGlxFromVisibleIndexOutwardListIterator@@QAE@XZ @ 40 NONAME ; TGlxFromVisibleIndexOutwardListIterator::~TGlxFromVisibleIndexOutwardListIterator(void)
?GetStaticItemCommand@TGlxMedia@@QBEHAAH@Z @ 41 NONAME ; int TGlxMedia::GetStaticItemCommand(int &) const
- ?SetRangeOffsets@TGlxFromManualIndexBlockyIterator@@QAEXHH@Z @ 42 NONAME ; void TGlxFromManualIndexBlockyIterator::SetRangeOffsets(int, int)
- ?SetIndex@TGlxFromManualIndexOutwardBlockyIterator@@QAEXH@Z @ 43 NONAME ; void TGlxFromManualIndexOutwardBlockyIterator::SetIndex(int)
- ?HandleModified@CGlxMedia@@QAEXABV?$RArray@VTMPXAttribute@@@@@Z @ 44 NONAME ; void CGlxMedia::HandleModified(class RArray<class TMPXAttribute> const &)
- ?GetLastModifiedDate@TGlxMedia@@QBEHAAVTTime@@@Z @ 45 NONAME ; int TGlxMedia::GetLastModifiedDate(class TTime &) const
- ?GetContainedItemCount@TGlxMedia@@QBEHAAH@Z @ 46 NONAME ; int TGlxMedia::GetContainedItemCount(int &) const
- ?SetRange@TGlxSelectionIterator@@QAEXH@Z @ 47 NONAME ; void TGlxSelectionIterator::SetRange(int)
- ?GetDimensions@TGlxMedia@@QBEHAAVTSize@@@Z @ 48 NONAME ; int TGlxMedia::GetDimensions(class TSize &) const
- ?GetDate@TGlxMedia@@QBEHAAVTTime@@@Z @ 49 NONAME ; int TGlxMedia::GetDate(class TTime &) const
- ?GetValueText@CGlxMedia@@QBEHAAVTPtrC16@@ABVTMPXAttribute@@@Z @ 50 NONAME ; int CGlxMedia::GetValueText(class TPtrC16 &, class TMPXAttribute const &) const
- ?SetTextValueL@CGlxMedia@@QAEXABVTMPXAttribute@@ABVTDesC16@@@Z @ 51 NONAME ; void CGlxMedia::SetTextValueL(class TMPXAttribute const &, class TDesC16 const &)
- ?SetDefaultSpec@CGlxAttributeContext@@QAEXHH@Z @ 52 NONAME ; void CGlxAttributeContext::SetDefaultSpec(int, int)
- ?IsStatic@TGlxMedia@@QBEHXZ @ 53 NONAME ; int TGlxMedia::IsStatic(void) const
- ??0CGlxListWindow@@QAE@AAVMGlxWindowObjectFactory@@@Z @ 54 NONAME ; CGlxListWindow::CGlxListWindow(class MGlxWindowObjectFactory &)
- ?AddSpecForItemL@CGlxThumbnailContext@@QAEXHHH@Z @ 55 NONAME ; void CGlxThumbnailContext::AddSpecForItemL(int, int, int)
- ??1CGlxDefaultAttributeContext@@UAE@XZ @ 56 NONAME ; CGlxDefaultAttributeContext::~CGlxDefaultAttributeContext(void)
- ?ThumbnailAttribute@TGlxMedia@@QBEPBVCGlxThumbnailAttribute@@AAVTMPXAttribute@@@Z @ 57 NONAME ; class CGlxThumbnailAttribute const * TGlxMedia::ThumbnailAttribute(class TMPXAttribute &) const
- ??1TGlxFirstThenLastIterator@@QAE@XZ @ 58 NONAME ; TGlxFirstThenLastIterator::~TGlxFirstThenLastIterator(void)
- ?Title@TGlxMedia@@QBEABVTDesC16@@XZ @ 59 NONAME ; class TDesC16 const & TGlxMedia::Title(void) const
- ??ETGlxSelectionIterator@@UAEHH@Z @ 60 NONAME ; int TGlxSelectionIterator::operator++(int)
- ?AddAttributeL@CGlxAttributeContext@@QAEXABVTMPXAttribute@@@Z @ 61 NONAME ; void CGlxAttributeContext::AddAttributeL(class TMPXAttribute const &)
- ?SetRangeOffsets@CGlxDefaultThumbnailContext@@QAEXHH@Z @ 62 NONAME ; void CGlxDefaultThumbnailContext::SetRangeOffsets(int, int)
- ?__DbgTestInvariant@CGlxStaticItemList@@QBEXXZ @ 63 NONAME ; void CGlxStaticItemList::__DbgTestInvariant(void) const
- ?GetDuration@TGlxMedia@@QBEHAAM@Z @ 64 NONAME ; int TGlxMedia::GetDuration(float &) const
- ?DeleteAttribute@CGlxMedia@@QAEXABVTMPXAttribute@@@Z @ 65 NONAME ; void CGlxMedia::DeleteAttribute(class TMPXAttribute const &)
- ?InstanceL@MGlxMediaList@@SAPAV1@ABVCMPXCollectionPath@@ABV?$TGlxId@VTGlxIdHierarchyBase@@@@PAVCMPXMedia@@@Z @ 66 NONAME ; class MGlxMediaList * MGlxMediaList::InstanceL(class CMPXCollectionPath const &, class TGlxId<class TGlxIdHierarchyBase> const &, class CMPXMedia *)
- ?SetCObjectValueL@CGlxMedia@@QAEXABVTMPXAttribute@@PAVCBase@@@Z @ 67 NONAME ; void CGlxMedia::SetCObjectValueL(class TMPXAttribute const &, class CBase *)
- ?RemoveObjects@CGlxListWindow@@QAEXHHHH@Z @ 68 NONAME ; void CGlxListWindow::RemoveObjects(int, int, int, int)
- ?Iterator@CGlxListWindow@@QBE?AVTGlxWindowIterator@@XZ @ 69 NONAME ; class TGlxWindowIterator CGlxListWindow::Iterator(void) const
- ?Category@TGlxMedia@@QBE?AW4TMPXGeneralCategory@@XZ @ 70 NONAME ; enum TMPXGeneralCategory TGlxMedia::Category(void) const
- ??0CGlxAttributeContext@@QAE@PAVMGlxMediaListIterator@@@Z @ 71 NONAME ; CGlxAttributeContext::CGlxAttributeContext(class MGlxMediaListIterator *)
- ?GetIconInfo@TGlxMedia@@QBEHAAUTIconInfo@@@Z @ 72 NONAME ; int TGlxMedia::GetIconInfo(struct TIconInfo &) const
- ?__DbgTestInvariant@CGlxItemList@@QBEXXZ @ 73 NONAME ; void CGlxItemList::__DbgTestInvariant(void) const
- ?AddObjects@CGlxListWindow@@QAEXHH@Z @ 74 NONAME ; void CGlxListWindow::AddObjects(int, int)
- ?Comment@TGlxMedia@@QBEABVTDesC16@@XZ @ 75 NONAME ; class TDesC16 const & TGlxMedia::Comment(void) const
- ?HasAttributeErrorL@GlxErrorManager@@SAHPBVCGlxMedia@@ABVTMPXAttribute@@@Z @ 76 NONAME ; int GlxErrorManager::HasAttributeErrorL(class CGlxMedia const *, class TMPXAttribute const &)
- ??0TGlxSequentialIterator@@QAE@XZ @ 77 NONAME ; TGlxSequentialIterator::TGlxSequentialIterator(void)
- ?AttributeCount@CGlxAttributeContext@@QAEHXZ @ 78 NONAME ; int CGlxAttributeContext::AttributeCount(void)
- ?GetDrmValidity@TGlxMedia@@QBEHAAW4TGlxMediaGeneralRightsValidity@@@Z @ 79 NONAME ; int TGlxMedia::GetDrmValidity(enum TGlxMediaGeneralRightsValidity &) const
- ?__DbgTestInvariant@CGlxNavigableList@@QBEXXZ @ 80 NONAME ; void CGlxNavigableList::__DbgTestInvariant(void) const
- ?SetFocusIndex@CGlxListWindow@@QAEXHH@Z @ 81 NONAME ; void CGlxListWindow::SetFocusIndex(int, int)
- ?SetValueL@CGlxMedia@@QAEXABVTMPXAttribute@@PAXW4TMPXAttributeType@@@Z @ 82 NONAME ; void CGlxMedia::SetValueL(class TMPXAttribute const &, void *, enum TMPXAttributeType)
- ?ValueText@CGlxMedia@@QBEABVTDesC16@@ABVTMPXAttribute@@@Z @ 83 NONAME ; class TDesC16 const & CGlxMedia::ValueText(class TMPXAttribute const &) const
- ??0CGlxMedia@@QAE@ABVTGlxMediaId@@@Z @ 84 NONAME ; CGlxMedia::CGlxMedia(class TGlxMediaId const &)
- ?DeleteLocationAttribute@TGlxMedia@@QAEXXZ @ 85 NONAME ; void TGlxMedia::DeleteLocationAttribute(void)
- ?GetClosestThumbnail@TGlxMedia@@QBEHAAVTMPXAttribute@@ABVTSize@@H@Z @ 86 NONAME ; int TGlxMedia::GetClosestThumbnail(class TMPXAttribute &, class TSize const &, int) const
- ??1CGlxMedia@@UAE@XZ @ 87 NONAME ; CGlxMedia::~CGlxMedia(void)
- ?__DbgTestInvariant@CGlxMedia@@QBEXXZ @ 88 NONAME ; void CGlxMedia::__DbgTestInvariant(void) const
- ?IsDrmProtected@TGlxMedia@@QBEHXZ @ 89 NONAME ; int TGlxMedia::IsDrmProtected(void) const
- ??1CGlxThumbnailContext@@UAE@XZ @ 90 NONAME ; CGlxThumbnailContext::~CGlxThumbnailContext(void)
- ?GetDrmProtected@TGlxMedia@@QBEHAAH@Z @ 91 NONAME ; int TGlxMedia::GetDrmProtected(int &) const
- ?GetSystemItem@TGlxMedia@@QBEHAAH@Z @ 92 NONAME ; int TGlxMedia::GetSystemItem(int &) const
- ?RemoveObjects@CGlxListWindow@@QAEXHH@Z @ 93 NONAME ; void CGlxListWindow::RemoveObjects(int, int)
- ?Close@TGlxFetchContextRemover@@QAEXXZ @ 94 NONAME ; void TGlxFetchContextRemover::Close(void)
- ?At@CGlxListWindow@@QBEPBVCBase@@H@Z @ 95 NONAME ; class CBase const * CGlxListWindow::At(int) const
- ?HasAttributeErrorL@GlxErrorManager@@SAHPBVCGlxMedia@@H@Z @ 96 NONAME ; int GlxErrorManager::HasAttributeErrorL(class CGlxMedia const *, int)
- ?At@CGlxListWindow@@QAEPAVCBase@@H@Z @ 97 NONAME ; class CBase * CGlxListWindow::At(int)
- ??1TGlxFromManualIndexBlockyIterator@@QAE@XZ @ 98 NONAME ; TGlxFromManualIndexBlockyIterator::~TGlxFromManualIndexBlockyIterator(void)
- ?RemoveAttribute@CGlxAttributeContext@@QAEXABVTMPXAttribute@@@Z @ 99 NONAME ; void CGlxAttributeContext::RemoveAttribute(class TMPXAttribute const &)
- ??1TGlxFromIndexOutwardBlockyIterator@@QAE@XZ @ 100 NONAME ; TGlxFromIndexOutwardBlockyIterator::~TGlxFromIndexOutwardBlockyIterator(void)
- ?ClosestThumbnail@GlxThumbnailUtility@@SAHABVTSize@@ABVCGlxMedia@@H@Z @ 101 NONAME ; int GlxThumbnailUtility::ClosestThumbnail(class TSize const &, class CGlxMedia const &, int)
- ??0TGlxFromManualIndexOutwardBlockyIterator@@QAE@XZ @ 102 NONAME ; TGlxFromManualIndexOutwardBlockyIterator::TGlxFromManualIndexOutwardBlockyIterator(void)
- ?Cleanup@CGlxListWindow@@QAEXXZ @ 103 NONAME ; void CGlxListWindow::Cleanup(void)
- ??1TGlxExclusionIterator@@QAE@XZ @ 104 NONAME ; TGlxExclusionIterator::~TGlxExclusionIterator(void)
- ??1CGlxDefaultListAttributeContext@@UAE@XZ @ 105 NONAME ; CGlxDefaultListAttributeContext::~CGlxDefaultListAttributeContext(void)
- ??1TGlxFetchContextRemover@@QAE@XZ @ 106 NONAME ; TGlxFetchContextRemover::~TGlxFetchContextRemover(void)
- ?SetRangeOffsets@TGlxFromVisibleIndexOutwardListIterator@@QAEXHH@Z @ 107 NONAME ; void TGlxFromVisibleIndexOutwardListIterator::SetRangeOffsets(int, int)
- ?SetDefaultSpec@CGlxThumbnailContext@@QAEXHH@Z @ 108 NONAME ; void CGlxThumbnailContext::SetDefaultSpec(int, int)
- ??0TGlxFromVisibleIndexOutwardListIterator@@QAE@XZ @ 109 NONAME ; TGlxFromVisibleIndexOutwardListIterator::TGlxFromVisibleIndexOutwardListIterator(void)
- ??0TGlxSpecificIdIterator@@QAE@ABV?$TGlxId@VTGlxIdSpaceIdBase@@@@VTGlxMediaId@@@Z @ 110 NONAME ; TGlxSpecificIdIterator::TGlxSpecificIdIterator(class TGlxId<class TGlxIdSpaceIdBase> const &, class TGlxMediaId)
- ?GetSlideshowPlayableContainedItemCount@TGlxMedia@@QBEHAAH@Z @ 111 NONAME ; int TGlxMedia::GetSlideshowPlayableContainedItemCount(int &) const
- ?MatchById@TGlxMedia@@SAHABV1@0@Z @ 112 NONAME ; int TGlxMedia::MatchById(class TGlxMedia const &, class TGlxMedia const &)
- ?SetRangeOffsetsL@CGlxListWindow@@QAEXHH@Z @ 113 NONAME ; void CGlxListWindow::SetRangeOffsetsL(int, int)
- ?SetRangeOffsets@CGlxDefaultListAttributeContext@@QAEXHH@Z @ 114 NONAME ; void CGlxDefaultListAttributeContext::SetRangeOffsets(int, int)
- ?MimeType@TGlxMedia@@QBEABVTDesC16@@XZ @ 115 NONAME ; class TDesC16 const & TGlxMedia::MimeType(void) const
- ?Uri@TGlxMedia@@QBEABVTDesC16@@XZ @ 116 NONAME ; class TDesC16 const & TGlxMedia::Uri(void) const
- ??0TGlxFirstThenLastIterator@@QAE@XZ @ 117 NONAME ; TGlxFirstThenLastIterator::TGlxFirstThenLastIterator(void)
- ??1CGlxAttributeContext@@UAE@XZ @ 118 NONAME ; CGlxAttributeContext::~CGlxAttributeContext(void)
- ?SetRangeOffsets@CGlxDefaultAttributeContext@@QAEXHH@Z @ 119 NONAME ; void CGlxDefaultAttributeContext::SetRangeOffsets(int, int)
- ?ValueCObject@CGlxMedia@@QBEPBVCBase@@ABVTMPXAttribute@@@Z @ 120 NONAME ; class CBase const * CGlxMedia::ValueCObject(class TMPXAttribute const &) const
- ?GetCoordinate@TGlxMedia@@QBEHAAVTCoordinate@@@Z @ 121 NONAME ; int TGlxMedia::GetCoordinate(class TCoordinate &) const
- ?NewL@CGlxDefaultThumbnailContext@@SAPAV1@XZ @ 122 NONAME ; class CGlxDefaultThumbnailContext * CGlxDefaultThumbnailContext::NewL(void)
- ?IsSlideShowPlayableContent@TGlxMedia@@QBEHXZ @ 123 NONAME ; int TGlxMedia::IsSlideShowPlayableContent(void) const
- ??1TGlxFromFocusOutwardIterator@@QAE@XZ @ 124 NONAME ; TGlxFromFocusOutwardIterator::~TGlxFromFocusOutwardIterator(void)
- ?InRange@TGlxSelectionIterator@@UBEHH@Z @ 125 NONAME ; int TGlxSelectionIterator::InRange(int) const
+ ??0TGlxScrollingDirectionIterator@@QAE@XZ @ 42 NONAME ; TGlxScrollingDirectionIterator::TGlxScrollingDirectionIterator(void)
+ ?SetRangeOffsets@TGlxFromManualIndexBlockyIterator@@QAEXHH@Z @ 43 NONAME ; void TGlxFromManualIndexBlockyIterator::SetRangeOffsets(int, int)
+ ?SetIndex@TGlxFromManualIndexOutwardBlockyIterator@@QAEXH@Z @ 44 NONAME ; void TGlxFromManualIndexOutwardBlockyIterator::SetIndex(int)
+ ?HandleModified@CGlxMedia@@QAEXABV?$RArray@VTMPXAttribute@@@@@Z @ 45 NONAME ; void CGlxMedia::HandleModified(class RArray<class TMPXAttribute> const &)
+ ?GetLastModifiedDate@TGlxMedia@@QBEHAAVTTime@@@Z @ 46 NONAME ; int TGlxMedia::GetLastModifiedDate(class TTime &) const
+ ?GetContainedItemCount@TGlxMedia@@QBEHAAH@Z @ 47 NONAME ; int TGlxMedia::GetContainedItemCount(int &) const
+ ?SetRange@TGlxSelectionIterator@@QAEXH@Z @ 48 NONAME ; void TGlxSelectionIterator::SetRange(int)
+ ?GetDimensions@TGlxMedia@@QBEHAAVTSize@@@Z @ 49 NONAME ; int TGlxMedia::GetDimensions(class TSize &) const
+ ?GetDate@TGlxMedia@@QBEHAAVTTime@@@Z @ 50 NONAME ; int TGlxMedia::GetDate(class TTime &) const
+ ?GetValueText@CGlxMedia@@QBEHAAVTPtrC16@@ABVTMPXAttribute@@@Z @ 51 NONAME ; int CGlxMedia::GetValueText(class TPtrC16 &, class TMPXAttribute const &) const
+ ?SetTextValueL@CGlxMedia@@QAEXABVTMPXAttribute@@ABVTDesC16@@@Z @ 52 NONAME ; void CGlxMedia::SetTextValueL(class TMPXAttribute const &, class TDesC16 const &)
+ ?SetDefaultSpec@CGlxAttributeContext@@QAEXHH@Z @ 53 NONAME ; void CGlxAttributeContext::SetDefaultSpec(int, int)
+ ?IsStatic@TGlxMedia@@QBEHXZ @ 54 NONAME ; int TGlxMedia::IsStatic(void) const
+ ??0CGlxListWindow@@QAE@AAVMGlxWindowObjectFactory@@@Z @ 55 NONAME ; CGlxListWindow::CGlxListWindow(class MGlxWindowObjectFactory &)
+ ?AddSpecForItemL@CGlxThumbnailContext@@QAEXHHH@Z @ 56 NONAME ; void CGlxThumbnailContext::AddSpecForItemL(int, int, int)
+ ??1CGlxDefaultAttributeContext@@UAE@XZ @ 57 NONAME ; CGlxDefaultAttributeContext::~CGlxDefaultAttributeContext(void)
+ ?ThumbnailAttribute@TGlxMedia@@QBEPBVCGlxThumbnailAttribute@@AAVTMPXAttribute@@@Z @ 58 NONAME ; class CGlxThumbnailAttribute const * TGlxMedia::ThumbnailAttribute(class TMPXAttribute &) const
+ ??1TGlxFirstThenLastIterator@@QAE@XZ @ 59 NONAME ; TGlxFirstThenLastIterator::~TGlxFirstThenLastIterator(void)
+ ?Title@TGlxMedia@@QBEABVTDesC16@@XZ @ 60 NONAME ; class TDesC16 const & TGlxMedia::Title(void) const
+ ??ETGlxSelectionIterator@@UAEHH@Z @ 61 NONAME ; int TGlxSelectionIterator::operator++(int)
+ ?AddAttributeL@CGlxAttributeContext@@QAEXABVTMPXAttribute@@@Z @ 62 NONAME ; void CGlxAttributeContext::AddAttributeL(class TMPXAttribute const &)
+ ?SetRangeOffsets@CGlxDefaultThumbnailContext@@QAEXHH@Z @ 63 NONAME ; void CGlxDefaultThumbnailContext::SetRangeOffsets(int, int)
+ ?__DbgTestInvariant@CGlxStaticItemList@@QBEXXZ @ 64 NONAME ; void CGlxStaticItemList::__DbgTestInvariant(void) const
+ ?GetDuration@TGlxMedia@@QBEHAAM@Z @ 65 NONAME ; int TGlxMedia::GetDuration(float &) const
+ ?SetRangeOffsets@TGlxScrollingDirectionIterator@@QAEXHH@Z @ 66 NONAME ; void TGlxScrollingDirectionIterator::SetRangeOffsets(int, int)
+ ?DeleteAttribute@CGlxMedia@@QAEXABVTMPXAttribute@@@Z @ 67 NONAME ; void CGlxMedia::DeleteAttribute(class TMPXAttribute const &)
+ ?InstanceL@MGlxMediaList@@SAPAV1@ABVCMPXCollectionPath@@ABV?$TGlxId@VTGlxIdHierarchyBase@@@@PAVCMPXMedia@@@Z @ 68 NONAME ; class MGlxMediaList * MGlxMediaList::InstanceL(class CMPXCollectionPath const &, class TGlxId<class TGlxIdHierarchyBase> const &, class CMPXMedia *)
+ ?SetCObjectValueL@CGlxMedia@@QAEXABVTMPXAttribute@@PAVCBase@@@Z @ 69 NONAME ; void CGlxMedia::SetCObjectValueL(class TMPXAttribute const &, class CBase *)
+ ?RemoveObjects@CGlxListWindow@@QAEXHHHH@Z @ 70 NONAME ; void CGlxListWindow::RemoveObjects(int, int, int, int)
+ ?Iterator@CGlxListWindow@@QBE?AVTGlxWindowIterator@@XZ @ 71 NONAME ; class TGlxWindowIterator CGlxListWindow::Iterator(void) const
+ ?Category@TGlxMedia@@QBE?AW4TMPXGeneralCategory@@XZ @ 72 NONAME ; enum TMPXGeneralCategory TGlxMedia::Category(void) const
+ ??0CGlxAttributeContext@@QAE@PAVMGlxMediaListIterator@@@Z @ 73 NONAME ; CGlxAttributeContext::CGlxAttributeContext(class MGlxMediaListIterator *)
+ ?GetIconInfo@TGlxMedia@@QBEHAAUTIconInfo@@@Z @ 74 NONAME ; int TGlxMedia::GetIconInfo(struct TIconInfo &) const
+ ?__DbgTestInvariant@CGlxItemList@@QBEXXZ @ 75 NONAME ; void CGlxItemList::__DbgTestInvariant(void) const
+ ?AddObjects@CGlxListWindow@@QAEXHH@Z @ 76 NONAME ; void CGlxListWindow::AddObjects(int, int)
+ ?Comment@TGlxMedia@@QBEABVTDesC16@@XZ @ 77 NONAME ; class TDesC16 const & TGlxMedia::Comment(void) const
+ ?HasAttributeErrorL@GlxErrorManager@@SAHPBVCGlxMedia@@ABVTMPXAttribute@@@Z @ 78 NONAME ; int GlxErrorManager::HasAttributeErrorL(class CGlxMedia const *, class TMPXAttribute const &)
+ ??0TGlxSequentialIterator@@QAE@XZ @ 79 NONAME ; TGlxSequentialIterator::TGlxSequentialIterator(void)
+ ?AttributeCount@CGlxAttributeContext@@QAEHXZ @ 80 NONAME ; int CGlxAttributeContext::AttributeCount(void)
+ ?GetDrmValidity@TGlxMedia@@QBEHAAW4TGlxMediaGeneralRightsValidity@@@Z @ 81 NONAME ; int TGlxMedia::GetDrmValidity(enum TGlxMediaGeneralRightsValidity &) const
+ ?__DbgTestInvariant@CGlxNavigableList@@QBEXXZ @ 82 NONAME ; void CGlxNavigableList::__DbgTestInvariant(void) const
+ ?SetFocusIndex@CGlxListWindow@@QAEXHH@Z @ 83 NONAME ; void CGlxListWindow::SetFocusIndex(int, int)
+ ?SetValueL@CGlxMedia@@QAEXABVTMPXAttribute@@PAXW4TMPXAttributeType@@@Z @ 84 NONAME ; void CGlxMedia::SetValueL(class TMPXAttribute const &, void *, enum TMPXAttributeType)
+ ?ValueText@CGlxMedia@@QBEABVTDesC16@@ABVTMPXAttribute@@@Z @ 85 NONAME ; class TDesC16 const & CGlxMedia::ValueText(class TMPXAttribute const &) const
+ ??0CGlxMedia@@QAE@ABVTGlxMediaId@@@Z @ 86 NONAME ; CGlxMedia::CGlxMedia(class TGlxMediaId const &)
+ ?DeleteLocationAttribute@TGlxMedia@@QAEXXZ @ 87 NONAME ; void TGlxMedia::DeleteLocationAttribute(void)
+ ?GetClosestThumbnail@TGlxMedia@@QBEHAAVTMPXAttribute@@ABVTSize@@H@Z @ 88 NONAME ; int TGlxMedia::GetClosestThumbnail(class TMPXAttribute &, class TSize const &, int) const
+ ??1CGlxMedia@@UAE@XZ @ 89 NONAME ; CGlxMedia::~CGlxMedia(void)
+ ?__DbgTestInvariant@CGlxMedia@@QBEXXZ @ 90 NONAME ; void CGlxMedia::__DbgTestInvariant(void) const
+ ?IsDrmProtected@TGlxMedia@@QBEHXZ @ 91 NONAME ; int TGlxMedia::IsDrmProtected(void) const
+ ??1CGlxThumbnailContext@@UAE@XZ @ 92 NONAME ; CGlxThumbnailContext::~CGlxThumbnailContext(void)
+ ?GetDrmProtected@TGlxMedia@@QBEHAAH@Z @ 93 NONAME ; int TGlxMedia::GetDrmProtected(int &) const
+ ?GetSystemItem@TGlxMedia@@QBEHAAH@Z @ 94 NONAME ; int TGlxMedia::GetSystemItem(int &) const
+ ?RemoveObjects@CGlxListWindow@@QAEXHH@Z @ 95 NONAME ; void CGlxListWindow::RemoveObjects(int, int)
+ ?Close@TGlxFetchContextRemover@@QAEXXZ @ 96 NONAME ; void TGlxFetchContextRemover::Close(void)
+ ?At@CGlxListWindow@@QBEPBVCBase@@H@Z @ 97 NONAME ; class CBase const * CGlxListWindow::At(int) const
+ ?HasAttributeErrorL@GlxErrorManager@@SAHPBVCGlxMedia@@H@Z @ 98 NONAME ; int GlxErrorManager::HasAttributeErrorL(class CGlxMedia const *, int)
+ ?At@CGlxListWindow@@QAEPAVCBase@@H@Z @ 99 NONAME ; class CBase * CGlxListWindow::At(int)
+ ??1TGlxFromManualIndexBlockyIterator@@QAE@XZ @ 100 NONAME ; TGlxFromManualIndexBlockyIterator::~TGlxFromManualIndexBlockyIterator(void)
+ ?RemoveAttribute@CGlxAttributeContext@@QAEXABVTMPXAttribute@@@Z @ 101 NONAME ; void CGlxAttributeContext::RemoveAttribute(class TMPXAttribute const &)
+ ??1TGlxFromIndexOutwardBlockyIterator@@QAE@XZ @ 102 NONAME ; TGlxFromIndexOutwardBlockyIterator::~TGlxFromIndexOutwardBlockyIterator(void)
+ ?ClosestThumbnail@GlxThumbnailUtility@@SAHABVTSize@@ABVCGlxMedia@@H@Z @ 103 NONAME ; int GlxThumbnailUtility::ClosestThumbnail(class TSize const &, class CGlxMedia const &, int)
+ ??0TGlxFromManualIndexOutwardBlockyIterator@@QAE@XZ @ 104 NONAME ; TGlxFromManualIndexOutwardBlockyIterator::TGlxFromManualIndexOutwardBlockyIterator(void)
+ ?Cleanup@CGlxListWindow@@QAEXXZ @ 105 NONAME ; void CGlxListWindow::Cleanup(void)
+ ??1TGlxScrollingDirectionIterator@@QAE@XZ @ 106 NONAME ; TGlxScrollingDirectionIterator::~TGlxScrollingDirectionIterator(void)
+ ??1TGlxExclusionIterator@@QAE@XZ @ 107 NONAME ; TGlxExclusionIterator::~TGlxExclusionIterator(void)
+ ??1CGlxDefaultListAttributeContext@@UAE@XZ @ 108 NONAME ; CGlxDefaultListAttributeContext::~CGlxDefaultListAttributeContext(void)
+ ??1TGlxFetchContextRemover@@QAE@XZ @ 109 NONAME ; TGlxFetchContextRemover::~TGlxFetchContextRemover(void)
+ ?SetRangeOffsets@TGlxFromVisibleIndexOutwardListIterator@@QAEXHH@Z @ 110 NONAME ; void TGlxFromVisibleIndexOutwardListIterator::SetRangeOffsets(int, int)
+ ?SetDefaultSpec@CGlxThumbnailContext@@QAEXHH@Z @ 111 NONAME ; void CGlxThumbnailContext::SetDefaultSpec(int, int)
+ ??0TGlxFromVisibleIndexOutwardListIterator@@QAE@XZ @ 112 NONAME ; TGlxFromVisibleIndexOutwardListIterator::TGlxFromVisibleIndexOutwardListIterator(void)
+ ??0TGlxSpecificIdIterator@@QAE@ABV?$TGlxId@VTGlxIdSpaceIdBase@@@@VTGlxMediaId@@@Z @ 113 NONAME ; TGlxSpecificIdIterator::TGlxSpecificIdIterator(class TGlxId<class TGlxIdSpaceIdBase> const &, class TGlxMediaId)
+ ?GetSlideshowPlayableContainedItemCount@TGlxMedia@@QBEHAAH@Z @ 114 NONAME ; int TGlxMedia::GetSlideshowPlayableContainedItemCount(int &) const
+ ?MatchById@TGlxMedia@@SAHABV1@0@Z @ 115 NONAME ; int TGlxMedia::MatchById(class TGlxMedia const &, class TGlxMedia const &)
+ ?SetRangeOffsetsL@CGlxListWindow@@QAEXHH@Z @ 116 NONAME ; void CGlxListWindow::SetRangeOffsetsL(int, int)
+ ?SetRangeOffsets@CGlxDefaultListAttributeContext@@QAEXHH@Z @ 117 NONAME ; void CGlxDefaultListAttributeContext::SetRangeOffsets(int, int)
+ ?MimeType@TGlxMedia@@QBEABVTDesC16@@XZ @ 118 NONAME ; class TDesC16 const & TGlxMedia::MimeType(void) const
+ ?Uri@TGlxMedia@@QBEABVTDesC16@@XZ @ 119 NONAME ; class TDesC16 const & TGlxMedia::Uri(void) const
+ ??0TGlxFirstThenLastIterator@@QAE@XZ @ 120 NONAME ; TGlxFirstThenLastIterator::TGlxFirstThenLastIterator(void)
+ ??1CGlxAttributeContext@@UAE@XZ @ 121 NONAME ; CGlxAttributeContext::~CGlxAttributeContext(void)
+ ?SetRangeOffsets@CGlxDefaultAttributeContext@@QAEXHH@Z @ 122 NONAME ; void CGlxDefaultAttributeContext::SetRangeOffsets(int, int)
+ ?ValueCObject@CGlxMedia@@QBEPBVCBase@@ABVTMPXAttribute@@@Z @ 123 NONAME ; class CBase const * CGlxMedia::ValueCObject(class TMPXAttribute const &) const
+ ?GetCoordinate@TGlxMedia@@QBEHAAVTCoordinate@@@Z @ 124 NONAME ; int TGlxMedia::GetCoordinate(class TCoordinate &) const
+ ?NewL@CGlxDefaultThumbnailContext@@SAPAV1@XZ @ 125 NONAME ; class CGlxDefaultThumbnailContext * CGlxDefaultThumbnailContext::NewL(void)
+ ?IsSlideShowPlayableContent@TGlxMedia@@QBEHXZ @ 126 NONAME ; int TGlxMedia::IsSlideShowPlayableContent(void) const
+ ??1TGlxFromFocusOutwardIterator@@QAE@XZ @ 127 NONAME ; TGlxFromFocusOutwardIterator::~TGlxFromFocusOutwardIterator(void)
+ ?InRange@TGlxSelectionIterator@@UBEHH@Z @ 128 NONAME ; int TGlxSelectionIterator::InRange(int) const
--- a/ui/uiengine/medialists/eabi/glxmedialistsu.def Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/eabi/glxmedialistsu.def Fri May 14 15:52:22 2010 +0300
@@ -85,121 +85,128 @@
_ZN28TGlxFromFocusOutwardIteratorC2Ev @ 84 NONAME
_ZN28TGlxFromFocusOutwardIteratorD1Ev @ 85 NONAME
_ZN28TGlxFromFocusOutwardIteratorD2Ev @ 86 NONAME
- _ZN31CGlxDefaultListAttributeContext15SetRangeOffsetsEii @ 87 NONAME
- _ZN31CGlxDefaultListAttributeContext4NewLEv @ 88 NONAME
- _ZN31CGlxDefaultListAttributeContextD0Ev @ 89 NONAME
- _ZN31CGlxDefaultListAttributeContextD1Ev @ 90 NONAME
- _ZN31CGlxDefaultListAttributeContextD2Ev @ 91 NONAME
- _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 92 NONAME
- _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 93 NONAME
- _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 94 NONAME
- _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 95 NONAME
- _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 96 NONAME
- _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 97 NONAME
- _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 98 NONAME
- _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 99 NONAME
- _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 100 NONAME
- _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 101 NONAME
- _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 102 NONAME
- _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 103 NONAME
- _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 104 NONAME
- _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 105 NONAME
- _ZN39TGlxFromVisibleIndexOutwardListIterator15SetRangeOffsetsEii @ 106 NONAME
- _ZN39TGlxFromVisibleIndexOutwardListIteratorC1Ev @ 107 NONAME
- _ZN39TGlxFromVisibleIndexOutwardListIteratorC2Ev @ 108 NONAME
- _ZN39TGlxFromVisibleIndexOutwardListIteratorD1Ev @ 109 NONAME
- _ZN39TGlxFromVisibleIndexOutwardListIteratorD2Ev @ 110 NONAME
- _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 111 NONAME
- _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 112 NONAME
- _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 113 NONAME
- _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 114 NONAME
- _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 115 NONAME
- _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 116 NONAME
- _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 117 NONAME
- _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 118 NONAME
- _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 119 NONAME
- _ZN9CGlxMedia5ResetEv @ 120 NONAME
- _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 121 NONAME
- _ZN9CGlxMediaC1ERK11TGlxMediaId @ 122 NONAME
- _ZN9CGlxMediaC2ERK11TGlxMediaId @ 123 NONAME
- _ZN9CGlxMediaD0Ev @ 124 NONAME
- _ZN9CGlxMediaD1Ev @ 125 NONAME
- _ZN9CGlxMediaD2Ev @ 126 NONAME
- _ZN9MGlxCache9InstanceLEv @ 127 NONAME
- _ZN9TGlxMedia23DeleteLocationAttributeEv @ 128 NONAME
- _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 129 NONAME
- _ZNK14CGlxListWindow2AtEi @ 130 NONAME
- _ZNK14CGlxListWindow8IteratorEv @ 131 NONAME
- _ZNK21TGlxSelectionIterator7InRangeEi @ 132 NONAME
- _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 133 NONAME
- _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 134 NONAME
- _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 135 NONAME
- _ZNK9TGlxMedia11GetDurationERf @ 136 NONAME
- _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 137 NONAME
- _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 138 NONAME
- _ZNK9TGlxMedia13GetDimensionsER5TSize @ 139 NONAME
- _ZNK9TGlxMedia13GetFrameCountERi @ 140 NONAME
- _ZNK9TGlxMedia13GetSystemItemERi @ 141 NONAME
- _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 142 NONAME
- _ZNK9TGlxMedia14IsDrmProtectedEv @ 143 NONAME
- _ZNK9TGlxMedia15GetDrmProtectedERi @ 144 NONAME
- _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 145 NONAME
- _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 146 NONAME
- _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 147 NONAME
- _ZNK9TGlxMedia20GetStaticItemCommandERi @ 148 NONAME
- _ZNK9TGlxMedia21GetContainedItemCountERi @ 149 NONAME
- _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 150 NONAME
- _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 151 NONAME
- _ZNK9TGlxMedia3UriEv @ 152 NONAME
- _ZNK9TGlxMedia5TitleEv @ 153 NONAME
- _ZNK9TGlxMedia7CommentEv @ 154 NONAME
- _ZNK9TGlxMedia7GetDateER5TTime @ 155 NONAME
- _ZNK9TGlxMedia7GetSizeERi @ 156 NONAME
- _ZNK9TGlxMedia8CategoryEv @ 157 NONAME
- _ZNK9TGlxMedia8IsStaticEv @ 158 NONAME
- _ZNK9TGlxMedia8MimeTypeEv @ 159 NONAME
- _ZNK9TGlxMedia8SubTitleEv @ 160 NONAME
- _ZNK9TGlxMedia9IdSpaceIdEv @ 161 NONAME
- _ZTI13CGlxMediaList @ 162 NONAME
- _ZTI14CGlxListWindow @ 163 NONAME
- _ZTI15CGlxImageReader @ 164 NONAME
- _ZTI16CGlxCacheManager @ 165 NONAME
- _ZTI20CGlxAttributeContext @ 166 NONAME
- _ZTI20CGlxGarbageCollector @ 167 NONAME
- _ZTI20CGlxThumbnailContext @ 168 NONAME
- _ZTI21TGlxExclusionIterator @ 169 NONAME
- _ZTI21TGlxSelectionIterator @ 170 NONAME
- _ZTI22TGlxSequentialIterator @ 171 NONAME
- _ZTI22TGlxSpecificIdIterator @ 172 NONAME
- _ZTI25TGlxFirstThenLastIterator @ 173 NONAME
- _ZTI27CGlxDefaultAttributeContext @ 174 NONAME
- _ZTI27CGlxDefaultThumbnailContext @ 175 NONAME
- _ZTI28TGlxFromFocusOutwardIterator @ 176 NONAME
- _ZTI31CGlxDefaultListAttributeContext @ 177 NONAME
- _ZTI33TGlxFromManualIndexBlockyIterator @ 178 NONAME
- _ZTI34TGlxFromFocusOutwardBlockyIterator @ 179 NONAME
- _ZTI34TGlxFromIndexOutwardBlockyIterator @ 180 NONAME
- _ZTI39TGlxFromVisibleIndexOutwardListIterator @ 181 NONAME
- _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 182 NONAME
- _ZTV13CGlxMediaList @ 183 NONAME
- _ZTV14CGlxListWindow @ 184 NONAME
- _ZTV15CGlxImageReader @ 185 NONAME
- _ZTV16CGlxCacheManager @ 186 NONAME
- _ZTV20CGlxAttributeContext @ 187 NONAME
- _ZTV20CGlxGarbageCollector @ 188 NONAME
- _ZTV20CGlxThumbnailContext @ 189 NONAME
- _ZTV21TGlxExclusionIterator @ 190 NONAME
- _ZTV21TGlxSelectionIterator @ 191 NONAME
- _ZTV22TGlxSequentialIterator @ 192 NONAME
- _ZTV22TGlxSpecificIdIterator @ 193 NONAME
- _ZTV25TGlxFirstThenLastIterator @ 194 NONAME
- _ZTV27CGlxDefaultAttributeContext @ 195 NONAME
- _ZTV27CGlxDefaultThumbnailContext @ 196 NONAME
- _ZTV28TGlxFromFocusOutwardIterator @ 197 NONAME
- _ZTV31CGlxDefaultListAttributeContext @ 198 NONAME
- _ZTV33TGlxFromManualIndexBlockyIterator @ 199 NONAME
- _ZTV34TGlxFromFocusOutwardBlockyIterator @ 200 NONAME
- _ZTV34TGlxFromIndexOutwardBlockyIterator @ 201 NONAME
- _ZTV39TGlxFromVisibleIndexOutwardListIterator @ 202 NONAME
- _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 203 NONAME
+ _ZN30TGlxScrollingDirectionIterator15SetRangeOffsetsEii @ 87 NONAME
+ _ZN30TGlxScrollingDirectionIteratorC1Ev @ 88 NONAME
+ _ZN30TGlxScrollingDirectionIteratorC2Ev @ 89 NONAME
+ _ZN30TGlxScrollingDirectionIteratorD1Ev @ 90 NONAME
+ _ZN30TGlxScrollingDirectionIteratorD2Ev @ 91 NONAME
+ _ZN31CGlxDefaultListAttributeContext15SetRangeOffsetsEii @ 92 NONAME
+ _ZN31CGlxDefaultListAttributeContext4NewLEv @ 93 NONAME
+ _ZN31CGlxDefaultListAttributeContextD0Ev @ 94 NONAME
+ _ZN31CGlxDefaultListAttributeContextD1Ev @ 95 NONAME
+ _ZN31CGlxDefaultListAttributeContextD2Ev @ 96 NONAME
+ _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 97 NONAME
+ _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 98 NONAME
+ _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 99 NONAME
+ _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 100 NONAME
+ _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 101 NONAME
+ _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 102 NONAME
+ _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 103 NONAME
+ _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 104 NONAME
+ _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 105 NONAME
+ _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 106 NONAME
+ _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 107 NONAME
+ _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 108 NONAME
+ _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 109 NONAME
+ _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 110 NONAME
+ _ZN39TGlxFromVisibleIndexOutwardListIterator15SetRangeOffsetsEii @ 111 NONAME
+ _ZN39TGlxFromVisibleIndexOutwardListIteratorC1Ev @ 112 NONAME
+ _ZN39TGlxFromVisibleIndexOutwardListIteratorC2Ev @ 113 NONAME
+ _ZN39TGlxFromVisibleIndexOutwardListIteratorD1Ev @ 114 NONAME
+ _ZN39TGlxFromVisibleIndexOutwardListIteratorD2Ev @ 115 NONAME
+ _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 116 NONAME
+ _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 117 NONAME
+ _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 118 NONAME
+ _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 119 NONAME
+ _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 120 NONAME
+ _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 121 NONAME
+ _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 122 NONAME
+ _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 123 NONAME
+ _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 124 NONAME
+ _ZN9CGlxMedia5ResetEv @ 125 NONAME
+ _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 126 NONAME
+ _ZN9CGlxMediaC1ERK11TGlxMediaId @ 127 NONAME
+ _ZN9CGlxMediaC2ERK11TGlxMediaId @ 128 NONAME
+ _ZN9CGlxMediaD0Ev @ 129 NONAME
+ _ZN9CGlxMediaD1Ev @ 130 NONAME
+ _ZN9CGlxMediaD2Ev @ 131 NONAME
+ _ZN9MGlxCache9InstanceLEv @ 132 NONAME
+ _ZN9TGlxMedia23DeleteLocationAttributeEv @ 133 NONAME
+ _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 134 NONAME
+ _ZNK14CGlxListWindow2AtEi @ 135 NONAME
+ _ZNK14CGlxListWindow8IteratorEv @ 136 NONAME
+ _ZNK21TGlxSelectionIterator7InRangeEi @ 137 NONAME
+ _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 138 NONAME
+ _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 139 NONAME
+ _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 140 NONAME
+ _ZNK9TGlxMedia11GetDurationERf @ 141 NONAME
+ _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 142 NONAME
+ _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 143 NONAME
+ _ZNK9TGlxMedia13GetDimensionsER5TSize @ 144 NONAME
+ _ZNK9TGlxMedia13GetFrameCountERi @ 145 NONAME
+ _ZNK9TGlxMedia13GetSystemItemERi @ 146 NONAME
+ _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 147 NONAME
+ _ZNK9TGlxMedia14IsDrmProtectedEv @ 148 NONAME
+ _ZNK9TGlxMedia15GetDrmProtectedERi @ 149 NONAME
+ _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 150 NONAME
+ _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 151 NONAME
+ _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 152 NONAME
+ _ZNK9TGlxMedia20GetStaticItemCommandERi @ 153 NONAME
+ _ZNK9TGlxMedia21GetContainedItemCountERi @ 154 NONAME
+ _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 155 NONAME
+ _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 156 NONAME
+ _ZNK9TGlxMedia3UriEv @ 157 NONAME
+ _ZNK9TGlxMedia5TitleEv @ 158 NONAME
+ _ZNK9TGlxMedia7CommentEv @ 159 NONAME
+ _ZNK9TGlxMedia7GetDateER5TTime @ 160 NONAME
+ _ZNK9TGlxMedia7GetSizeERi @ 161 NONAME
+ _ZNK9TGlxMedia8CategoryEv @ 162 NONAME
+ _ZNK9TGlxMedia8IsStaticEv @ 163 NONAME
+ _ZNK9TGlxMedia8MimeTypeEv @ 164 NONAME
+ _ZNK9TGlxMedia8SubTitleEv @ 165 NONAME
+ _ZNK9TGlxMedia9IdSpaceIdEv @ 166 NONAME
+ _ZTI13CGlxMediaList @ 167 NONAME
+ _ZTI14CGlxListWindow @ 168 NONAME
+ _ZTI15CGlxImageReader @ 169 NONAME
+ _ZTI16CGlxCacheManager @ 170 NONAME
+ _ZTI20CGlxAttributeContext @ 171 NONAME
+ _ZTI20CGlxGarbageCollector @ 172 NONAME
+ _ZTI20CGlxThumbnailContext @ 173 NONAME
+ _ZTI21TGlxExclusionIterator @ 174 NONAME
+ _ZTI21TGlxSelectionIterator @ 175 NONAME
+ _ZTI22TGlxSequentialIterator @ 176 NONAME
+ _ZTI22TGlxSpecificIdIterator @ 177 NONAME
+ _ZTI25TGlxFirstThenLastIterator @ 178 NONAME
+ _ZTI27CGlxDefaultAttributeContext @ 179 NONAME
+ _ZTI27CGlxDefaultThumbnailContext @ 180 NONAME
+ _ZTI28TGlxFromFocusOutwardIterator @ 181 NONAME
+ _ZTI30TGlxScrollingDirectionIterator @ 182 NONAME
+ _ZTI31CGlxDefaultListAttributeContext @ 183 NONAME
+ _ZTI33TGlxFromManualIndexBlockyIterator @ 184 NONAME
+ _ZTI34TGlxFromFocusOutwardBlockyIterator @ 185 NONAME
+ _ZTI34TGlxFromIndexOutwardBlockyIterator @ 186 NONAME
+ _ZTI39TGlxFromVisibleIndexOutwardListIterator @ 187 NONAME
+ _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 188 NONAME
+ _ZTV13CGlxMediaList @ 189 NONAME
+ _ZTV14CGlxListWindow @ 190 NONAME
+ _ZTV15CGlxImageReader @ 191 NONAME
+ _ZTV16CGlxCacheManager @ 192 NONAME
+ _ZTV20CGlxAttributeContext @ 193 NONAME
+ _ZTV20CGlxGarbageCollector @ 194 NONAME
+ _ZTV20CGlxThumbnailContext @ 195 NONAME
+ _ZTV21TGlxExclusionIterator @ 196 NONAME
+ _ZTV21TGlxSelectionIterator @ 197 NONAME
+ _ZTV22TGlxSequentialIterator @ 198 NONAME
+ _ZTV22TGlxSpecificIdIterator @ 199 NONAME
+ _ZTV25TGlxFirstThenLastIterator @ 200 NONAME
+ _ZTV27CGlxDefaultAttributeContext @ 201 NONAME
+ _ZTV27CGlxDefaultThumbnailContext @ 202 NONAME
+ _ZTV28TGlxFromFocusOutwardIterator @ 203 NONAME
+ _ZTV30TGlxScrollingDirectionIterator @ 204 NONAME
+ _ZTV31CGlxDefaultListAttributeContext @ 205 NONAME
+ _ZTV33TGlxFromManualIndexBlockyIterator @ 206 NONAME
+ _ZTV34TGlxFromFocusOutwardBlockyIterator @ 207 NONAME
+ _ZTV34TGlxFromIndexOutwardBlockyIterator @ 208 NONAME
+ _ZTV39TGlxFromVisibleIndexOutwardListIterator @ 209 NONAME
+ _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 210 NONAME
--- a/ui/uiengine/medialists/group/glxmedialists.mmp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/group/glxmedialists.mmp Fri May 14 15:52:22 2010 +0300
@@ -70,7 +70,7 @@
// if you comment the lines below out, Photos dB will be used for thumbnail fetching
MACRO USE_S60_TNM
-MACRO MEDIA_ID_BASED_TN_FETCH_ENABLED
+// MACRO MEDIA_ID_BASED_TN_FETCH_ENABLED
#define USE_S60_TNM
LIBRARY avkon.lib // CAknView
--- a/ui/uiengine/medialists/inc/glxmedialist.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/inc/glxmedialist.h Fri May 14 15:52:22 2010 +0300
@@ -180,6 +180,9 @@
/// See @ref MGlxMediaList::CancelCommand
void CancelCommand();
+
+ /// See @ref MGlxMediaList::IsCommandActive
+ TBool IsCommandActive();
/// See @ref MGlxMediaList::SetFilterL
void SetFilterL(CMPXFilter* aFilter);
--- a/ui/uiengine/medialists/inc/glxmedialistiterator.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/inc/glxmedialistiterator.h Fri May 14 15:52:22 2010 +0300
@@ -554,5 +554,64 @@
const MGlxMediaList* iList;
};
+/**
+ * TGlxScrollingDirectionIterator
+ *
+ * Ordered that returns the index of the visible window item based on ScrollDirection
+ */
+class TGlxScrollingDirectionIterator : public MGlxMediaListIterator
+ {
+
+public:
+
+ IMPORT_C ~TGlxScrollingDirectionIterator( );
+ IMPORT_C TGlxScrollingDirectionIterator( );
+
+ /**
+ * Set the range offsets
+ */
+ IMPORT_C void SetRangeOffsets(TInt aRearOffset, TInt aFrontOffset);
+
+ // From MGlxMediaListIterator
+ virtual void SetToFirst(const MGlxMediaList* aList);
+ virtual TInt operator++(TInt);
+ virtual TBool InRange(TInt aIndex) const;
+
+private:
+
+ enum TMovingDirection
+ {
+ EForward,
+ EBackward,
+ EIdle
+ };
+
+ /**
+ * The count or ordinal of the item that is currently "selected"
+ * This translates to how many times ++ has been called
+ */
+ TInt iCurrentItem;
+
+ /**
+ * Number of items within range after visible index
+ */
+ TInt iFrontOffset;
+
+ /**
+ * Number of items within range before visible index
+ */
+ TInt iRearOffset;
+
+ TInt iDefaultVisItems;
+ TMovingDirection iMovingDirection;
+ TInt iExVisindex;
+
+protected:
+ /**
+ * List being traversed
+ */
+ const MGlxMediaList* iList;
+ };
+
#endif // __C_GLXMEDIALISTITERATOR_H__
--- a/ui/uiengine/medialists/inc/glxthumbnailcontext.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/inc/glxthumbnailcontext.h Fri May 14 15:52:22 2010 +0300
@@ -31,7 +31,7 @@
class CGlxAttributeContext;
class CGlxDRMUtility;
class CGlxResolutionUtility;
-class MGlxCache;
+//class MGlxCache;
class MGlxMediaList;
class TGlxMedia;
@@ -207,7 +207,7 @@
MGlxMediaListIterator* iIterator;
/** Cache manager interface (owned) */
- MGlxCache* iCache;
+ //MGlxCache* iCache;
/** Utility to translate between pixels and poss units */
CGlxResolutionUtility* iResolutionUtility;
--- a/ui/uiengine/medialists/inc/mglxmedialist.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/inc/mglxmedialist.h Fri May 14 15:52:22 2010 +0300
@@ -223,6 +223,11 @@
* Cancels a command on the collection
*/
virtual void CancelCommand() = 0;
+
+ /**
+ * Checks if a command is active or not
+ */
+ virtual TBool IsCommandActive()= 0;
/**
* Sets a filter on the collection. The filter will replace any existing
--- a/ui/uiengine/medialists/src/glxcachemanager.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/src/glxcachemanager.cpp Fri May 14 15:52:22 2010 +0300
@@ -620,7 +620,8 @@
}
else
{
- iTnEngine->SetQualityPreferenceL(CThumbnailManager::EOptimizeForQualityWithPreview);
+ //iTnEngine->SetQualityPreferenceL(CThumbnailManager::EOptimizeForQualityWithPreview);
+ iTnEngine->SetQualityPreferenceL(CThumbnailManager::EOptimizeForPerformance);
GLX_DEBUG1("MaintainCacheL() - Fetch TN attrib - EOptimizeForQualityWithPreview");
}
@@ -707,7 +708,9 @@
{
CGlxImageViewerManager *imageVwrMgr = CGlxImageViewerManager::InstanceL();
CleanupClosePushL(*imageVwrMgr);
+#ifdef _DEBUG
TInt mediaCnt = list->Count();
+#endif
TInt errInImage = KErrNone;
--- a/ui/uiengine/medialists/src/glxlistutils.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/src/glxlistutils.cpp Fri May 14 15:52:22 2010 +0300
@@ -61,7 +61,8 @@
//Need to replace with KGlxDefaultVisibleItemsGranularity after
//getting the feature flag.
TInt ret = KGlxVGAVisibleItemsGranularity;
- FeatureManager::InitializeLibL();
+// for 10.1 we need it to be 21,
+ /*FeatureManager::InitializeLibL();
if (FeatureManager::FeatureSupported( KFeatureIdLayout640_360_Touch ) ||
FeatureManager::FeatureSupported( KFeatureIdLayout360_640_Touch ))
@@ -75,6 +76,6 @@
{
ret = KGlxVGAVisibleItemsGranularity;
}
- FeatureManager::UnInitializeLib();
+ FeatureManager::UnInitializeLib(); */
return ret;
}
--- a/ui/uiengine/medialists/src/glxmedialist.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/src/glxmedialist.cpp Fri May 14 15:52:22 2010 +0300
@@ -866,6 +866,24 @@
}
// -----------------------------------------------------------------------------
+// Checks if a command is active or not
+// -----------------------------------------------------------------------------
+TBool CGlxMediaList::IsCommandActive()
+ {
+ TRACER("CGlxMediaList::IsCommandActive");
+
+ if(iCommandPending)
+ {
+ return ETrue;
+ }
+ else
+ {
+ return EFalse;
+ }
+ }
+
+
+// -----------------------------------------------------------------------------
// Cancels a command on the collection
// -----------------------------------------------------------------------------
void CGlxMediaList::CancelCommand()
--- a/ui/uiengine/medialists/src/glxmedialistiterator.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/src/glxmedialistiterator.cpp Fri May 14 15:52:22 2010 +0300
@@ -1212,3 +1212,152 @@
return aIndex <= lastInRange || aIndex >= firstInRange;
}
}
+
+// -----------------------------------------------------------------------------
+// Constructor
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TGlxScrollingDirectionIterator::TGlxScrollingDirectionIterator( )
+ {
+ TRACER("TGlxScrollingDirectionIterator::TGlxScrollingDirectionIterator");
+ iMovingDirection = EForward;
+ iExVisindex = 0;
+ iDefaultVisItems = GlxListUtils::VisibleItemsGranularityL();
+ iCurrentItem = 0;
+ iFrontOffset = 4 * iDefaultVisItems;
+ iRearOffset = 2 * iDefaultVisItems; // Rear Is Not Handled Yet, We Need To ?
+ iList = NULL;
+ }
+
+// -----------------------------------------------------------------------------
+// Destructor
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TGlxScrollingDirectionIterator::~TGlxScrollingDirectionIterator()
+ {
+ TRACER("TGlxScrollingDirectionIterator::~TGlxScrollingDirectionIterator");
+
+ }
+
+// ----------------------------------------------------------------------------
+// Set range offsets
+// ----------------------------------------------------------------------------
+//
+EXPORT_C void TGlxScrollingDirectionIterator::SetRangeOffsets(TInt aRearOffset,
+ TInt aFrontOffset)
+ {
+ TRACER("TGlxScrollingDirectionIterator::SetRangeOffsets");
+
+ __ASSERT_DEBUG(aRearOffset >= 0 && aFrontOffset >= 0, Panic(EGlxPanicIllegalArgument));
+ iFrontOffset = Max(aFrontOffset, iDefaultVisItems );
+ iRearOffset = Max(aRearOffset, iDefaultVisItems );
+ }
+
+// -----------------------------------------------------------------------------
+// Set to first item
+// -----------------------------------------------------------------------------
+//
+void TGlxScrollingDirectionIterator::SetToFirst(const MGlxMediaList* aList)
+ {
+ TRACER("TGlxScrollingDirectionIterator::SetToFirst");
+ __ASSERT_DEBUG(aList != NULL, Panic(EGlxPanicNullPointer));
+
+ iList = aList;
+ iCurrentItem = 0;
+ }
+
+// -----------------------------------------------------------------------------
+// Return the item index or KErrNotFound, and goes to next
+// -----------------------------------------------------------------------------
+//
+TInt TGlxScrollingDirectionIterator::operator++(TInt)
+ {
+ TRACER("TGlxScrollingDirectionIterator::operator++");
+ __ASSERT_DEBUG(iList != NULL, Panic(EGlxPanicNullPointer));
+
+ TInt listCount = iList->Count();
+ TInt index = iList->VisibleWindowIndex();
+ __ASSERT_ALWAYS( index >= 0 && index <= listCount, Panic( EGlxPanicIllegalState ) );
+
+ if (listCount <= 0 || iFrontOffset + iRearOffset < iCurrentItem || listCount <= iCurrentItem)
+ {
+ return KErrNotFound;
+ }
+
+ if(iExVisindex < index)
+ {
+ iMovingDirection = EForward;
+ iExVisindex = index;
+ }
+ else if(iExVisindex > index)
+ {
+ iMovingDirection = EBackward;
+ iExVisindex = index;
+ }
+
+ if(EForward == iMovingDirection)
+ {
+ if ((index + iCurrentItem < index + iFrontOffset) && (index + iCurrentItem < listCount))
+ {
+ index += iCurrentItem;
+ }
+ else
+ {
+ return KErrNotFound;
+ }
+ }
+ else
+ {
+ if((index + iDefaultVisItems - iCurrentItem > index + iDefaultVisItems - iFrontOffset) && (index + iDefaultVisItems - iCurrentItem < listCount))
+ {
+ index += iDefaultVisItems - iCurrentItem;
+ }
+ else
+ {
+ return KErrNotFound;
+ }
+ }
+
+ iCurrentItem++;
+
+ // The index may be below 0 or above count. Normalise back to list indexes.
+ return GlxListUtils::NormalizedIndex(index, listCount);
+ }
+
+// -----------------------------------------------------------------------------
+// Return ETrue if index is within range, EFalse otherwise,
+// -----------------------------------------------------------------------------
+//
+TBool TGlxScrollingDirectionIterator::InRange(TInt aIndex) const
+ {
+ TRACER("TGlxScrollingDirectionIterator::InRange");
+
+ // Rear Window is Not Handled yet , Still We include Rear window in Consideration for Garbage Collection
+ // Need to Re-Visit
+ TInt count = iList->Count();
+
+ // Handle the case where range is longer than count separately, because looping will
+ // confuse otherwise
+ if (count <= iRearOffset + iFrontOffset)
+ {
+ // Range is longer than count, must be in range
+ return ETrue;
+ }
+
+ TInt index = iList->VisibleWindowIndex();
+ __ASSERT_ALWAYS( index >= 0 && index < iList->Count(), Panic( EGlxPanicIllegalState ) );
+
+ TInt firstInRange = GlxListUtils::NormalizedIndex(index - iRearOffset, count);
+ TInt lastInRange = GlxListUtils::NormalizedIndex(index + iFrontOffset, count);
+
+ if (firstInRange <= lastInRange)
+ {
+ // Normal case: | F-------L |
+ return aIndex >= firstInRange && aIndex <= lastInRange;
+ }
+ else
+ {
+ // Looping case: |----L F----|
+ return aIndex <= lastInRange || aIndex >= firstInRange;
+ }
+ }
--- a/ui/uiengine/medialists/src/glxthumbnailcontext.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialists/src/glxthumbnailcontext.cpp Fri May 14 15:52:22 2010 +0300
@@ -32,7 +32,7 @@
#include "glxmedialist.h"
#include "glxerrormanager.h"
#include "glxthumbnailutility.h"
-#include "mglxcache.h"
+//#include "mglxcache.h"
#include "glxlistutils.h"
/**
@@ -81,7 +81,7 @@
{
TRACER( "CGlxThumbnailContext::ConstructL");
- iCache = MGlxCache::InstanceL();
+ //iCache = MGlxCache::InstanceL();
iResolutionUtility = CGlxResolutionUtility::InstanceL();
// iResolutionUtility->AddObserverL( *this );
@@ -136,10 +136,10 @@
iResolutionUtility->Close();
}
- if ( iCache )
+ /*if ( iCache )
{
iCache->Close();
- }
+ }*/
}
// -----------------------------------------------------------------------------
@@ -224,10 +224,11 @@
TBool drmValid = EFalse;
TSize size = iDefaultSpecSize;
const TGlxMedia& item( aList->Item( aListIndex ) );
- if( item.GetDrmProtected(drmValid) && drmValid)
+ // DRM is Not Valid yet, can use it if its valid
+ /*if( item.GetDrmProtected(drmValid) && drmValid)
{
drmValid = CheckDRMStatusL( aListIndex, aList, size );
- }
+ }*/
TLinearOrder<TMPXAttribute> orderer (&CGlxMediaList::AttributeOrder);
// Always want high quality thumbnail
@@ -286,12 +287,12 @@
GLX_DEBUG2("CGlxThumbnailContext::AttributeRequestL() listIndex=%d", listIndex);
const TGlxMedia& item = aList->Item( listIndex );
TSize size = iDefaultSpecSize;
-
- TBool drmValid = EFalse;
+ // DRM is Not Valid yet, can use it if its valid
+ /*TBool drmValid = EFalse;
if( item.GetDrmProtected(drmValid) && drmValid)
{
CheckDRMStatusL( listIndex, aList, size );
- }
+ }*/
// Request high quality thumbnail if already have any thumbnail
TBool quality = iHighQualityOnly
@@ -440,12 +441,12 @@
if ( properties )
{
TSize size = iDefaultSpecSize;
-
- TBool drmValid = EFalse;
+ // DRM is Not Valid yet, can use it if its valid
+ /*TBool drmValid = EFalse;
if( item.GetDrmProtected(drmValid) && drmValid)
{
CheckDRMStatusL( aListIndex, aList, size );
- }
+ }*/
// Want high quality thumbnail if already have any thumbnail
TBool quality = iHighQualityOnly || thumbnail;
--- a/ui/uiengine/medialistwrapper/inc/glxmlwrapper.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialistwrapper/inc/glxmlwrapper.h Fri May 14 15:52:22 2010 +0300
@@ -33,6 +33,7 @@
class GlxMLWrapperPrivate;
class HbIcon;
class CFbsBitmap;
+class QImage;
//constant declarations
@@ -42,7 +43,7 @@
#define GLX_MLWRAPPER_EXPORT Q_DECL_IMPORT
#endif
-Q_DECLARE_METATYPE(CFbsBitmap*);
+Q_DECLARE_METATYPE(CFbsBitmap*)
class GLX_MLWRAPPER_EXPORT GlxMLWrapper : public QObject
{
@@ -51,7 +52,7 @@
/**
*constructor
*/
- GlxMLWrapper(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType);
+ GlxMLWrapper(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri = NULL);
/**
*destructor
**/
@@ -68,6 +69,7 @@
* retrieveItemIcon()
*/
HbIcon* retrieveItemIcon(int index, GlxTBContextType aTBContextType);
+ QImage retrieveItemImage(int index, GlxTBContextType aTBContextType);
void itemsAdded(int startIndex,int endIndex);
void itemsRemoved(int startIndex,int endIndex);
void handleReceivedIcon(int itemIndex, GlxTBContextType tbContextType);
@@ -93,6 +95,16 @@
* @param1 index
*/
QVariant RetrieveBitmap(int index);
+ /*
+ * retrieveListItemCount helps to retrive the number of images in the album
+ * @param1 index
+ */
+ int retrieveListItemCount(int index);
+ /*
+ * isSystemItem helps to get the system item information
+ * @param1 index
+ */
+ bool isSystemItem( int aItemIndex );
signals:
void updateItem(int index, GlxTBContextType tbContextType);
--- a/ui/uiengine/medialistwrapper/inc/glxmlwrapper_p.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialistwrapper/inc/glxmlwrapper_p.h Fri May 14 15:52:22 2010 +0300
@@ -31,6 +31,7 @@
class CGlxMLGenericObserver;
class CGlxThumbnailContext;
class HbIcon;
+class QImage;
class CGlxDefaultAttributeContext;
class CGlxDefaultThumbnailContext;
class CGlxDefaultListAttributeContext;
@@ -46,7 +47,7 @@
*
* @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);
+ static GlxMLWrapperPrivate* Instance(GlxMLWrapper* aMLWrapper, int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri);
/**
* Destructor.
*/
@@ -100,6 +101,7 @@
* RetrieveItemIcon()
*/
HbIcon* RetrieveItemIcon(int index, GlxTBContextType aTBContextType);
+ QImage RetrieveItemImage(int index, GlxTBContextType aTBContextType);
QString RetrieveListTitle(int index);
QString RetrieveListSubTitle(int index);
QString RetrieveItemUri(int index);
@@ -107,6 +109,8 @@
QDate RetrieveItemDate(int index);
int RetrieveItemFrameCount(int aItemIndex);
CFbsBitmap* RetrieveBitmap(int aItemIndex);
+ int RetrieveListItemCount( int aItemIndex );
+ bool isSystemItem( int aItemIndex );
private:
@@ -118,7 +122,7 @@
/**
* By default Symbian 2nd phase constructor is private.
*/
- void ConstructL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType);
+ void ConstructL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri=NULL);
/**
* Create an instance of Media List.
*
@@ -126,8 +130,10 @@
*/
void CreateMediaListL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType);
void CreateMediaListAlbumItemL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType);
+ 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();
@@ -135,6 +141,7 @@
void RemoveLsFsContext();
void RemovePtFsContext();
void RemoveListContext();
+ void RemoveFavouriteContext();
//for the attribute filtering
TInt CheckTBAttributesPresenceandSanity(TInt aItemIndex,
const RArray<TMPXAttribute>& aAttributes, TMPXAttribute aThumbnailAttribute );
@@ -167,7 +174,8 @@
CGlxDefaultThumbnailContext* iPtFsThumbnailContext;
CGlxDefaultThumbnailContext* iLsFsThumbnailContext;
CGlxDefaultThumbnailContext* iFocusFsThumbnailContext;
- CGlxThumbnailContext* iFocusGridThumbnailContext;
+ CGlxDefaultThumbnailContext* iFocusGridThumbnailContext;
+ CGlxThumbnailContext* iFilmStripThumbnailContext;
//List related contexts
// Fetch context for retrieving title attribute
@@ -175,14 +183,17 @@
// Fetch context for retrieving subtitle
CGlxDefaultListAttributeContext* iSubtitleAttributeContext;
+
+ //to find if the image is in favorites or not
+ CGlxDefaultAttributeContext *iFavouriteContext;
CGlxThumbnailContext* iListThumbnailContext;
// for thumbnail context
TGlxFromVisibleIndexOutwardListIterator iThumbnailIterator;
// Iterators for Grid and FS
- TGlxFromManualIndexBlockyIterator iBlockyIterator;
- TGlxFromManualIndexBlockyIterator iBlockyIteratorForFocus;
+ TGlxScrollingDirectionIterator iBlockyIterator;
+ TGlxFromManualIndexBlockyIterator iBlockyIteratorForFilmStrip;
//Variables for checking the active contexts
//todo merge all these variables into 1 and have bitwise operation on them
@@ -192,5 +203,6 @@
TBool iLsListContextActivated; //currently not used as we have not implemented the logic for 3 thumbnails
TBool iPtListContextActivated;
TBool iSelectionListContextActivated;
+
};
#endif //GLXMLWRAPPER_P_H
--- a/ui/uiengine/medialistwrapper/src/glxmlwrapper.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialistwrapper/src/glxmlwrapper.cpp Fri May 14 15:52:22 2010 +0300
@@ -20,6 +20,7 @@
//internal includes
#include "glxmlwrapper.h"
#include "glxmlwrapper_p.h"
+#include <qimage.h>
// ======== MEMBER FUNCTIONS ========
@@ -27,9 +28,9 @@
// constructor.
// ---------------------------------------------------------------------------
//
-GlxMLWrapper::GlxMLWrapper(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType)
+GlxMLWrapper::GlxMLWrapper(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri)
{
- mMLWrapperPrivate = GlxMLWrapperPrivate::Instance(this, aCollectionId, aHierarchyId, aFilterType);
+ mMLWrapperPrivate = GlxMLWrapperPrivate::Instance(this, aCollectionId, aHierarchyId, aFilterType,uri);
}
// ---------------------------------------------------------------------------
@@ -69,6 +70,11 @@
}
+QImage GlxMLWrapper::retrieveItemImage(int index, GlxTBContextType aTBContextType)
+{
+ return (mMLWrapperPrivate->RetrieveItemImage(index,aTBContextType));
+}
+
// ---------------------------------------------------------------------------
// retrieveItemIcon.
// ---------------------------------------------------------------------------
@@ -120,6 +126,16 @@
return var;
}
+int GlxMLWrapper::retrieveListItemCount(int index)
+{
+ return mMLWrapperPrivate->RetrieveListItemCount( index ) ;
+}
+
+bool GlxMLWrapper::isSystemItem( int aItemIndex )
+{
+ return mMLWrapperPrivate->isSystemItem( aItemIndex );
+}
+
// ---------------------------------------------------------------------------
// getFocusIndex.
// ---------------------------------------------------------------------------
--- a/ui/uiengine/medialistwrapper/src/glxmlwrapper_p.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/medialistwrapper/src/glxmlwrapper_p.cpp Fri May 14 15:52:22 2010 +0300
@@ -68,13 +68,13 @@
// ---------------------------------------------------------------------------
//
GlxMLWrapperPrivate* GlxMLWrapperPrivate::Instance(GlxMLWrapper* aMLWrapper,
- int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType)
+ int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri)
{
TRACER("GlxMLWrapperPrivate::NewLC()");
GlxMLWrapperPrivate* self = new GlxMLWrapperPrivate(aMLWrapper);
if(self){
- TRAPD(err,self->ConstructL(aCollectionId, aHierarchyId, aFilterType));
+ TRAPD(err,self->ConstructL(aCollectionId, aHierarchyId, aFilterType,uri));
if(err != KErrNone){
delete self;
self = NULL;
@@ -102,16 +102,22 @@
iListThumbnailContext = NULL;
iFocusGridThumbnailContext = NULL;
iFocusFsThumbnailContext = NULL;
+ iFilmStripThumbnailContext = NULL;
+ iFavouriteContext = NULL;
}
// ---------------------------------------------------------------------------
// Symbian 2nd phase constructor can leave.
// ---------------------------------------------------------------------------
//
-void GlxMLWrapperPrivate::ConstructL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType)
+void GlxMLWrapperPrivate::ConstructL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri)
{
TRACER("GlxMLWrapperPrivate::ConstructL");
- if(aCollectionId != KGlxAlbumsMediaId)
+ if(aCollectionId == KGlxCollectionPluginFavoritesAlbumId)
+ {
+ CreateMediaListFavoritesItemL(aCollectionId, aHierarchyId,aFilterType,uri);
+ }
+ else if(aCollectionId != KGlxAlbumsMediaId)
{
CreateMediaListL(aCollectionId, aHierarchyId,aFilterType);
}
@@ -121,7 +127,7 @@
CreateMediaListAlbumItemL(aCollectionId, aHierarchyId,aFilterType);
}
iMLGenericObserver = CGlxMLGenericObserver::NewL(*iMediaList,this);
- iBlockyIteratorForFocus.SetRangeOffsets(0,0);
+ iBlockyIteratorForFilmStrip.SetRangeOffsets(0,0);
}
// ---------------------------------------------------------------------------
@@ -135,6 +141,7 @@
RemovePtFsContext();
RemoveLsFsContext();
RemoveListContext();
+ RemoveFavouriteContext();
delete iMLGenericObserver;
iMLGenericObserver = NULL;
if (iMediaList)
@@ -154,15 +161,45 @@
{
TRAP(err, SetThumbnailContextL(aContextMode) ); //todo add a trap here
}
- else
+ else if(aContextMode == GlxContextFavorite)
+ {
+ TRAP(err,SetFavouriteContextL());
+ }
+ else
{
TRAP(err, SetListContextL(aContextMode) );
}
+
GLX_LOG_INFO1("GlxMLWrapperPrivate::SetContextMode error %d", err);
iContextMode = aContextMode;
}
// ---------------------------------------------------------------------------
+// SetFavouriteContextL
+// ---------------------------------------------------------------------------
+//
+void GlxMLWrapperPrivate::SetFavouriteContextL()
+ {
+ iFavouriteContext = CGlxDefaultAttributeContext::NewL();
+ iFavouriteContext->AddAttributeL( KMPXMediaGeneralCount );
+ iMediaList->AddContextL( iFavouriteContext, KGlxFetchContextPriorityLow );
+ }
+
+// ---------------------------------------------------------------------------
+// RemoveFavouriteContext
+// ---------------------------------------------------------------------------
+//
+void GlxMLWrapperPrivate::RemoveFavouriteContext()
+ {
+ if(iFavouriteContext )
+ {
+ iMediaList->RemoveContext(iFavouriteContext);
+ delete iFavouriteContext;
+ iFavouriteContext = NULL;
+ }
+ }
+
+// ---------------------------------------------------------------------------
// SetListContextL
// ---------------------------------------------------------------------------
//
@@ -178,7 +215,9 @@
iTitleAttributeContext->SetRangeOffsets( KListDataWindowSize,
KListDataWindowSize );
iTitleAttributeContext->AddAttributeL( KMPXMediaGeneralTitle );
- iMediaList->AddContextL( iTitleAttributeContext, KMaxTInt );
+ iTitleAttributeContext->AddAttributeL( KGlxMediaGeneralSlideshowableContent );
+ iTitleAttributeContext->AddAttributeL( KGlxMediaGeneralSystemItem );
+ iMediaList->AddContextL( iTitleAttributeContext, KGlxFetchContextPriorityNormal );
}
if(NULL == iSubtitleAttributeContext)
{
@@ -187,7 +226,7 @@
KListDataWindowSize );
iSubtitleAttributeContext->AddAttributeL(
KGlxMediaCollectionPluginSpecificSubTitle );
- iMediaList->AddContextL( iSubtitleAttributeContext, KMaxTInt );
+ iMediaList->AddContextL( iSubtitleAttributeContext, KGlxFetchContextPriorityNormal );
}
if(NULL == iListThumbnailContext)
@@ -207,7 +246,9 @@
iTitleAttributeContext = CGlxDefaultListAttributeContext::NewL();
iTitleAttributeContext->SetRangeOffsets( KListDataWindowSize, KListDataWindowSize );
iTitleAttributeContext->AddAttributeL( KMPXMediaGeneralTitle );
- iMediaList->AddContextL( iTitleAttributeContext, KMaxTInt );
+ iTitleAttributeContext->AddAttributeL( KGlxMediaGeneralSlideshowableContent );
+ iTitleAttributeContext->AddAttributeL( KGlxMediaGeneralSystemItem );
+ iMediaList->AddContextL( iTitleAttributeContext, KGlxFetchContextPriorityNormal );
}
iSelectionListContextActivated = ETrue;
}
@@ -236,8 +277,8 @@
}
if(aContextMode == GlxContextLsFs && !iLsFsContextActivated) {
- if(!iGridContextActivated) {
- CreateGridContextL();
+ if(iGridContextActivated) {
+ RemoveGridContext();
}
if(iPtFsContextActivated) {
RemovePtFsContext();
@@ -246,8 +287,8 @@
}
if(aContextMode == GlxContextPtFs && !iPtFsContextActivated) {
- if(!iGridContextActivated) {
- CreateGridContextL();
+ if(iGridContextActivated) {
+ RemoveGridContext();
}
if(iLsFsContextActivated) {
RemoveLsFsContext();
@@ -306,14 +347,22 @@
}
if(!iFocusGridThumbnailContext)
{
- iFocusGridThumbnailContext = CGlxThumbnailContext::NewL( &iBlockyIteratorForFocus ); // set the thumbnail context for Focus Grid
+ iFocusGridThumbnailContext = CGlxDefaultThumbnailContext::NewL(); // set the thumbnail context for Focus Grid
+ iFocusGridThumbnailContext->SetRangeOffsets(0,0);
iFocusGridThumbnailContext->SetDefaultSpec( KGridTNWIdth, KGridTNHeight ); //todo get these image sizes from the layout.
}
+ if(!iFilmStripThumbnailContext)
+ {
+ iFilmStripThumbnailContext = CGlxThumbnailContext::NewL( &iBlockyIteratorForFilmStrip ); // set the thumbnail context for Focus Grid
+ iFilmStripThumbnailContext->SetDefaultSpec( KGridTNWIdth, KGridTNHeight ); //todo get these image sizes from the layout.
+ }
+
// show static items if required
iMediaList->SetStaticItemsEnabled(EFalse);
- iMediaList->AddContextL(iFocusFsThumbnailContext, 7 ); // Temp will change this number
- iMediaList->AddContextL(iFocusGridThumbnailContext, 8 ); // Temp will change this number
+ iMediaList->AddContextL(iFocusFsThumbnailContext, 8 ); // Temp will change this number
+ iMediaList->AddContextL(iFocusGridThumbnailContext, 9 ); // Temp will change this number
+ iMediaList->AddContextL(iFilmStripThumbnailContext, 7 ); // Temp will change this number
iMediaList->AddContextL(iLsFsThumbnailContext, KGlxFetchContextPriorityGridViewFullscreenVisibleThumbnail );
iLsFsContextActivated = ETrue;
}
@@ -341,18 +390,26 @@
{
iFocusFsThumbnailContext = CGlxDefaultThumbnailContext::NewL();
iFocusFsThumbnailContext->SetRangeOffsets(0,0);
- iFocusFsThumbnailContext->SetDefaultSpec( KFullScreenTNLSWidth, KFullScreenTNLSHeight ); //todo get these image sizes from the layout.
+ iFocusFsThumbnailContext->SetDefaultSpec( KFullScreenTNPTWidth, KFullScreenTNPTHeight ); //todo get these image sizes from the layout.
}
if(!iFocusGridThumbnailContext)
{
- iFocusGridThumbnailContext = CGlxThumbnailContext::NewL( &iBlockyIteratorForFocus ); // set the thumbnail context for Focus Grid
+ iFocusGridThumbnailContext = CGlxDefaultThumbnailContext::NewL(); // set the thumbnail context for Focus Grid
+ iFocusGridThumbnailContext->SetRangeOffsets(0,0);
iFocusGridThumbnailContext->SetDefaultSpec( KGridTNWIdth, KGridTNHeight ); //todo get these image sizes from the layout.
}
+ if(!iFilmStripThumbnailContext)
+ {
+ iFilmStripThumbnailContext = CGlxThumbnailContext::NewL( &iBlockyIteratorForFilmStrip ); // set the thumbnail context for Focus Grid
+ iFilmStripThumbnailContext->SetDefaultSpec( KGridTNPTWIdth, KGridTNPTHeight ); //todo get these image sizes from the layout.
+ }
+
// show static items if required
iMediaList->SetStaticItemsEnabled(EFalse);
- iMediaList->AddContextL(iFocusFsThumbnailContext, 7 ); // Temp will change this number
- iMediaList->AddContextL(iFocusGridThumbnailContext, 8 ); // Temp will change this number
+ iMediaList->AddContextL(iFocusFsThumbnailContext, 8 ); // Temp will change this number
+ iMediaList->AddContextL(iFocusGridThumbnailContext, 9 ); // Temp will change this number
+ iMediaList->AddContextL(iFilmStripThumbnailContext, 7 ); // Temp will change this number
iMediaList->AddContextL(iPtFsThumbnailContext, KGlxFetchContextPriorityGridViewFullscreenVisibleThumbnail );
iPtFsContextActivated = ETrue;
}
@@ -398,6 +455,12 @@
delete iFocusGridThumbnailContext;
iFocusGridThumbnailContext = NULL;
}
+ if(iFilmStripThumbnailContext)
+ {
+ iMediaList->RemoveContext(iFilmStripThumbnailContext);
+ delete iFilmStripThumbnailContext;
+ iFilmStripThumbnailContext = NULL;
+ }
iLsFsContextActivated = EFalse;
}
@@ -428,6 +491,12 @@
delete iFocusGridThumbnailContext;
iFocusGridThumbnailContext = NULL;
}
+ if(iFilmStripThumbnailContext)
+ {
+ iMediaList->RemoveContext(iFilmStripThumbnailContext);
+ delete iFilmStripThumbnailContext;
+ iFilmStripThumbnailContext = NULL;
+ }
iPtFsContextActivated = EFalse;
}
@@ -535,10 +604,35 @@
GLX_LOG_INFO1("GlxMLWrapperPrivate::MediaListL - Path level = %d",
path->Levels());
-
- CleanupStack::PopAndDestroy(path);
+ CleanupStack::PopAndDestroy(path);
}
+// ---------------------------------------------------------------------------
+// CreateMediaListL() for Favorites Album
+// Creates a collection path
+// Create a filter as requested filtertype
+// Creates the medialist
+// ---------------------------------------------------------------------------
+void GlxMLWrapperPrivate::CreateMediaListFavoritesItemL(int aCollectionId, int aHierarchyId, TGlxFilterItemType aFilterType,QString uri)
+ {
+ TRACER("GlxMLWrapperPrivate::CreateMediaListFavoritesItemL");
+ Q_UNUSED(aHierarchyId);
+ // Create path to the list of images and videos
+ CMPXCollectionPath* path = CMPXCollectionPath::NewL();
+ CleanupStack::PushL( path );
+ path->AppendL(KGlxCollectionPluginAlbumsImplementationUid);
+ path->AppendL( TMPXItemId(KGlxCollectionFavoritesId) );
+ path->Set( 0 );
+ TPtrC16 str(reinterpret_cast<const TUint16*>(uri.utf16()));
+ HBufC *ptr = str.Alloc();
+ CMPXFilter* filter = TGlxFilterFactory::CreateURIFilterL(*ptr);
+ CleanupStack::PushL(filter);
+ iMediaList = MGlxMediaList::InstanceL( *path,
+ TGlxHierarchyId(KGlxCollectionPluginAlbumsDllUid), filter );
+ CleanupStack::PopAndDestroy( filter );
+ CleanupStack::PopAndDestroy( path );
+ }
+
/*
* retrieveItemIcon
*/
@@ -604,6 +698,62 @@
GLX_LOG_INFO1("### GlxMLWrapperPrivate::RetrieveItemIcon value-Index is %d and have returned empty icon",aItemIndex);
return NULL;
}
+
+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;
+ }
+ 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);
+
+ 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);
+ value->iBitmap->UnlockHeap();
+ return image;
+ }
+ else if( tnError == KErrCANoRights)
+ {
+ //handle DRM case
+ }
+ else if( tnError )
+ {
+ return QImage(GLXICON_CORRUPT);
+ }
+
+ return QImage();
+ }
// ---------------------------------------------------------------------------
// RetrieveListTitle
// ---------------------------------------------------------------------------
@@ -629,6 +779,33 @@
}
// ---------------------------------------------------------------------------
+// Retrieve number of image contained by album list
+// ---------------------------------------------------------------------------
+//
+int GlxMLWrapperPrivate::RetrieveListItemCount(int aItemIndex)
+{
+ const TGlxMedia& item = iMediaList->Item( aItemIndex );
+ int count = 0;
+ TBool ret = item.GetSlideshowPlayableContainedItemCount(count);
+ if(ret)
+ return count;
+ else
+ return 0;
+}
+
+// ---------------------------------------------------------------------------
+// Retrieve the item is system item or not
+// ---------------------------------------------------------------------------
+//
+bool GlxMLWrapperPrivate::isSystemItem( int aItemIndex )
+{
+ const TGlxMedia& item = iMediaList->Item( aItemIndex );
+ TBool systemItem = false;
+ item.GetSystemItem( systemItem );
+ return systemItem ;
+}
+
+// ---------------------------------------------------------------------------
// RetrieveItemUri
// ---------------------------------------------------------------------------
//
@@ -1015,7 +1192,7 @@
QImage image(data, aBitmap->SizeInPixels().iWidth, aBitmap->SizeInPixels().iHeight, bytesPerLine, QImage::Format_RGB16);
QPixmap pixmap = QPixmap::fromImage(image);
- if ( aBitmap->SizeInPixels().iWidth > itemWidth || aBitmap->SizeInPixels().iHeight ) {
+ if ( aBitmap->SizeInPixels().iWidth > itemWidth || aBitmap->SizeInPixels().iHeight > itemHeight ) {
pixmap = pixmap.scaled( itemWidth, itemHeight, Qt::KeepAspectRatio );
}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/bwins/glxfavmediamodelu.def Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,21 @@
+EXPORTS
+ ?staticMetaObject@GlxFavMediaModel@@2UQMetaObject@@B @ 1 NONAME ; struct QMetaObject const GlxFavMediaModel::staticMetaObject
+ ?parent@GlxFavMediaModel@@UBE?AVQModelIndex@@ABV2@@Z @ 2 NONAME ; class QModelIndex GlxFavMediaModel::parent(class QModelIndex const &) const
+ ?trUtf8@GlxFavMediaModel@@SA?AVQString@@PBD0H@Z @ 3 NONAME ; class QString GlxFavMediaModel::trUtf8(char const *, char const *, int)
+ ?data@GlxFavMediaModel@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 4 NONAME ; class QVariant GlxFavMediaModel::data(class QModelIndex const &, int) const
+ ?metaObject@GlxFavMediaModel@@UBEPBUQMetaObject@@XZ @ 5 NONAME ; struct QMetaObject const * GlxFavMediaModel::metaObject(void) const
+ ?tr@GlxFavMediaModel@@SA?AVQString@@PBD0@Z @ 6 NONAME ; class QString GlxFavMediaModel::tr(char const *, char const *)
+ ?getStaticMetaObject@GlxFavMediaModel@@SAABUQMetaObject@@XZ @ 7 NONAME ; struct QMetaObject const & GlxFavMediaModel::getStaticMetaObject(void)
+ ?trUtf8@GlxFavMediaModel@@SA?AVQString@@PBD0@Z @ 8 NONAME ; class QString GlxFavMediaModel::trUtf8(char const *, char const *)
+ ??0GlxFavMediaModel@@QAE@AAVGlxModelParm@@@Z @ 9 NONAME ; GlxFavMediaModel::GlxFavMediaModel(class GlxModelParm &)
+ ?qt_metacall@GlxFavMediaModel@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 10 NONAME ; int GlxFavMediaModel::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ??_EGlxFavMediaModel@@UAE@I@Z @ 11 NONAME ; GlxFavMediaModel::~GlxFavMediaModel(unsigned int)
+ ?itemsAdded@GlxFavMediaModel@@QAEXHH@Z @ 12 NONAME ; void GlxFavMediaModel::itemsAdded(int, int)
+ ?qt_metacast@GlxFavMediaModel@@UAEPAXPBD@Z @ 13 NONAME ; void * GlxFavMediaModel::qt_metacast(char const *)
+ ??1GlxFavMediaModel@@UAE@XZ @ 14 NONAME ; GlxFavMediaModel::~GlxFavMediaModel(void)
+ ?rowCount@GlxFavMediaModel@@UBEHABVQModelIndex@@@Z @ 15 NONAME ; int GlxFavMediaModel::rowCount(class QModelIndex const &) const
+ ?tr@GlxFavMediaModel@@SA?AVQString@@PBD0H@Z @ 16 NONAME ; class QString GlxFavMediaModel::tr(char const *, char const *, int)
+ ?itemsRemoved@GlxFavMediaModel@@QAEXHH@Z @ 17 NONAME ; void GlxFavMediaModel::itemsRemoved(int, int)
+ ?columnCount@GlxFavMediaModel@@UBEHABVQModelIndex@@@Z @ 18 NONAME ; int GlxFavMediaModel::columnCount(class QModelIndex const &) const
+ ?index@GlxFavMediaModel@@UBE?AVQModelIndex@@HHABV2@@Z @ 19 NONAME ; class QModelIndex GlxFavMediaModel::index(int, int, class QModelIndex const &) const
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/bwins/glxmodelwrapperu.def Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,34 @@
+EXPORTS
+ ??_EGlxModelWrapper@@UAE@I@Z @ 1 NONAME ; GlxModelWrapper::~GlxModelWrapper(unsigned int)
+ ?setData@GlxModelWrapper@@UAE_NABVQModelIndex@@ABVQVariant@@H@Z @ 2 NONAME ; bool GlxModelWrapper::setData(class QModelIndex const &, class QVariant const &, int)
+ ?rowsAboutToBeRemoved@GlxModelWrapper@@IAEXABVQModelIndex@@HH@Z @ 3 NONAME ; void GlxModelWrapper::rowsAboutToBeRemoved(class QModelIndex const &, int, int)
+ ?rowCount@GlxModelWrapper@@UBEHABVQModelIndex@@@Z @ 4 NONAME ; int GlxModelWrapper::rowCount(class QModelIndex const &) const
+ ??0GlxModelWrapper@@QAE@XZ @ 5 NONAME ; GlxModelWrapper::GlxModelWrapper(void)
+ ?trUtf8@GlxModelWrapper@@SA?AVQString@@PBD0@Z @ 6 NONAME ; class QString GlxModelWrapper::trUtf8(char const *, char const *)
+ ?modelDestroyed@GlxModelWrapper@@IAEXXZ @ 7 NONAME ; void GlxModelWrapper::modelDestroyed(void)
+ ?dataChangedinModel@GlxModelWrapper@@IAEXVQModelIndex@@0@Z @ 8 NONAME ; void GlxModelWrapper::dataChangedinModel(class QModelIndex, class QModelIndex)
+ ?tr@GlxModelWrapper@@SA?AVQString@@PBD0@Z @ 9 NONAME ; class QString GlxModelWrapper::tr(char const *, char const *)
+ ?getStaticMetaObject@GlxModelWrapper@@SAABUQMetaObject@@XZ @ 10 NONAME ; struct QMetaObject const & GlxModelWrapper::getStaticMetaObject(void)
+ ?index@GlxModelWrapper@@UBE?AVQModelIndex@@HHABV2@@Z @ 11 NONAME ; class QModelIndex GlxModelWrapper::index(int, int, class QModelIndex const &) const
+ ?rowsAboutToBeInserted@GlxModelWrapper@@IAEXABVQModelIndex@@HH@Z @ 12 NONAME ; void GlxModelWrapper::rowsAboutToBeInserted(class QModelIndex const &, int, int)
+ ?data@GlxModelWrapper@@UBE?AVQVariant@@ABVQModelIndex@@H@Z @ 13 NONAME ; class QVariant GlxModelWrapper::data(class QModelIndex const &, int) const
+ ?staticMetaObject@GlxModelWrapper@@2UQMetaObject@@B @ 14 NONAME ; struct QMetaObject const GlxModelWrapper::staticMetaObject
+ ?scrollingEnded@GlxModelWrapper@@QAEXXZ @ 15 NONAME ; void GlxModelWrapper::scrollingEnded(void)
+ ?rowsRemoved@GlxModelWrapper@@IAEXABVQModelIndex@@HH@Z @ 16 NONAME ; void GlxModelWrapper::rowsRemoved(class QModelIndex const &, int, int)
+ ?basemodelindex@GlxModelWrapper@@QBE?AVQModelIndex@@HHABV2@@Z @ 17 NONAME ; class QModelIndex GlxModelWrapper::basemodelindex(int, int, class QModelIndex const &) const
+ ?columnCount@GlxModelWrapper@@UBEHABVQModelIndex@@@Z @ 18 NONAME ; int GlxModelWrapper::columnCount(class QModelIndex const &) const
+ ?parent@GlxModelWrapper@@UBE?AVQModelIndex@@ABV2@@Z @ 19 NONAME ; class QModelIndex GlxModelWrapper::parent(class QModelIndex const &) const
+ ?rowsInserted@GlxModelWrapper@@IAEXABVQModelIndex@@HH@Z @ 20 NONAME ; void GlxModelWrapper::rowsInserted(class QModelIndex const &, int, int)
+ ?disConnectFromModel@GlxModelWrapper@@AAEXXZ @ 21 NONAME ; void GlxModelWrapper::disConnectFromModel(void)
+ ?metaObject@GlxModelWrapper@@UBEPBUQMetaObject@@XZ @ 22 NONAME ; struct QMetaObject const * GlxModelWrapper::metaObject(void) const
+ ??1GlxModelWrapper@@UAE@XZ @ 23 NONAME ; GlxModelWrapper::~GlxModelWrapper(void)
+ ?connectToModel@GlxModelWrapper@@AAEXXZ @ 24 NONAME ; void GlxModelWrapper::connectToModel(void)
+ ?setModel@GlxModelWrapper@@QAEXPAVQAbstractItemModel@@@Z @ 25 NONAME ; void GlxModelWrapper::setModel(class QAbstractItemModel *)
+ ?tr@GlxModelWrapper@@SA?AVQString@@PBD0H@Z @ 26 NONAME ; class QString GlxModelWrapper::tr(char const *, char const *, int)
+ ?qt_metacall@GlxModelWrapper@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 27 NONAME ; int GlxModelWrapper::qt_metacall(enum QMetaObject::Call, int, void * *)
+ ?setRoles@GlxModelWrapper@@QAEXHH@Z @ 28 NONAME ; void GlxModelWrapper::setRoles(int, int)
+ ?scrollingStarted@GlxModelWrapper@@QAEXXZ @ 29 NONAME ; void GlxModelWrapper::scrollingStarted(void)
+ ?trUtf8@GlxModelWrapper@@SA?AVQString@@PBD0H@Z @ 30 NONAME ; class QString GlxModelWrapper::trUtf8(char const *, char const *, int)
+ ?qt_metacast@GlxModelWrapper@@UAEPAXPBD@Z @ 31 NONAME ; void * GlxModelWrapper::qt_metacast(char const *)
+ ?resetTheModel@GlxModelWrapper@@AAEXXZ @ 32 NONAME ; void GlxModelWrapper::resetTheModel(void)
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/eabi/glxfavmediamodelu.def Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,21 @@
+EXPORTS
+ _ZN16GlxFavMediaModel10itemsAddedEii @ 1 NONAME
+ _ZN16GlxFavMediaModel11qt_metacallEN11QMetaObject4CallEiPPv @ 2 NONAME
+ _ZN16GlxFavMediaModel11qt_metacastEPKc @ 3 NONAME
+ _ZN16GlxFavMediaModel12itemsRemovedEii @ 4 NONAME
+ _ZN16GlxFavMediaModel16staticMetaObjectE @ 5 NONAME DATA 16
+ _ZN16GlxFavMediaModel19getStaticMetaObjectEv @ 6 NONAME
+ _ZN16GlxFavMediaModelC1ER12GlxModelParm @ 7 NONAME
+ _ZN16GlxFavMediaModelC2ER12GlxModelParm @ 8 NONAME
+ _ZN16GlxFavMediaModelD0Ev @ 9 NONAME
+ _ZN16GlxFavMediaModelD1Ev @ 10 NONAME
+ _ZN16GlxFavMediaModelD2Ev @ 11 NONAME
+ _ZNK16GlxFavMediaModel10metaObjectEv @ 12 NONAME
+ _ZNK16GlxFavMediaModel11columnCountERK11QModelIndex @ 13 NONAME
+ _ZNK16GlxFavMediaModel4dataERK11QModelIndexi @ 14 NONAME
+ _ZNK16GlxFavMediaModel5indexEiiRK11QModelIndex @ 15 NONAME
+ _ZNK16GlxFavMediaModel6parentERK11QModelIndex @ 16 NONAME
+ _ZNK16GlxFavMediaModel8rowCountERK11QModelIndex @ 17 NONAME
+ _ZTI16GlxFavMediaModel @ 18 NONAME
+ _ZTV16GlxFavMediaModel @ 19 NONAME
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/eabi/glxmodelwrapperu.def Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,34 @@
+EXPORTS
+ _ZN15GlxModelWrapper11qt_metacallEN11QMetaObject4CallEiPPv @ 1 NONAME
+ _ZN15GlxModelWrapper11qt_metacastEPKc @ 2 NONAME
+ _ZN15GlxModelWrapper11rowsRemovedERK11QModelIndexii @ 3 NONAME
+ _ZN15GlxModelWrapper12rowsInsertedERK11QModelIndexii @ 4 NONAME
+ _ZN15GlxModelWrapper14connectToModelEv @ 5 NONAME
+ _ZN15GlxModelWrapper14modelDestroyedEv @ 6 NONAME
+ _ZN15GlxModelWrapper14scrollingEndedEv @ 7 NONAME
+ _ZN15GlxModelWrapper16scrollingStartedEv @ 8 NONAME
+ _ZN15GlxModelWrapper16staticMetaObjectE @ 9 NONAME DATA 16
+ _ZN15GlxModelWrapper18dataChangedinModelE11QModelIndexS0_ @ 10 NONAME
+ _ZN15GlxModelWrapper19disConnectFromModelEv @ 11 NONAME
+ _ZN15GlxModelWrapper19getStaticMetaObjectEv @ 12 NONAME
+ _ZN15GlxModelWrapper20rowsAboutToBeRemovedERK11QModelIndexii @ 13 NONAME
+ _ZN15GlxModelWrapper21rowsAboutToBeInsertedERK11QModelIndexii @ 14 NONAME
+ _ZN15GlxModelWrapper7setDataERK11QModelIndexRK8QVarianti @ 15 NONAME
+ _ZN15GlxModelWrapper8setModelEP18QAbstractItemModel @ 16 NONAME
+ _ZN15GlxModelWrapper8setRolesEii @ 17 NONAME
+ _ZN15GlxModelWrapperC1Ev @ 18 NONAME
+ _ZN15GlxModelWrapperC2Ev @ 19 NONAME
+ _ZN15GlxModelWrapperD0Ev @ 20 NONAME
+ _ZN15GlxModelWrapperD1Ev @ 21 NONAME
+ _ZN15GlxModelWrapperD2Ev @ 22 NONAME
+ _ZNK15GlxModelWrapper10metaObjectEv @ 23 NONAME
+ _ZNK15GlxModelWrapper11columnCountERK11QModelIndex @ 24 NONAME
+ _ZNK15GlxModelWrapper14basemodelindexEiiRK11QModelIndex @ 25 NONAME
+ _ZNK15GlxModelWrapper4dataERK11QModelIndexi @ 26 NONAME
+ _ZNK15GlxModelWrapper5indexEiiRK11QModelIndex @ 27 NONAME
+ _ZNK15GlxModelWrapper6parentERK11QModelIndex @ 28 NONAME
+ _ZNK15GlxModelWrapper8rowCountERK11QModelIndex @ 29 NONAME
+ _ZTI15GlxModelWrapper @ 30 NONAME
+ _ZTV15GlxModelWrapper @ 31 NONAME
+ _ZN15GlxModelWrapper13resetTheModelEv @ 32 NONAME
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/favmediamodel/favmediamodel.pro Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,45 @@
+#/*
+#* 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:
+#*
+#*/
+TEMPLATE = lib
+TARGET = glxfavmediamodel
+DEPENDPATH += . inc src
+INCLUDEPATH += . ../../../inc \
+ ../../../../inc \
+ ../../../../loggers\loggerqt\inc \
+ ../../medialistwrapper/inc
+
+CONFIG += hb
+
+LIBS += -lglxmedialistwrapper.dll \
+ -lglxloggerqt.dll
+
+
+DEFINES += BUILD_FAVMEDIAMODEL
+
+symbian: {
+INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
+TARGET.UID3 = 0x20000A06
+TARGET.CAPABILITY = ALL -TCB
+TARGET.EPOCALLOWDLLDATA = 1
+}
+# Input
+HEADERS += inc/glxfavmediamodel.h
+
+
+SOURCES += src/glxfavmediamodel.cpp
+
+DEFINES += QT_NO_DEBUG_OUTPUT QT_NO_WARNING_OUTPUT
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/favmediamodel/inc/glxfavmediamodel.h Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,63 @@
+/*
+* 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
+*
+*/
+
+
+
+#ifndef GLXFAVMEDIAMODEL_H
+#define GLXFAVMEDIAMODEL_H
+
+#include <QAbstractItemModel>
+#include <glxmlwrapper.h>
+#include <glxuistd.h>
+
+
+
+#ifdef BUILD_FAVMEDIAMODEL
+#define GLX_MEDIAMODEL_EXPORT Q_DECL_EXPORT
+#else
+#define GLX_MEDIAMODEL_EXPORT Q_DECL_IMPORT
+#endif
+
+//forward declarations
+class GlxModelParm;
+
+
+class GLX_MEDIAMODEL_EXPORT GlxFavMediaModel : public QAbstractItemModel
+{
+Q_OBJECT
+public :
+
+ GlxFavMediaModel(GlxModelParm & modelParm);
+ ~GlxFavMediaModel();
+ int rowCount(const QModelIndex &parent = QModelIndex()) const;
+ int columnCount(const QModelIndex &parent = QModelIndex()) const;
+ QModelIndex parent(const QModelIndex &child) const;
+ QVariant data(const QModelIndex &index, int role) const;
+ QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
+
+public slots:
+
+ void itemsAdded(int startIndex, int endIndex);
+ void itemsRemoved(int startIndex, int endIndex);
+
+private:
+ GlxMLWrapper* mMLWrapper;
+ GlxContextMode mContextMode;
+};
+
+
+#endif /* GLXFAVMEDIAMODEL_H */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/favmediamodel/src/glxfavmediamodel.cpp Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,113 @@
+/*
+* 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 <glxfavmediamodel.h>
+#include <glxmodelparm.h>
+#include <glxtracer.h>
+#include <glxfiltergeneraldefs.h>
+
+
+GlxFavMediaModel::GlxFavMediaModel(GlxModelParm & modelParm)
+{
+ TRACER("GlxFavMediaModel::GlxFavMediaModel");
+ mMLWrapper = new GlxMLWrapper(modelParm.collection(),0,EGlxFilterImage,modelParm.path());
+ mMLWrapper->setContextMode( modelParm.contextMode() );
+ int err = connect(mMLWrapper, SIGNAL(insertItems(int, int)), this, SLOT(itemsAdded(int, int)));
+ err = connect(mMLWrapper, SIGNAL(removeItems(int, int)), this, SLOT(itemsRemoved(int, int)));
+}
+
+GlxFavMediaModel::~GlxFavMediaModel()
+{
+ TRACER("GlxFavMediaModel::~GlxFavMediaModel");
+ int err = disconnect(mMLWrapper, SIGNAL(insertItems(int, int)), this, SLOT(itemsAdded(int, int)));
+ err = disconnect(mMLWrapper, SIGNAL(removeItems(int, int)), this, SLOT(itemsRemoved(int, int)));
+ delete mMLWrapper;
+}
+
+
+int GlxFavMediaModel::rowCount(const QModelIndex &parent ) const
+{
+ TRACER("GlxFavMediaModel::rowCount");
+ Q_UNUSED(parent);
+ return (mMLWrapper->getItemCount());
+}
+
+int GlxFavMediaModel::columnCount(const QModelIndex &parent ) const
+{
+ TRACER("GlxFavMediaModel::columnCount");
+ Q_UNUSED(parent);
+ return 1;
+}
+
+QModelIndex GlxFavMediaModel::parent(const QModelIndex &child) const
+{
+ TRACER("GlxFavMediaModel::parent");
+ Q_UNUSED(child);
+ //returns always invalid model index
+ return QModelIndex();
+}
+
+
+QVariant GlxFavMediaModel::data(const QModelIndex &index, int role) const
+{
+ TRACER("GlxFavMediaModel::data");
+
+ if ((!index.isValid()) ) {
+ return QVariant();
+ }
+
+ if (role == GlxFavorites){
+ return rowCount();
+ }
+
+ return QVariant();
+}
+
+
+void GlxFavMediaModel::itemsAdded(int startIndex, int endIndex)
+{
+ TRACER("GlxFavMediaModel::itemsAdded");
+ beginInsertRows(QModelIndex(), startIndex, endIndex);
+ emit dataChanged(index(startIndex,0),index(startIndex,0));
+ endInsertRows();
+}
+
+void GlxFavMediaModel::itemsRemoved(int startIndex, int endIndex)
+{
+ TRACER("GlxFavMediaModel::itemsRemoved");
+ beginRemoveRows(QModelIndex(), startIndex, endIndex);
+ emit dataChanged(index(startIndex,0),index(startIndex,0));
+ endRemoveRows();
+}
+
+
+QModelIndex GlxFavMediaModel::index(int row, int column, const QModelIndex &parent) const
+{
+ TRACER("GlxFavMediaModel::index");
+ Q_UNUSED(parent)
+ if ( ( row < 0 )
+ || ( row > rowCount() )
+ || ( column < 0 )
+ || ( column >= columnCount() ) ) {
+ return QModelIndex();
+ }
+
+ return QAbstractItemModel::createIndex(row, column);
+}
+
--- a/ui/uiengine/model/listmodel/inc/glxalbummodel.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/model/listmodel/inc/glxalbummodel.h Fri May 14 15:52:22 2010 +0300
@@ -20,7 +20,6 @@
#include <QAbstractItemModel>
#include <QCache>
-#include <glxmlwrapper.h>
#include <glxuistd.h>
#ifdef BUILD_LISTMODEL
@@ -40,6 +39,7 @@
class HbIcon;
class GlxModelParm;
+class GlxMLWrapper;
class GLX_LISTMODEL_EXPORT GlxAlbumModel : public QAbstractItemModel
{
@@ -76,7 +76,7 @@
private slots:
void updateItemIcon(int itemIndex, HbIcon* itemIcon, GlxTBContextType tbContextType);
private:
- Q_DECL_IMPORT GlxMLWrapper* mMLWrapper;
+ GlxMLWrapper* mMLWrapper;
GlxContextMode mContextMode;
HbIcon* mDefaultIcon;
QCache<int, HbIcon> itemIconCache;
--- a/ui/uiengine/model/listmodel/src/glxalbummodel.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/model/listmodel/src/glxalbummodel.cpp Fri May 14 15:52:22 2010 +0300
@@ -21,6 +21,7 @@
#include <hbicon.h>
#include <QStringList>
#include <QBrush>
+#include <glxmlwrapper.h>
#include "glxicondefs.h" //Contains the icon names/Ids
@@ -142,6 +143,12 @@
case GlxFocusIndexRole :
idx = getFocusIndex();
return idx.row();
+
+ case GlxListItemCount :
+ return mMLWrapper->retrieveListItemCount( getFocusIndex().row() );
+
+ case GlxSystemItemRole :
+ return mMLWrapper->isSystemItem( getFocusIndex().row() );
default :
return QVariant();
--- a/ui/uiengine/model/mediamodel/inc/glxmediamodel.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/model/mediamodel/inc/glxmediamodel.h Fri May 14 15:52:22 2010 +0300
@@ -21,7 +21,6 @@
#define GLXMEDIAMODEL_H
#include <QAbstractItemModel>
-#include <glxmlwrapper.h>
#include <glxuistd.h>
#include <QDateTime>
#include <glxexternalinterfacedefs.h>
@@ -35,6 +34,7 @@
class HbIcon;
class GlxModelParm;
+class GlxMLWrapper;
#include <QCache>
#include <QVector>
@@ -90,7 +90,7 @@
private slots:
void updateItemIcon(int itemIndex, HbIcon* itemIcon, GlxTBContextType tbContextType);
private:
- Q_DECL_IMPORT GlxMLWrapper* mMLWrapper;
+ GlxMLWrapper* mMLWrapper;
QCache<int, HbIcon> itemIconCache;
QCache<int, HbIcon> itemFsIconCache;
HbIcon* m_DefaultIcon;
--- a/ui/uiengine/model/mediamodel/src/glxmediamodel.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/model/mediamodel/src/glxmediamodel.cpp Fri May 14 15:52:22 2010 +0300
@@ -19,11 +19,13 @@
#include <glxmediamodel.h>
#include <hbicon.h>
+#include <qimage.h>
#include <glxmodelparm.h>
#include <QCache>
#include <QDebug>
#include <hal.h>
#include <hal_data.h>
+#include <glxmlwrapper.h>
#include <glxfiltergeneraldefs.h>
@@ -52,7 +54,7 @@
qDebug("iconAvailable() connection status %d", err);
//itemadded.resize(mMLWrapper->getItemCount());
- itemIconCache.setMaxCost(50);
+ itemIconCache.setMaxCost(20); //Changed While Doing Media Wall
itemFsIconCache.setMaxCost(5);
itemExternalIconCache.setMaxCost(0);
@@ -95,7 +97,7 @@
mContextMode = contextMode;
if ( mContextMode == GlxContextLsGrid || mContextMode == GlxContextPtGrid ) {
itemIconCache.clear();
- emit dataChanged( index( 0, 0), index( rowCount() - 1, 0) );
+ //emit dataChanged( index( 0, 0), index( rowCount() - 1, 0) ); // Not Needed for HgWidget
}
}
}
@@ -117,14 +119,17 @@
*/
void GlxMediaModel::clearExternalItems()
{
- beginRemoveRows(QModelIndex(), 0, externalDataCount);
- if(mExternalItems) {
+ if(externalDataCount) {
+ beginRemoveRows(QModelIndex(), 0, externalDataCount);
+ if(mExternalItems) {
delete mExternalItems;
mExternalItems = NULL;
externalDataCount = 0;
- }
- itemExternalIconCache.clear();
- endRemoveRows();
+ }
+ itemExternalIconCache.clear();
+ endRemoveRows();
+ }
+
}
int GlxMediaModel::rowCount(const QModelIndex &parent ) const
@@ -156,7 +161,20 @@
return mSubState;
}
+ if ( role == GlxHgVisibilityRole ) {
+ return TRUE;
+ }
+
+ if ( role == Qt::DisplayRole ) {
+ return QVariant();
+ }
+
+ if ( role == GlxDefaultImage ) {
+ return m_DefaultIcon->pixmap().toImage().convertToFormat(QImage::Format_ARGB32_Premultiplied);
+ }
+
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)) {
@@ -180,11 +198,15 @@
itemIcon = GetGridIconItem(itemIndex,GlxTBContextGrid);
if(itemIcon == NULL || itemIcon->isNull() ){
itemIcon = m_DefaultIcon;
- // }
}
return *itemIcon;
}
+ if (role == GlxQImageSmall)
+ {
+ return mMLWrapper->retrieveItemImage(itemIndex, GlxTBContextGrid);
+ }
+
if (role == GlxFsImageRole){
if(mContextMode == GlxContextLsFs){
itemIcon = GetFsIconItem(itemIndex,GlxTBContextLsFs);
@@ -214,6 +236,37 @@
return *itemIcon;
}
+ 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 == GlxVisualWindowIndex)
+ {
+ return mMLWrapper->getVisibleWindowIndex();
+ }
+
QModelIndex idx;
if ( GlxFocusIndexRole == role ) {
idx = getFocusIndex();
@@ -268,9 +321,6 @@
emit iconAvailable(itemIndex,itemIcon, tbContextType);
}
itemIcon = itemFsIconCache[itemIndex];
- /*if(!itemIcon){
- itemIcon = GetGridIconItem(itemIndex, GlxTBContextGrid);
- }*/
}
return itemIcon;
--- a/ui/uiengine/model/model.pro Mon May 03 12:31:32 2010 +0300
+++ b/ui/uiengine/model/model.pro Fri May 14 15:52:22 2010 +0300
@@ -17,4 +17,6 @@
TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS = mediamodel \
- listmodel
+ listmodel \
+ modelwrapper \
+ favmediamodel
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/modelwrapper/inc/glxmodelwrapper.h Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,82 @@
+/*
+* 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
+*
+*/
+
+#ifndef GLXMODELWRAPPER_H
+#define GLXMODELWRAPPER_H
+
+#include <QAbstractItemModel>
+
+#ifdef BUILD_MODELWRAPPER
+#define GLX_MODELWRAPPER_EXPORT Q_DECL_EXPORT
+#else
+#define GLX_MODELWRAPPER_EXPORT Q_DECL_IMPORT
+#endif
+
+
+class GLX_MODELWRAPPER_EXPORT GlxModelWrapper : public QAbstractItemModel
+{
+Q_OBJECT
+public :
+
+ GlxModelWrapper();
+ ~GlxModelWrapper();
+ void setModel(QAbstractItemModel *model);
+ void setRoles(int convertrole, int originalrole = Qt::DecorationRole);
+
+ int rowCount(const QModelIndex &parent = QModelIndex()) const;
+ int columnCount(const QModelIndex &parent = QModelIndex()) const;
+ QModelIndex parent(const QModelIndex &child) const;
+ QVariant data(const QModelIndex &idx, int role) const;
+ bool setData ( const QModelIndex & index, const QVariant & value, int role = Qt::EditRole);
+ QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
+ QModelIndex basemodelindex(int row, int column, const QModelIndex &parent = QModelIndex()) const;
+ void scrollingStarted();
+ void scrollingEnded();
+
+
+private:
+ void connectToModel();
+ void disConnectFromModel();
+
+protected slots:
+ void modelDestroyed();
+ void dataChangedinModel(QModelIndex startIndex, QModelIndex endIndex);
+ void rowsAboutToBeInserted(const QModelIndex &parent,int start,int end);
+ void rowsInserted(const QModelIndex &parent, int start, int end);
+ void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end);
+ void rowsRemoved(const QModelIndex &parent, int start, int end);
+ //These might be needed later. Commenting now
+ /*void columnsAboutToBeInserted(QModelIndex,int,int);
+ void columnsInserted(QModelIndex,int,int);
+ void columnsAboutToBeRemoved(QModelIndex,int,int);
+ void columnsRemoved(QModelIndex,int,int);
+ void rowsMoved(QModelIndex, int, int, QModelIndex, int);
+ void layoutAboutToBeChanged();
+ void layoutChanged();
+ void modelReset();
+ void destroyed();*/
+
+private:
+
+ void resetTheModel();
+
+ QAbstractItemModel *mModel;
+ int mOriginalRole;
+ int mConvertRole;
+};
+
+#endif /* GLXMODELWRAPPER_H */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/modelwrapper/modelwrapper.pro Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,38 @@
+#/*
+#* 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:
+#*
+#*/
+TEMPLATE = lib
+TARGET = glxmodelwrapper
+DEPENDPATH += . inc src
+INCLUDEPATH += . ../../../../inc \
+ ../../../inc
+
+CONFIG += hb
+
+
+DEFINES += BUILD_MODELWRAPPER
+
+symbian: {
+INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
+TARGET.UID3 = 0x2000718C
+TARGET.CAPABILITY = ALL -TCB
+TARGET.EPOCALLOWDLLDATA = 1
+}
+# Input
+HEADERS += inc/glxmodelwrapper.h
+SOURCES += src/glxmodelwrapper.cpp
+
+DEFINES += QT_NO_DEBUG_OUTPUT QT_NO_WARNING_OUTPUT
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/uiengine/model/modelwrapper/src/glxmodelwrapper.cpp Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,208 @@
+/*
+* 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 <glxmodelwrapper.h>
+#include <glxmodelparm.h>
+#include <QDebug>
+
+GlxModelWrapper::GlxModelWrapper(): mModel ( NULL),
+ mOriginalRole(Qt::DecorationRole),
+ mConvertRole(Qt::DecorationRole)
+ {
+
+ }
+
+void GlxModelWrapper::setModel(QAbstractItemModel *model)
+ {
+ if(model && mModel != model)
+ {
+ disConnectFromModel();
+ mModel = model;
+ connectToModel();
+ resetTheModel();
+ }
+ }
+
+
+void GlxModelWrapper::setRoles(int convertrole, int originalrole)
+ {
+ mConvertRole = convertrole;
+ mOriginalRole = originalrole;
+ }
+
+void GlxModelWrapper::scrollingStarted()
+ {
+
+ }
+
+void GlxModelWrapper::scrollingEnded()
+ {
+
+ }
+
+void GlxModelWrapper::connectToModel()
+ {
+ connect(mModel, SIGNAL(destroyed()),this, SLOT(modelDestroyed()));
+ connect(mModel, SIGNAL(dataChanged(QModelIndex,QModelIndex)),this,SLOT(dataChangedinModel(QModelIndex,QModelIndex)));
+ connect(mModel, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),this,SLOT(rowsAboutToBeInserted(QModelIndex,int,int)));
+ connect(mModel, SIGNAL(rowsInserted(QModelIndex,int,int)),this, SLOT(rowsInserted(QModelIndex,int,int)));
+ connect(mModel, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),this,SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)));
+ connect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)),this,SLOT(rowsRemoved(QModelIndex,int,int)));
+ }
+
+void GlxModelWrapper::disConnectFromModel()
+ {
+ if(mModel)
+ {
+ disconnect(mModel, SIGNAL(destroyed()),this, SLOT(modelDestroyed()));
+ disconnect(mModel, SIGNAL(dataChanged(QModelIndex,QModelIndex)),this,SLOT(dataChangedinModel(QModelIndex,QModelIndex)));
+ disconnect(mModel, SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),this,SLOT(rowsAboutToBeInserted(QModelIndex,int,int)));
+ disconnect(mModel, SIGNAL(rowsInserted(QModelIndex,int,int)),this, SLOT(rowsInserted(QModelIndex,int,int)));
+ disconnect(mModel, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),this,SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)));
+ disconnect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)),this,SLOT(rowsRemoved(QModelIndex,int,int)));
+ }
+ }
+
+
+GlxModelWrapper::~GlxModelWrapper()
+ {
+ disConnectFromModel();
+ }
+
+int GlxModelWrapper::rowCount(const QModelIndex &parent ) const
+ {
+ Q_UNUSED(parent);
+ if(mModel)
+ return (mModel->rowCount());
+ else
+ return 0;
+ }
+
+int GlxModelWrapper::columnCount(const QModelIndex &parent ) const
+ {
+ Q_UNUSED(parent);
+ return 1;
+ }
+
+QModelIndex GlxModelWrapper::parent(const QModelIndex &child) const
+ {
+ Q_UNUSED(child);
+ return QModelIndex(); // No need to Check mModel ,Should i Set mModel As parent
+ }
+
+QVariant GlxModelWrapper::data(const QModelIndex &idx, int role) const
+ {
+ if(mModel)
+ {
+ if(mOriginalRole == role)
+ {
+ return (mModel->data(idx,mConvertRole));
+ }
+ else
+ {
+ return (mModel->data(idx,role));
+ }
+ }
+ else
+ {
+ return QVariant();
+ }
+ }
+
+bool GlxModelWrapper::setData ( const QModelIndex & idx, const QVariant & value, int role )
+ {
+ if(mModel)
+ {
+ return (mModel->setData(mModel->index(idx.row(),0),value,role));
+ }
+ else
+ {
+ return FALSE;
+ }
+ }
+
+QModelIndex GlxModelWrapper::index(int row, int column, const QModelIndex &parent) const
+ {
+ Q_UNUSED(parent);
+ if ( ( row < 0 ) || ( row >= rowCount() ) || ( column < 0 ) || ( column >= columnCount() ) )
+ {
+ return QModelIndex();
+ }
+ return QAbstractItemModel::createIndex(row, column);
+ }
+
+QModelIndex GlxModelWrapper::basemodelindex(int row, int column, const QModelIndex &parent) const
+ {
+ Q_UNUSED(parent);
+ if(mModel)
+ {
+ return (mModel->index(row,column));
+ }
+ else
+ {
+ return QModelIndex();
+ }
+ }
+
+void GlxModelWrapper::modelDestroyed()
+ {
+ disConnectFromModel();
+ mModel = NULL;
+ resetTheModel();
+ }
+
+void GlxModelWrapper::resetTheModel()
+ {
+ beginResetModel();
+ endResetModel();
+ }
+
+void GlxModelWrapper::dataChangedinModel(QModelIndex startIndex, QModelIndex endIndex)
+ {
+ emit dataChanged(index(startIndex.row(),startIndex.column()),index(endIndex.row(),endIndex.column()));
+ }
+
+void GlxModelWrapper::rowsAboutToBeInserted(const QModelIndex &parent,int start,int end)
+ {
+ Q_UNUSED(parent);
+ Q_UNUSED(start);
+ Q_UNUSED(end);
+ }
+
+void GlxModelWrapper::rowsInserted(const QModelIndex &parent, int start, int end)
+ {
+ Q_UNUSED(parent);
+ beginInsertRows(QModelIndex(), start, end);
+ endInsertRows();
+ }
+
+void GlxModelWrapper::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end)
+ {
+ Q_UNUSED(parent);
+ Q_UNUSED(start);
+ Q_UNUSED(end);
+ }
+
+void GlxModelWrapper::rowsRemoved(const QModelIndex &parent, int start, int end)
+ {
+ Q_UNUSED(parent);
+ beginRemoveRows(QModelIndex(), start, end);
+ endRemoveRows();
+ }
+
+
+
--- a/ui/viewmanagement/statehandler/src/glxactionhandler.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/viewmanagement/statehandler/src/glxactionhandler.cpp Fri May 14 15:52:22 2010 +0300
@@ -56,7 +56,9 @@
case EGlxCmdContextRename:
commandId = EGlxCmdRename;
break;
-
+ case EGlxCmdContextRemoveFrom:
+ commandId = EGlxCmdRemoveFrom;
+ break;
default : break;
}
--- a/ui/viewmanagement/statehandler/src/glxcommandhandlerfactory.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/viewmanagement/statehandler/src/glxcommandhandlerfactory.cpp Fri May 14 15:52:22 2010 +0300
@@ -26,6 +26,7 @@
#include <glxcommandhandlersend.h>
#include <glxcommandhandlerrename.h>
+
GlxCommandHandler* GlxCommandHandlerFactory::CreateCommandHandler(int commandId)
{
GlxCommandHandler* cmdHandler = NULL;
@@ -33,11 +34,15 @@
{
case EGlxCmdDelete: cmdHandler = new GlxCommandHandlerDelete();
break;
- case EGlxCmdAddToAlbum: cmdHandler = new GlxCommandHandlerAddToContainer();
+ case EGlxCmdAddToAlbum:
+ case EGlxCmdAddToFav:
+ cmdHandler = new GlxCommandHandlerAddToContainer();
break;
case EGlxCmdRotate: cmdHandler = new GlxCommandHandlerRotate();
break;
- case EGlxCmdRemoveFrom: cmdHandler = new GlxCommandHandlerRemoveFrom();
+ case EGlxCmdRemoveFrom:
+ case EGlxCmdRemoveFromFav:
+ cmdHandler = new GlxCommandHandlerRemoveFrom();
break;
case EGlxCmdAddMedia: cmdHandler = new GlxCommandHandlerNewMedia();
break;
--- a/ui/viewmanagement/statehandler/src/glxstatemanager.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/viewmanagement/statehandler/src/glxstatemanager.cpp Fri May 14 15:52:22 2010 +0300
@@ -386,7 +386,7 @@
void GlxStateManager::setFullScreenContext()
{
- if ( mViewManager->orientation() == Qt::Horizontal ) {
+ if ( mViewManager->orientation() == Qt::Horizontal || mCurrentState->id() == GLX_SLIDESHOWVIEW_ID ) {
mCurrentModel->setData(QModelIndex(), (int)GlxContextLsFs, GlxContextRole );
}
else {
@@ -492,13 +492,6 @@
mViewManager->handleUserAction(mCurrentState->id(), id);
id = EGlxCmdHandled;
break;
- case EGlxCmdRotate:
- mViewManager->handleUserAction(mCurrentState->id(), id);
- //Disable Rotate CH mActionHandler->handleAction(id,mCollectionId);
- id = EGlxCmdHandled;
- break;
-
-
case EGlxCmdSetupItem :
emit setupItemsSignal();
--- a/ui/viewmanagement/viewmanager/src/glxmenumanager.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/viewmanagement/viewmanager/src/glxmenumanager.cpp Fri May 14 15:52:22 2010 +0300
@@ -31,8 +31,9 @@
GlxMenuManager::GlxMenuManager(HbMainWindow* mainWindow)
- : mMainWindow( mainWindow ),
- mContextMenu( 0 )
+ : mModel( 0),
+ mMainWindow( mainWindow ),
+ mContextMenu( 0 )
{
}
@@ -163,10 +164,6 @@
action = menu->addAction(GLX_OPTION_ADD_TO_ALBUM);
action->setData(EGlxCmdAddToAlbum);
connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
-
- action = menu->addAction("Rotate");
- action->setData(EGlxCmdRotate);
- connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
}
void GlxMenuManager::setAllActionVisibility( QList<QAction*> actionList, bool visible )
@@ -263,7 +260,13 @@
action = mContextMenu->addAction(GLX_MENU_SLIDESHOW);
action->setData(EGlxCmdSelectSlideshow);
connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
-
+
+ if ( viewSubState() == ALBUM_ITEM_S ) {
+ action = mContextMenu->addAction(GLX_OPTION_REMOVE_FROM_ALBUM);
+ action->setData(EGlxCmdContextRemoveFrom);
+ connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
+ }
+
action = mContextMenu->addAction(GLX_MENU_ADD_TO_ALBUM);
action->setData(EGlxCmdContextAddToAlbum);
connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
@@ -273,29 +276,46 @@
connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
break;
- case GLX_LISTVIEW_ID :
- action = mContextMenu->addAction(GLX_MENU_SLIDESHOW);
- action->setData(EGlxCmdAlbumSlideShow);
- connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
-
- action = mContextMenu->addAction(GLX_MENU_RENAME);
- action->setData(EGlxCmdContextRename);
- connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
-
- action = mContextMenu->addAction(GLX_MENU_DELETE);
- action->setData(EGlxCmdContextAlbumDelete);
- connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
+ case GLX_LISTVIEW_ID : {
+ int count = 0;
+ QVariant variant = mModel->data( mModel->index(0,0), GlxListItemCount );
+ if ( variant.isValid() && variant.canConvert<int> () ) {
+ count = variant.value<int>();
+ }
+
+ if ( count ) {
+ action = mContextMenu->addAction(GLX_MENU_SLIDESHOW);
+ action->setData(EGlxCmdAlbumSlideShow);
+ connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
+ }
+
+ variant = mModel->data( mModel->index(0,0), GlxSystemItemRole );
+ if ( variant.isValid() && variant.canConvert<bool> () && ( variant.value<bool>() == false ) ) {
+ action = mContextMenu->addAction(GLX_MENU_RENAME);
+ action->setData(EGlxCmdContextRename);
+ connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
+
+ action = mContextMenu->addAction(GLX_MENU_DELETE);
+ action->setData(EGlxCmdContextAlbumDelete);
+ connect(action, SIGNAL(triggered()), this, SLOT(menuItemSelected()));
+ }
+ }
break;
default:
break;
}
- connect( mMainWindow, SIGNAL( aboutToChangeOrientation () ), mContextMenu, SLOT( close() ) );
- connect( mContextMenu, SIGNAL( aboutToClose () ), this, SLOT( closeContextMenu() ) );
- mContextMenu->setPreferredPos( pos );
- mContextMenu->show();
-
+ if ( mContextMenu->isEmpty() ) {
+ delete mContextMenu ;
+ mContextMenu = NULL ;
+ }
+ else {
+ connect( mMainWindow, SIGNAL( aboutToChangeOrientation () ), mContextMenu, SLOT( close() ) );
+ connect( mContextMenu, SIGNAL( aboutToClose () ), this, SLOT( closeContextMenu() ) );
+ mContextMenu->setPreferredPos( pos );
+ mContextMenu->show();
+ }
}
void GlxMenuManager::closeContextMenu()
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/views/detailsview/inc/glxdetailscustomicon.h Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,63 @@
+/*
+* 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
+*
+*/
+
+#ifndef GLXDETAILSCUSTOMICON_H
+#define GLXDETAILSCUSTOMICON_H
+
+#include <hbwidget.h>
+class HbIconItem;
+class HbIcon;
+
+class GlxDetailsCustomIcon : public HbWidget
+{
+ Q_OBJECT
+
+public:
+ GlxDetailsCustomIcon(QGraphicsItem *parent);
+ ~GlxDetailsCustomIcon();
+ /*
+ * Sets the Geometry of the Custom Widget
+ */
+ void setItemGeometry(QRect screenRect);
+
+ /*
+ * Sets the Size of the Favourite Icon
+ */
+ void setItemSize(const QSizeF &size);
+
+ /*
+ * Sets the Position of the Favourite Icon
+ */
+ void setItemPos(qreal ax, qreal ay);
+
+ /*
+ * Sets the Icon of Favourite IconItem.
+ */
+ void setItemIcon(const HbIcon &icon);
+
+protected:
+ void mousePressEvent(QGraphicsSceneMouseEvent *event);
+ void mouseReleaseEvent (QGraphicsSceneMouseEvent *event);
+
+signals :
+ void updateFavourites();
+
+private:
+ HbIconItem *mFavIcon;
+};
+
+#endif // GLXDETAILSCUSTOMICON_H
--- a/ui/views/detailsview/inc/glxdetailsview.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/detailsview/inc/glxdetailsview.h Fri May 14 15:52:22 2010 +0300
@@ -27,6 +27,9 @@
class QAbstractItemModel;
class HbIconItem;
class GlxDetailsCustomWidgets;
+class GlxDetailsCustomIcon;
+class GlxFavMediaModel;
+
class GlxDetailsView : public GlxView
{
@@ -76,7 +79,9 @@
public slots:
void updateLayout(Qt::Orientation);
void rowsRemoved(const QModelIndex &parent, int start, int end);
-
+ void dataChanged(QModelIndex startIndex, QModelIndex endIndex);
+ void updateFavourites();
+
private:
//Adds the Widget required to show the details
@@ -108,13 +113,34 @@
* clear all the model releted connection and data
*/
void clearCurrentModel();
+
+ /*
+ * cleans up the resources used.
+ */
+ void cleanUp();
+
+ /*
+ * create the favourite model
+ */
+ void setFavModel();
private:
+
+ //Contains the thumbnail shown in teh details view.
HbIconItem *mDetailsIcon;
-
- //The media Model to acess the attributes not owned
+
+ //Contains the favourite icon which adds or removes the image to favourite folder
+ GlxDetailsCustomIcon *mFavIcon;
+
+ //The media Model to acess the attributes; not owned,dont delete.
QAbstractItemModel *mModel;
+
+ //The media Model to acess the attributes whether image is in favourite folder or not;owned by this view
+ GlxFavMediaModel *mFavModel;
+
+ //The Model for the Form
+ HbDataFormModel *mDetailModel;
//The reference to the Main Window
HbMainWindow *mWindow;
@@ -122,13 +148,18 @@
//The data form for the detail
HbDataForm * mDataForm;
- //The Model for the Form
- HbDataFormModel *mDetailModel;
-
- //Custom widgets
+ //Custom widgets which will contain the widgets not created/supported by data form
GlxDetailsCustomWidgets *mCustomPrototype;
int mSelIndex;
-
+
+ //Contains the Datelabel item
+ HbDataFormModelItem *mDateLabelItem;
+
+ //Contains the ImageLabel item
+ HbDataFormModelItem *mImageLabelitem;
+
+ //Contains the Comments item
+ HbDataFormModelItem *mCommentsLabelitem;
};
#endif //GLXDETAILSVIEW_H
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ui/views/detailsview/src/glxdetailscustomicon.cpp Fri May 14 15:52:22 2010 +0300
@@ -0,0 +1,95 @@
+/*
+* 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 <hbiconitem.h>
+#include <hbframeitem.h>
+#include <glxdetailscustomicon.h>
+#include <QEvent>
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//mousePressEvent
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsCustomIcon::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+ Q_UNUSED(event)
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//clearCurrentModel
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsCustomIcon::mouseReleaseEvent (QGraphicsSceneMouseEvent *event)
+{
+ Q_UNUSED(event)
+ emit updateFavourites();
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//GlxDetailsCustomIcon
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsCustomIcon::GlxDetailsCustomIcon(QGraphicsItem *parent) : HbWidget(parent)
+{
+ mFavIcon = new HbIconItem(this);
+ HbFrameItem* frame = new HbFrameItem(this);
+ frame->frameDrawer().setFrameType(HbFrameDrawer::NinePieces);
+ frame->frameDrawer().setFrameGraphicsName("qtg_fr_multimedia_trans");
+ frame->graphicsItem()->setOpacity(0.2);
+ setBackgroundItem(frame->graphicsItem(),-1);
+
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//~GlxDetailsCustomIcon
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsCustomIcon::~GlxDetailsCustomIcon()
+{
+ delete mFavIcon;
+ mFavIcon = NULL;
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setItemGeometry
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsCustomIcon::setItemGeometry(QRect screenRect)
+{
+ setGeometry(screenRect);
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setItemSize
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsCustomIcon::setItemSize(const QSizeF &size)
+{
+ mFavIcon->setSize(size);
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setItemPos
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsCustomIcon::setItemPos(const qreal ax,const qreal ay)
+{
+ //place the FavIcon with respect to the parent i.e HbWidget
+ mFavIcon->setPos(ax ,ay);
+}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setItemIcon
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsCustomIcon::setItemIcon(const HbIcon &icon)
+{
+ mFavIcon->setIcon(icon);
+}
--- a/ui/views/detailsview/src/glxdetailscustomwidgets.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/detailsview/src/glxdetailscustomwidgets.cpp Fri May 14 15:52:22 2010 +0300
@@ -58,13 +58,7 @@
return dateLabel;
}
- case CommentsItem:
- {
- qDebug("GlxDetailsCustomWidgets::createCustomWidget:CommentsItem");
- HbLineEdit *lineEdit = new HbLineEdit();
- lineEdit->setGeometry(25,25,280,120);
- return lineEdit;
- }
+
default:
return 0;
--- a/ui/views/detailsview/src/glxdetailsview.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/detailsview/src/glxdetailsview.cpp Fri May 14 15:52:22 2010 +0300
@@ -1,29 +1,27 @@
/*
-* 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 <QModelIndex>
#include <qdatetime.h>
//--------------------------------------------------------------------------------------------------------------------------------------------
-
+#include <hblabel.h>
#include <hbdataform.h>
-#include <hblabel.h>
#include <hbinstance.h>
#include <hbiconitem.h>
#include <hblineedit.h>
@@ -32,13 +30,17 @@
#include <hbdataformviewitem.h>
//--------------------------------------------------------------------------------------------------------------------------------------------
-
-#include <glxmediamodel.h>
-#include "glxdetailsview.h"
+#include "glxviewids.h"
+#include "glxicondefs.h" //Contains the icon names/Ids
#include "glxmodelparm.h"
+#include "glxmediamodel.h"
+#include "glxdetailsview.h"
+#include "glxfavmediamodel.h"
+#include <glxcommandhandlers.hrh>
+#include "glxdetailscustomicon.h"
#include "glxdetailscustomwidgets.h"
-#include "glxviewids.h"
-#include <glxcommandhandlers.hrh>
+#include <glxcollectionpluginalbums.hrh>
+
#include "OstTraceDefinitions.h"
#ifdef OST_TRACE_COMPILER_IN_USE
@@ -46,51 +48,31 @@
#endif
+//SIZE OF THE IMAGE , LAYOUTS TEAM NEED TO GIVER THE SIZE IN UNITS
+#define GLX_IMAGE_SIZE 215
+
//--------------------------------------------------------------------------------------------------------------------------------------------
//GlxDetailsView
//--------------------------------------------------------------------------------------------------------------------------------------------
-GlxDetailsView::GlxDetailsView(HbMainWindow *window) : GlxView ( GLX_DETAILSVIEW_ID),
- mDetailsIcon(NULL),
- mModel(NULL),
- mWindow(window),
- mDataForm(NULL),
+GlxDetailsView::GlxDetailsView(HbMainWindow *window) :
+ GlxView ( GLX_DETAILSVIEW_ID),
+ mDetailsIcon(NULL),
+ mFavIcon(NULL),
+ mModel(NULL),
+ mFavModel(NULL),
mDetailModel(NULL),
+ mWindow(window),
+ mDataForm(NULL),
mCustomPrototype(NULL),
- mSelIndex (0)
- {
- OstTraceFunctionEntry0( GLXDETAILSVIEW_GLXDETAILSVIEW_ENTRY );
-
+ mSelIndex(0),
+ mDateLabelItem(NULL),
+ mImageLabelitem(NULL),
+ mCommentsLabelitem(NULL)
+ {
+ OstTraceFunctionEntry0( GLXDETAILSVIEW_GLXDETAILSVIEW_ENTRY );
setContentFullScreen( true );//for smooth transtion between grid to full screen and vice versa
OstTraceFunctionExit0( GLXDETAILSVIEW_GLXDETAILSVIEW_EXIT );
- }
-
-//--------------------------------------------------------------------------------------------------------------------------------------------
-//~GlxDetailsView
-//--------------------------------------------------------------------------------------------------------------------------------------------
-GlxDetailsView::~GlxDetailsView()
- {
- OstTrace0( TRACE_IMPORTANT, GLXDETAILSVIEW_GLXDETAILSVIEW, "GlxDetailsView::~GlxDetailsView" );
-
- if(mDetailsIcon) {
- delete mDetailsIcon;
- mDetailsIcon = NULL;
- }
-
- if(mDataForm && mDataForm->model()) {
- delete mDataForm->model();
- mDataForm->setModel(0);
- }
-
- if(mDataForm) {
- delete mDataForm;
- mDataForm = NULL;
- }
-
-
-
- clearCurrentModel();
- disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(updateLayout(Qt::Orientation)));
- }
+ }
//--------------------------------------------------------------------------------------------------------------------------------------------
//activate
@@ -98,9 +80,9 @@
void GlxDetailsView::activate()
{
OstTraceFunctionEntry0( GLXDETAILSVIEW_ACTIVATE_ENTRY );
-
- setFormData();
+ setFormData();
connect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(updateLayout(Qt::Orientation)));
+ connect(mFavIcon,SIGNAL(updateFavourites()),this ,SLOT(updateFavourites()));
OstTraceFunctionExit0( GLXDETAILSVIEW_ACTIVATE_EXIT );
}
@@ -108,27 +90,29 @@
//initializeView
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::initializeView(QAbstractItemModel *model)
-{
+ {
OstTraceFunctionEntry0( GLXDETAILSVIEW_INITIALIZEVIEW_ENTRY );
//To show the thumbnail
if ( mDataForm == NULL) {
- mDetailsIcon = new HbIconItem(this);
+ mDataForm = new HbDataForm(this);
+ mDetailModel = new HbDataFormModel();
- //Create the form and the model for the data form
- mDataForm = new HbDataForm(this);
- mDetailModel = new HbDataFormModel();
+ //custom prototype
+ mCustomPrototype = new GlxDetailsCustomWidgets(mDataForm);
+ QList <HbAbstractViewItem*> protos = mDataForm->itemPrototypes();
+ protos.append(mCustomPrototype);
+ mDataForm->setItemPrototypes(protos);
- //custom prototype
- mCustomPrototype = new GlxDetailsCustomWidgets(mDataForm);
- QList <HbAbstractViewItem*> protos = mDataForm->itemPrototypes();
- protos.append(mCustomPrototype);
- mDataForm->setItemPrototypes(protos);
-
- //Add the Widgets according to the mime type
- addWidgets();
+ //Add the Widgets according to the mime type
+ addWidgets();
}
+ if( mDetailsIcon == NULL) {
+ mDetailsIcon = new HbIconItem(this);
+ mFavIcon = new GlxDetailsCustomIcon(this);
+ }
+
//Set the Model
mModel = model;
initializeNewModel();
@@ -137,31 +121,77 @@
updateLayout(mWindow->orientation());
//Shows the Image
- showImage();
-
+ showImage();
OstTraceFunctionExit0( GLXDETAILSVIEW_INITIALIZEVIEW_EXIT );
-}
+ }
//--------------------------------------------------------------------------------------------------------------------------------------------
//resetView
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::resetView()
{
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_RESETVIEW, "GlxDetailsView::resetView" );
-
- //Do Nothing here
+ OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_RESETVIEW, "GlxDetailsView::resetView" );
}
//--------------------------------------------------------------------------------------------------------------------------------------------
//deActivate
//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::deActivate()
-{
+ {
OstTraceFunctionEntry0( GLXDETAILSVIEW_DEACTIVATE_ENTRY );
+ cleanUp();
+ OstTraceFunctionExit0( GLXDETAILSVIEW_DEACTIVATE_EXIT );
+ }
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//cleanUp
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::cleanUp()
+ {
clearCurrentModel();
+
+ //clear the connections
+ if(mWindow) {
disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(updateLayout(Qt::Orientation)));
- OstTraceFunctionExit0( GLXDETAILSVIEW_DEACTIVATE_EXIT );
-}
+ }
+
+ if(mFavModel) {
+ disconnect( mFavModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ), this, SLOT( dataChanged(QModelIndex,QModelIndex) ) );
+ }
+
+ if(mFavIcon) {
+ disconnect(mFavIcon,SIGNAL(updateFavourites()),this ,SLOT(updateFavourites()));
+ }
+
+ delete mFavModel;
+ mFavModel = NULL;
+
+ delete mFavIcon;
+ mFavIcon = NULL;
+
+ delete mDetailsIcon;
+ mDetailsIcon = NULL;
+ }
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//~GlxDetailsView
+//--------------------------------------------------------------------------------------------------------------------------------------------
+GlxDetailsView::~GlxDetailsView()
+ {
+ OstTrace0( TRACE_IMPORTANT, GLXDETAILSVIEW_GLXDETAILSVIEW, "GlxDetailsView::~GlxDetailsView" );
+
+ cleanUp();
+
+ if(mDetailModel) {
+ delete mDetailModel;
+ mDataForm->setModel(0);
+ }
+
+ if(mDataForm) {
+ delete mDataForm;
+ mDataForm = NULL;
+ }
+ }
//--------------------------------------------------------------------------------------------------------------------------------------------
//addWidgets
@@ -169,34 +199,47 @@
void GlxDetailsView::addWidgets()
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_ADDWIDGETS, "GlxDetailsView::addWidgets create Form" );
-
+
//----------------------------START OF CREATION OF WIDGETS---------------------------------//
// To add new widgets in the details view, add it here.
-
- //---------------------------IMAGE NAME LABEL --------------------------------------------//
- OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_ADDWIDGETS, "GlxDetailsView::addWidgets create Image Label" );
- HbDataFormModelItem *imageLabelitem =
- mDetailModel->appendDataFormItem(HbDataFormModelItem::TextItem, QString("Name"), mDetailModel->invisibleRootItem());
- imageLabelitem->setData(HbDataFormModelItem::KeyRole, QString(""));
- imageLabelitem->setContentWidgetData(QString("text"),QString(""));
-
+ //---------------------------IMAGE NAME LABEL --------------------------------------------//
+ OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_ADDWIDGETS, "GlxDetailsView::addWidgets create Image Label" );
+ mImageLabelitem = mDetailModel->appendDataFormItem(HbDataFormModelItem::TextItem, QString("Name"), NULL);
+
//---------------------------DATE LABEL --------------------------------------------//
OstTrace0( TRACE_NORMAL, DUP2_GLXDETAILSVIEW_ADDWIDGETS, "GlxDetailsView::addWidgets date label" );
- HbDataFormModelItem *dateLabelItem = mDetailModel->appendDataFormItem((HbDataFormModelItem::DataItemType)(DateLabelItem), QString("Date"), mDetailModel->invisibleRootItem());
- dateLabelItem->setData(HbDataFormModelItem::KeyRole,QString(""));
+ mDateLabelItem = mDetailModel->appendDataFormItem((HbDataFormModelItem::DataItemType)(DateLabelItem), QString("Date"), NULL);
+
//----------------------------COMMENTS TEXT ITEM---------------------------------------------//
OstTrace0( TRACE_NORMAL, DUP5_GLXDETAILSVIEW_ADDWIDGETS, "GlxDetailsView::addWidgets comment text" );
- HbDataFormModelItem *commentsLabelItem = mDetailModel->appendDataFormItem((HbDataFormModelItem::DataItemType)(CommentsItem), QString("Comments"), mDetailModel->invisibleRootItem());
- commentsLabelItem->setData(HbDataFormModelItem::KeyRole, QString(""));
+ mCommentsLabelitem = mDetailModel->appendDataFormItem(HbDataFormModelItem::TextItem, QString("Description"), NULL);
//----------------------------END OF CREATION OF WIDGETS-------------------------------------//
//Set the model to the Data Form
- mDataForm->setModel(mDetailModel);
+ mDataForm->setModel(mDetailModel);
}
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//setFavModel
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::setFavModel()
+ {
+ GlxModelParm modelParm;
+
+ QString imagePath = (mModel->data(mModel->index(mModel->data(mModel->index(0,0),GlxFocusIndexRole).value<int>(),0),GlxUriRole)).value<QString>();
+
+ if(mFavModel == NULL) {
+ modelParm.setCollection( KGlxCollectionPluginFavoritesAlbumId );
+ modelParm.setContextMode(GlxContextFavorite);
+ modelParm.setPath(imagePath);
+ mFavModel = new GlxFavMediaModel( modelParm );
+ }
+ QString imageName = imagePath.section('\\',-1);
+ connect( mFavModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ), this, SLOT( dataChanged(QModelIndex,QModelIndex) ) );
+ }
//--------------------------------------------------------------------------------------------------------------------------------------------
//setModel
@@ -212,14 +255,16 @@
initializeNewModel();
}
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//getAnimationItem
+//--------------------------------------------------------------------------------------------------------------------------------------------
QGraphicsItem * GlxDetailsView::getAnimationItem(GlxEffect transtionEffect)
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_GETANIMATIONITEM, "GlxDetailsView::getAnimationItem" );
if ( transtionEffect == FULLSCREEN_TO_DETAIL
|| transtionEffect == DETAIL_TO_FULLSCREEN ) {
- return this;
+ return this;
}
-
return NULL;
}
@@ -229,26 +274,82 @@
void GlxDetailsView::updateLayout(Qt::Orientation orient)
{
OstTrace1( TRACE_NORMAL, GLXDETAILSVIEW_UPDATELAYOUT, "GlxDetailsView::updateLayout;orient=%d", orient );
-
- QRect screen_rect = mWindow->geometry();
- setGeometry(screen_rect);
+
+ qreal IconPosX = 0.0;
+ qreal IconPosY = 0.0;
+ qreal FavIconPosX = 0.0;
+ qreal FavIconPosY = 0.0;
+ qreal DataFormX = 0.0;
+ qreal DataFormY = 0.0;
+ qreal DataFormWidth = 0.0;
+ qreal DataFormHeight = 0.0;
+
+
+ qreal screenWidth = 0.0;
+ qreal screenHeight = 0.0;
+ qreal leftMargin = 0.0;
+ qreal bottomMargin = 0.0;
+ qreal screenMargin = 0.0;
+ qreal favIconSize = 0.0;
+ qreal chromeHeight = 0.0;
+ qreal middleVerticalMargin = 0.0;
+
+ style()->parameter("hb-param-screen-width", screenWidth);
+ style()->parameter("hb-param-screen-height", screenHeight);
+
+ style()->parameter("hb-param-margin-gene-middle-vertical", middleVerticalMargin);
+ style()->parameter("hb-param-margin-gene-left", leftMargin);
+ style()->parameter("hb-param-margin-gene-bottom", bottomMargin);
+ style()->parameter("hb-param-margin-gene-screen", screenMargin);
+
+ style()->parameter("hb-param-graphic-size-primary-small", favIconSize);
+ style()->parameter("hb-param-widget-chrome-height", chromeHeight);
+
if(orient == Qt::Horizontal)
{
- OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_UPDATELAYOUT, "GlxDetailsView::updateLayout HORIZONTAL" );
- mDetailsIcon->setPos(15,75);
- mDataForm->setGeometry(301,60,335,300);
+ OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_UPDATELAYOUT, "GlxDetailsView::updateLayout HORIZONTAL" );
+ setGeometry(0,0,640,360);
+ IconPosX = screenMargin;
+ IconPosY = (screenMargin + chromeHeight);
+ FavIconPosX = (IconPosX + GLX_IMAGE_SIZE - (favIconSize +10));
+ FavIconPosY = (IconPosY + GLX_IMAGE_SIZE - (favIconSize + 10));
+ DataFormX = screenMargin + GLX_IMAGE_SIZE + leftMargin ;
+ DataFormY = screenMargin + chromeHeight ;
+
+ //This Commented code should be un commented , once the screen width and height size issue is solved and also
+ //the dataform issue of wrapping issue is solved
+ // DataFormWidth = screenWidth(640) - DataFormX - screenMargin ;
+ // DataFormHeight = screenHeight(360) - DataFormY - screenMargin ;
+ DataFormWidth = screenWidth - (screenMargin + screenMargin) ;
+ DataFormHeight = screenHeight - DataFormY;
}
else
{
- OstTrace0( TRACE_NORMAL, DUP2_GLXDETAILSVIEW_UPDATELAYOUT, "GlxDetailsView::updateLayout VERTICAL" );
- mDetailsIcon->setPos(25,75);
- mDataForm->setGeometry(5,351,335,300);
- mDataForm->setMaximumWidth(340);
+ OstTrace0( TRACE_NORMAL, DUP2_GLXDETAILSVIEW_UPDATELAYOUT, "GlxDetailsView::updateLayout VERTICAL" );
+ setGeometry(0,0,screenWidth,screenHeight);
+ IconPosX = (screenWidth/2) - (GLX_IMAGE_SIZE/2);
+ IconPosY = (screenMargin + chromeHeight);
+ FavIconPosX = (IconPosX + GLX_IMAGE_SIZE - (favIconSize +10));
+ FavIconPosY = (IconPosY + GLX_IMAGE_SIZE - (favIconSize +10));
+ DataFormX = screenMargin;
+ DataFormY = IconPosY + GLX_IMAGE_SIZE + middleVerticalMargin + bottomMargin ;
+ DataFormWidth = screenWidth - (screenMargin + screenMargin) ;
+ DataFormHeight = screenHeight - DataFormY;
}
+
+ mDetailsIcon->setPos(IconPosX,IconPosY);
+ //The Numerical should be updated once we get the parameters size from the layouts.
+ mFavIcon->setItemGeometry(QRect(FavIconPosX-2 ,FavIconPosY-2 ,favIconSize+12,favIconSize + 12)) ;
+ //Place the FavIcon with respect to the Widget.
+ mFavIcon->setItemPos(2 ,2 );
+ mDataForm->setGeometry(DataFormX,DataFormY,DataFormWidth,DataFormHeight);
}
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//rowsRemoved
+//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::rowsRemoved(const QModelIndex &parent, int start, int end)
{
Q_UNUSED(parent);
@@ -271,29 +372,30 @@
void GlxDetailsView::showImage()
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SHOWIMAGE, "GlxDetailsView::showImage" );
-
+
QVariant variant = mModel->data( mModel->index(0,0), GlxFocusIndexRole );
if ( variant.isValid() && variant.canConvert<int> () ) {
- mSelIndex = variant.value<int>();
+ mSelIndex = variant.value<int>();
}
variant = mModel->data( mModel->index( mSelIndex ,0), GlxFsImageRole);
if ( variant.isValid() && variant.canConvert<HbIcon> () )
{
- if(mWindow->orientation() == Qt::Horizontal)
- {
- OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_SHOWIMAGE, "GlxDetailsView::showImage HORIZONTAL" );
-
- mDetailsIcon->resize(QSize(270, 270));
- mDetailsIcon->setIcon(variant.value<HbIcon>());
- }
- else
- {
- OstTrace0( TRACE_NORMAL, DUP2_GLXDETAILSVIEW_SHOWIMAGE, "GlxDetailsView::showImage VERTICAL" );
- mDetailsIcon->resize(QSize(310, 260));
- mDetailsIcon->setIcon(variant.value<HbIcon>());
- }
- }
+ QIcon itemIcon = variant.value<HbIcon>().qicon();
+ QPixmap itemPixmap = itemIcon.pixmap(GLX_IMAGE_SIZE,GLX_IMAGE_SIZE);
+ QSize sz(GLX_IMAGE_SIZE,GLX_IMAGE_SIZE);
+ itemPixmap = itemPixmap.scaled(sz, Qt::IgnoreAspectRatio );
+
+
+ HbIcon tmp = HbIcon( QIcon(itemPixmap)) ;
+ mDetailsIcon->setSize(QSize(GLX_IMAGE_SIZE, GLX_IMAGE_SIZE));
+ mDetailsIcon->setIcon(tmp);
+ mFavIcon->setItemIcon(HbIcon("qtg_graf_ratingslider_unrated"));
+
+ qreal favIconSize = 0.0;
+ style()->parameter("hb-param-graphic-size-primary-small", favIconSize);
+ mFavIcon->setItemSize(QSize(favIconSize+10, favIconSize+10));
+ }
}
//--------------------------------------------------------------------------------------------------------------------------------------------
@@ -302,9 +404,13 @@
void GlxDetailsView::setFormData()
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETFORMDATA, "GlxDetailsView::setFormData" );
-
+
+ //create and set the Favourite Model
+ setFavModel();
+
//Call to set the Image Name
setImageName();
+
//Call to set the date in the from
setDate();
}
@@ -319,20 +425,7 @@
QString imagePath = (mModel->data(mModel->index(mModel->data(mModel->index(0,0),GlxFocusIndexRole).value<int>(),0),GlxUriRole)).value<QString>();
QString imageName = imagePath.section('\\',-1);
- //Fetch the text edit for displaying the Name from the Form Model
- GlxDetailsCustomWidgets * imageLabel = (GlxDetailsCustomWidgets *)mDataForm->itemByIndex(mDetailModel->index(0,0));
-
- if(imageLabel)
- {
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETIMAGENAME, "GlxDetailsView::setImageName ImageLabel !=NULL" );
- HbLineEdit* label = static_cast<HbLineEdit*>(imageLabel->dataItemContentWidget());
-
- if(label)
- {
- OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_SETIMAGENAME, "GlxDetailsView::setImageName SetText" );
- label->setText(imageName);
- }
- }
+ mImageLabelitem->setContentWidgetData("text",imageName);
OstTraceFunctionExit0( GLXDETAILSVIEW_SETIMAGENAME_EXIT );
}
@@ -342,50 +435,83 @@
void GlxDetailsView::setDate()
{
OstTraceFunctionEntry0( GLXDETAILSVIEW_SETDATE_ENTRY );
-
+
QString datestring;
QString str("dd.MM.yyyy");
QDate date = (mModel->data(mModel->index(mModel->data(mModel->index(0,0),GlxFocusIndexRole).value<int>(),0),GlxDateRole)).value<QDate>();
if(date.isNull() == FALSE )
{
- OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETDATE, "GlxDetailsView::setDate is not NULL" );
- datestring = date.toString(str);
+ OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_SETDATE, "GlxDetailsView::setDate is not NULL" );
+ datestring = date.toString(str);
}
- //Fetch the Label from the Form Model
- GlxDetailsCustomWidgets * dateLabel = (GlxDetailsCustomWidgets *)mDataForm->itemByIndex(mDetailModel->index(1,0));
+ mDateLabelItem->setContentWidgetData("plainText",datestring);
- if(dateLabel)
- {
- OstTrace0( TRACE_NORMAL, DUP1_GLXDETAILSVIEW_SETDATE, "GlxDetailsView::setDate Datelabel is not NULL" );
-
- HbLabel* label = static_cast<HbLabel*>(dateLabel->dataItemContentWidget());
-
- if(label)
- {
- OstTrace0( TRACE_NORMAL, DUP2_GLXDETAILSVIEW_SETDATE, "GlxDetailsView::setDate SetText" );
- label->setPlainText(datestring);
- }
- }
OstTraceFunctionExit0( GLXDETAILSVIEW_SETDATE_EXIT );
}
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//initializeNewModel
+//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::initializeNewModel()
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_INITIALIZENEWMODEL, "GlxDetailsView::initializeNewModel" );
-
+
if ( mModel ) {
connect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(rowsRemoved(QModelIndex,int,int)));
}
}
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//clearCurrentModel
+//--------------------------------------------------------------------------------------------------------------------------------------------
void GlxDetailsView::clearCurrentModel()
{
OstTrace0( TRACE_NORMAL, GLXDETAILSVIEW_CLEARCURRENTMODEL, "GlxDetailsView::clearCurrentModel" );
-
+
if ( mModel ) {
disconnect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(rowsRemoved(QModelIndex,int,int)));
mModel = NULL ;
}
}
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//dataChanged
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::dataChanged(QModelIndex startIndex, QModelIndex endIndex)
+ {
+ Q_UNUSED(endIndex);
+
+ QVariant variant = mFavModel->data( startIndex, GlxFavorites );
+ if ( variant.isValid() && variant.canConvert<bool> () )
+ {
+ if(variant.value<bool>() )
+ {
+ mFavIcon->setItemIcon(HbIcon(GLXICON_ADD_TO_FAV));
+ }
+ else
+ {
+ mFavIcon->setItemIcon(HbIcon(GLXICON_REMOVE_FAV));
+ }
+ }
+ }
+
+//--------------------------------------------------------------------------------------------------------------------------------------------
+//updateFavourites
+//--------------------------------------------------------------------------------------------------------------------------------------------
+void GlxDetailsView::updateFavourites()
+ {
+ QVariant variant = mFavModel->data(mFavModel->index(0,0), GlxFavorites );
+ if ( variant.isValid() && variant.canConvert<bool> ())
+ {
+ if(variant.value<bool>() )
+ {
+ emit actionTriggered( EGlxCmdRemoveFromFav);
+ }
+ else
+ {
+ emit actionTriggered(EGlxCmdAddToFav);
+ }
+ }
+ }
--- a/ui/views/effectengine/inc/glxeffectengine.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/effectengine/inc/glxeffectengine.h Fri May 14 15:52:22 2010 +0300
@@ -32,6 +32,9 @@
#include <QList>
#include "glxuistd.h"
+class XQSettingsKey;
+class XQSettingsManager;
+class QStringList;
typedef enum
{
NO_MOVE,
@@ -47,10 +50,29 @@
{
public :
GlxSlideShowSetting(int slideDelayTime = 0, GlxEffect effect = NO_EFFECT, GlxSlideShowMoveDir moveDir = NO_MOVE);
+ ~GlxSlideShowSetting();
int slideDelayTime ( ) { return mSlideDelayTime; }
GlxEffect effect() { return mEffect ; }
void setEffect(GlxEffect effect) { mEffect = effect ;}
GlxSlideShowMoveDir slideShowMoveDir() { return mMoveDir; }
+ /* Returns the index to the selected transition effect
+ This value is fetched from Central repository */
+ int slideShowEffectIndex() ;
+ /*SlideShowSettingsView will call this API to set the index of the transition effect chosen.
+ This data will be written to the Central Repository*/
+ void setslideShowEffectIndex( int index );
+
+ /* Returns the index to the selected transition delay /
+ This value is fetched from Central repository */
+ int slideShowDelayIndex();
+
+ /*SlideShowSettingsView will call this API to set the index of the transition delay chosen.
+ This data will be written to the Central Repository*/
+ void setSlideShowDelayIndex( int index );
+
+ /*This will return the list of effects as available in the central repository */
+ QStringList slideShowEffectList();
+
/*
* This funtion read the user setting store in a file system.
*
@@ -60,7 +82,18 @@
private :
int mSlideDelayTime; //user set time interval in between showing slide
GlxEffect mEffect; //user defined effect, To:Do It is either some integer value or some enum
+ GlxSlideShowDelay mDelay;
GlxSlideShowMoveDir mMoveDir; //user defined slide move direction
+ QStringList mEffectList;
+ XQSettingsManager *mSettingsManager;
+ XQSettingsKey *mTransitionEffectCenrepKey;
+ XQSettingsKey *mTransitionDelayCenrepKey;
+ XQSettingsKey *mWaveEffectCenRepKey;
+ XQSettingsKey *mFadeEffectCenRepKey;
+ XQSettingsKey *mZoomEffectCenRepKey;
+ XQSettingsKey *mSlowCenRepKey;
+ XQSettingsKey *mMediumCenRepKey;
+ XQSettingsKey *mFastCenRepKey;
};
/*
--- a/ui/views/effectengine/src/glxeffectengine.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/effectengine/src/glxeffectengine.cpp Fri May 14 15:52:22 2010 +0300
@@ -23,18 +23,93 @@
#include "glxfadeplugin.h"
#include <QDebug>
+#include <xqsettingsmanager.h>
+#include <xqsettingskey.h>
+#include <QStringList>
+const TUint32 KGlxTransitionEffect = 0x1;
+const TUint32 KGlxTransitionDelay = 0x2;
+const TUint32 KGlxSlow = 0x3;
+const TUint32 KGlxMeduim = 0x4;
+const TUint32 KGlxFast = 0x5;
+const TUint32 KGlxWaveEffect = 0x6;
+const TUint32 KGlxFadeEffect = 0x7;
+const TUint32 KGlxZoomToFaceEffect = 0x8;
+const TUint32 KCRUidGallery = 0x20007194;
GlxSlideShowSetting::GlxSlideShowSetting( int slideDelayTime, GlxEffect effect, GlxSlideShowMoveDir moveDir )
: mSlideDelayTime(slideDelayTime),
mEffect ( effect),
mMoveDir ( moveDir)
{
+ mSettingsManager = new XQSettingsManager();
+ mTransitionEffectCenrepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery , KGlxTransitionEffect);
+ mTransitionDelayCenrepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery , KGlxTransitionDelay);
+ mSlowCenRepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery ,KGlxSlow);
+ mMediumCenRepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery ,KGlxMeduim);
+ mFastCenRepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery ,KGlxFast);
+ mWaveEffectCenRepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery ,KGlxWaveEffect );
+ mFadeEffectCenRepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery ,KGlxFadeEffect);
+ mZoomEffectCenRepKey= new XQSettingsKey(XQSettingsKey::TargetCentralRepository, KCRUidGallery , KGlxZoomToFaceEffect );
}
+GlxSlideShowSetting::~GlxSlideShowSetting( )
+{
+ delete mFastCenRepKey;
+ delete mMediumCenRepKey;
+ delete mSlowCenRepKey;
+ delete mZoomEffectCenRepKey;
+ delete mFadeEffectCenRepKey;
+ delete mWaveEffectCenRepKey;
+ delete mTransitionDelayCenrepKey;
+ delete mTransitionEffectCenrepKey;
+ delete mSettingsManager;
+}
+int GlxSlideShowSetting::slideShowDelayIndex()
+{
+ QVariant effectvalue = mSettingsManager->readItemValue(*mTransitionDelayCenrepKey);
+ return effectvalue.toInt();
+}
+void GlxSlideShowSetting::setSlideShowDelayIndex( int index )
+{
+ mSettingsManager->writeItemValue(*mTransitionDelayCenrepKey, index);
+}
+QStringList GlxSlideShowSetting::slideShowEffectList()
+{
+ if(mSettingsManager->readItemValue(*mWaveEffectCenRepKey).toInt() == WAVE_EFFECT)
+ mEffectList<<"wave";
+ if(mSettingsManager->readItemValue(*mFadeEffectCenRepKey).toInt() == SMOOTH_FADE)
+ mEffectList<<"Fade";
+ if(mSettingsManager->readItemValue(*mZoomEffectCenRepKey).toInt() == ZOOM_TO_FACE)
+ mEffectList<<"Zoom to face";
+ return mEffectList;
+}
+int GlxSlideShowSetting::slideShowEffectIndex()
+{
+ QVariant effectvalue = mSettingsManager->readItemValue(*mTransitionEffectCenrepKey);
+ return effectvalue.toInt();
+}
+void GlxSlideShowSetting::setslideShowEffectIndex( int index )
+{
+ mSettingsManager->writeItemValue(*mTransitionEffectCenrepKey, index);
+}
void GlxSlideShowSetting::readSlideShowSetting()
{
//To:Do read from the file system
- mSlideDelayTime = 3000;
+ QVariant effectvalue = mSettingsManager->readItemValue(*mTransitionDelayCenrepKey);
+ switch (effectvalue.toInt()) {
+ case SLOW:
+ mSlideDelayTime = mSettingsManager->readItemValue(*mSlowCenRepKey).toInt();
+ break;
+ case MEDIUM:
+ mSlideDelayTime = mSettingsManager->readItemValue(*mMediumCenRepKey).toInt();
+ break;
+ case FAST:
+ mSlideDelayTime = mSettingsManager->readItemValue(*mFastCenRepKey).toInt();
+ break;
+ default:
+ mSlideDelayTime = 3000;
+ break;
+ }
mEffect = FADE_EFFECT;
mMoveDir = MOVE_FORWARD;
qDebug("GlxSlideShowSetting::readSlideShowSetting() slide delay time %d effect %d move direction %d", mSlideDelayTime, mEffect, mMoveDir);
--- a/ui/views/fullscreenview/inc/glxcoverflow.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/fullscreenview/inc/glxcoverflow.h Fri May 14 15:52:22 2010 +0300
@@ -30,6 +30,7 @@
class HbMainWindow;
class QAbstractItemModel;
+class QGestureEvent;
typedef enum
{
NO_MOVE,
@@ -46,7 +47,7 @@
EMPTY_ROW_EVENT //send the signal when model have no data
} GlxCoverFlowEvent;
-class GlxCoverFlow : public HbScrollArea
+class GlxCoverFlow : public HbWidget
{
Q_OBJECT
@@ -59,12 +60,10 @@
void setUiOn(bool uiOn) { mUiOn = uiOn; }
void partiallyClean();
void partiallyCreate(QAbstractItemModel *model, QSize itemSize);
- void rotateImage();
- void setCoverFlow();
+ void setCoverFlow();
void ClearCoverFlow();
public slots:
- void rotationEffectFinished( const HbEffect::EffectStatus &status );
signals :
void coverFlowEvent(GlxCoverFlowEvent e);
@@ -84,8 +83,7 @@
void autoRightMove();
protected:
- void mousePressEvent(QGraphicsSceneMouseEvent *event);
- void mouseReleaseEvent (QGraphicsSceneMouseEvent *event) ;
+ void gestureEvent(QGestureEvent *event);
void move(int value);
@@ -103,7 +101,6 @@
//reset all the data of cover flow
void resetCoverFlow();
int getSubState();
-private slots:
private:
HbIconItem *mIconItem[NBR_ICON_ITEM]; //at most contain only five item
@@ -117,9 +114,8 @@
bool mUiOn;
int mBounceBackDeltaX;
QAbstractItemModel *mModel;
- GlxUserMove mMoveDir; //arun_goel3 may be remove later or change later
- int rotAngle;
-
+ GlxUserMove mMoveDir;
+ int mSpeed;
};
#endif /* GLXCOVERFLOW_H_ */
--- a/ui/views/fullscreenview/inc/glxfullscreenview.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/fullscreenview/inc/glxfullscreenview.h Fri May 14 15:52:22 2010 +0300
@@ -66,7 +66,6 @@
void setModel(QAbstractItemModel *model);
void setModelContext ( );
void cleanUp();
- void handleUserAction(qint32 commandId);
QGraphicsItem * getAnimationItem(GlxEffect transitionEffect);
@@ -85,7 +84,10 @@
void effectFinished( const HbEffect::EffectStatus );
void imageSelectionEffectFinished( const HbEffect::EffectStatus );
void handleToolBarAction();
-
+
+protected :
+ bool event(QEvent *event);
+
private:
/*
--- a/ui/views/fullscreenview/src/glxcoverflow.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/fullscreenview/src/glxcoverflow.cpp Fri May 14 15:52:22 2010 +0300
@@ -21,24 +21,33 @@
#include <QAbstractItemModel>
#include <QGraphicsSceneMouseEvent>
#include <QDebug>
+#include <QGesture>
+#include <hbpangesture.h>
//User Includes
#include <glxmodelparm.h>
#include <glxcoverflow.h>
#include "glxviewids.h"
-const int KMoveX = 60; //coverflow auto move speed
+#define GLX_COVERFLOW_SPEED 60
+#define GLX_BOUNCEBACK_SPEED 15
-GlxCoverFlow::GlxCoverFlow(QGraphicsItem *parent ) : HbScrollArea(parent), mSelItemIndex (0),
- mRows(0), mSelIndex (0), mStripLen (0), mCurrentPos(0),
- mItemSize (QSize(0,0)), mModel ( NULL), mMoveDir(NO_MOVE), rotAngle(0)
+GlxCoverFlow::GlxCoverFlow(QGraphicsItem *parent )
+ : HbWidget(parent),
+ mSelItemIndex (0),
+ mRows(0),
+ mSelIndex (0),
+ mStripLen (0),
+ mCurrentPos(0),
+ mItemSize (QSize(0,0)),
+ mModel ( NULL),
+ mMoveDir(NO_MOVE),
+ mSpeed ( GLX_COVERFLOW_SPEED )
{
//TO:DO through exception
qDebug("GlxCoverFlow::GlxCoverFlow");
- HbEffect::add( QString("HbIconItem"), QString(":/data/transitionrotate0.fxml"), QString( "RotateImage0" ));
- HbEffect::add( QString("HbIconItem"), QString(":/data/transitionrotate90.fxml"), QString( "RotateImage90" ));
- HbEffect::add( QString("HbIconItem"), QString(":/data/transitionrotate180.fxml"), QString( "RotateImage180" ));
- HbEffect::add( QString("HbIconItem"), QString(":/data/transitionrotate270.fxml"), QString( "RotateImage270" ));
+ grabGesture(Qt::PanGesture);
+ grabGesture(Qt::TapGesture);
connect( this, SIGNAL( autoLeftMoveSignal() ), this, SLOT( autoLeftMove() ), Qt::QueuedConnection );
connect( this, SIGNAL( autoRightMoveSignal() ), this, SLOT( autoRightMove() ), Qt::QueuedConnection );
}
@@ -83,66 +92,58 @@
qDebug("GlxCoverFlow::indexChanged index = %d mSelIndex = %d ",index, mSelIndex );
if ( index != mSelIndex && mModel) {
loadIconItems();
- if(rotAngle) {
- rotAngle = 0;
- //HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage270"), this, "rotationEffectFinished" );
- mIconItem[mSelItemIndex]->resetTransform();
- mIconItem[mSelItemIndex]->resize(mItemSize);
- }
}
}
-void GlxCoverFlow::rotateImage ()
-{
- qDebug("GlxCoverFlow::rotateImage ");
- if(rotAngle == 0)
- {
- HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage0"), this, "rotationEffectFinished" );
- }
- if(rotAngle == 90)
- {
- HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage90"), this, "rotationEffectFinished" );
- }
- if(rotAngle == 180)
- {
- HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage180"), this, "rotationEffectFinished" );
- }
- if(rotAngle == 270)
- {
- HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage270"), this, "rotationEffectFinished" );
- }
- rotAngle += 90;
- rotAngle %= 360;
-}
+void GlxCoverFlow::gestureEvent(QGestureEvent *event)
+{
+ if(QTapGesture *gesture = static_cast<QTapGesture *>(event->gesture(Qt::TapGesture))) {
+ if (gesture->state() == Qt::GestureFinished) {
+ emit coverFlowEvent( TAP_EVENT );
+ event->accept(gesture);
+ }
+ }
+
+ if (QPanGesture *panningGesture = qobject_cast<QPanGesture*>(event->gesture(Qt::PanGesture))) {
+ HbPanGesture *hbPanGesture = qobject_cast<HbPanGesture *>(panningGesture);
+ if (hbPanGesture) {
+ if(hbPanGesture->state() == Qt::GestureUpdated) {
+ QPointF delta(hbPanGesture->sceneDelta());
+ panGesture(delta);
+ event->accept(panningGesture);
-void GlxCoverFlow::rotationEffectFinished (const HbEffect::EffectStatus &status)
-{
- Q_UNUSED(status)
+ }
+ if(hbPanGesture->state() == Qt::GestureFinished) {
+ switch( mMoveDir ) {
- qDebug("GlxCoverFlow::rotationEffectFinished");
- QSize itemSize = mItemSize;
- if((rotAngle == 90) || (rotAngle == 270)) {
- itemSize.transpose();
- }
- mIconItem[mSelItemIndex]->resetTransform();
- mIconItem[mSelItemIndex]->resize(itemSize);
- mIconItem[mSelItemIndex]->setPos((mItemSize.width() - itemSize.width())/2, (mItemSize.height() - itemSize.height())/2 );
- QTransform rotateTransform = mIconItem[mSelItemIndex]->transform();
- rotateTransform.translate((mItemSize.width()/2)-((mItemSize.width() - itemSize.width())/2),(mItemSize.height()/2) - ((mItemSize.height() - itemSize.height())/2));
- rotateTransform.rotate(rotAngle);
- rotateTransform.translate(-((mItemSize.width()/2)-((mItemSize.width() - itemSize.width())/2)),-((mItemSize.height()/2) - ((mItemSize.height() - itemSize.height())/2)));
- mIconItem[mSelItemIndex]->setTransform(rotateTransform);
+ case LEFT_MOVE:
+ mMoveDir = NO_MOVE;
+ emit autoLeftMoveSignal();
+ break ;
+
+ case RIGHT_MOVE :
+ mMoveDir = NO_MOVE;
+ emit autoRightMoveSignal();
+ break;
+
+ default:
+ break;
+ }
+ event->accept(panningGesture);
+ }
+ }
+ }
+
}
void GlxCoverFlow::panGesture ( const QPointF & delta )
{
qDebug("GlxCoverFlow::panGesture deltaX= %d", (int)delta.x());
- if(getSubState() == IMAGEVIEWER_S || getSubState() == FETCHER_S )
- {
+ if(getSubState() == IMAGEVIEWER_S || getSubState() == FETCHER_S ) {
return;
- }
- move((int) delta.x());
+ }
+ move((int) delta.x());
if( delta.x() > 0 ) {
mMoveDir = RIGHT_MOVE;
}
@@ -158,14 +159,13 @@
void GlxCoverFlow::leftGesture(int value)
{
- Q_UNUSED(value);
+ Q_UNUSED(value);
qDebug("GlxCoverFlow::leftGesture CurrentPos= %d value %d", mCurrentPos, value);
- if(getSubState() == IMAGEVIEWER_S || getSubState() == FETCHER_S )
- {
+ if(getSubState() == IMAGEVIEWER_S || getSubState() == FETCHER_S ) {
return;
- }
+ }
mMoveDir = NO_MOVE;
- mBounceBackDeltaX = mItemSize.width() >> 2;
+ mBounceBackDeltaX = ( mItemSize.width() >> 2 ) + ( mItemSize.width() >> 3 );
emit autoLeftMoveSignal();
if ( mUiOn == TRUE ) {
mUiOn = FALSE;
@@ -175,14 +175,13 @@
void GlxCoverFlow::rightGesture(int value)
{
- Q_UNUSED(value);
+ Q_UNUSED(value);
qDebug("GlxCoverFlow::rightGesture CurrentPos= %d value %d ", mCurrentPos, value);
- if(getSubState() == IMAGEVIEWER_S || getSubState() == FETCHER_S )
- {
+ if(getSubState() == IMAGEVIEWER_S || getSubState() == FETCHER_S ) {
return;
- }
+ }
mMoveDir = NO_MOVE;
- mBounceBackDeltaX = mItemSize.width() >> 2;
+ mBounceBackDeltaX = ( mItemSize.width() >> 2 ) + ( mItemSize.width() >> 3 );
emit autoRightMoveSignal();
if ( mUiOn == TRUE ) {
mUiOn = FALSE;
@@ -245,48 +244,17 @@
}
}
-void GlxCoverFlow::mousePressEvent(QGraphicsSceneMouseEvent *event)
-{
- Q_UNUSED(event);
- qDebug("GlxCoverFlow::mousePressEvent");
- mMoveDir = TAP_MOVE;
-}
-void GlxCoverFlow::mouseReleaseEvent (QGraphicsSceneMouseEvent *event)
-{
- Q_UNUSED(event);
- qDebug("GlxCoverFlow::mouseReleaseEvent move dir %d", mMoveDir);
-
- switch( mMoveDir ) {
- case NO_MOVE :
- break;
-
- case TAP_MOVE :
- mMoveDir = NO_MOVE;
- emit coverFlowEvent( TAP_EVENT );
- break;
-
- case LEFT_MOVE:
- mMoveDir = NO_MOVE;
- emit autoLeftMoveSignal();
- break ;
-
- case RIGHT_MOVE :
- mMoveDir = NO_MOVE;
- emit autoRightMoveSignal();
- break;
-
- default:
- break;
- }
-}
void GlxCoverFlow::autoLeftMove()
{
- qDebug("GlxCoverFlow::autoLeftMove ");
int width = mItemSize.width() ;
qDebug("GlxCoverFlow::autoLeftMove current pos = %d mBounceBackDeltaX x = %d", mCurrentPos, mBounceBackDeltaX);
+
+ if ( mSelIndex == ( mRows -1 )) {
+ mSpeed = GLX_BOUNCEBACK_SPEED;
+ }
//for bounce back effect for last image ( it will do the back)
if ( ( mCurrentPos + width ) > ( mStripLen + mBounceBackDeltaX ) && mMoveDir == NO_MOVE ) {
mMoveDir = LEFT_MOVE;
@@ -296,7 +264,7 @@
}
int deltaX = width - mCurrentPos % width ;
- int moveX = deltaX > KMoveX ? KMoveX : deltaX;
+ int moveX = deltaX > mSpeed ? mSpeed : deltaX;
qDebug("GlxCoverFlow::autoLeftMove delta x = %d current pos = %d move x = %d", deltaX, mCurrentPos, moveX);
@@ -314,13 +282,6 @@
}
int selIndex = mCurrentPos / width ;
if ( mRows == 1 || selIndex != mSelIndex ) {
- if(rotAngle) {
- rotAngle = 0;
- //HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage270"), this, "rotationEffectFinished" );
- mIconItem[mSelItemIndex]->resetTransform();
- mIconItem[mSelItemIndex]->resize(mItemSize);
- mIconItem[mSelItemIndex]->setPos(- mItemSize.width(), 0);
- }
mSelIndex = selIndex;
mSelItemIndex = ( ++mSelItemIndex ) % NBR_ICON_ITEM;
selIndex = ( mSelItemIndex + 2 ) % NBR_ICON_ITEM;
@@ -328,8 +289,9 @@
emit changeSelectedIndex ( mModel->index ( mSelIndex, 0 ) ) ;
}
mMoveDir = NO_MOVE;
- mBounceBackDeltaX = 10;
- }
+ mBounceBackDeltaX = 10;
+ mSpeed = GLX_COVERFLOW_SPEED;
+ }
}
void GlxCoverFlow::autoRightMove()
@@ -338,19 +300,23 @@
int width = mItemSize.width() ;
int diffX = mStripLen - mCurrentPos ;
+ //slow the speed for bounce back effect
+ if ( mSelIndex == 0 ) {
+ mSpeed = GLX_BOUNCEBACK_SPEED;
+ }
//for bounce back effect for back image ( it will do the back)
qDebug("GlxCoverFlow::autoRightMove diffX x = %d current pos = %d mBounceBackDeltaX x = %d", diffX, mCurrentPos, mBounceBackDeltaX);
if ( diffX > mBounceBackDeltaX && diffX < width && mMoveDir == NO_MOVE ){
mMoveDir = RIGHT_MOVE;
mBounceBackDeltaX = 10;
- autoLeftMoveSignal();
+ autoLeftMoveSignal();
return ;
}
- int deltaX = mCurrentPos % width ;
+ int deltaX = mCurrentPos % width ;
//in the case of deltaX == 0 ( right flick case ) complete image should move
deltaX = deltaX ? deltaX : width ;
- int moveX = deltaX > KMoveX ? KMoveX : deltaX;
+ int moveX = deltaX > mSpeed ? mSpeed : deltaX;
qDebug("GlxCoverFlow::autoRightMove delta x = %d current pos = %d move x = %d", deltaX, mCurrentPos, moveX);
@@ -368,14 +334,6 @@
}
int selIndex = mCurrentPos / width ;
if ( mRows == 1 || selIndex != mSelIndex ) {
- if(rotAngle) {
- rotAngle = 0;
- //HbEffect::start(mIconItem[mSelItemIndex], QString("HbIconItem"), QString("RotateImage270"), this, "rotationEffectFinished" );
- mIconItem[mSelItemIndex]->resetTransform();
- mIconItem[mSelItemIndex]->resize(mItemSize);
- mIconItem[mSelItemIndex]->setPos(mItemSize.width(), 0);
-
- }
mSelIndex = selIndex;
mSelItemIndex = ( mSelItemIndex == 0 ) ? NBR_ICON_ITEM -1 : --mSelItemIndex;
selIndex = ( mSelItemIndex + 3 ) % NBR_ICON_ITEM;
@@ -383,7 +341,8 @@
emit changeSelectedIndex ( mModel->index ( mSelIndex, 0 ) ) ;
}
mMoveDir = NO_MOVE;
- mBounceBackDeltaX = 10;
+ mBounceBackDeltaX = 10;
+ mSpeed = GLX_COVERFLOW_SPEED;
}
}
@@ -394,7 +353,7 @@
for ( qint8 i = 0; i < NBR_ICON_ITEM ; i++ ) {
pos.setX( mIconItem[i]->pos().x() + value);
- pos.setY(mIconItem[i]->pos().y());
+ pos.setY(mIconItem[i]->pos().y());
mIconItem[i]->setPos(pos);
}
@@ -411,13 +370,13 @@
void GlxCoverFlow::setRows()
{
qDebug("GlxCoverFlow::setRows ");
- if (mModel) {
- mRows = mModel->rowCount();
- }
- else {
- mRows = 0;
- }
- qDebug("GlxCoverFlow::setRows number of rows = %d", mRows);
+ if (mModel) {
+ mRows = mModel->rowCount();
+ }
+ else {
+ mRows = 0;
+ }
+ qDebug("GlxCoverFlow::setRows number of rows = %d", mRows);
}
void GlxCoverFlow::setStripLen()
@@ -501,7 +460,7 @@
/*
disconnect(mModel, SIGNAL(destroyed()), this, SLOT(_q_modelDestroyed()));
disconnect(mModel, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)), this, SLOT(rowsAboutToBeRemoved(QModelIndex,int,int)));
-*/
+*/
}
void GlxCoverFlow::initializeNewModel()
@@ -511,7 +470,7 @@
connect( mModel, SIGNAL( dataChanged(QModelIndex,QModelIndex) ), this, SLOT( dataChanged(QModelIndex,QModelIndex) ) );
connect(mModel, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(rowsInserted(QModelIndex,int,int)));
connect(mModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(rowsRemoved(QModelIndex,int,int)));
- }
+ }
}
void GlxCoverFlow::resetCoverFlow()
@@ -550,8 +509,7 @@
variant = model->data( model->index(mSelIndex, 0), GlxFsImageRole );
if ( variant.isValid() && variant.canConvert<HbIcon> () ) {
- mIconItem[2]->setIcon ( variant.value<HbIcon>() ) ;
- qDebug("#########################GlxCoverFlow::partiallyCreated,ICON PRES##################");
+ mIconItem[2]->setIcon ( variant.value<HbIcon>() ) ;
}
}
@@ -560,10 +518,6 @@
qDebug("GlxCoverFlow::~GlxCoverFlow model " );
disconnect( this, SIGNAL( autoLeftMoveSignal() ), this, SLOT( autoLeftMove() ) );
disconnect( this, SIGNAL( autoRightMoveSignal() ), this, SLOT( autoRightMove() ) );
- HbEffect::remove( QString("HbIconItem"), QString(":/data/transitionrotate0.fxml"), QString( "RotateImage0" ));
- HbEffect::remove( QString("HbIconItem"), QString(":/data/transitionrotate90.fxml"), QString( "RotateImage90" ));
- HbEffect::remove( QString("HbIconItem"), QString(":/data/transitionrotate180.fxml"), QString( "RotateImage180" ));
- HbEffect::remove( QString("HbIconItem"), QString(":/data/transitionrotate270.fxml"), QString( "RotateImage270" ));
}
@@ -576,7 +530,7 @@
delete mIconItem[i] ;
mIconItem[i] = NULL;
}
- }
+ }
}
int GlxCoverFlow::getSubState()
--- a/ui/views/fullscreenview/src/glxfullscreenview.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/fullscreenview/src/glxfullscreenview.cpp Fri May 14 15:52:22 2010 +0300
@@ -263,7 +263,6 @@
if(mFullScreenToolBar) {
mFullScreenToolBar->clearActions();
- delete mFullScreenToolBar;
mFullScreenToolBar = NULL;
}
@@ -291,6 +290,7 @@
OstTraceExt2( TRACE_NORMAL, GLXFULLSCREENVIEW_SETMODEL, "GlxFullScreenView::setModel; model=%x; mModel=%u", ( TUint )( model ), ( TUint ) mModel );
mModel = model;
+ setModelContext();
setHdmiModel(mModel);
mCoverFlow->setModel(mModel);
@@ -712,25 +712,6 @@
OstTraceFunctionExit0( DUP1_GLXFULLSCREENVIEW_GLXFULLSCREENVIEW_EXIT );
}
-void GlxFullScreenView::handleUserAction(qint32 commandId)
-{
- OstTraceFunctionEntry0( GLXFULLSCREENVIEW_HANDLEUSERACTION_ENTRY );
-
- switch( commandId ) {
- case EGlxCmdRotate :
- //trigger the rotate Effect in CoverFlow
- mCoverFlow->rotateImage();
- break;
-
-
-
- default :
- break;
- }
-
- OstTraceFunctionExit0( GLXFULLSCREENVIEW_HANDLEUSERACTION_EXIT );
-}
-
void GlxFullScreenView::imageSelectionAnimation(const QModelIndex &index)
{
OstTraceFunctionEntry0( GLXFULLSCREENVIEW_IMAGESELECTIONANIMATION_ENTRY );
@@ -778,3 +759,20 @@
}
return substate;
}
+
+bool GlxFullScreenView::event(QEvent *event)
+{
+ GLX_LOG_INFO1("GlxFullScreenView::event() %d event type", event->type());
+ if ( event->type() == QEvent::WindowActivate && mCoverFlow) {
+ if (mTvOutWrapper){
+ mTvOutWrapper->setToNativeMode();
+ }
+ }
+ if ( event->type() == QEvent::WindowDeactivate && mCoverFlow) {
+ if (mTvOutWrapper){
+ mTvOutWrapper->setToCloningMode();
+ }
+ }
+ return HbView::event(event);
+}
+
--- a/ui/views/gridview/inc/glxgridview.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/gridview/inc/glxgridview.h Fri May 14 15:52:22 2010 +0300
@@ -24,15 +24,12 @@
#include "glxview.h"
//Qt/Orbit forward declarations
-class HbGridView;
class HbMainWindow;
-class HbDocumentLoader;
class QAbstractItemModel;
-class HbAbstractViewItem;
-
-#define NBR_ROW 5
-#define NBR_COL 3
-#define NBR_PAGE NBR_ROW * NBR_COL
+class HgWidget;
+class GlxModelWrapper;
+class HbPushButton;
+class HbIconItem;
class GlxGridView : public GlxView
{
@@ -54,34 +51,33 @@
public slots:
void itemSelected(const QModelIndex & index);
- void setVisvalWindowIndex();
- /*
- * This loads the docml and retrives the widgets from the
- * docml corresponding to the present orentation
- */
- void loadGridView(Qt::Orientation orient);
- void itemDestroyed();
-
+ void scrollingEnded();
+ void scrollingStarted();
+ void orientationchanged(Qt::Orientation orient);
+ void visibleIndexChanged(const QModelIndex& current, const QModelIndex& previous);
+
protected :
QVariant itemChange (GraphicsItemChange change, const QVariant &value) ;
private slots:
- void indicateLongPress( HbAbstractViewItem *item, QPointF coords );
+ void indicateLongPress(const QModelIndex& index, QPointF coords);
+ void uiButtonClicked(bool checked);
private:
void addViewConnection();
void removeViewConnection();
- void resetItemTransform();
+ void hideorshowitems(Qt::Orientation orient);
+ void scrolltofocus();
+ void loadGridView();
-private:
- HbGridView *mGridView;
- HbView *mView;
- HbMainWindow *mWindow; //no ownership
+ HbMainWindow *mWindow; // no ownership
QAbstractItemModel *mModel ;
- int mVisualIndex; //first item index of the page //To:Do remove later
- HbAbstractViewItem *mItem;
- HbDocumentLoader *mDocLoader; //Docml loader to load the widgets from docml
- bool mIsLongPress; //to check the long press has happend or not
+ HgWidget *mWidget; // HG Grid Widget
+ QItemSelectionModel *mSelectionModel; // Selected items model
+ GlxModelWrapper *mModelWrapper; // Temp Model Wrapper, so That Role Change not a problem
+ HbPushButton *mUiOnButton;
+ bool mScrolling;
+ HbIconItem *mIconItem;
};
#endif /* GLXGRIDVIEW_H_ */
--- a/ui/views/gridview/src/glxgridview.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/gridview/src/glxgridview.cpp Fri May 14 15:52:22 2010 +0300
@@ -18,26 +18,22 @@
//Includes
-#include <QDebug>
-#include <hbmenu.h>
-#include <hbaction.h>
-#include <hbtoolbar.h>
-#include <hbgridview.h>
#include <hbmainwindow.h>
-#include <shareuidialog.h>
-#include <hbdocumentloader.h>
-#include <QAbstractItemModel>
-#include <hbabstractviewitem.h>
+#include <hggrid.h>
+#include <glxmodelwrapper.h>
+#include <hbpushbutton.h>
+#include <HbToolBar> // Temp
+#include <hbiconitem.h>
+#include <hbicon.h>
#include <xqserviceutil.h>
//User Includes
-#include "glxuistd.h"
#include "glxviewids.h"
#include "glxgridview.h"
#include "glxmodelparm.h"
-#include "glxloggerenabler.h"
-#include "glxdocloaderdefs.h"
#include "glxcommandhandlers.hrh"
+
+
#include "OstTraceDefinitions.h"
#ifdef OST_TRACE_COMPILER_IN_USE
#include "glxgridviewTraces.h"
@@ -45,95 +41,126 @@
GlxGridView::GlxGridView(HbMainWindow *window)
: GlxView ( GLX_GRIDVIEW_ID ),
- mGridView(NULL),
- mView(NULL),
mWindow(window),
mModel ( NULL),
- mVisualIndex(0),
- mItem(NULL),
- mIsLongPress (false)
+ mWidget(NULL),
+ mSelectionModel(NULL),
+ mModelWrapper(NULL),
+ mUiOnButton(NULL),
+ mScrolling(FALSE),
+ mIconItem(NULL)
{
OstTraceFunctionEntry0( GLXGRIDVIEW_GLXGRIDVIEW_ENTRY );
- mDocLoader = new HbDocumentLoader();
+ mModelWrapper = new GlxModelWrapper();
+ mModelWrapper->setRoles(GlxQImageSmall);
+ mIconItem = new HbIconItem(this);
OstTraceFunctionExit0( GLXGRIDVIEW_GLXGRIDVIEW_EXIT );
- setContentFullScreen( true );
}
void GlxGridView::activate()
{
OstTraceFunctionEntry0( GLXGRIDVIEW_ACTIVATE_ENTRY );
- loadGridView(mWindow->orientation());
- addViewConnection();
- mGridView->resetTransform(); //to reset the transition effect (reset transform matrix)
- mGridView->setOpacity( 1);
- resetItemTransform();
+ if(mUiOnButton == NULL) {
+ mUiOnButton = new HbPushButton("UI",this);
+ connect(mUiOnButton, SIGNAL(clicked(bool)), this, SLOT(uiButtonClicked(bool)));
+ mUiOnButton->setGeometry(QRectF(610,0,15,15));
+ mUiOnButton->setZValue(1);
+ mUiOnButton->hide();
+ }
+ loadGridView();
OstTraceFunctionExit0( GLXGRIDVIEW_ACTIVATE_EXIT );
}
void GlxGridView::deActivate()
{
OstTraceFunctionEntry0( GLXGRIDVIEW_DEACTIVATE_ENTRY );
- removeViewConnection();
- mModel = NULL;
+ if (mUiOnButton && mUiOnButton->isVisible())
+ {
+ mUiOnButton->hide();
+ }
+ if(mIconItem)
+ {
+ mIconItem->hide();
+ mIconItem->resetTransform();
+ mIconItem->setOpacity(0);
+ mIconItem->setZValue(mIconItem->zValue()-20);
+ }
OstTraceFunctionExit0( GLXGRIDVIEW_DEACTIVATE_EXIT );
}
void GlxGridView::initializeView(QAbstractItemModel *model)
{
- resetItemTransform();
- mGridView->setModel(model);
- mModel = model;
- loadGridView(mWindow->orientation());
- QVariant variant = model->data( model->index(0,0), GlxFocusIndexRole );
- if ( variant.isValid() && variant.canConvert<int> () ) {
- mGridView->scrollTo( model->index( variant.value<int>(),0), HbGridView::EnsureVisible );
- }
+ activate();
+ setModel(model);
}
void GlxGridView::setModel(QAbstractItemModel *model)
{
OstTraceFunctionEntry0( GLXGRIDVIEW_SETMODEL_ENTRY );
- mModel = model ;
- mGridView->setModel(mModel);
- QVariant variant = mModel->data( mModel->index(0,0), GlxFocusIndexRole );
- if ( variant.isValid() && variant.canConvert<int> () ) {
- mGridView->scrollTo( mModel->index( variant.value<int>(),0), HbGridView::EnsureVisible );
- }
+ if(model)
+ {
+ mModel = model;
+ QVariant variantimage = mModel->data(mModel->index(0,0),GlxDefaultImage);
+ if (mWidget && variantimage.isValid() && variantimage.canConvert<QImage> () )
+ {
+ mWidget->setDefaultImage(variantimage.value<QImage>());
+ }
+ mModelWrapper->setModel(mModel);
+ mWidget->setModel(mModelWrapper);
+ if(!mSelectionModel)
+ {
+ mSelectionModel = new QItemSelectionModel(mModelWrapper, this);
+ connect(mSelectionModel, SIGNAL(currentChanged(const QModelIndex &, const QModelIndex &)), this, SLOT(visibleIndexChanged(const QModelIndex &, const QModelIndex &)));
+ mWidget->setSelectionModel(mSelectionModel);
+ }
+ scrolltofocus(); // Need to do it here ?
+ }
OstTraceFunctionExit0( GLXGRIDVIEW_SETMODEL_EXIT );
}
+void GlxGridView::visibleIndexChanged(const QModelIndex& current, const QModelIndex& previous)
+{
+ if(mScrolling)
+ {
+ Q_UNUSED(previous);
+ if(current.row() >= 0 || current.row() < mModel->rowCount())
+ {
+ mModel->setData(mModel->index(0,0),current.row(),GlxVisualWindowIndex);
+ }
+ }
+}
+
void GlxGridView::addToolBar( HbToolBar *toolBar )
{
- OstTraceFunctionEntry0( GLXGRIDVIEW_ADDTOOLBAR_ENTRY );
- setToolBar(toolBar) ;
+ OstTraceFunctionEntry0( GLXGRIDVIEW_ADDTOOLBAR_ENTRY );
+ setToolBar(toolBar);
+ hideorshowitems(mWindow->orientation());
OstTraceFunctionExit0( GLXGRIDVIEW_ADDTOOLBAR_EXIT );
}
void GlxGridView::enableMarking()
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_ENABLEMARKING, "GlxGridView::enableMarking" );
- mGridView->setSelectionMode(HbGridView::MultiSelection);
+ mWidget->setSelectionMode(HgWidget::MultiSelection);
}
void GlxGridView::disableMarking()
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_DISABLEMARKING, "GlxGridView::disableMarking" );
- mGridView->setSelectionMode(HbGridView::NoSelection);
+ mWidget->setSelectionMode(HgWidget::NoSelection);
}
void GlxGridView::handleUserAction(qint32 commandId)
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_HANDLEUSERACTION, "GlxGridView::handleUserAction" );
- switch( commandId ){
+ switch( commandId ) {
case EGlxCmdMarkAll :
- mGridView->selectAll();
+ mWidget->selectAll();
break;
case EGlxCmdUnMarkAll :
- mGridView->clearSelection();
- break;
-
-
+ mWidget->clearSelection();
+ break;
default :
break;
@@ -143,7 +170,7 @@
QItemSelectionModel * GlxGridView::getSelectionModel()
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_GETSELECTIONMODEL, "GlxGridView::getSelectionModel" );
- return mGridView->selectionModel();
+ return mWidget->selectionModel();
}
QGraphicsItem * GlxGridView::getAnimationItem(GlxEffect transitionEffect)
@@ -152,77 +179,115 @@
int selIndex = -1;
if ( transitionEffect == FULLSCREEN_TO_GRID ) {
- return mGridView;
+ return mWidget;
}
- if ( transitionEffect == GRID_TO_FULLSCREEN ) {
+ if ( transitionEffect == GRID_TO_FULLSCREEN )
+ {
QVariant variant = mModel->data( mModel->index(0,0), GlxFocusIndexRole );
- if ( variant.isValid() && variant.canConvert<int> () ) {
+ if ( variant.isValid() && variant.canConvert<int> () )
+ {
selIndex = variant.value<int>();
- }
-
- mItem = mGridView->itemByIndex( mModel->index(selIndex,0) );
- connect(mItem, SIGNAL(destroyed()), this, SLOT( itemDestroyed()));
- mItem->setZValue( mItem->zValue() + 20);
- return mItem;
- }
+ }
+ else
+ {
+ return mWidget;
+ }
+ 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))
+ {
+ 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->show();
+ return mIconItem;
+ }
+ else
+ {
+ return mWidget;
+ }
+ }
if ( transitionEffect == GRID_TO_ALBUMLIST || transitionEffect == ALBUMLIST_TO_GRID ){
- return mGridView;
+ return mWidget;
}
OstTraceFunctionExit0( GLXGRIDVIEW_GETANIMATIONITEM_EXIT );
return NULL;
}
-void GlxGridView::loadGridView(Qt::Orientation orient)
+void GlxGridView::loadGridView()
{
OstTraceFunctionEntry0( GLXGRIDVIEW_LOADGRIDVIEW_ENTRY );
- bool loaded = false;
- QString section;
- GlxContextMode mode ;
-
- //Load the widgets accroding to the current Orientation
- if(orient == Qt::Horizontal) {
- section = GLX_GRIDVIEW_LSSECTION ;
- mode = GlxContextLsGrid ;
- }
- else {
- section = GLX_GRIDVIEW_PTSECTION ;
- mode = GlxContextPtGrid ;
- }
-
- if (mGridView == NULL ) {
- mDocLoader->load(GLX_GRIDVIEW_DOCMLPATH,&loaded);
- if(loaded) {
- //retrieve the widgets
- mView = static_cast<HbView*>(mDocLoader->findWidget(QString(GLX_GRIDVIEW_VIEW)));
- mGridView = static_cast<HbGridView*>(mDocLoader->findWidget(GLX_GRIDVIEW_GRID));
- setWidget( mView );
- mGridView->setLayoutName( QString( "GridView" ) );
- }
- }
- //Load the Sections
- mDocLoader->load(GLX_GRIDVIEW_DOCMLPATH,section,&loaded);
-
- if ( mModel ) {
- mModel->setData(QModelIndex(), (int)mode, GlxContextRole );
+ if(mWidget == NULL) {
+ Qt::Orientation orient = mWindow->orientation();
+ mWindow->viewport()->grabGesture(Qt::PanGesture);
+ mWindow->viewport()->grabGesture(Qt::TapGesture);
+ mWindow->viewport()->grabGesture(Qt::TapAndHoldGesture);
+ mWidget = new HgGrid(orient);
+ mWidget->setLongPressEnabled(true);
+ mWidget->setScrollBarPolicy(HgWidget::ScrollBarAutoHide);
+ //mWidget->setItemSize(QSizeF(120,120));
+ setWidget( mWidget );
+ addViewConnection();
+ //hideorshowitems(orient);
}
OstTraceFunctionExit0( GLXGRIDVIEW_LOADGRIDVIEW_EXIT );
}
-void GlxGridView::itemDestroyed()
+void GlxGridView::orientationchanged(Qt::Orientation orient)
+{
+ hideorshowitems(orient);
+}
+void GlxGridView::hideorshowitems(Qt::Orientation orient)
{
- OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_ITEMDESTROYED, "GlxGridView::itemDestroyed" );
- disconnect( mItem, SIGNAL( destroyed() ), this, SLOT( itemDestroyed() ) );
- mItem = NULL;
+ if(orient == Qt::Horizontal)
+ {
+ if (mUiOnButton)
+ {
+ mUiOnButton->show();
+ }
+ setItemVisible(Hb::AllItems, FALSE) ;
+ }
+ else
+ {
+ if (mUiOnButton)
+ {
+ mUiOnButton->hide();
+ }
+ setItemVisible(Hb::AllItems, TRUE) ;
+ }
+}
+
+void GlxGridView::scrolltofocus()
+{
+ if(mModelWrapper && mWidget)
+ {
+ QVariant variant = mModelWrapper->data( mModelWrapper->index(0,0), GlxFocusIndexRole );
+ if ( variant.isValid() && variant.canConvert<int> () )
+ {
+ mWidget->scrollTo( mModelWrapper->index( variant.value<int>(),0) );
+ mModel->setData(mModel->index(0,0),variant.value<int>(),GlxVisualWindowIndex);
+ }
+ }
}
QVariant GlxGridView::itemChange (GraphicsItemChange change, const QVariant &value)
{
- OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_ITEMCHANGE, "GlxGridView::itemChange" );
-
+ OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_ITEMCHANGE, "GlxGridView::itemChange" );
static bool isEmit = true;
-
if ( isEmit && change == QGraphicsItem::ItemVisibleHasChanged && value.toBool() ) {
emit actionTriggered( EGlxCmdSetupItem );
isEmit = false;
@@ -230,111 +295,126 @@
return HbWidget::itemChange(change, value);
}
-void GlxGridView::addViewConnection ()
+void GlxGridView::addViewConnection()
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_ADDVIEWCONNECTION, "GlxGridView::addViewConnection" );
- connect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(loadGridView(Qt::Orientation)));
- connect(mGridView, SIGNAL(activated(const QModelIndex &)), this, SLOT( itemSelected(const QModelIndex &)));
- connect( mGridView, SIGNAL( scrollingEnded() ), this, SLOT( setVisvalWindowIndex() ) );
- connect(mGridView, SIGNAL(longPressed( HbAbstractViewItem*, QPointF )),this, SLOT( indicateLongPress( HbAbstractViewItem*, QPointF ) ) );
+ connect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(orientationchanged(Qt::Orientation)));
+ //connect(mWindow, SIGNAL(aboutToChangeOrientation()), mWidget, SLOT(aboutToChangeOrientation()));
+ connect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), mWidget, SLOT(orientationChanged(Qt::Orientation)));
+ connect(mWidget, SIGNAL(activated(const QModelIndex &)), SLOT( itemSelected(const QModelIndex &)));
+ connect(mWidget, SIGNAL( scrollingStarted() ), this, SLOT( scrollingStarted() ) );
+ connect(mWidget, SIGNAL( scrollingEnded() ), this, SLOT( scrollingEnded() ) );
+ connect(mWidget, SIGNAL(longPressed(const QModelIndex &, QPointF)), SLOT( indicateLongPress(const QModelIndex &, QPointF) ) );
}
void GlxGridView::removeViewConnection ()
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_REMOVEVIEWCONNECTION, "GlxGridView::removeViewConnection" );
- disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(loadGridView(Qt::Orientation)));
- disconnect(mGridView, SIGNAL(activated(const QModelIndex &)), this, SLOT( itemSelected(const QModelIndex &)));
- disconnect( mGridView, SIGNAL( scrollingEnded() ), this, SLOT( setVisvalWindowIndex() ) );
- disconnect(mGridView, SIGNAL(longPressed( HbAbstractViewItem*, QPointF )),this, SLOT( indicateLongPress( HbAbstractViewItem*, QPointF ) ) );
+ if(mWidget)
+ {
+ disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(orientationchanged(Qt::Orientation)));
+ //disconnect(mWindow, SIGNAL(aboutToChangeOrientation()), mWidget, SLOT(aboutToChangeOrientation()));
+ disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), mWidget, SLOT(orientationChanged(Qt::Orientation)));
+ disconnect(mWidget, SIGNAL(activated(const QModelIndex &)),this, SLOT( itemSelected(const QModelIndex &)));
+ disconnect(mWidget, SIGNAL( scrollingStarted() ), this, SLOT( scrollingStarted() ) );
+ disconnect(mWidget, SIGNAL( scrollingEnded() ), this, SLOT( scrollingEnded() ) );
+ disconnect(mWidget, SIGNAL(longPressed(const QModelIndex &, QPointF)),this, SLOT( indicateLongPress(const QModelIndex &, QPointF) ) );
+ }
}
-void GlxGridView::resetItemTransform()
-{
- if ( mItem ) {
- mItem->resetTransform(); //to reset the transition effect (reset transform matrix)
- mItem->setOpacity( 1);
- mItem->setZValue( mItem->zValue() - 20);
- disconnect( mItem, SIGNAL( destroyed() ), this, SLOT( itemDestroyed() ) );
- mItem = NULL;
- }
-}
void GlxGridView::itemSelected(const QModelIndex & index)
{
OstTrace1( TRACE_NORMAL, GLXGRIDVIEW_ITEMSELECTED, "GlxGridView::itemSelected;index=%d", index.row() );
-
- if ( mGridView->selectionMode() == HbGridView::MultiSelection ) { //in multi selection mode no need to open the full screen
+ if ( mWidget->selectionMode() == HgWidget::MultiSelection )
+ {
return ;
- }
- if ( mIsLongPress ) {
- mIsLongPress = false;
- return ;
- }
- if(XQServiceUtil::isService()){
+ }
+ if(XQServiceUtil::isService()){
emit gridItemSelected(index);
return;
- }
-
- OstTraceEventStart0( EVENT_DUP1_GLXGRIDVIEW_ITEMSELECTED_START, "Fullscreen Launch Time" );
-
- if ( mModel ) {
+ }
+ OstTraceEventStart0( EVENT_DUP1_GLXGRIDVIEW_ITEMSELECTED_START, "Fullscreen Launch Time" );
+ if ( mModel )
+ {
mModel->setData( index, index.row(), GlxFocusIndexRole );
- }
- emit actionTriggered( EGlxCmdFullScreenOpen );
+ }
+ setItemVisible(Hb::AllItems, FALSE);
+ emit actionTriggered( EGlxCmdFullScreenOpen );
OstTraceEventStop( EVENT_DUP1_GLXGRIDVIEW_ITEMSELECTED_STOP, "Fullscreen Launch Time", EVENT_DUP1_GLXGRIDVIEW_ITEMSELECTED_START );
}
-void GlxGridView::setVisvalWindowIndex()
+void GlxGridView::scrollingStarted()
{
- OstTrace0( TRACE_IMPORTANT, GLXGRIDVIEW_SETVISVALWINDOWINDEX, "GlxGridView::setVisvalWindowIndex" );
- QList< HbAbstractViewItem * > visibleItemList = mGridView->visibleItems();
- qDebug("GlxGridView::setVisvalWindowIndex() %d", visibleItemList.count());
- OstTrace1( TRACE_IMPORTANT, DUP1_GLXGRIDVIEW_SETVISVALWINDOWINDEX, "GlxGridView::setVisvalWindowIndex;visibleitemindex=%d",
- visibleItemList.count() );
-
- if ( visibleItemList.count() <= 0 )
- return ;
+ if ((mWindow->orientation() == Qt::Horizontal))
+ {
+ setItemVisible(Hb::AllItems, FALSE) ;
+ }
+ mScrolling = TRUE;
+}
- HbAbstractViewItem *item = visibleItemList.at(0);
- if ( item == NULL )
- return ;
-
- OstTrace1( TRACE_IMPORTANT, DUP2_GLXGRIDVIEW_SETVISVALWINDOWINDEX, "GlxGridView::setVisvalWindowIndex item=%d", item );
- OstTrace1( TRACE_IMPORTANT, DUP3_GLXGRIDVIEW_SETVISVALWINDOWINDEX, "GlxGridView::setVisvalWindowIndex;visual index=%d",
- item->modelIndex().row() );
-
- if ( item->modelIndex().row() < 0 || item->modelIndex().row() >= mModel->rowCount() )
- return ;
-
- mModel->setData( item->modelIndex (), item->modelIndex().row(), GlxVisualWindowIndex);
+void GlxGridView::scrollingEnded()
+{
+ mScrolling = FALSE;
+ QList<QModelIndex> visibleIndex = mWidget->getVisibleItemIndices();
+ if (visibleIndex.count() <= 0)
+ {
+ return;
+ }
+ QModelIndex index = visibleIndex.at(0);
+ if ( index.row() < 0 || index.row() >= mModel->rowCount() )
+ {
+ return;
+ }
+ if(mModel)
+ {
+ mModel->setData( index, index.row(), GlxVisualWindowIndex);
+ }
}
GlxGridView::~GlxGridView()
{
OstTraceFunctionEntry0( DUP1_GLXGRIDVIEW_GLXGRIDVIEW_ENTRY );
removeViewConnection();
- delete mGridView;
- mGridView = NULL;
-
- delete mDocLoader;
- mDocLoader = NULL;
-
+ if(mSelectionModel)
+ {
+ disconnect(mSelectionModel, SIGNAL(currentChanged(const QModelIndex &, const QModelIndex &)), this, SLOT(visibleIndexChanged(const QModelIndex &, const QModelIndex &)));
+ delete mSelectionModel;
+ }
+ delete mWidget;
+ delete mModelWrapper;
+ if(mUiOnButton) {
+ disconnect(mUiOnButton, SIGNAL(clicked(bool)), this, SLOT(uiButtonClicked(bool)));
+ delete mUiOnButton;
+ }
+ delete mIconItem;
OstTraceFunctionExit0( DUP1_GLXGRIDVIEW_GLXGRIDVIEW_EXIT );
}
-void GlxGridView::indicateLongPress(HbAbstractViewItem *item, QPointF coords)
+void GlxGridView::indicateLongPress(const QModelIndex& index, QPointF coords)
{
OstTrace0( TRACE_NORMAL, GLXGRIDVIEW_INDICATELONGPRESS, "GlxGridView::indicateLongPress" );
- qDebug() << "GlxGridView:indicateLongPress Item " << item->modelIndex() << "long pressed at "
- << coords;
-
- if ( mGridView->selectionMode() == HbGridView::MultiSelection ){ //in multi selection mode no need to open the context menu
- return ;
- }
+
+ if ( mWidget->selectionMode() == HgWidget::MultiSelection )
+ {
+ return;
+ }
+ if ( mModel )
+ {
+ mModel->setData( index, index.row(), GlxFocusIndexRole );
+ }
+ emit itemSpecificMenuTriggered(viewId(),coords);
+}
- if ( mModel ) {
- mModel->setData( item->modelIndex(), item->modelIndex().row(), GlxFocusIndexRole );
- }
- mIsLongPress = true;
- emit itemSpecificMenuTriggered(viewId(),coords);
+void GlxGridView::uiButtonClicked(bool /*checked*/)
+{
+ if (isItemVisible(Hb::TitleBarItem)) // W16 All item is Not Working , So Temp Fix
+ {
+ setItemVisible(Hb::AllItems, FALSE) ;
+ }
+ else
+ {
+ setItemVisible(Hb::AllItems, TRUE) ;
+ }
}
+
--- a/ui/views/slideshowsettingsview/inc/glxslideshowsettingsview.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/slideshowsettingsview/inc/glxslideshowsettingsview.h Fri May 14 15:52:22 2010 +0300
@@ -30,6 +30,7 @@
class HbMainWindow;
class HbComboBox;
class QAbstractItemModel;
+class GlxSlideShowSetting;
class GlxSlideShowSettingsView : public GlxView
{
@@ -55,8 +56,7 @@
HbLabel *mContextlabel; //Display SlideShow label
HbLabel *mEffectlabel; //Display "Transition Effect: "
HbLabel *mDelaylabel; //Display "Transition delay: "
- int mTempEffect; //To store the index of effect.Temporary usage, Will be removed.
- int mTempDelay; //To store the index of effect.Temporary usage, Will be removed.
+ GlxSlideShowSetting *mSettings;
};
#endif /* GLXGRIDVIEW_H_ */
--- a/ui/views/slideshowsettingsview/src/glxslideshowsettingsview.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/slideshowsettingsview/src/glxslideshowsettingsview.cpp Fri May 14 15:52:22 2010 +0300
@@ -27,47 +27,33 @@
#include "glxuistd.h"
#include "glxviewids.h"
#include "glxslideshowsettingsview.h"
-#include "glxmodelparm.h"
+#include "glxeffectengine.h"
GlxSlideShowSettingsView::GlxSlideShowSettingsView(HbMainWindow *window)
: GlxView ( GLX_SLIDESHOWSETTINGSVIEW_ID ),
+ mEffect(NULL),
mDelay(NULL),
- mEffect(NULL),
+ mWindow(window),
mContextlabel (NULL),
mEffectlabel (NULL),
mDelaylabel (NULL),
- mWindow(window)
+ mSettings( NULL )
{
- mTempEffect = 0;
- mTempDelay =0 ;
+ mSettings = new GlxSlideShowSetting();
setContentFullScreen( true );
}
GlxSlideShowSettingsView::~GlxSlideShowSettingsView()
{
- if(mContextlabel) {
delete mContextlabel;
- mContextlabel = NULL;
- }
- if(mEffectlabel) {
delete mEffectlabel;
- mEffectlabel = NULL;
- }
- if(mDelaylabel) {
delete mDelaylabel;
- mDelaylabel = NULL;
- }
- if(mEffect) {
delete mEffect;
- mEffect = NULL;
- }
- if(mDelay) {
delete mDelay;
- mDelay = NULL;
- }
+ delete mSettings;
}
void GlxSlideShowSettingsView::setModel(QAbstractItemModel *model)
@@ -94,8 +80,7 @@
if ( mEffect == NULL ) {
mEffect = new HbComboBox(this);
- QStringList effectList;
- effectList<<"wave"<<"smooth fade"<<"zoom to face";
+ QStringList effectList = mSettings->slideShowEffectList();
mEffect->addItems( effectList );
}
@@ -111,9 +96,10 @@
mDelay->addItems( delayList );
}
- mEffect->setCurrentIndex( mTempEffect);
- mDelay->setCurrentIndex ( mTempDelay );
+ // Read the values from the cenrep
+ mEffect->setCurrentIndex( mSettings->slideShowEffectIndex());
+ mDelay->setCurrentIndex( mSettings->slideShowDelayIndex());
setLayout();
}
@@ -131,8 +117,8 @@
void GlxSlideShowSettingsView::deActivate()
{
//Store the current effect and delay before going back to the previous view
- mTempEffect = mEffect->currentIndex();
- mTempDelay = mDelay->currentIndex();
+ mSettings->setslideShowEffectIndex(mEffect->currentIndex());
+ mSettings->setSlideShowDelayIndex(mDelay->currentIndex());
disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(orientationChanged(Qt::Orientation)));
}
--- a/ui/views/slideshowview/inc/glxslideshowview.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/slideshowview/inc/glxslideshowview.h Fri May 14 15:52:22 2010 +0300
@@ -49,6 +49,7 @@
void orientationChanged(Qt::Orientation);
void slideShowEventHandler( GlxSlideShowEvent e);
void indexchanged();
+ void modelDestroyed();
protected :
bool event(QEvent *event);
--- a/ui/views/slideshowview/inc/glxslideshowwidget.h Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/slideshowview/inc/glxslideshowwidget.h Fri May 14 15:52:22 2010 +0300
@@ -21,11 +21,12 @@
#define GLXSLIDESHOWWIDGET_H
//Includes
-#include <hbscrollarea.h>
+#include <hbwidget.h>
#include <hbeffect.h>
//Qt/Orbit forward declarations
class QTimer;
+class QGestureEvent;
class HbIconItem;
class HbMainWindow;
class HbPushButton;
@@ -46,7 +47,7 @@
EMPTY_DATA_EVENT //send the signal when model have no data
} GlxSlideShowEvent;
-class GlxSlideShowWidget : public HbScrollArea
+class GlxSlideShowWidget : public HbWidget
{
Q_OBJECT
@@ -92,8 +93,7 @@
void rightGesture (int value);
protected :
- void mouseReleaseEvent( QGraphicsSceneMouseEvent *event);
- void mousePressEvent ( QGraphicsSceneMouseEvent * event ) ;
+ void gestureEvent(QGestureEvent *event);
private :
//clear all the model connection
--- a/ui/views/slideshowview/src/glxslideshowview.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/slideshowview/src/glxslideshowview.cpp Fri May 14 15:52:22 2010 +0300
@@ -62,9 +62,8 @@
void GlxSlideShowView::activate()
{
- //To:Do error handling
TRACER("GlxSlideShowView::activate()");
- mWindow->setOrientation(Qt::Horizontal, false);
+ mWindow->setOrientation(Qt::Horizontal, true); // Actually it is animation false, Hack for Bug in Media wall -todo- need to Address this ASAP
//finds the widgets from the docml
loadObjects();
@@ -72,21 +71,22 @@
connect( mSlideShowWidget, SIGNAL( slideShowEvent( GlxSlideShowEvent ) ), this, SLOT( slideShowEventHandler( GlxSlideShowEvent ) ) );
connect( mSlideShowWidget, SIGNAL( indexchanged() ), this, SLOT( indexchanged() ) );
- if (!mTvOutWrapper){
+ if (!mTvOutWrapper) {
mTvOutWrapper = new GlxTvOutWrapper();
- }
+ }
}
void GlxSlideShowView::deActivate()
{
TRACER("GlxSlideShowView::deActivate()");
- mWindow->unsetOrientation(false);
- setItemVisible(Hb::AllItems , TRUE);
+ mWindow->unsetOrientation(true); // Actually it is animation false, Hack for Bug in Media wall -todo- need to Address this ASAP
+
+ setItemVisible( Hb::AllItems , TRUE );
disconnect( mSlideShowWidget, SIGNAL( slideShowEvent( GlxSlideShowEvent ) ), this, SLOT( slideShowEventHandler( GlxSlideShowEvent ) ) );
disconnect( mSlideShowWidget, SIGNAL( indexchanged() ), this, SLOT( indexchanged() ) );
//Delete the Items in the slide show widget
mSlideShowWidget->cleanUp();
- mModel = NULL;
+
if (mTvOutWrapper){
delete mTvOutWrapper;
mTvOutWrapper = NULL;
@@ -97,15 +97,19 @@
{
TRACER("GlxSlideShowView::setModel()");
GLX_LOG_INFO2("GlxSlideShowView::setModel() model %u mModel %u", model, mModel);
- if ( mModel == model ) {
- return ;
- }
+ if ( mModel != model ) {
+
+ modelDestroyed();
mModel = model;
+ connect( mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ) );
+ }
+ setModelContext();
mSlideShowWidget->setModel(mModel);
+
if (mTvOutWrapper){
mTvOutWrapper->setModel(mModel);
mTvOutWrapper->setImagetoHDMI();
- }
+ }
}
void GlxSlideShowView::setModelContext()
@@ -114,12 +118,13 @@
if ( mModel && mWindow ) {
GLX_LOG_INFO1("GlxSlideShowView::setModelContext %d", mWindow->orientation() );
- if ( mWindow->orientation() == Qt::Horizontal ) {
+ mModel->setData(QModelIndex(), (int)GlxContextLsFs, GlxContextRole );
+ /* if ( mWindow->orientation() == Qt::Horizontal ) {
mModel->setData(QModelIndex(), (int)GlxContextLsFs, GlxContextRole );
}
else {
mModel->setData(QModelIndex(), (int)GlxContextPtFs, GlxContextRole );
- }
+ } */
}
}
@@ -158,7 +163,14 @@
if (mTvOutWrapper){
mTvOutWrapper->setImagetoHDMI();
}
+}
+void GlxSlideShowView::modelDestroyed()
+{
+ if ( mModel ) {
+ disconnect( mModel, SIGNAL( destroyed() ), this, SLOT( modelDestroyed() ) );
+ mModel = NULL;
+ }
}
bool GlxSlideShowView::event(QEvent *event)
@@ -166,10 +178,16 @@
TRACER("GlxSlideShowView::event()");
GLX_LOG_INFO1("GlxSlideShowView::event() %d event type", event->type());
if ( event->type() == QEvent::WindowActivate && mSlideShowWidget) {
+ if (mTvOutWrapper){
+ mTvOutWrapper->setToNativeMode();
+ }
mSlideShowWidget->startSlideShow();
}
if ( event->type() == QEvent::WindowDeactivate && mSlideShowWidget) {
+ if (mTvOutWrapper){
+ mTvOutWrapper->setToCloningMode();
+ }
mSlideShowWidget->stopSlideShow();
}
return HbView::event(event);
--- a/ui/views/slideshowview/src/glxslideshowwidget.cpp Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/slideshowview/src/glxslideshowwidget.cpp Fri May 14 15:52:22 2010 +0300
@@ -26,6 +26,8 @@
#include <hbmainwindow.h>
#include <hbdocumentloader.h>
#include <QAbstractItemModel>
+#include <QGesture>
+#include <hbpangesture.h>
//User Includes
@@ -38,12 +40,19 @@
#include <glxtracer.h>
-GlxSlideShowWidget::GlxSlideShowWidget( QGraphicsItem *parent ) : HbScrollArea(parent),
- mEffectEngine(NULL), mContinueButton(NULL), mItemIndex(1),
- mSelIndex(0), mSlideTimer(NULL), mModel(NULL)
- {
+GlxSlideShowWidget::GlxSlideShowWidget( QGraphicsItem *parent )
+ : HbWidget(parent),
+ mEffectEngine(NULL),
+ mContinueButton(NULL),
+ mItemIndex(1),
+ mSelIndex(0),
+ mSlideTimer(NULL),
+ mModel(NULL)
+{
TRACER("GlxSlideShowWidget::GlxSlideShowWidget()");
- }
+ grabGesture( Qt::PanGesture );
+ grabGesture( Qt::TapGesture );
+}
void GlxSlideShowWidget::setSlideShowWidget(HbDocumentLoader *DocLoader)
{
@@ -286,31 +295,31 @@
void GlxSlideShowWidget::orientationChanged(QRect screenRect)
- {
+{
TRACER("GlxSlideShowWidget::orientationChanged()");
cancelEffect();
setItemGeometry( screenRect);
resetSlideShow();
- }
+}
void GlxSlideShowWidget::leftGesture(int value)
- {
+{
Q_UNUSED(value)
TRACER("GlxSlideShowWidget::leftGesture()");
int index = ( mItemIndex + 1 ) % NBR_ITEM;
moveImage( index, mScreenRect.width(), QString("LeftMove"), "leftMoveEffectFinished");
- }
+}
void GlxSlideShowWidget::rightGesture(int value)
- {
+{
Q_UNUSED(value)
TRACER ("GlxSlideShowWidget::rightGesture()");
int index = mItemIndex ? mItemIndex - 1 : NBR_ITEM - 1;
moveImage( index, -mScreenRect.width(), QString("RightMove"), "rightMoveEffectFinished");
- }
+}
void GlxSlideShowWidget::leftMoveEffectFinished( const HbEffect::EffectStatus &status )
{
@@ -344,22 +353,34 @@
emit indexchanged(); // on right swipe
}
-void GlxSlideShowWidget::mouseReleaseEvent( QGraphicsSceneMouseEvent *event)
- {
- Q_UNUSED( event )
- TRACER ( "GlxSlideShowWidget::mouseReleaseEvent( ) ");
- GLX_LOG_INFO1 ( "GlxSlideShowWidget::mouseReleaseEvent( ) is pause %d", mIsPause);
- if ( mIsPause == false ) {
- pauseSlideShow();
+
+void GlxSlideShowWidget::gestureEvent(QGestureEvent *event)
+{
+ if( QTapGesture *gesture = static_cast<QTapGesture *>( event->gesture( Qt::TapGesture ) ) ) {
+ if ( gesture->state() == Qt::GestureFinished ) {
+ if ( mIsPause == false ) {
+ pauseSlideShow();
+ }
+ event->accept(gesture);
+ }
}
+
+ if (QPanGesture *panningGesture = qobject_cast<QPanGesture*>(event->gesture(Qt::PanGesture))) {
+ HbPanGesture *hbPanGesture = qobject_cast<HbPanGesture *>(panningGesture);
+ if ( hbPanGesture ) {
+ if( hbPanGesture->state() == Qt::GestureFinished ) {
+ QPointF delta( hbPanGesture->sceneDelta() );
+ if ( delta.x() > 0 ) {
+ rightGesture( delta.x() );
+ }
+ else {
+ leftGesture( delta.x() );
+ }
+ }
+ event->accept(panningGesture);
+ }
}
-
-void GlxSlideShowWidget::mousePressEvent ( QGraphicsSceneMouseEvent * event )
- {
- Q_UNUSED( event )
- TRACER ( "GlxSlideShowWidget::mousePressEvent( ) ");
- GLX_LOG_INFO1 ( "GlxSlideShowWidget::mousePressEvent( ) is pause %d", mIsPause);
- }
+}
void GlxSlideShowWidget::startSlideShow ( )
{
--- a/ui/views/views.pro Mon May 03 12:31:32 2010 +0300
+++ b/ui/views/views.pro Fri May 14 15:52:22 2010 +0300
@@ -22,13 +22,17 @@
LIBS += -lglxmediamodel.dll \
-lglxlistmodel.dll \
+ -lglxfavmediamodel.dll \
-lglximagedecoderwrapper.dll \
-lglxloggerqt.dll \
-lshareui.dll \
-lglxtvout.dll \
-lglxtvoutwrapper.dll \
-lxqserviceutil.dll \
- -lglxlogging.dll
+ -lglxlogging.dll \
+ -lganeswidgets.dll \
+ -lglxmodelwrapper.dll \
+ -lxqsettingsmanager
DEFINES += BUILD_GLXVIEWS
@@ -36,12 +40,15 @@
../../inc \
../uiengine/model/mediamodel/inc \
../uiengine/model/listmodel/inc \
+ ../uiengine/model/favmediamodel/inc \
../uiengine/medialistwrapper/inc \
../viewbase/inc \
../../commonutilities/imagedecoderwrapper/inc \
../../loggers/loggerqt/inc \
../../traces \
- ../../tvout/tvoutwrapper/inc
+ ../../tvout/tvoutwrapper/inc \
+ ../uiengine/model/modelwrapper/inc \
+ /epoc32/include/mw/hgwidgets
symbian: {
TARGET.UID3 = 0x200009EF
@@ -58,6 +65,7 @@
fullscreenview/inc/glxzoomcontrol.h \
detailsview/inc/glxdetailsview.h \
detailsview/inc/glxdetailscustomwidgets.h \
+ detailsview/inc/glxdetailscustomicon.h \
gridview/inc/glxgridview.h \
slideshowsettingsview/inc/glxslideshowsettingsview.h \
listview/inc/glxlistview.h \
@@ -78,6 +86,7 @@
fullscreenview/src/glxzoomcontrol.cpp \
detailsview/src/glxdetailsview.cpp \
detailsview/src/glxdetailscustomwidgets.cpp \
+ detailsview/src/glxdetailscustomicon.cpp \
gridview/src/glxgridview.cpp \
slideshowsettingsview/src/glxslideshowsettingsview.cpp \
listview/src/glxlistview.cpp \