# HG changeset patch # User William Roberts # Date 1279812953 -3600 # Node ID f48d04161a92b08e4fc4e405aac11a2a546af1d4 # Parent 572294aa6075fb97e0ae1875b707ccf7daf745bc# Parent 3341fe7c643a90f43a7f64d77b21d9f1ad066c0c Catchup to latest Symbian^4 diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/conf.pri --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/conf/conf.pri Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,40 @@ +# +# 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: This file provides the information required for building +# General Settings. +# +# + +symbian { + BLD_INF_RULES.prj_exports += \ + "$${LITERAL_HASH}include"\ + "conf/s60settingsuis.confml MW_LAYER_CONFML(s60settingsuis.confml)" \ + "conf/s60settingsuis_101F877A.crml MW_LAYER_CRML(s60settingsuis_101f877a.crml)" \ + "conf/s60settingsuis_101F877B.crml MW_LAYER_CRML(s60settingsuis_101f877b.crml)" \ + "conf/s60settingsuis_101F877C.crml MW_LAYER_CRML(s60settingsuis_101f877c.crml)" \ + "conf/s60settingsuis_101F877E.crml MW_LAYER_CRML(s60settingsuis_101f877e.crml)" \ + "conf/s60settingsuis_101F877F.crml MW_LAYER_CRML(s60settingsuis_101f877f.crml)" \ + "conf/s60settingsuis_101F883B.crml MW_LAYER_CRML(s60settingsuis_101f883b.crml)" \ + "conf/s60settingsuis_101F8751.crml MW_LAYER_CRML(s60settingsuis_101f8751.crml)" \ + "conf/s60settingsuis_101F8780.crml MW_LAYER_CRML(s60settingsuis_101f8780.crml)" \ + "conf/s60settingsuis_101F8781.crml MW_LAYER_CRML(s60settingsuis_101f8781.crml)" \ + "conf/s60settingsuis_101F8782.crml MW_LAYER_CRML(s60settingsuis_101f8782.crml)" \ + "conf/s60settingsuis_101F8831.crml MW_LAYER_CRML(s60settingsuis_101f8831.crml)" \ + "conf/s60settingsuis_1000A82B.crml MW_LAYER_CRML(s60settingsuis_1000a82b.crml)" \ + "conf/s60settingsuis_1020720A.crml MW_LAYER_CRML(s60settingsuis_1020720a.crml)" \ + "conf/s60settingsuis_1028239D.crml MW_LAYER_CRML(s60settingsuis_1028239d.crml)" \ + "conf/s60settingsuis_2002120B.crml MW_LAYER_CRML(s60settingsuis_2002120b.crml)" +} + +# End of File diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis.confml Binary file controlpanel/conf/s60settingsuis.confml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_1000A82B.crml Binary file controlpanel/conf/s60settingsuis_1000A82B.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F8751.crml Binary file controlpanel/conf/s60settingsuis_101F8751.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F877A.crml Binary file controlpanel/conf/s60settingsuis_101F877A.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F877B.crml Binary file controlpanel/conf/s60settingsuis_101F877B.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F877C.crml Binary file controlpanel/conf/s60settingsuis_101F877C.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F877E.crml Binary file controlpanel/conf/s60settingsuis_101F877E.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F877F.crml Binary file controlpanel/conf/s60settingsuis_101F877F.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F8780.crml Binary file controlpanel/conf/s60settingsuis_101F8780.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F8781.crml Binary file controlpanel/conf/s60settingsuis_101F8781.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F8782.crml Binary file controlpanel/conf/s60settingsuis_101F8782.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F8831.crml Binary file controlpanel/conf/s60settingsuis_101F8831.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_101F883B.crml Binary file controlpanel/conf/s60settingsuis_101F883B.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_1020720A.crml Binary file controlpanel/conf/s60settingsuis_1020720A.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_1028239D.crml Binary file controlpanel/conf/s60settingsuis_1028239D.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/conf/s60settingsuis_2002120B.crml Binary file controlpanel/conf/s60settingsuis_2002120B.crml has changed diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel.pro --- a/controlpanel/controlpanel.pro Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel.pro Thu Jul 22 16:35:53 2010 +0100 @@ -18,4 +18,5 @@ SUBDIRS = src CONFIG += ordered -include(rom/cp_rom.pri) \ No newline at end of file +include(rom/cp_rom.pri) +include(conf/conf.pri) \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel_plat/inc/cpbasepath.h --- a/controlpanel/controlpanel_plat/inc/cpbasepath.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel_plat/inc/cpbasepath.h Thu Jul 22 16:35:53 2010 +0100 @@ -33,22 +33,6 @@ #endif #endif -#ifdef Q_OS_SYMBIAN - #ifdef __WINS__ - #define CP_RESOURCE_PATH QLatin1String("C:/resource/controlpanel") - #else - #define CP_RESOURCE_PATH QLatin1String("Z:/resource/controlpanel") - #endif -#else - #ifdef _DEBUG - #define CP_RESOURCE_PATH QLatin1String("C:/controlpanel/debug/resource") - #else - #define CP_RESOURCE_PATH QLatin1String("C:/controlpanel/release/resource") - #endif -#endif - -#define WIDGETML_SUB_PATH QLatin1String("widgetml") -#define ICON_SUB_PATH QLatin1String("icon") #endif //CPBASEPATH_H diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel_plat/inc/cpbasesettingview.h --- a/controlpanel/controlpanel_plat/inc/cpbasesettingview.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel_plat/inc/cpbasesettingview.h Thu Jul 22 16:35:53 2010 +0100 @@ -33,11 +33,11 @@ explicit CpBaseSettingView(QGraphicsWidget *widget = 0, QGraphicsItem *parent = 0); virtual ~CpBaseSettingView(); - //Deprecated! please use HbView::setWidget + //\deprecated please use HbView::setWidget void setSettingForm(HbDataForm *settingForm) { } - //Deprecated! please use HbView::widget + //\deprecated HbDataForm *settingForm(), please use HbView::widget() instead HbDataForm *settingForm() const { return 0; diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel_plat/inc/cplogger.h --- a/controlpanel/controlpanel_plat/inc/cplogger.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel_plat/inc/cplogger.h Thu Jul 22 16:35:53 2010 +0100 @@ -19,8 +19,7 @@ /* - Windows: C:/ControlPanel/debug/bin/controlpanellog.conf - Symbian: C:/data/.config/controlpanellog.conf + config file path :/logconf/controlpanellog.conf Format: @@ -43,20 +42,33 @@ #include #include +/* + make CPFW_LOG work +*/ + +//#define ENABLE_CPFW_LOG + +/* + make CPPERF_LOG work +*/ + +//#define ENABLE_CPPERF_LOG + #define CPFW_LOGGER_NAME QLatin1String("CpFramework") #define CPPERF_LOGGER_NAME QLatin1String("CpPerformance") -#if defined (Q_OS_SYMBIAN) - #define CP_LOGGER_CONFIG_PATH QLatin1String("C:/data/.config/controlpanellog.conf") -#elif defined (Q_WS_WIN) - #ifdef _DEBUG - #define CP_LOGGER_CONFIG_PATH QLatin1String("C:/controlpanel/debug/bin/controlpanellog.conf") - #else - #define CP_LOGGER_CONFIG_PATH QLatin1String("C:/controlpanel/release/bin/controlpanellog.conf") - #endif +#define CP_LOGGER_CONFIG_PATH QLatin1String(":/logconf/controlpanellog.conf") + +#ifdef ENABLE_CPFW_LOG + #define CPFW_LOG(str) Logger::instance(CPFW_LOGGER_NAME)->log(str); +#else + #define CPFW_LOG(str) #endif -#define CPFW_LOG(str) Logger::instance(CPFW_LOGGER_NAME)->log(str); -#define CPPERF_LOG(str) Logger::instance(CPPERF_LOGGER_NAME)->log(str); +#ifdef ENABLE_CPPERF_LOG + #define CPPERF_LOG(str) Logger::instance(CPPERF_LOGGER_NAME)->log(str); +#else + #define CPPERF_LOG(str) +#endif #endif /* CPLOGGER_H */ diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel_plat/inc/cppluginloader.h --- a/controlpanel/controlpanel_plat/inc/cppluginloader.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel_plat/inc/cppluginloader.h Thu Jul 22 16:35:53 2010 +0100 @@ -29,12 +29,12 @@ class CP_EXPORT CpPluginLoader { public: - /* OLD INTERFACES* DPRECATED!!! */ + /* OLD INTERFACES* DPRECATED!!! \deprecated static CpPluginInterface *loadCpPlugin(const QString &pluginFile)*/ static CpPluginInterface *loadCpPlugin(const QString &pluginFile) { return 0; } - /* OLD INTERFACES* DPRECATED!!! */ + /* OLD INTERFACES* DPRECATED!!! \deprecated static CpPluginPlatInterface *loadPlatCpPlugin(const QString &pluginFile)*/ static CpPluginPlatInterface *loadPlatCpPlugin(const QString &pluginFile) { return 0; diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel_plat/inc/cppluginplatinterface.h --- a/controlpanel/controlpanel_plat/inc/cppluginplatinterface.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel_plat/inc/cppluginplatinterface.h Thu Jul 22 16:35:53 2010 +0100 @@ -21,6 +21,7 @@ #include /*! + \deprecated class CpPluginPlatInterface \class CpPluginPlatInterface \brief The class is Deprecated! please use CpPluginInterface instead. */ @@ -39,6 +40,7 @@ } /*! + \deprecated CpSettingFormItemData *createSettingFormItemData(CpItemDataHelper &itemDataHelper) Create a data form mode item, by which the control panel framework can build a data form model. */ virtual CpSettingFormItemData *createSettingFormItemData(CpItemDataHelper &itemDataHelper) const = 0; diff -r 572294aa6075 -r f48d04161a92 controlpanel/controlpanel_plat/inc/cpsettingformentryitemdata.h --- a/controlpanel/controlpanel_plat/inc/cpsettingformentryitemdata.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/controlpanel_plat/inc/cpsettingformentryitemdata.h Thu Jul 22 16:35:53 2010 +0100 @@ -92,8 +92,7 @@ Q_DISABLE_COPY(CpSettingFormEntryItemData) Q_DECLARE_PRIVATE_D(d_ptr, CpSettingFormEntryItemData) Q_PRIVATE_SLOT(d_func(), void _q_itemPressed(const QModelIndex &index)) - Q_PRIVATE_SLOT(d_func(), void _q_itemReleased(const QModelIndex &index)) - Q_PRIVATE_SLOT(d_func(), void _q_scrollingStarted()) + Q_PRIVATE_SLOT(d_func(), void _q_itemActivated(const QModelIndex &index)) private: CpSettingFormEntryItemDataPrivate *d_ptr; }; diff -r 572294aa6075 -r f48d04161a92 controlpanel/rom/controlpanel.iby --- a/controlpanel/rom/controlpanel.iby Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/rom/controlpanel.iby Thu Jul 22 16:35:53 2010 +0100 @@ -25,8 +25,4 @@ file=ABI_DIR\BUILD_DIR\cpframework.dll SHARED_LIB_DIR\cpframework.dll -data= \epoc32\data\c\resource\controlpanel\widgetml\cpdataformlistentryviewitem.css resource\controlpanel\widgetml\cpdataformlistentryviewitem.css -data= \epoc32\data\c\resource\controlpanel\widgetml\cpdataformlistentryviewitem.widgetml resource\controlpanel\widgetml\cpdataformlistentryviewitem.widgetml -data= \epoc32\data\c\resource\controlpanel\icon\qgn_prop_set_default_sub.svg resource\controlpanel\icon\qgn_prop_set_default_sub.svg - #endif diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/bwins/cpframeworku.def --- a/controlpanel/src/bwins/cpframeworku.def Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,137 +0,0 @@ -EXPORTS - ?addLogOutput@Logger@@QAE_NPAVLogOutput@@@Z @ 1 NONAME ; bool Logger::addLogOutput(class LogOutput *) - ??0CpItemDataHelper@@QAE@PAVHbDataForm@@@Z @ 2 NONAME ; CpItemDataHelper::CpItemDataHelper(class HbDataForm *) - ?trUtf8@LogOutput@@SA?AVQString@@PBD0@Z @ 3 NONAME ; class QString LogOutput::trUtf8(char const *, char const *) - ??1CpItemDataHelper@@UAE@XZ @ 4 NONAME ; CpItemDataHelper::~CpItemDataHelper(void) - ??_ECpSettingFormEntryItemData@@UAE@I@Z @ 5 NONAME ; CpSettingFormEntryItemData::~CpSettingFormEntryItemData(unsigned int) - ?staticMetaObject@CpItemDataHelper@@2UQMetaObject@@B @ 6 NONAME ; struct QMetaObject const CpItemDataHelper::staticMetaObject - ?metaObject@CpBaseSettingView@@UBEPBUQMetaObject@@XZ @ 7 NONAME ; struct QMetaObject const * CpBaseSettingView::metaObject(void) const - ?text@CpSettingFormEntryItemData@@QBE?AVQString@@XZ @ 8 NONAME ; class QString CpSettingFormEntryItemData::text(void) const - ?qt_metacast@CpSettingFormItemData@@UAEPAXPBD@Z @ 9 NONAME ; void * CpSettingFormItemData::qt_metacast(char const *) - ??1LogOutput@@UAE@XZ @ 10 NONAME ; LogOutput::~LogOutput(void) - ?qt_metacall@Logger@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 11 NONAME ; int Logger::qt_metacall(enum QMetaObject::Call, int, void * *) - ?loadCpLauncherInterface@CpPluginLoader@@SAPAVCpLauncherInterface@@ABVQString@@@Z @ 12 NONAME ; class CpLauncherInterface * CpPluginLoader::loadCpLauncherInterface(class QString const &) - ?loadCpPluginInterface@CpPluginLoader@@SAPAVCpPluginInterface@@ABVQString@@@Z @ 13 NONAME ; class CpPluginInterface * CpPluginLoader::loadCpPluginInterface(class QString const &) - ?staticMetaObject@Logger@@2UQMetaObject@@B @ 14 NONAME ; struct QMetaObject const Logger::staticMetaObject - ?loadPlatCpPlugin@CpPluginLoader@@SAPAVCpPluginPlatInterface@@ABVQString@@@Z @ 15 NONAME ; class CpPluginPlatInterface * CpPluginLoader::loadPlatCpPlugin(class QString const &) - ?logOutput@Logger@@QAEPAVLogOutput@@ABVQString@@@Z @ 16 NONAME ; class LogOutput * Logger::logOutput(class QString const &) - ??_ELogOutput@@UAE@I@Z @ 17 NONAME ; LogOutput::~LogOutput(unsigned int) - ?addCpItemPrototype@CpPluginUtility@@SAXPAVHbDataForm@@@Z @ 18 NONAME ; void CpPluginUtility::addCpItemPrototype(class HbDataForm *) - ?qt_metacast@LogOutput@@UAEPAXPBD@Z @ 19 NONAME ; void * LogOutput::qt_metacast(char const *) - ?qt_metacast@CpBaseSettingView@@UAEPAXPBD@Z @ 20 NONAME ; void * CpBaseSettingView::qt_metacast(char const *) - ?getStaticMetaObject@CpBaseSettingView@@SAABUQMetaObject@@XZ @ 21 NONAME ; struct QMetaObject const & CpBaseSettingView::getStaticMetaObject(void) - ??1CpSettingFormItemData@@UAE@XZ @ 22 NONAME ; CpSettingFormItemData::~CpSettingFormItemData(void) - ??0CpSettingFormEntryItemData@@QAE@W4EntryItemType@0@PAVHbDataForm@@ABVQString@@22PBVHbDataFormModelItem@@@Z @ 23 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(enum CpSettingFormEntryItemData::EntryItemType, class HbDataForm *, class QString const &, class QString const &, class QString const &, class HbDataFormModelItem const *) - ?d_func@CpSettingFormEntryItemData@@ABEPBVCpSettingFormEntryItemDataPrivate@@XZ @ 24 NONAME ; class CpSettingFormEntryItemDataPrivate const * CpSettingFormEntryItemData::d_func(void) const - ?d_func@CpBaseSettingView@@ABEPBVCpBaseSettingViewPrivate@@XZ @ 25 NONAME ; class CpBaseSettingViewPrivate const * CpBaseSettingView::d_func(void) const - ?launchCpPluginView@CpPluginLauncher@@SA_NABVQString@@H@Z @ 26 NONAME ; bool CpPluginLauncher::launchCpPluginView(class QString const &, int) - ?aboutToClose@CpBaseSettingView@@IAEXXZ @ 27 NONAME ; void CpBaseSettingView::aboutToClose(void) - ?close@CpBaseSettingView@@MAEXXZ @ 28 NONAME ; void CpBaseSettingView::close(void) - ?modelItemFromModelIndex@CpItemDataHelper@@QAEPAVHbDataFormModelItem@@ABVQModelIndex@@@Z @ 29 NONAME ; class HbDataFormModelItem * CpItemDataHelper::modelItemFromModelIndex(class QModelIndex const &) - ?instance@Logger@@SAPAV1@ABVQString@@@Z @ 30 NONAME ; class Logger * Logger::instance(class QString const &) - ?trUtf8@CpSettingFormEntryItemData@@SA?AVQString@@PBD0H@Z @ 31 NONAME ; class QString CpSettingFormEntryItemData::trUtf8(char const *, char const *, int) - ?removeConnection@CpItemDataHelper@@QAEXPAVHbDataFormModelItem@@PBDPAVQObject@@1@Z @ 32 NONAME ; void CpItemDataHelper::removeConnection(class HbDataFormModelItem *, char const *, class QObject *, char const *) - ?returnValueDelivered@CpBaseSettingView@@IAEXABVQVariant@@@Z @ 33 NONAME ; void CpBaseSettingView::returnValueDelivered(class QVariant const &) - ?setDateTimeFormat@Logger@@QAEXABVQString@@@Z @ 34 NONAME ; void Logger::setDateTimeFormat(class QString const &) - ?settingForm@CpBaseSettingView@@QBEPAVHbDataForm@@XZ @ 35 NONAME ; class HbDataForm * CpBaseSettingView::settingForm(void) const - ??1Logger@@UAE@XZ @ 36 NONAME ; Logger::~Logger(void) - ?description@CpSettingFormEntryItemData@@QBE?AVQString@@XZ @ 37 NONAME ; class QString CpSettingFormEntryItemData::description(void) const - ?log@Logger@@QAEXABVQString@@@Z @ 38 NONAME ; void Logger::log(class QString const &) - ??_ELogger@@UAE@I@Z @ 39 NONAME ; Logger::~Logger(unsigned int) - ?tr@CpItemDataHelper@@SA?AVQString@@PBD0H@Z @ 40 NONAME ; class QString CpItemDataHelper::tr(char const *, char const *, int) - ?setName@LogOutput@@QAEXABVQString@@@Z @ 41 NONAME ; void LogOutput::setName(class QString const &) - ?qt_metacall@CpBaseSettingView@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 42 NONAME ; int CpBaseSettingView::qt_metacall(enum QMetaObject::Call, int, void * *) - ?trUtf8@CpBaseSettingView@@SA?AVQString@@PBD0H@Z @ 43 NONAME ; class QString CpBaseSettingView::trUtf8(char const *, char const *, int) - ?getStaticMetaObject@CpSettingFormEntryItemData@@SAABUQMetaObject@@XZ @ 44 NONAME ; struct QMetaObject const & CpSettingFormEntryItemData::getStaticMetaObject(void) - ?name@Logger@@QBE?AVQString@@XZ @ 45 NONAME ; class QString Logger::name(void) const - ?load@LogOutput@@QAE_NAAVQSettings@@@Z @ 46 NONAME ; bool LogOutput::load(class QSettings &) - ??0CpSettingFormEntryItemData@@QAE@AAVCpItemDataHelper@@ABVQString@@1ABVHbIcon@@PBVHbDataFormModelItem@@@Z @ 47 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(class CpItemDataHelper &, class QString const &, class QString const &, class HbIcon const &, class HbDataFormModelItem const *) - ?setText@CpSettingFormEntryItemData@@QAEXABVQString@@@Z @ 48 NONAME ; void CpSettingFormEntryItemData::setText(class QString const &) - ?close@Logger@@SAXABVQString@@@Z @ 49 NONAME ; void Logger::close(class QString const &) - ?disconnectFromForm@CpItemDataHelper@@QAEXPBDPAVQObject@@0@Z @ 50 NONAME ; void CpItemDataHelper::disconnectFromForm(char const *, class QObject *, char const *) - ?metaObject@CpItemDataHelper@@UBEPBUQMetaObject@@XZ @ 51 NONAME ; struct QMetaObject const * CpItemDataHelper::metaObject(void) const - ??_ECpItemDataHelper@@UAE@I@Z @ 52 NONAME ; CpItemDataHelper::~CpItemDataHelper(unsigned int) - ??1CpSettingFormEntryItemData@@UAE@XZ @ 53 NONAME ; CpSettingFormEntryItemData::~CpSettingFormEntryItemData(void) - ?iconName@CpSettingFormEntryItemData@@QBE?AVQString@@XZ @ 54 NONAME ; class QString CpSettingFormEntryItemData::iconName(void) const - ?staticMetaObject@CpSettingFormItemData@@2UQMetaObject@@B @ 55 NONAME ; struct QMetaObject const CpSettingFormItemData::staticMetaObject - ?createLogOutput@LogOutputFactory@@SAPAVLogOutput@@ABVQString@@@Z @ 56 NONAME ; class LogOutput * LogOutputFactory::createLogOutput(class QString const &) - ?setEntryItemIcon@CpSettingFormEntryItemData@@QAEXABVHbIcon@@@Z @ 57 NONAME ; void CpSettingFormEntryItemData::setEntryItemIcon(class HbIcon const &) - ?launchSettingView@CpPluginLauncher@@SAPAVCpBaseSettingView@@ABVQString@@ABVQVariant@@@Z @ 58 NONAME ; class CpBaseSettingView * CpPluginLauncher::launchSettingView(class QString const &, class QVariant const &) - ?entryItemIcon@CpSettingFormEntryItemData@@QBE?AVHbIcon@@XZ @ 59 NONAME ; class HbIcon CpSettingFormEntryItemData::entryItemIcon(void) const - ?qt_metacall@CpSettingFormEntryItemData@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 60 NONAME ; int CpSettingFormEntryItemData::qt_metacall(enum QMetaObject::Call, int, void * *) - ?onLaunchView@CpSettingFormEntryItemData@@UAEXXZ @ 61 NONAME ; void CpSettingFormEntryItemData::onLaunchView(void) - ?setLogDateTime@Logger@@QAEX_N@Z @ 62 NONAME ; void Logger::setLogDateTime(bool) - ?configure@Logger@@QAEXABVQString@@W4Format@QSettings@@@Z @ 63 NONAME ; void Logger::configure(class QString const &, enum QSettings::Format) - ?tr@Logger@@SA?AVQString@@PBD0@Z @ 64 NONAME ; class QString Logger::tr(char const *, char const *) - ?trUtf8@CpItemDataHelper@@SA?AVQString@@PBD0H@Z @ 65 NONAME ; class QString CpItemDataHelper::trUtf8(char const *, char const *, int) - ?metaObject@LogOutput@@UBEPBUQMetaObject@@XZ @ 66 NONAME ; struct QMetaObject const * LogOutput::metaObject(void) const - ?trUtf8@CpItemDataHelper@@SA?AVQString@@PBD0@Z @ 67 NONAME ; class QString CpItemDataHelper::trUtf8(char const *, char const *) - ??0CpSettingFormEntryItemData@@QAE@PBVHbDataFormModelItem@@@Z @ 68 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(class HbDataFormModelItem const *) - ?logDateTime@Logger@@QBE_NXZ @ 69 NONAME ; bool Logger::logDateTime(void) const - ??0CpSettingFormEntryItemData@@QAE@PAVHbDataForm@@ABVQString@@1ABVHbIcon@@PBVHbDataFormModelItem@@@Z @ 70 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(class HbDataForm *, class QString const &, class QString const &, class HbIcon const &, class HbDataFormModelItem const *) - ?d_func@CpBaseSettingView@@AAEPAVCpBaseSettingViewPrivate@@XZ @ 71 NONAME ; class CpBaseSettingViewPrivate * CpBaseSettingView::d_func(void) - ??0CpSettingFormItemData@@QAE@W4DataItemType@HbDataFormModelItem@@ABVQString@@PBV2@@Z @ 72 NONAME ; CpSettingFormItemData::CpSettingFormItemData(enum HbDataFormModelItem::DataItemType, class QString const &, class HbDataFormModelItem const *) - ?connectToForm@CpItemDataHelper@@QAEXPBDPAVQObject@@0@Z @ 73 NONAME ; void CpItemDataHelper::connectToForm(char const *, class QObject *, char const *) - ?tr@LogOutput@@SA?AVQString@@PBD0@Z @ 74 NONAME ; class QString LogOutput::tr(char const *, char const *) - ?setIconName@CpSettingFormEntryItemData@@QAEXABVQString@@@Z @ 75 NONAME ; void CpSettingFormEntryItemData::setIconName(class QString const &) - ?qt_metacast@CpItemDataHelper@@UAEPAXPBD@Z @ 76 NONAME ; void * CpItemDataHelper::qt_metacast(char const *) - ?metaObject@Logger@@UBEPBUQMetaObject@@XZ @ 77 NONAME ; struct QMetaObject const * Logger::metaObject(void) const - ?tr@CpSettingFormEntryItemData@@SA?AVQString@@PBD0@Z @ 78 NONAME ; class QString CpSettingFormEntryItemData::tr(char const *, char const *) - ??0Logger@@AAE@ABVQString@@PAVQObject@@@Z @ 79 NONAME ; Logger::Logger(class QString const &, class QObject *) - ?addConnection@CpItemDataHelper@@QAEXPAVHbDataFormModelItem@@PBDPAVQObject@@1@Z @ 80 NONAME ; void CpItemDataHelper::addConnection(class HbDataFormModelItem *, char const *, class QObject *, char const *) - ?d_func@CpSettingFormEntryItemData@@AAEPAVCpSettingFormEntryItemDataPrivate@@XZ @ 81 NONAME ; class CpSettingFormEntryItemDataPrivate * CpSettingFormEntryItemData::d_func(void) - ?dateTimeFormat@Logger@@QBE?AVQString@@XZ @ 82 NONAME ; class QString Logger::dateTimeFormat(void) const - ??0CpSettingFormItemData@@QAE@PBVHbDataFormModelItem@@@Z @ 83 NONAME ; CpSettingFormItemData::CpSettingFormItemData(class HbDataFormModelItem const *) - ?clearAllLogOutput@Logger@@QAEXXZ @ 84 NONAME ; void Logger::clearAllLogOutput(void) - ?qt_metacall@LogOutput@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 85 NONAME ; int LogOutput::qt_metacall(enum QMetaObject::Call, int, void * *) - ?setDescription@CpSettingFormEntryItemData@@QAEXABVQString@@@Z @ 86 NONAME ; void CpSettingFormEntryItemData::setDescription(class QString const &) - ?tr@CpSettingFormEntryItemData@@SA?AVQString@@PBD0H@Z @ 87 NONAME ; class QString CpSettingFormEntryItemData::tr(char const *, char const *, int) - ?getStaticMetaObject@CpSettingFormItemData@@SAABUQMetaObject@@XZ @ 88 NONAME ; struct QMetaObject const & CpSettingFormItemData::getStaticMetaObject(void) - ?staticMetaObject@CpSettingFormEntryItemData@@2UQMetaObject@@B @ 89 NONAME ; struct QMetaObject const CpSettingFormEntryItemData::staticMetaObject - ?setParentLogger@LogOutput@@QAEXPAVLogger@@@Z @ 90 NONAME ; void LogOutput::setParentLogger(class Logger *) - ?parentLogger@LogOutput@@QAEPAVLogger@@XZ @ 91 NONAME ; class Logger * LogOutput::parentLogger(void) - ?qt_metacall@CpSettingFormItemData@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 92 NONAME ; int CpSettingFormItemData::qt_metacall(enum QMetaObject::Call, int, void * *) - ?tr@Logger@@SA?AVQString@@PBD0H@Z @ 93 NONAME ; class QString Logger::tr(char const *, char const *, int) - ??_ECpBaseSettingView@@UAE@I@Z @ 94 NONAME ; CpBaseSettingView::~CpBaseSettingView(unsigned int) - ?bindToForm@CpItemDataHelper@@QAEXPAVHbDataForm@@@Z @ 95 NONAME ; void CpItemDataHelper::bindToForm(class HbDataForm *) - ??_ECpSettingFormItemData@@UAE@I@Z @ 96 NONAME ; CpSettingFormItemData::~CpSettingFormItemData(unsigned int) - ?getStaticMetaObject@Logger@@SAABUQMetaObject@@XZ @ 97 NONAME ; struct QMetaObject const & Logger::getStaticMetaObject(void) - ?trUtf8@CpSettingFormItemData@@SA?AVQString@@PBD0H@Z @ 98 NONAME ; class QString CpSettingFormItemData::trUtf8(char const *, char const *, int) - ?staticMetaObject@CpBaseSettingView@@2UQMetaObject@@B @ 99 NONAME ; struct QMetaObject const CpBaseSettingView::staticMetaObject - ?tr@CpBaseSettingView@@SA?AVQString@@PBD0H@Z @ 100 NONAME ; class QString CpBaseSettingView::tr(char const *, char const *, int) - ?tr@CpBaseSettingView@@SA?AVQString@@PBD0@Z @ 101 NONAME ; class QString CpBaseSettingView::tr(char const *, char const *) - ?setLogLoggerName@Logger@@QAEX_N@Z @ 102 NONAME ; void Logger::setLogLoggerName(bool) - ?tr@CpSettingFormItemData@@SA?AVQString@@PBD0@Z @ 103 NONAME ; class QString CpSettingFormItemData::tr(char const *, char const *) - ?closeAll@Logger@@SAXXZ @ 104 NONAME ; void Logger::closeAll(void) - ?setSettingForm@CpBaseSettingView@@QAEXPAVHbDataForm@@@Z @ 105 NONAME ; void CpBaseSettingView::setSettingForm(class HbDataForm *) - ?tr@CpSettingFormItemData@@SA?AVQString@@PBD0H@Z @ 106 NONAME ; class QString CpSettingFormItemData::tr(char const *, char const *, int) - ?trUtf8@LogOutput@@SA?AVQString@@PBD0H@Z @ 107 NONAME ; class QString LogOutput::trUtf8(char const *, char const *, int) - ?trUtf8@CpSettingFormItemData@@SA?AVQString@@PBD0@Z @ 108 NONAME ; class QString CpSettingFormItemData::trUtf8(char const *, char const *) - ?removeLogOutput@Logger@@QAEXPAVLogOutput@@@Z @ 109 NONAME ; void Logger::removeLogOutput(class LogOutput *) - ??0CpBaseSettingView@@QAE@PAVQGraphicsWidget@@PAVQGraphicsItem@@@Z @ 110 NONAME ; CpBaseSettingView::CpBaseSettingView(class QGraphicsWidget *, class QGraphicsItem *) - ?widgetFromModelIndex@CpItemDataHelper@@QAEPAVHbWidget@@ABVQModelIndex@@@Z @ 111 NONAME ; class HbWidget * CpItemDataHelper::widgetFromModelIndex(class QModelIndex const &) - ??0LogOutput@@IAE@PAVLogger@@@Z @ 112 NONAME ; LogOutput::LogOutput(class Logger *) - ?staticMetaObject@LogOutput@@2UQMetaObject@@B @ 113 NONAME ; struct QMetaObject const LogOutput::staticMetaObject - ?trUtf8@CpSettingFormEntryItemData@@SA?AVQString@@PBD0@Z @ 114 NONAME ; class QString CpSettingFormEntryItemData::trUtf8(char const *, char const *) - ?name@LogOutput@@QBE?AVQString@@XZ @ 115 NONAME ; class QString LogOutput::name(void) const - ?tr@CpItemDataHelper@@SA?AVQString@@PBD0@Z @ 116 NONAME ; class QString CpItemDataHelper::tr(char const *, char const *) - ?getStaticMetaObject@CpItemDataHelper@@SAABUQMetaObject@@XZ @ 117 NONAME ; struct QMetaObject const & CpItemDataHelper::getStaticMetaObject(void) - ?qt_metacast@CpSettingFormEntryItemData@@UAEPAXPBD@Z @ 118 NONAME ; void * CpSettingFormEntryItemData::qt_metacast(char const *) - ?logLoggerName@Logger@@QBE_NXZ @ 119 NONAME ; bool Logger::logLoggerName(void) const - ?qt_metacall@CpItemDataHelper@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 120 NONAME ; int CpItemDataHelper::qt_metacall(enum QMetaObject::Call, int, void * *) - ?metaObject@CpSettingFormEntryItemData@@UBEPBUQMetaObject@@XZ @ 121 NONAME ; struct QMetaObject const * CpSettingFormEntryItemData::metaObject(void) const - ?qt_metacast@Logger@@UAEPAXPBD@Z @ 122 NONAME ; void * Logger::qt_metacast(char const *) - ?addItemPrototype@CpItemDataHelper@@QAEXPAVHbAbstractViewItem@@@Z @ 123 NONAME ; void CpItemDataHelper::addItemPrototype(class HbAbstractViewItem *) - ?trUtf8@CpBaseSettingView@@SA?AVQString@@PBD0@Z @ 124 NONAME ; class QString CpBaseSettingView::trUtf8(char const *, char const *) - ?getStaticMetaObject@LogOutput@@SAABUQMetaObject@@XZ @ 125 NONAME ; struct QMetaObject const & LogOutput::getStaticMetaObject(void) - ?createLogOutput@LogOutputFactory@@SAPAVLogOutput@@ABVQString@@ABV?$QHash@VQString@@VQVariant@@@@@Z @ 126 NONAME ; class LogOutput * LogOutputFactory::createLogOutput(class QString const &, class QHash const &) - ?addCreateLogOutputEntry@LogOutputFactory@@SAXABVQString@@P6APAVLogOutput@@XZ@Z @ 127 NONAME ; void LogOutputFactory::addCreateLogOutputEntry(class QString const &, class LogOutput * (*)(void)) - ?configure@Logger@@QAEXAAVQSettings@@@Z @ 128 NONAME ; void Logger::configure(class QSettings &) - ?loadCpPlugin@CpPluginLoader@@SAPAVCpPluginInterface@@ABVQString@@@Z @ 129 NONAME ; class CpPluginInterface * CpPluginLoader::loadCpPlugin(class QString const &) - ??1CpBaseSettingView@@UAE@XZ @ 130 NONAME ; CpBaseSettingView::~CpBaseSettingView(void) - ??0CpSettingFormEntryItemData@@QAE@W4EntryItemType@0@AAVCpItemDataHelper@@ABVQString@@22PBVHbDataFormModelItem@@@Z @ 131 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(enum CpSettingFormEntryItemData::EntryItemType, class CpItemDataHelper &, class QString const &, class QString const &, class QString const &, class HbDataFormModelItem const *) - ?metaObject@CpSettingFormItemData@@UBEPBUQMetaObject@@XZ @ 132 NONAME ; struct QMetaObject const * CpSettingFormItemData::metaObject(void) const - ?tr@LogOutput@@SA?AVQString@@PBD0H@Z @ 133 NONAME ; class QString LogOutput::tr(char const *, char const *, int) - ?trUtf8@Logger@@SA?AVQString@@PBD0H@Z @ 134 NONAME ; class QString Logger::trUtf8(char const *, char const *, int) - ?trUtf8@Logger@@SA?AVQString@@PBD0@Z @ 135 NONAME ; class QString Logger::trUtf8(char const *, char const *) - diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/bwins/cpframeworku.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/src/cpframework/bwins/cpframeworku.def Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,137 @@ +EXPORTS + ?addLogOutput@Logger@@QAE_NPAVLogOutput@@@Z @ 1 NONAME ; bool Logger::addLogOutput(class LogOutput *) + ??0CpItemDataHelper@@QAE@PAVHbDataForm@@@Z @ 2 NONAME ; CpItemDataHelper::CpItemDataHelper(class HbDataForm *) + ?trUtf8@LogOutput@@SA?AVQString@@PBD0@Z @ 3 NONAME ; class QString LogOutput::trUtf8(char const *, char const *) + ??1CpItemDataHelper@@UAE@XZ @ 4 NONAME ; CpItemDataHelper::~CpItemDataHelper(void) + ??_ECpSettingFormEntryItemData@@UAE@I@Z @ 5 NONAME ; CpSettingFormEntryItemData::~CpSettingFormEntryItemData(unsigned int) + ?staticMetaObject@CpItemDataHelper@@2UQMetaObject@@B @ 6 NONAME ; struct QMetaObject const CpItemDataHelper::staticMetaObject + ?metaObject@CpBaseSettingView@@UBEPBUQMetaObject@@XZ @ 7 NONAME ; struct QMetaObject const * CpBaseSettingView::metaObject(void) const + ?text@CpSettingFormEntryItemData@@QBE?AVQString@@XZ @ 8 NONAME ; class QString CpSettingFormEntryItemData::text(void) const + ?qt_metacast@CpSettingFormItemData@@UAEPAXPBD@Z @ 9 NONAME ; void * CpSettingFormItemData::qt_metacast(char const *) + ??1LogOutput@@UAE@XZ @ 10 NONAME ; LogOutput::~LogOutput(void) + ?qt_metacall@Logger@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 11 NONAME ; int Logger::qt_metacall(enum QMetaObject::Call, int, void * *) + ?loadCpLauncherInterface@CpPluginLoader@@SAPAVCpLauncherInterface@@ABVQString@@@Z @ 12 NONAME ; class CpLauncherInterface * CpPluginLoader::loadCpLauncherInterface(class QString const &) + ?loadCpPluginInterface@CpPluginLoader@@SAPAVCpPluginInterface@@ABVQString@@@Z @ 13 NONAME ; class CpPluginInterface * CpPluginLoader::loadCpPluginInterface(class QString const &) + ?staticMetaObject@Logger@@2UQMetaObject@@B @ 14 NONAME ; struct QMetaObject const Logger::staticMetaObject + ?loadPlatCpPlugin@CpPluginLoader@@SAPAVCpPluginPlatInterface@@ABVQString@@@Z @ 15 NONAME ; class CpPluginPlatInterface * CpPluginLoader::loadPlatCpPlugin(class QString const &) + ?logOutput@Logger@@QAEPAVLogOutput@@ABVQString@@@Z @ 16 NONAME ; class LogOutput * Logger::logOutput(class QString const &) + ??_ELogOutput@@UAE@I@Z @ 17 NONAME ; LogOutput::~LogOutput(unsigned int) + ?addCpItemPrototype@CpPluginUtility@@SAXPAVHbDataForm@@@Z @ 18 NONAME ; void CpPluginUtility::addCpItemPrototype(class HbDataForm *) + ?qt_metacast@LogOutput@@UAEPAXPBD@Z @ 19 NONAME ; void * LogOutput::qt_metacast(char const *) + ?qt_metacast@CpBaseSettingView@@UAEPAXPBD@Z @ 20 NONAME ; void * CpBaseSettingView::qt_metacast(char const *) + ?getStaticMetaObject@CpBaseSettingView@@SAABUQMetaObject@@XZ @ 21 NONAME ; struct QMetaObject const & CpBaseSettingView::getStaticMetaObject(void) + ??1CpSettingFormItemData@@UAE@XZ @ 22 NONAME ; CpSettingFormItemData::~CpSettingFormItemData(void) + ??0CpSettingFormEntryItemData@@QAE@W4EntryItemType@0@PAVHbDataForm@@ABVQString@@22PBVHbDataFormModelItem@@@Z @ 23 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(enum CpSettingFormEntryItemData::EntryItemType, class HbDataForm *, class QString const &, class QString const &, class QString const &, class HbDataFormModelItem const *) + ?d_func@CpSettingFormEntryItemData@@ABEPBVCpSettingFormEntryItemDataPrivate@@XZ @ 24 NONAME ; class CpSettingFormEntryItemDataPrivate const * CpSettingFormEntryItemData::d_func(void) const + ?d_func@CpBaseSettingView@@ABEPBVCpBaseSettingViewPrivate@@XZ @ 25 NONAME ; class CpBaseSettingViewPrivate const * CpBaseSettingView::d_func(void) const + ?launchCpPluginView@CpPluginLauncher@@SA_NABVQString@@H@Z @ 26 NONAME ; bool CpPluginLauncher::launchCpPluginView(class QString const &, int) + ?aboutToClose@CpBaseSettingView@@IAEXXZ @ 27 NONAME ; void CpBaseSettingView::aboutToClose(void) + ?close@CpBaseSettingView@@MAEXXZ @ 28 NONAME ; void CpBaseSettingView::close(void) + ?modelItemFromModelIndex@CpItemDataHelper@@QAEPAVHbDataFormModelItem@@ABVQModelIndex@@@Z @ 29 NONAME ; class HbDataFormModelItem * CpItemDataHelper::modelItemFromModelIndex(class QModelIndex const &) + ?instance@Logger@@SAPAV1@ABVQString@@@Z @ 30 NONAME ; class Logger * Logger::instance(class QString const &) + ?trUtf8@CpSettingFormEntryItemData@@SA?AVQString@@PBD0H@Z @ 31 NONAME ; class QString CpSettingFormEntryItemData::trUtf8(char const *, char const *, int) + ?removeConnection@CpItemDataHelper@@QAEXPAVHbDataFormModelItem@@PBDPAVQObject@@1@Z @ 32 NONAME ; void CpItemDataHelper::removeConnection(class HbDataFormModelItem *, char const *, class QObject *, char const *) + ?returnValueDelivered@CpBaseSettingView@@IAEXABVQVariant@@@Z @ 33 NONAME ; void CpBaseSettingView::returnValueDelivered(class QVariant const &) + ?setDateTimeFormat@Logger@@QAEXABVQString@@@Z @ 34 NONAME ; void Logger::setDateTimeFormat(class QString const &) + ?settingForm@CpBaseSettingView@@QBEPAVHbDataForm@@XZ @ 35 NONAME ; class HbDataForm * CpBaseSettingView::settingForm(void) const + ??1Logger@@UAE@XZ @ 36 NONAME ; Logger::~Logger(void) + ?description@CpSettingFormEntryItemData@@QBE?AVQString@@XZ @ 37 NONAME ; class QString CpSettingFormEntryItemData::description(void) const + ?log@Logger@@QAEXABVQString@@@Z @ 38 NONAME ; void Logger::log(class QString const &) + ??_ELogger@@UAE@I@Z @ 39 NONAME ; Logger::~Logger(unsigned int) + ?tr@CpItemDataHelper@@SA?AVQString@@PBD0H@Z @ 40 NONAME ; class QString CpItemDataHelper::tr(char const *, char const *, int) + ?setName@LogOutput@@QAEXABVQString@@@Z @ 41 NONAME ; void LogOutput::setName(class QString const &) + ?qt_metacall@CpBaseSettingView@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 42 NONAME ; int CpBaseSettingView::qt_metacall(enum QMetaObject::Call, int, void * *) + ?trUtf8@CpBaseSettingView@@SA?AVQString@@PBD0H@Z @ 43 NONAME ; class QString CpBaseSettingView::trUtf8(char const *, char const *, int) + ?getStaticMetaObject@CpSettingFormEntryItemData@@SAABUQMetaObject@@XZ @ 44 NONAME ; struct QMetaObject const & CpSettingFormEntryItemData::getStaticMetaObject(void) + ?name@Logger@@QBE?AVQString@@XZ @ 45 NONAME ; class QString Logger::name(void) const + ?load@LogOutput@@QAE_NAAVQSettings@@@Z @ 46 NONAME ; bool LogOutput::load(class QSettings &) + ??0CpSettingFormEntryItemData@@QAE@AAVCpItemDataHelper@@ABVQString@@1ABVHbIcon@@PBVHbDataFormModelItem@@@Z @ 47 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(class CpItemDataHelper &, class QString const &, class QString const &, class HbIcon const &, class HbDataFormModelItem const *) + ?setText@CpSettingFormEntryItemData@@QAEXABVQString@@@Z @ 48 NONAME ; void CpSettingFormEntryItemData::setText(class QString const &) + ?close@Logger@@SAXABVQString@@@Z @ 49 NONAME ; void Logger::close(class QString const &) + ?disconnectFromForm@CpItemDataHelper@@QAEXPBDPAVQObject@@0@Z @ 50 NONAME ; void CpItemDataHelper::disconnectFromForm(char const *, class QObject *, char const *) + ?metaObject@CpItemDataHelper@@UBEPBUQMetaObject@@XZ @ 51 NONAME ; struct QMetaObject const * CpItemDataHelper::metaObject(void) const + ??_ECpItemDataHelper@@UAE@I@Z @ 52 NONAME ; CpItemDataHelper::~CpItemDataHelper(unsigned int) + ??1CpSettingFormEntryItemData@@UAE@XZ @ 53 NONAME ; CpSettingFormEntryItemData::~CpSettingFormEntryItemData(void) + ?iconName@CpSettingFormEntryItemData@@QBE?AVQString@@XZ @ 54 NONAME ; class QString CpSettingFormEntryItemData::iconName(void) const + ?staticMetaObject@CpSettingFormItemData@@2UQMetaObject@@B @ 55 NONAME ; struct QMetaObject const CpSettingFormItemData::staticMetaObject + ?createLogOutput@LogOutputFactory@@SAPAVLogOutput@@ABVQString@@@Z @ 56 NONAME ; class LogOutput * LogOutputFactory::createLogOutput(class QString const &) + ?setEntryItemIcon@CpSettingFormEntryItemData@@QAEXABVHbIcon@@@Z @ 57 NONAME ; void CpSettingFormEntryItemData::setEntryItemIcon(class HbIcon const &) + ?launchSettingView@CpPluginLauncher@@SAPAVCpBaseSettingView@@ABVQString@@ABVQVariant@@@Z @ 58 NONAME ; class CpBaseSettingView * CpPluginLauncher::launchSettingView(class QString const &, class QVariant const &) + ?entryItemIcon@CpSettingFormEntryItemData@@QBE?AVHbIcon@@XZ @ 59 NONAME ; class HbIcon CpSettingFormEntryItemData::entryItemIcon(void) const + ?qt_metacall@CpSettingFormEntryItemData@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 60 NONAME ; int CpSettingFormEntryItemData::qt_metacall(enum QMetaObject::Call, int, void * *) + ?onLaunchView@CpSettingFormEntryItemData@@UAEXXZ @ 61 NONAME ; void CpSettingFormEntryItemData::onLaunchView(void) + ?setLogDateTime@Logger@@QAEX_N@Z @ 62 NONAME ; void Logger::setLogDateTime(bool) + ?configure@Logger@@QAEXABVQString@@W4Format@QSettings@@@Z @ 63 NONAME ; void Logger::configure(class QString const &, enum QSettings::Format) + ?tr@Logger@@SA?AVQString@@PBD0@Z @ 64 NONAME ; class QString Logger::tr(char const *, char const *) + ?trUtf8@CpItemDataHelper@@SA?AVQString@@PBD0H@Z @ 65 NONAME ; class QString CpItemDataHelper::trUtf8(char const *, char const *, int) + ?metaObject@LogOutput@@UBEPBUQMetaObject@@XZ @ 66 NONAME ; struct QMetaObject const * LogOutput::metaObject(void) const + ?trUtf8@CpItemDataHelper@@SA?AVQString@@PBD0@Z @ 67 NONAME ; class QString CpItemDataHelper::trUtf8(char const *, char const *) + ??0CpSettingFormEntryItemData@@QAE@PBVHbDataFormModelItem@@@Z @ 68 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(class HbDataFormModelItem const *) + ?logDateTime@Logger@@QBE_NXZ @ 69 NONAME ; bool Logger::logDateTime(void) const + ??0CpSettingFormEntryItemData@@QAE@PAVHbDataForm@@ABVQString@@1ABVHbIcon@@PBVHbDataFormModelItem@@@Z @ 70 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(class HbDataForm *, class QString const &, class QString const &, class HbIcon const &, class HbDataFormModelItem const *) + ?d_func@CpBaseSettingView@@AAEPAVCpBaseSettingViewPrivate@@XZ @ 71 NONAME ; class CpBaseSettingViewPrivate * CpBaseSettingView::d_func(void) + ??0CpSettingFormItemData@@QAE@W4DataItemType@HbDataFormModelItem@@ABVQString@@PBV2@@Z @ 72 NONAME ; CpSettingFormItemData::CpSettingFormItemData(enum HbDataFormModelItem::DataItemType, class QString const &, class HbDataFormModelItem const *) + ?connectToForm@CpItemDataHelper@@QAEXPBDPAVQObject@@0@Z @ 73 NONAME ; void CpItemDataHelper::connectToForm(char const *, class QObject *, char const *) + ?tr@LogOutput@@SA?AVQString@@PBD0@Z @ 74 NONAME ; class QString LogOutput::tr(char const *, char const *) + ?setIconName@CpSettingFormEntryItemData@@QAEXABVQString@@@Z @ 75 NONAME ; void CpSettingFormEntryItemData::setIconName(class QString const &) + ?qt_metacast@CpItemDataHelper@@UAEPAXPBD@Z @ 76 NONAME ; void * CpItemDataHelper::qt_metacast(char const *) + ?metaObject@Logger@@UBEPBUQMetaObject@@XZ @ 77 NONAME ; struct QMetaObject const * Logger::metaObject(void) const + ?tr@CpSettingFormEntryItemData@@SA?AVQString@@PBD0@Z @ 78 NONAME ; class QString CpSettingFormEntryItemData::tr(char const *, char const *) + ??0Logger@@AAE@ABVQString@@PAVQObject@@@Z @ 79 NONAME ; Logger::Logger(class QString const &, class QObject *) + ?addConnection@CpItemDataHelper@@QAEXPAVHbDataFormModelItem@@PBDPAVQObject@@1@Z @ 80 NONAME ; void CpItemDataHelper::addConnection(class HbDataFormModelItem *, char const *, class QObject *, char const *) + ?d_func@CpSettingFormEntryItemData@@AAEPAVCpSettingFormEntryItemDataPrivate@@XZ @ 81 NONAME ; class CpSettingFormEntryItemDataPrivate * CpSettingFormEntryItemData::d_func(void) + ?dateTimeFormat@Logger@@QBE?AVQString@@XZ @ 82 NONAME ; class QString Logger::dateTimeFormat(void) const + ??0CpSettingFormItemData@@QAE@PBVHbDataFormModelItem@@@Z @ 83 NONAME ; CpSettingFormItemData::CpSettingFormItemData(class HbDataFormModelItem const *) + ?clearAllLogOutput@Logger@@QAEXXZ @ 84 NONAME ; void Logger::clearAllLogOutput(void) + ?qt_metacall@LogOutput@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 85 NONAME ; int LogOutput::qt_metacall(enum QMetaObject::Call, int, void * *) + ?setDescription@CpSettingFormEntryItemData@@QAEXABVQString@@@Z @ 86 NONAME ; void CpSettingFormEntryItemData::setDescription(class QString const &) + ?tr@CpSettingFormEntryItemData@@SA?AVQString@@PBD0H@Z @ 87 NONAME ; class QString CpSettingFormEntryItemData::tr(char const *, char const *, int) + ?getStaticMetaObject@CpSettingFormItemData@@SAABUQMetaObject@@XZ @ 88 NONAME ; struct QMetaObject const & CpSettingFormItemData::getStaticMetaObject(void) + ?staticMetaObject@CpSettingFormEntryItemData@@2UQMetaObject@@B @ 89 NONAME ; struct QMetaObject const CpSettingFormEntryItemData::staticMetaObject + ?setParentLogger@LogOutput@@QAEXPAVLogger@@@Z @ 90 NONAME ; void LogOutput::setParentLogger(class Logger *) + ?parentLogger@LogOutput@@QAEPAVLogger@@XZ @ 91 NONAME ; class Logger * LogOutput::parentLogger(void) + ?qt_metacall@CpSettingFormItemData@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 92 NONAME ; int CpSettingFormItemData::qt_metacall(enum QMetaObject::Call, int, void * *) + ?tr@Logger@@SA?AVQString@@PBD0H@Z @ 93 NONAME ; class QString Logger::tr(char const *, char const *, int) + ??_ECpBaseSettingView@@UAE@I@Z @ 94 NONAME ; CpBaseSettingView::~CpBaseSettingView(unsigned int) + ?bindToForm@CpItemDataHelper@@QAEXPAVHbDataForm@@@Z @ 95 NONAME ; void CpItemDataHelper::bindToForm(class HbDataForm *) + ??_ECpSettingFormItemData@@UAE@I@Z @ 96 NONAME ; CpSettingFormItemData::~CpSettingFormItemData(unsigned int) + ?getStaticMetaObject@Logger@@SAABUQMetaObject@@XZ @ 97 NONAME ; struct QMetaObject const & Logger::getStaticMetaObject(void) + ?trUtf8@CpSettingFormItemData@@SA?AVQString@@PBD0H@Z @ 98 NONAME ; class QString CpSettingFormItemData::trUtf8(char const *, char const *, int) + ?staticMetaObject@CpBaseSettingView@@2UQMetaObject@@B @ 99 NONAME ; struct QMetaObject const CpBaseSettingView::staticMetaObject + ?tr@CpBaseSettingView@@SA?AVQString@@PBD0H@Z @ 100 NONAME ; class QString CpBaseSettingView::tr(char const *, char const *, int) + ?tr@CpBaseSettingView@@SA?AVQString@@PBD0@Z @ 101 NONAME ; class QString CpBaseSettingView::tr(char const *, char const *) + ?setLogLoggerName@Logger@@QAEX_N@Z @ 102 NONAME ; void Logger::setLogLoggerName(bool) + ?tr@CpSettingFormItemData@@SA?AVQString@@PBD0@Z @ 103 NONAME ; class QString CpSettingFormItemData::tr(char const *, char const *) + ?closeAll@Logger@@SAXXZ @ 104 NONAME ; void Logger::closeAll(void) + ?setSettingForm@CpBaseSettingView@@QAEXPAVHbDataForm@@@Z @ 105 NONAME ; void CpBaseSettingView::setSettingForm(class HbDataForm *) + ?tr@CpSettingFormItemData@@SA?AVQString@@PBD0H@Z @ 106 NONAME ; class QString CpSettingFormItemData::tr(char const *, char const *, int) + ?trUtf8@LogOutput@@SA?AVQString@@PBD0H@Z @ 107 NONAME ; class QString LogOutput::trUtf8(char const *, char const *, int) + ?trUtf8@CpSettingFormItemData@@SA?AVQString@@PBD0@Z @ 108 NONAME ; class QString CpSettingFormItemData::trUtf8(char const *, char const *) + ?removeLogOutput@Logger@@QAEXPAVLogOutput@@@Z @ 109 NONAME ; void Logger::removeLogOutput(class LogOutput *) + ??0CpBaseSettingView@@QAE@PAVQGraphicsWidget@@PAVQGraphicsItem@@@Z @ 110 NONAME ; CpBaseSettingView::CpBaseSettingView(class QGraphicsWidget *, class QGraphicsItem *) + ?widgetFromModelIndex@CpItemDataHelper@@QAEPAVHbWidget@@ABVQModelIndex@@@Z @ 111 NONAME ; class HbWidget * CpItemDataHelper::widgetFromModelIndex(class QModelIndex const &) + ??0LogOutput@@IAE@PAVLogger@@@Z @ 112 NONAME ; LogOutput::LogOutput(class Logger *) + ?staticMetaObject@LogOutput@@2UQMetaObject@@B @ 113 NONAME ; struct QMetaObject const LogOutput::staticMetaObject + ?trUtf8@CpSettingFormEntryItemData@@SA?AVQString@@PBD0@Z @ 114 NONAME ; class QString CpSettingFormEntryItemData::trUtf8(char const *, char const *) + ?name@LogOutput@@QBE?AVQString@@XZ @ 115 NONAME ; class QString LogOutput::name(void) const + ?tr@CpItemDataHelper@@SA?AVQString@@PBD0@Z @ 116 NONAME ; class QString CpItemDataHelper::tr(char const *, char const *) + ?getStaticMetaObject@CpItemDataHelper@@SAABUQMetaObject@@XZ @ 117 NONAME ; struct QMetaObject const & CpItemDataHelper::getStaticMetaObject(void) + ?qt_metacast@CpSettingFormEntryItemData@@UAEPAXPBD@Z @ 118 NONAME ; void * CpSettingFormEntryItemData::qt_metacast(char const *) + ?logLoggerName@Logger@@QBE_NXZ @ 119 NONAME ; bool Logger::logLoggerName(void) const + ?qt_metacall@CpItemDataHelper@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 120 NONAME ; int CpItemDataHelper::qt_metacall(enum QMetaObject::Call, int, void * *) + ?metaObject@CpSettingFormEntryItemData@@UBEPBUQMetaObject@@XZ @ 121 NONAME ; struct QMetaObject const * CpSettingFormEntryItemData::metaObject(void) const + ?qt_metacast@Logger@@UAEPAXPBD@Z @ 122 NONAME ; void * Logger::qt_metacast(char const *) + ?addItemPrototype@CpItemDataHelper@@QAEXPAVHbAbstractViewItem@@@Z @ 123 NONAME ; void CpItemDataHelper::addItemPrototype(class HbAbstractViewItem *) + ?trUtf8@CpBaseSettingView@@SA?AVQString@@PBD0@Z @ 124 NONAME ; class QString CpBaseSettingView::trUtf8(char const *, char const *) + ?getStaticMetaObject@LogOutput@@SAABUQMetaObject@@XZ @ 125 NONAME ; struct QMetaObject const & LogOutput::getStaticMetaObject(void) + ?createLogOutput@LogOutputFactory@@SAPAVLogOutput@@ABVQString@@ABV?$QHash@VQString@@VQVariant@@@@@Z @ 126 NONAME ; class LogOutput * LogOutputFactory::createLogOutput(class QString const &, class QHash const &) + ?addCreateLogOutputEntry@LogOutputFactory@@SAXABVQString@@P6APAVLogOutput@@XZ@Z @ 127 NONAME ; void LogOutputFactory::addCreateLogOutputEntry(class QString const &, class LogOutput * (*)(void)) + ?configure@Logger@@QAEXAAVQSettings@@@Z @ 128 NONAME ; void Logger::configure(class QSettings &) + ?loadCpPlugin@CpPluginLoader@@SAPAVCpPluginInterface@@ABVQString@@@Z @ 129 NONAME ; class CpPluginInterface * CpPluginLoader::loadCpPlugin(class QString const &) + ??1CpBaseSettingView@@UAE@XZ @ 130 NONAME ; CpBaseSettingView::~CpBaseSettingView(void) + ??0CpSettingFormEntryItemData@@QAE@W4EntryItemType@0@AAVCpItemDataHelper@@ABVQString@@22PBVHbDataFormModelItem@@@Z @ 131 NONAME ; CpSettingFormEntryItemData::CpSettingFormEntryItemData(enum CpSettingFormEntryItemData::EntryItemType, class CpItemDataHelper &, class QString const &, class QString const &, class QString const &, class HbDataFormModelItem const *) + ?metaObject@CpSettingFormItemData@@UBEPBUQMetaObject@@XZ @ 132 NONAME ; struct QMetaObject const * CpSettingFormItemData::metaObject(void) const + ?tr@LogOutput@@SA?AVQString@@PBD0H@Z @ 133 NONAME ; class QString LogOutput::tr(char const *, char const *, int) + ?trUtf8@Logger@@SA?AVQString@@PBD0H@Z @ 134 NONAME ; class QString Logger::trUtf8(char const *, char const *, int) + ?trUtf8@Logger@@SA?AVQString@@PBD0@Z @ 135 NONAME ; class QString Logger::trUtf8(char const *, char const *) + diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/cpframework.pro --- a/controlpanel/src/cpframework/cpframework.pro Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/cpframework.pro Thu Jul 22 16:35:53 2010 +0100 @@ -50,19 +50,6 @@ headers.sources = $$EXPORT_PLATFORM_HEADERS for(header, headers.sources):BLD_INF_RULES.prj_exports += "./$$header $$MW_LAYER_PLATFORM_EXPORT_PATH($$basename(header))" - - - # export widgetml files - widgetmls.path = C:/resource/controlpanel/widgetml - widgetmls.sources += widgetml/cpdataformlistentryviewitem.css \ - widgetml/cpdataformlistentryviewitem.widgetml - for(widgetmlfile, widgetmls.sources):BLD_INF_RULES.prj_exports += "./$$widgetmlfile $$widgetmls.path/$$basename(widgetmlfile)" - - # export icon files - icons.path = C:/resource/controlpanel/icon - icons.sources += icon/qgn_prop_set_default_sub.svg - for(iconfile, icons.sources):BLD_INF_RULES.prj_exports += "./$$iconfile $$icons.path/$$basename(iconfile)" - } include (../logger/logger_export.pri) diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/cpframework.qrc --- a/controlpanel/src/cpframework/cpframework.qrc Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/cpframework.qrc Thu Jul 22 16:35:53 2010 +0100 @@ -1,7 +1,10 @@ - - widgetml/cpdataformlistentryviewitem.widgetml - widgetml/cpdataformlistentryviewitem.css - icon/qgn_prop_set_default_sub.svg + + resources/widgetml/cpdataformlistentryviewitem.widgetml + resources/widgetml/cpdataformlistentryviewitem.css + resources/widgetml/cpdataformlistentryviewitem_color.css + + resources/icon/qgn_prop_set_default_sub.svg + \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/eabi/cpframeworku.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/src/cpframework/eabi/cpframeworku.def Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,136 @@ +EXPORTS + _ZN14CpPluginLoader21loadCpPluginInterfaceERK7QString @ 1 NONAME + _ZN14CpPluginLoader23loadCpLauncherInterfaceERK7QString @ 2 NONAME + _ZN15CpPluginUtility18addCpItemPrototypeEP10HbDataForm @ 3 NONAME + _ZN16CpItemDataHelper10bindToFormEP10HbDataForm @ 4 NONAME + _ZN16CpItemDataHelper11qt_metacallEN11QMetaObject4CallEiPPv @ 5 NONAME + _ZN16CpItemDataHelper11qt_metacastEPKc @ 6 NONAME + _ZN16CpItemDataHelper13addConnectionEP19HbDataFormModelItemPKcP7QObjectS3_ @ 7 NONAME + _ZN16CpItemDataHelper13connectToFormEPKcP7QObjectS1_ @ 8 NONAME + _ZN16CpItemDataHelper16addItemPrototypeEP18HbAbstractViewItem @ 9 NONAME + _ZN16CpItemDataHelper16removeConnectionEP19HbDataFormModelItemPKcP7QObjectS3_ @ 10 NONAME + _ZN16CpItemDataHelper16staticMetaObjectE @ 11 NONAME DATA 16 + _ZN16CpItemDataHelper18disconnectFromFormEPKcP7QObjectS1_ @ 12 NONAME + _ZN16CpItemDataHelper19getStaticMetaObjectEv @ 13 NONAME + _ZN16CpItemDataHelper20widgetFromModelIndexERK11QModelIndex @ 14 NONAME + _ZN16CpItemDataHelper23modelItemFromModelIndexERK11QModelIndex @ 15 NONAME + _ZN16CpItemDataHelperC1EP10HbDataForm @ 16 NONAME + _ZN16CpItemDataHelperC2EP10HbDataForm @ 17 NONAME + _ZN16CpItemDataHelperD0Ev @ 18 NONAME + _ZN16CpItemDataHelperD1Ev @ 19 NONAME + _ZN16CpItemDataHelperD2Ev @ 20 NONAME + _ZN16CpPluginLauncher17launchSettingViewERK7QStringRK8QVariant @ 21 NONAME + _ZN16CpPluginLauncher18launchCpPluginViewERK7QStringi @ 22 NONAME + _ZN16LogOutputFactory15createLogOutputERK7QString @ 23 NONAME + _ZN16LogOutputFactory15createLogOutputERK7QStringRK5QHashIS0_8QVariantE @ 24 NONAME + _ZN16LogOutputFactory23addCreateLogOutputEntryERK7QStringPFP9LogOutputvE @ 25 NONAME + _ZN17CpBaseSettingView11qt_metacallEN11QMetaObject4CallEiPPv @ 26 NONAME + _ZN17CpBaseSettingView11qt_metacastEPKc @ 27 NONAME + _ZN17CpBaseSettingView12aboutToCloseEv @ 28 NONAME + _ZN17CpBaseSettingView16staticMetaObjectE @ 29 NONAME DATA 16 + _ZN17CpBaseSettingView19getStaticMetaObjectEv @ 30 NONAME + _ZN17CpBaseSettingView20returnValueDeliveredERK8QVariant @ 31 NONAME + _ZN17CpBaseSettingView5closeEv @ 32 NONAME + _ZN17CpBaseSettingViewC1EP15QGraphicsWidgetP13QGraphicsItem @ 33 NONAME + _ZN17CpBaseSettingViewC2EP15QGraphicsWidgetP13QGraphicsItem @ 34 NONAME + _ZN17CpBaseSettingViewD0Ev @ 35 NONAME + _ZN17CpBaseSettingViewD1Ev @ 36 NONAME + _ZN17CpBaseSettingViewD2Ev @ 37 NONAME + _ZN21CpSettingFormItemData11qt_metacallEN11QMetaObject4CallEiPPv @ 38 NONAME + _ZN21CpSettingFormItemData11qt_metacastEPKc @ 39 NONAME + _ZN21CpSettingFormItemData16staticMetaObjectE @ 40 NONAME DATA 16 + _ZN21CpSettingFormItemData19getStaticMetaObjectEv @ 41 NONAME + _ZN21CpSettingFormItemDataC1EN19HbDataFormModelItem12DataItemTypeERK7QStringPKS0_ @ 42 NONAME + _ZN21CpSettingFormItemDataC1EPK19HbDataFormModelItem @ 43 NONAME + _ZN21CpSettingFormItemDataC2EN19HbDataFormModelItem12DataItemTypeERK7QStringPKS0_ @ 44 NONAME + _ZN21CpSettingFormItemDataC2EPK19HbDataFormModelItem @ 45 NONAME + _ZN21CpSettingFormItemDataD0Ev @ 46 NONAME + _ZN21CpSettingFormItemDataD1Ev @ 47 NONAME + _ZN21CpSettingFormItemDataD2Ev @ 48 NONAME + _ZN26CpSettingFormEntryItemData11qt_metacallEN11QMetaObject4CallEiPPv @ 49 NONAME + _ZN26CpSettingFormEntryItemData11qt_metacastEPKc @ 50 NONAME + _ZN26CpSettingFormEntryItemData11setIconNameERK7QString @ 51 NONAME + _ZN26CpSettingFormEntryItemData12onLaunchViewEv @ 52 NONAME + _ZN26CpSettingFormEntryItemData14setDescriptionERK7QString @ 53 NONAME + _ZN26CpSettingFormEntryItemData16setEntryItemIconERK6HbIcon @ 54 NONAME + _ZN26CpSettingFormEntryItemData16staticMetaObjectE @ 55 NONAME DATA 16 + _ZN26CpSettingFormEntryItemData19getStaticMetaObjectEv @ 56 NONAME + _ZN26CpSettingFormEntryItemData7setTextERK7QString @ 57 NONAME + _ZN26CpSettingFormEntryItemDataC2ENS_13EntryItemTypeEP10HbDataFormRK7QStringS5_S5_PK19HbDataFormModelItem @ 58 NONAME + _ZN26CpSettingFormEntryItemDataC2ENS_13EntryItemTypeER16CpItemDataHelperRK7QStringS5_S5_PK19HbDataFormModelItem @ 59 NONAME + _ZN26CpSettingFormEntryItemDataC2EP10HbDataFormRK7QStringS4_RK6HbIconPK19HbDataFormModelItem @ 60 NONAME + _ZN26CpSettingFormEntryItemDataC2EPK19HbDataFormModelItem @ 61 NONAME + _ZN26CpSettingFormEntryItemDataC2ER16CpItemDataHelperRK7QStringS4_RK6HbIconPK19HbDataFormModelItem @ 62 NONAME + _ZN26CpSettingFormEntryItemDataD0Ev @ 63 NONAME + _ZN26CpSettingFormEntryItemDataD1Ev @ 64 NONAME + _ZN26CpSettingFormEntryItemDataD2Ev @ 65 NONAME + _ZN6Logger11qt_metacallEN11QMetaObject4CallEiPPv @ 66 NONAME + _ZN6Logger11qt_metacastEPKc @ 67 NONAME + _ZN6Logger12addLogOutputEP9LogOutput @ 68 NONAME + _ZN6Logger14setLogDateTimeEb @ 69 NONAME + _ZN6Logger15removeLogOutputEP9LogOutput @ 70 NONAME + _ZN6Logger16setLogLoggerNameEb @ 71 NONAME + _ZN6Logger16staticMetaObjectE @ 72 NONAME DATA 16 + _ZN6Logger17clearAllLogOutputEv @ 73 NONAME + _ZN6Logger17setDateTimeFormatERK7QString @ 74 NONAME + _ZN6Logger19getStaticMetaObjectEv @ 75 NONAME + _ZN6Logger3logERK7QString @ 76 NONAME + _ZN6Logger5closeERK7QString @ 77 NONAME + _ZN6Logger8closeAllEv @ 78 NONAME + _ZN6Logger8instanceERK7QString @ 79 NONAME + _ZN6Logger9configureER9QSettings @ 80 NONAME + _ZN6Logger9configureERK7QStringN9QSettings6FormatE @ 81 NONAME + _ZN6Logger9logOutputERK7QString @ 82 NONAME + _ZN6LoggerC1ERK7QStringP7QObject @ 83 NONAME + _ZN6LoggerC2ERK7QStringP7QObject @ 84 NONAME + _ZN6LoggerD0Ev @ 85 NONAME + _ZN6LoggerD1Ev @ 86 NONAME + _ZN6LoggerD2Ev @ 87 NONAME + _ZN9LogOutput11qt_metacallEN11QMetaObject4CallEiPPv @ 88 NONAME + _ZN9LogOutput11qt_metacastEPKc @ 89 NONAME + _ZN9LogOutput12parentLoggerEv @ 90 NONAME + _ZN9LogOutput15setParentLoggerEP6Logger @ 91 NONAME + _ZN9LogOutput16staticMetaObjectE @ 92 NONAME DATA 16 + _ZN9LogOutput19getStaticMetaObjectEv @ 93 NONAME + _ZN9LogOutput4loadER9QSettings @ 94 NONAME + _ZN9LogOutput7setNameERK7QString @ 95 NONAME + _ZN9LogOutputC2EP6Logger @ 96 NONAME + _ZN9LogOutputD0Ev @ 97 NONAME + _ZN9LogOutputD1Ev @ 98 NONAME + _ZN9LogOutputD2Ev @ 99 NONAME + _ZNK16CpItemDataHelper10metaObjectEv @ 100 NONAME + _ZNK17CpBaseSettingView10metaObjectEv @ 101 NONAME + _ZNK21CpSettingFormItemData10metaObjectEv @ 102 NONAME + _ZNK26CpSettingFormEntryItemData10metaObjectEv @ 103 NONAME + _ZNK26CpSettingFormEntryItemData11descriptionEv @ 104 NONAME + _ZNK26CpSettingFormEntryItemData13entryItemIconEv @ 105 NONAME + _ZNK26CpSettingFormEntryItemData4textEv @ 106 NONAME + _ZNK26CpSettingFormEntryItemData8iconNameEv @ 107 NONAME + _ZNK6Logger10metaObjectEv @ 108 NONAME + _ZNK6Logger11logDateTimeEv @ 109 NONAME + _ZNK6Logger13logLoggerNameEv @ 110 NONAME + _ZNK6Logger14dateTimeFormatEv @ 111 NONAME + _ZNK6Logger4nameEv @ 112 NONAME + _ZNK9LogOutput10metaObjectEv @ 113 NONAME + _ZNK9LogOutput4nameEv @ 114 NONAME + _ZTI16CpItemDataHelper @ 115 NONAME + _ZTI17CpBaseSettingView @ 116 NONAME + _ZTI21CpSettingFormItemData @ 117 NONAME + _ZTI26CpSettingFormEntryItemData @ 118 NONAME + _ZTI6Logger @ 119 NONAME + _ZTI9LogOutput @ 120 NONAME + _ZTV16CpItemDataHelper @ 121 NONAME + _ZTV17CpBaseSettingView @ 122 NONAME + _ZTV21CpSettingFormItemData @ 123 NONAME + _ZTV26CpSettingFormEntryItemData @ 124 NONAME + _ZTV6Logger @ 125 NONAME + _ZTV9LogOutput @ 126 NONAME + _ZThn16_N17CpBaseSettingViewD0Ev @ 127 NONAME + _ZThn16_N17CpBaseSettingViewD1Ev @ 128 NONAME + _ZThn8_N17CpBaseSettingViewD0Ev @ 129 NONAME + _ZThn8_N17CpBaseSettingViewD1Ev @ 130 NONAME + _ZThn8_N21CpSettingFormItemDataD0Ev @ 131 NONAME + _ZThn8_N21CpSettingFormItemDataD1Ev @ 132 NONAME + _ZThn8_N26CpSettingFormEntryItemDataD0Ev @ 133 NONAME + _ZThn8_N26CpSettingFormEntryItemDataD1Ev @ 134 NONAME + diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/icon/qgn_prop_set_default_sub.svg --- a/controlpanel/src/cpframework/icon/qgn_prop_set_default_sub.svg Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/resources/icon/qgn_prop_set_default_sub.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/src/cpframework/resources/icon/qgn_prop_set_default_sub.svg Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/resources/widgetml/cpdataformlistentryviewitem.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/src/cpframework/resources/widgetml/cpdataformlistentryviewitem.css Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,76 @@ + +/* + Layout selection +*/ + +CpDataFormListEntryViewItem { + layout:default; +} + +CpDataFormListEntryViewItem::dataItem_Background +{ +} + +CpDataFormListEntryViewItem::dataItem_Icon +{ + fixed-height: var(hb-param-graphic-size-primary-large); + fixed-width: var(hb-param-graphic-size-primary-large); +} + +CpDataFormListEntryViewItem::dataItem_Label +{ + text-height: var(hb-param-text-height-primary); + size-policy-horizontal: preferred; + font-variant: primary; + text-align: left; + text-line-count-max:1; +} + +CpDataFormListEntryViewItem::dataItem_Description +{ + text-height: var(hb-param-text-height-secondary); + size-policy-horizontal: preferred; + font-variant: secondary; + text-align: left; +} + +CpDataFormListEntryViewItem::dataItem_Icon +{ + left:-var(hb-param-margin-gene-left); +} + + +CpDataFormListEntryViewItem::dataItem_Label[!hasIcon] +{ + left:-var(hb-param-margin-gene-left); + right:var(hb-param-margin-form-label-right); + top:-var(hb-param-margin-gene-top); +} + +CpDataFormListEntryViewItem::dataItem_Label[hasIcon] +{ + left:-var(hb-param-margin-gene-middle-horizontal); + top:-var(hb-param-margin-gene-top); + right:var(hb-param-margin-form-label-right); +} + + + +CpDataFormListEntryViewItem::dataItem_Description[!hasIcon] +{ + left:-var(hb-param-margin-gene-left); + right:var(hb-param-margin-gene-right); +} + +CpDataFormListEntryViewItem::dataItem_Description[hasIcon] +{ + left:-var(hb-param-margin-gene-middle-horizontal); + right:var(hb-param-margin-gene-right); +} + + +CpDataFormListEntryViewItem::dataItem_Description +{ + bottom:var(hb-param-margin-gene-bottom); +} + diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/resources/widgetml/cpdataformlistentryviewitem.widgetml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/src/cpframework/resources/widgetml/cpdataformlistentryviewitem.widgetml Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/resources/widgetml/cpdataformlistentryviewitem_color.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/src/cpframework/resources/widgetml/cpdataformlistentryviewitem_color.css Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,41 @@ + +/* + CpDataFormListEntryViewItem default color definitions. +*/ + +CpDataFormListEntryViewItem::dataItem_Icon { + color: var(qtc_list_item_title_normal); +} + +CpDataFormListEntryViewItem::dataItem_Icon[state="pressed"]{ + color: var(qtc_list_item_pressed); +} + +CpDataFormListEntryViewItem::dataItem_Icon[state="disabled"] { + color: var(qtc_list_item_disabled); +} + +CpDataFormListEntryViewItem::dataItem_Label { + color: var(qtc_list_item_title_normal); +} + +CpDataFormListEntryViewItem::dataItem_Label[state="pressed"] { + color: var(qtc_list_item_pressed); +} + +CpDataFormListEntryViewItem::dataItem_Label[state="disabled"] { + color: var(qtc_list_item_disabled); +} + +CpDataFormListEntryViewItem::dataItem_Description { + color: var(qtc_list_item_title_normal); +} + +CpDataFormListEntryViewItem::dataItem_Description[state="pressed"] { + color: var(qtc_list_item_pressed); +} + +CpDataFormListEntryViewItem::dataItem_Description[state="disabled"] { + color: var(qtc_list_item_disabled); +} + diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cpbasesettingview_p.cpp --- a/controlpanel/src/cpframework/src/cpbasesettingview_p.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cpbasesettingview_p.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -54,7 +54,7 @@ mBaseSettingView->setWidget(widget); - mBaseSettingView->setTitle("Control Panel"); //give a default title, sub classes need set it correctly + mBaseSettingView->setTitle(hbTrId("txt_cp_title_control_panel")); //give a default title, sub classes need set it correctly mSoftKeyBackAction = new HbAction(Hb::BackNaviAction , mBaseSettingView); QObject::connect(mSoftKeyBackAction, diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cpdataformlistentryviewitem.cpp --- a/controlpanel/src/cpframework/src/cpdataformlistentryviewitem.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cpdataformlistentryviewitem.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -16,14 +16,30 @@ */ #include "cpdataformlistentryviewitem.h" + +#ifdef HB_EFFECTS + #include "hbeffect.h" +#endif + +#ifdef HB_GESTURE_FW + #include + #include +#endif + #include #include #include #include +#define CP_DATAFORMLISTENTRYVIEWITEM QLatin1String("cpdataformlistentryviewitem") + CpDataFormListEntryViewItem::CpDataFormListEntryViewItem(QGraphicsItem *parent) : HbDataFormViewItem(parent) { +#ifdef HB_EFFECTS + HbEffect::add(CP_DATAFORMLISTENTRYVIEWITEM + "-focus", "listviewitem_press", "pressed"); + HbEffect::add(CP_DATAFORMLISTENTRYVIEWITEM + "-focus", "listviewitem_release", "released"); +#endif } CpDataFormListEntryViewItem::~CpDataFormListEntryViewItem() @@ -51,12 +67,10 @@ HbDataFormModelItem::ItemTypeRole).toInt()); switch (itemType) { - case CpSettingFormEntryItemData::ListEntryItem: - { + case CpSettingFormEntryItemData::ListEntryItem: { break; } - default: - { + default: { break; } } @@ -64,4 +78,71 @@ return 0; } +void CpDataFormListEntryViewItem::pressStateChanged(bool pressed, bool animate) +{ +#ifdef HB_EFFECTS + QGraphicsItem *focusItem = primitive("dataItem_Background"); + bool doAnimate = animate; + + if (pressed) { + if (doAnimate) { + HbEffect::cancel(this, "released"); + HbEffect::cancel(focusItem, "released"); + + HbEffect::start(this, CP_DATAFORMLISTENTRYVIEWITEM, "pressed"); + HbEffect::start(focusItem, CP_DATAFORMLISTENTRYVIEWITEM + QString("-focus"), "pressed"); + } + } else { + if (doAnimate) { + HbEffect::cancel(this, "pressed"); + HbEffect::cancel(focusItem, "pressed"); + + HbEffect::start(this, CP_DATAFORMLISTENTRYVIEWITEM, "released"); + HbEffect::start(focusItem, CP_DATAFORMLISTENTRYVIEWITEM + QString("-focus"), "released"); + } else { + HbEffect::cancel(this, "pressed"); + HbEffect::start(this, CP_DATAFORMLISTENTRYVIEWITEM, "released"); + if (focusItem) { + HbEffect::cancel(focusItem, "pressed"); + HbEffect::start(focusItem, CP_DATAFORMLISTENTRYVIEWITEM + QString("-focus"), "released", this); + } + } + } +#endif +} + +#ifdef HB_GESTURE_FW +void CpDataFormListEntryViewItem::gestureEvent(QGestureEvent *event) +{ + HbFrameItem *backgroundItem = static_cast ( primitive("dataItem_Background") ); + HbTapGesture *tap = qobject_cast(event->gesture(Qt::TapGesture)); + + if(backgroundItem && tap) { + switch(tap->state()) { + case Qt::GestureStarted: { + backgroundItem->frameDrawer().setFrameGraphicsName(QLatin1String("qtg_fr_list_pressed")); + } + break; + case Qt::GestureUpdated: { + + } + break; + case Qt::GestureCanceled: { + backgroundItem->frameDrawer().setFrameGraphicsName(QLatin1String("qtg_fr_list_normal")); + } + break; + case Qt::GestureFinished: { + backgroundItem->frameDrawer().setFrameGraphicsName(QLatin1String("qtg_fr_list_normal")); + } + break; + default: + break; + } + } + + HbDataFormViewItem::gestureEvent( event ); +} +#endif + + //End of File diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cpdataformlistentryviewitem.h --- a/controlpanel/src/cpframework/src/cpdataformlistentryviewitem.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cpdataformlistentryviewitem.h Thu Jul 22 16:35:53 2010 +0100 @@ -31,6 +31,11 @@ virtual bool canSetModelIndex(const QModelIndex &index) const; protected: virtual HbWidget* createCustomWidget(); + virtual void pressStateChanged(bool pressed, bool animate); +#ifdef HB_GESTURE_FW + //from HbWidgetBase + virtual void gestureEvent(QGestureEvent *event); +#endif }; #endif //CPDATAFORMLISTENTRYVIEWITEM_H diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cppluginlauncher.cpp --- a/controlpanel/src/cpframework/src/cppluginlauncher.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cppluginlauncher.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -24,9 +24,14 @@ #include #include "cpviewlauncher.h" /*! + +*/ +/*! \class CpPluginLauncher \brief The CpPluginLauncher class loads a controlpanel plugin at run-time.And display the specify plugin view in client process. - */ + \deprecated CpPluginLauncher::launchCpPluginView(const QString &pluginFile,int index ) + is deprecated. Use pPluginLauncher::launchSettingView instead. +*/ bool CpPluginLauncher::launchCpPluginView(const QString &pluginFile,int index /*= 0*/) { return false; diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cppluginloader.cpp --- a/controlpanel/src/cpframework/src/cppluginloader.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cppluginloader.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -21,7 +21,6 @@ #include #include #include -#include #include "cputility.h" #include diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cpsettingformentryitemdata_p.cpp --- a/controlpanel/src/cpframework/src/cpsettingformentryitemdata_p.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cpsettingformentryitemdata_p.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -26,8 +26,7 @@ CpSettingFormEntryItemDataPrivate::CpSettingFormEntryItemDataPrivate() : mDataForm(0), mItemDataHelper(0), - mItemPressed(false), - mDataFormScrolling(false) + mItemPressed(false) { } @@ -35,8 +34,7 @@ CpSettingFormEntryItemDataPrivate::CpSettingFormEntryItemDataPrivate(CpItemDataHelper *itemDataHelper) : mDataForm(0), mItemDataHelper(itemDataHelper), - mItemPressed(false), - mDataFormScrolling(false) + mItemPressed(false) { } @@ -44,8 +42,7 @@ CpSettingFormEntryItemDataPrivate::CpSettingFormEntryItemDataPrivate(HbDataForm *dataForm) : mDataForm(dataForm), mItemDataHelper(0), - mItemPressed(false), - mDataFormScrolling(false) + mItemPressed(false) { } @@ -62,13 +59,11 @@ { if (mItemDataHelper) { mItemDataHelper->connectToForm(SIGNAL(pressed (QModelIndex)),mParent,SLOT(_q_itemPressed(QModelIndex))); - mItemDataHelper->connectToForm(SIGNAL(released (QModelIndex)),mParent,SLOT(_q_itemReleased(QModelIndex))); - mItemDataHelper->connectToForm(SIGNAL(scrollingStarted ()),mParent,SLOT(_q_scrollingStarted())); + mItemDataHelper->connectToForm(SIGNAL(activated(QModelIndex)),mParent,SLOT(_q_itemActivated(QModelIndex))); } else if (mDataForm) { QObject::connect( mDataForm,SIGNAL(pressed(QModelIndex)),mParent,SLOT(_q_itemPressed(QModelIndex)) ); - QObject::connect( mDataForm,SIGNAL(released(QModelIndex)),mParent,SLOT(_q_itemReleased(QModelIndex)) ); - QObject::connect( mDataForm,SIGNAL(scrollingStarted()),mParent,SLOT(_q_scrollingStarted()) ); + QObject::connect( mDataForm,SIGNAL(activated(QModelIndex)),mParent,SLOT(_q_itemActivated(QModelIndex)) ); } } break; @@ -107,8 +102,10 @@ default: break; case CpSettingFormEntryItemData::ListEntryItem: mParent->setLabel(text); + break; case CpSettingFormEntryItemData::ButtonEntryItem: mParent->setContentWidgetData(QString("text"),QVariant(text)); + break; } } @@ -134,8 +131,10 @@ default: break; case CpSettingFormEntryItemData::ListEntryItem: mParent->setData(HbDataFormModelItem::DescriptionRole , description); + break; case CpSettingFormEntryItemData::ButtonEntryItem: mParent->setContentWidgetData(QString("additionalText"),QVariant(description)); + break; } } @@ -161,8 +160,10 @@ default: break; case CpSettingFormEntryItemData::ListEntryItem: mParent->setIcon(icon); + break; case CpSettingFormEntryItemData::ButtonEntryItem: mParent->setContentWidgetData(QString("icon"),HbIcon(icon)); + break; } } @@ -188,6 +189,7 @@ default: break; case CpSettingFormEntryItemData::ListEntryItem: mParent->setIcon(icon.iconName()); + break; case CpSettingFormEntryItemData::ButtonEntryItem: mParent->setContentWidgetData(QString("icon"),icon); break; @@ -200,18 +202,15 @@ mItemPressed = ( modelItemFromModelIndex(index) == mParent ); } -void CpSettingFormEntryItemDataPrivate::_q_itemReleased(const QModelIndex &index) -{ - if (!mDataFormScrolling && mItemPressed && modelItemFromModelIndex(index) == mParent) { + +void CpSettingFormEntryItemDataPrivate::_q_itemActivated(const QModelIndex &index) +{ + if (mItemPressed && modelItemFromModelIndex(index) == mParent) { mParent->onLaunchView(); } - mDataFormScrolling = false; + mItemPressed = false; } -void CpSettingFormEntryItemDataPrivate::_q_scrollingStarted() -{ - mDataFormScrolling = true; -} HbDataFormModelItem *CpSettingFormEntryItemDataPrivate::modelItemFromModelIndex(const QModelIndex &index) { diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/src/cpsettingformentryitemdata_p.h --- a/controlpanel/src/cpframework/src/cpsettingformentryitemdata_p.h Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/src/cpframework/src/cpsettingformentryitemdata_p.h Thu Jul 22 16:35:53 2010 +0100 @@ -50,10 +50,9 @@ HbIcon entryItemIcon() const; void setEntryItemIcon(const HbIcon &icon); - //SLOTS + //private slots void _q_itemPressed(const QModelIndex &index); - void _q_itemReleased(const QModelIndex &index); - void _q_scrollingStarted(); + void _q_itemActivated(const QModelIndex &index); HbDataFormModelItem *modelItemFromModelIndex(const QModelIndex &index); @@ -62,7 +61,6 @@ CpItemDataHelper *mItemDataHelper; QPointer mSettingViewPtr; bool mItemPressed; - bool mDataFormScrolling; }; diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/widgetml/cpdataformlistentryviewitem.css --- a/controlpanel/src/cpframework/widgetml/cpdataformlistentryviewitem.css Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -CpDataFormListEntryViewItem { - layout:default; -} - -CpDataFormListEntryViewItem::dataItem_Icon -{ - fixed-height:60; - fixed-width:60; -} - -CpDataFormListEntryViewItem::dataItem_Label -{ - size-policy-horizontal: preferred; - text-height: 3.0un; - top: -1.0un; - left: -2.0un; -} - - -CpDataFormListEntryViewItem::dataItem_Description -{ - text-height: 3.0un; - bottom:1.0un; - left: -2.0un; -} - - - - - - diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/cpframework/widgetml/cpdataformlistentryviewitem.widgetml --- a/controlpanel/src/cpframework/widgetml/cpdataformlistentryviewitem.widgetml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 controlpanel/src/eabi/cpframeworku.def --- a/controlpanel/src/eabi/cpframeworku.def Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,136 +0,0 @@ -EXPORTS - _ZN14CpPluginLoader21loadCpPluginInterfaceERK7QString @ 1 NONAME - _ZN14CpPluginLoader23loadCpLauncherInterfaceERK7QString @ 2 NONAME - _ZN15CpPluginUtility18addCpItemPrototypeEP10HbDataForm @ 3 NONAME - _ZN16CpItemDataHelper10bindToFormEP10HbDataForm @ 4 NONAME - _ZN16CpItemDataHelper11qt_metacallEN11QMetaObject4CallEiPPv @ 5 NONAME - _ZN16CpItemDataHelper11qt_metacastEPKc @ 6 NONAME - _ZN16CpItemDataHelper13addConnectionEP19HbDataFormModelItemPKcP7QObjectS3_ @ 7 NONAME - _ZN16CpItemDataHelper13connectToFormEPKcP7QObjectS1_ @ 8 NONAME - _ZN16CpItemDataHelper16addItemPrototypeEP18HbAbstractViewItem @ 9 NONAME - _ZN16CpItemDataHelper16removeConnectionEP19HbDataFormModelItemPKcP7QObjectS3_ @ 10 NONAME - _ZN16CpItemDataHelper16staticMetaObjectE @ 11 NONAME DATA 16 - _ZN16CpItemDataHelper18disconnectFromFormEPKcP7QObjectS1_ @ 12 NONAME - _ZN16CpItemDataHelper19getStaticMetaObjectEv @ 13 NONAME - _ZN16CpItemDataHelper20widgetFromModelIndexERK11QModelIndex @ 14 NONAME - _ZN16CpItemDataHelper23modelItemFromModelIndexERK11QModelIndex @ 15 NONAME - _ZN16CpItemDataHelperC1EP10HbDataForm @ 16 NONAME - _ZN16CpItemDataHelperC2EP10HbDataForm @ 17 NONAME - _ZN16CpItemDataHelperD0Ev @ 18 NONAME - _ZN16CpItemDataHelperD1Ev @ 19 NONAME - _ZN16CpItemDataHelperD2Ev @ 20 NONAME - _ZN16CpPluginLauncher17launchSettingViewERK7QStringRK8QVariant @ 21 NONAME - _ZN16CpPluginLauncher18launchCpPluginViewERK7QStringi @ 22 NONAME - _ZN16LogOutputFactory15createLogOutputERK7QString @ 23 NONAME - _ZN16LogOutputFactory15createLogOutputERK7QStringRK5QHashIS0_8QVariantE @ 24 NONAME - _ZN16LogOutputFactory23addCreateLogOutputEntryERK7QStringPFP9LogOutputvE @ 25 NONAME - _ZN17CpBaseSettingView11qt_metacallEN11QMetaObject4CallEiPPv @ 26 NONAME - _ZN17CpBaseSettingView11qt_metacastEPKc @ 27 NONAME - _ZN17CpBaseSettingView12aboutToCloseEv @ 28 NONAME - _ZN17CpBaseSettingView16staticMetaObjectE @ 29 NONAME DATA 16 - _ZN17CpBaseSettingView19getStaticMetaObjectEv @ 30 NONAME - _ZN17CpBaseSettingView20returnValueDeliveredERK8QVariant @ 31 NONAME - _ZN17CpBaseSettingView5closeEv @ 32 NONAME - _ZN17CpBaseSettingViewC1EP15QGraphicsWidgetP13QGraphicsItem @ 33 NONAME - _ZN17CpBaseSettingViewC2EP15QGraphicsWidgetP13QGraphicsItem @ 34 NONAME - _ZN17CpBaseSettingViewD0Ev @ 35 NONAME - _ZN17CpBaseSettingViewD1Ev @ 36 NONAME - _ZN17CpBaseSettingViewD2Ev @ 37 NONAME - _ZN21CpSettingFormItemData11qt_metacallEN11QMetaObject4CallEiPPv @ 38 NONAME - _ZN21CpSettingFormItemData11qt_metacastEPKc @ 39 NONAME - _ZN21CpSettingFormItemData16staticMetaObjectE @ 40 NONAME DATA 16 - _ZN21CpSettingFormItemData19getStaticMetaObjectEv @ 41 NONAME - _ZN21CpSettingFormItemDataC1EN19HbDataFormModelItem12DataItemTypeERK7QStringPKS0_ @ 42 NONAME - _ZN21CpSettingFormItemDataC1EPK19HbDataFormModelItem @ 43 NONAME - _ZN21CpSettingFormItemDataC2EN19HbDataFormModelItem12DataItemTypeERK7QStringPKS0_ @ 44 NONAME - _ZN21CpSettingFormItemDataC2EPK19HbDataFormModelItem @ 45 NONAME - _ZN21CpSettingFormItemDataD0Ev @ 46 NONAME - _ZN21CpSettingFormItemDataD1Ev @ 47 NONAME - _ZN21CpSettingFormItemDataD2Ev @ 48 NONAME - _ZN26CpSettingFormEntryItemData11qt_metacallEN11QMetaObject4CallEiPPv @ 49 NONAME - _ZN26CpSettingFormEntryItemData11qt_metacastEPKc @ 50 NONAME - _ZN26CpSettingFormEntryItemData11setIconNameERK7QString @ 51 NONAME - _ZN26CpSettingFormEntryItemData12onLaunchViewEv @ 52 NONAME - _ZN26CpSettingFormEntryItemData14setDescriptionERK7QString @ 53 NONAME - _ZN26CpSettingFormEntryItemData16setEntryItemIconERK6HbIcon @ 54 NONAME - _ZN26CpSettingFormEntryItemData16staticMetaObjectE @ 55 NONAME DATA 16 - _ZN26CpSettingFormEntryItemData19getStaticMetaObjectEv @ 56 NONAME - _ZN26CpSettingFormEntryItemData7setTextERK7QString @ 57 NONAME - _ZN26CpSettingFormEntryItemDataC2ENS_13EntryItemTypeEP10HbDataFormRK7QStringS5_S5_PK19HbDataFormModelItem @ 58 NONAME - _ZN26CpSettingFormEntryItemDataC2ENS_13EntryItemTypeER16CpItemDataHelperRK7QStringS5_S5_PK19HbDataFormModelItem @ 59 NONAME - _ZN26CpSettingFormEntryItemDataC2EP10HbDataFormRK7QStringS4_RK6HbIconPK19HbDataFormModelItem @ 60 NONAME - _ZN26CpSettingFormEntryItemDataC2EPK19HbDataFormModelItem @ 61 NONAME - _ZN26CpSettingFormEntryItemDataC2ER16CpItemDataHelperRK7QStringS4_RK6HbIconPK19HbDataFormModelItem @ 62 NONAME - _ZN26CpSettingFormEntryItemDataD0Ev @ 63 NONAME - _ZN26CpSettingFormEntryItemDataD1Ev @ 64 NONAME - _ZN26CpSettingFormEntryItemDataD2Ev @ 65 NONAME - _ZN6Logger11qt_metacallEN11QMetaObject4CallEiPPv @ 66 NONAME - _ZN6Logger11qt_metacastEPKc @ 67 NONAME - _ZN6Logger12addLogOutputEP9LogOutput @ 68 NONAME - _ZN6Logger14setLogDateTimeEb @ 69 NONAME - _ZN6Logger15removeLogOutputEP9LogOutput @ 70 NONAME - _ZN6Logger16setLogLoggerNameEb @ 71 NONAME - _ZN6Logger16staticMetaObjectE @ 72 NONAME DATA 16 - _ZN6Logger17clearAllLogOutputEv @ 73 NONAME - _ZN6Logger17setDateTimeFormatERK7QString @ 74 NONAME - _ZN6Logger19getStaticMetaObjectEv @ 75 NONAME - _ZN6Logger3logERK7QString @ 76 NONAME - _ZN6Logger5closeERK7QString @ 77 NONAME - _ZN6Logger8closeAllEv @ 78 NONAME - _ZN6Logger8instanceERK7QString @ 79 NONAME - _ZN6Logger9configureER9QSettings @ 80 NONAME - _ZN6Logger9configureERK7QStringN9QSettings6FormatE @ 81 NONAME - _ZN6Logger9logOutputERK7QString @ 82 NONAME - _ZN6LoggerC1ERK7QStringP7QObject @ 83 NONAME - _ZN6LoggerC2ERK7QStringP7QObject @ 84 NONAME - _ZN6LoggerD0Ev @ 85 NONAME - _ZN6LoggerD1Ev @ 86 NONAME - _ZN6LoggerD2Ev @ 87 NONAME - _ZN9LogOutput11qt_metacallEN11QMetaObject4CallEiPPv @ 88 NONAME - _ZN9LogOutput11qt_metacastEPKc @ 89 NONAME - _ZN9LogOutput12parentLoggerEv @ 90 NONAME - _ZN9LogOutput15setParentLoggerEP6Logger @ 91 NONAME - _ZN9LogOutput16staticMetaObjectE @ 92 NONAME DATA 16 - _ZN9LogOutput19getStaticMetaObjectEv @ 93 NONAME - _ZN9LogOutput4loadER9QSettings @ 94 NONAME - _ZN9LogOutput7setNameERK7QString @ 95 NONAME - _ZN9LogOutputC2EP6Logger @ 96 NONAME - _ZN9LogOutputD0Ev @ 97 NONAME - _ZN9LogOutputD1Ev @ 98 NONAME - _ZN9LogOutputD2Ev @ 99 NONAME - _ZNK16CpItemDataHelper10metaObjectEv @ 100 NONAME - _ZNK17CpBaseSettingView10metaObjectEv @ 101 NONAME - _ZNK21CpSettingFormItemData10metaObjectEv @ 102 NONAME - _ZNK26CpSettingFormEntryItemData10metaObjectEv @ 103 NONAME - _ZNK26CpSettingFormEntryItemData11descriptionEv @ 104 NONAME - _ZNK26CpSettingFormEntryItemData13entryItemIconEv @ 105 NONAME - _ZNK26CpSettingFormEntryItemData4textEv @ 106 NONAME - _ZNK26CpSettingFormEntryItemData8iconNameEv @ 107 NONAME - _ZNK6Logger10metaObjectEv @ 108 NONAME - _ZNK6Logger11logDateTimeEv @ 109 NONAME - _ZNK6Logger13logLoggerNameEv @ 110 NONAME - _ZNK6Logger14dateTimeFormatEv @ 111 NONAME - _ZNK6Logger4nameEv @ 112 NONAME - _ZNK9LogOutput10metaObjectEv @ 113 NONAME - _ZNK9LogOutput4nameEv @ 114 NONAME - _ZTI16CpItemDataHelper @ 115 NONAME - _ZTI17CpBaseSettingView @ 116 NONAME - _ZTI21CpSettingFormItemData @ 117 NONAME - _ZTI26CpSettingFormEntryItemData @ 118 NONAME - _ZTI6Logger @ 119 NONAME - _ZTI9LogOutput @ 120 NONAME - _ZTV16CpItemDataHelper @ 121 NONAME - _ZTV17CpBaseSettingView @ 122 NONAME - _ZTV21CpSettingFormItemData @ 123 NONAME - _ZTV26CpSettingFormEntryItemData @ 124 NONAME - _ZTV6Logger @ 125 NONAME - _ZTV9LogOutput @ 126 NONAME - _ZThn16_N17CpBaseSettingViewD0Ev @ 127 NONAME - _ZThn16_N17CpBaseSettingViewD1Ev @ 128 NONAME - _ZThn8_N17CpBaseSettingViewD0Ev @ 129 NONAME - _ZThn8_N17CpBaseSettingViewD1Ev @ 130 NONAME - _ZThn8_N21CpSettingFormItemDataD0Ev @ 131 NONAME - _ZThn8_N21CpSettingFormItemDataD1Ev @ 132 NONAME - _ZThn8_N26CpSettingFormEntryItemDataD0Ev @ 133 NONAME - _ZThn8_N26CpSettingFormEntryItemDataD1Ev @ 134 NONAME - diff -r 572294aa6075 -r f48d04161a92 controlpanel/tsrc/unit/ut_cpapi/src/main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/controlpanel/tsrc/unit/ut_cpapi/src/main.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -0,0 +1,37 @@ +/* +* 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: +* test application for qt control panel public apis. +*/ +#include +#include +#include "ut_cpapi.h" +int main(int argc, char *argv[]) +{ + HbApplication app(argc, argv); + int res = 0; + //char *pass[3]; + //pass[0] = argv[0]; + //pass[1] = "-o"; + + // log folder: \epoc32\winscw\c\data + + app.setApplicationName("TestCpAPI"); + //pass[2] = "c:\\data\\u.txt"; + TestCpAPI *tcUtilities = new TestCpAPI(); + res |= QTest::qExec(tcUtilities); + delete tcUtilities; + tcUtilities = NULL; + return res; +} diff -r 572294aa6075 -r f48d04161a92 controlpanel/tsrc/unit/ut_cpapi/src/ut_cpapi.cpp --- a/controlpanel/tsrc/unit/ut_cpapi/src/ut_cpapi.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/tsrc/unit/ut_cpapi/src/ut_cpapi.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -178,4 +178,3 @@ } -QTEST_MAIN(TestCpAPI) diff -r 572294aa6075 -r f48d04161a92 controlpanel/tsrc/unit/ut_cpapi/ut_cpapi.pro --- a/controlpanel/tsrc/unit/ut_cpapi/ut_cpapi.pro Fri Jun 11 16:24:54 2010 +0100 +++ b/controlpanel/tsrc/unit/ut_cpapi/ut_cpapi.pro Thu Jul 22 16:35:53 2010 +0100 @@ -18,7 +18,7 @@ TARGET = ut_cpapi QT += testlib CONFIG += hb qtestlib -#CONFIG += symbian_test +CONFIG += symbian_test unix { test.commands = /epoc32/RELEASE/WINSCW/udeb/ut_cpapi.exe autotest.commands = /epoc32/RELEASE/WINSCW/udeb/ut_cpapi.exe -xml -o c:/ut_cpapi.xml @@ -43,7 +43,8 @@ # Input HEADERS += src/ut_cpapi.h -SOURCES += src/ut_cpapi.cpp +SOURCES += src/ut_cpapi.cpp \ + src/main.cpp symbian { BLD_INF_RULES.prj_exports += "data/controlpanellog.conf C:/data/.config/ut_cpapi/controlpanellog.conf" diff -r 572294aa6075 -r f48d04161a92 ftuwizardmodel/inc/ftuwizard.h --- a/ftuwizardmodel/inc/ftuwizard.h Fri Jun 11 16:24:54 2010 +0100 +++ b/ftuwizardmodel/inc/ftuwizard.h Thu Jul 22 16:35:53 2010 +0100 @@ -42,22 +42,6 @@ typedef struct { /** - * The default icon to be shown in menustrip UI component. - */ - QFileInfo mMenustripDefaultIcon; - /** - * The pressed icon to be shown in menustrip UI component. - */ - QFileInfo mMenustripPressedIcon; - /** - * The focussed icon to be shown in menustrip UI component. - */ - QFileInfo mMenustripFocussedIcon; - /** - * The text to be shown in menustrip UI component. - */ - QString mMenustripLabel; - /** * The default icon to be shown in table of contents UI component. */ QFileInfo mTocDefaultIcon; @@ -212,20 +196,6 @@ void viewChanged(FtuWizard *caller, QGraphicsWidget* viewWidget); /** - * Emit this signal to put the ftu view to full-screen view, i.e. no - * titlebar, infotext & menustrip. - * @param caller The calling wizard plugin instance. - */ - void fullScreenModeRequested(FtuWizard *caller); - - /** - * Emit this signal to come out of fullscreen mode, i.e. show the titlebar, - * infotext and menustrip - * @param caller The calling wizard plugin instance. - */ - void partialScreenModeRequested(FtuWizard *caller); - - /** * Adds an over-lay widget on top of the current view, used to add an * overlay animation on top of the current view * @param caller The calling wizard plugin instance. @@ -262,6 +232,13 @@ * @param menu The HbMenu instance that needs to be shown on the view */ void updateMainMenu(FtuWizard *caller, HbMenu * menu); + + /** + * Emit this signal to indicate that the wizard plugin wants to be deactivated. + * Wizard is deactivated and Table of Contents is shown by the application. + * @param caller The calling wizard plugin instance. + */ + void wizardDeactivated(FtuWizard *caller); }; diff -r 572294aa6075 -r f48d04161a92 group/bld.inf --- a/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ b/group/bld.inf Thu Jul 22 16:35:53 2010 +0100 @@ -26,7 +26,6 @@ #include "../gsprofilesrv_plat/group/bld.inf" #include "../gsprofilesrv_pub/group/bld.inf" -#include "../gssettingsuis/group/bld.inf" #include "../profilesservices/group/bld.inf" PRJ_TESTMMPFILES diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/ftuwizardmodel_api/inc/ftuwizard.h --- a/gsprofilesrv_plat/ftuwizardmodel_api/inc/ftuwizard.h Fri Jun 11 16:24:54 2010 +0100 +++ b/gsprofilesrv_plat/ftuwizardmodel_api/inc/ftuwizard.h Thu Jul 22 16:35:53 2010 +0100 @@ -42,22 +42,6 @@ typedef struct { /** - * The default icon to be shown in menustrip UI component. - */ - QFileInfo mMenustripDefaultIcon; - /** - * The pressed icon to be shown in menustrip UI component. - */ - QFileInfo mMenustripPressedIcon; - /** - * The focussed icon to be shown in menustrip UI component. - */ - QFileInfo mMenustripFocussedIcon; - /** - * The text to be shown in menustrip UI component. - */ - QString mMenustripLabel; - /** * The default icon to be shown in table of contents UI component. */ QFileInfo mTocDefaultIcon; @@ -211,20 +195,6 @@ void viewChanged(FtuWizard *caller, QGraphicsWidget* viewWidget); /** - * Emit this signal to put the ftu view to full-screen view, i.e. no - * titlebar, infotext & menustrip. - * @param caller The calling wizard plugin instance. - */ - void fullScreenModeRequested(FtuWizard *caller); - - /** - * Emit this signal to come out of fullscreen mode, i.e. show the titlebar, - * infotext and menustrip - * @param caller The calling wizard plugin instance. - */ - void partialScreenModeRequested(FtuWizard *caller); - - /** * Adds an over-lay widget on top of the current view, used to add an * overlay animation on top of the current view * @param caller The calling wizard plugin instance. @@ -261,6 +231,13 @@ * @param menu The HbMenu instance that needs to be shown on the view */ void updateMainMenu(FtuWizard *caller, HbMenu * menu); + + /** + * Emit this signal to indicate that the wizard plugin wants to be deactivated. + * Wizard is deactivated and Table of Contents is shown by the application. + * @param caller The calling wizard plugin instance. + */ + void wizardDeactivated(FtuWizard *caller); }; diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/group/bld.inf --- a/gsprofilesrv_plat/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ b/gsprofilesrv_plat/group/bld.inf Thu Jul 22 16:35:53 2010 +0100 @@ -23,11 +23,6 @@ PRJ_MMPFILES #include "../profiles_engine_api/group/bld.inf" -#include "../settings_backgroundimage_api/group/bld.inf" -#include "../settings_framework_api/group/bld.inf" -#include "../settings_launch_api/group/bld.inf" -#include "../settings_listbox_api/group/bld.inf" -#include "../settings_plugin_api/group/bld.inf" #include "../settings_uis_cenrep_collection_api/group/bld.inf" PRJ_TESTMMPFILES diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_backgroundimage_api/group/bld.inf --- a/gsprofilesrv_plat/settings_backgroundimage_api/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2006 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: File that exports the files belonging to -: Settings Backgroundimage API -* -*/ - - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../inc/GsAsyncImageHandling.h MW_LAYER_PLATFORM_EXPORT_PATH(gsasyncimagehandling.h) -../inc/BackgroundImage.h MW_LAYER_PLATFORM_EXPORT_PATH(backgroundimage.h) -../inc/MGsAsyncImageHandlingObserver.h MW_LAYER_PLATFORM_EXPORT_PATH(mgsasyncimagehandlingobserver.h) diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_backgroundimage_api/inc/BackgroundImage.h --- a/gsprofilesrv_plat/settings_backgroundimage_api/inc/BackgroundImage.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,213 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Class definition for the background image API -* -*/ - - - - -#ifndef BACKGROUNDIMAGE_H -#define BACKGROUNDIMAGE_H - -// INCLUDES -#include -#include - -#include -#include "gsasyncimagehandling.h" - - -// CONSTANTS -const TInt KGSBackgroundImageValue = 0; - -// DATA TYPES -enum TGSWallpaperType - { - EGSWallpaperIdle, - EGSWallpaperPinboard, - EGSWallpaperWelcome, - EGSVTStillImage - }; - -// FORWARD DECLARATIONS -class RSharedDataClient; - -// CLASS DECLARATION - -/** -* CGSBackgroundImage is the background image API class of GS app. -* It provides functions to get and set background image values. -*/ -class CGSBackgroundImage : public CBase - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - IMPORT_C static CGSBackgroundImage* NewL(); - - /** - * Destructor. - */ - IMPORT_C ~CGSBackgroundImage(); - - public: // New functions - - /** - * Returns background image mode. - * @return 0: no image - * 1: image - */ - IMPORT_C TInt BackgroundImageL(); - - /** - * Stores background image mode to shared data. - * @param aImage Background image mode. - */ - IMPORT_C void SetBackgroundImageL(const TInt aImage); - - /** - * Converts an idle background image to bitmap and scales it to fit the - * screen if necessary. - * - * After successful conversion, the background image path is stored - * into shared data. - * - * @param aImagePath Descriptor which contains the background image - * path. Max length is KGSMaxImagePath. - */ - IMPORT_C void SetBackgroundImagePathL(const TDesC& aImagePath); - - /** - * Converts an idle background image to bitmap, scales it to fit the - * screen if necessary, and stores it to the given file. - * - * Background image path is not stored into shared data, but must be - * set separately. - * - * @param aImagePath Descriptor which contains the background image - * path. Max length is KGSMaxImagePath. - * @param aBmpFileName Descriptor which contains the bitmap file name. - * Converted image is again stored back in this variable. - */ - IMPORT_C void SetBackgroundImagePathL(const TDesC& aImagePath, - TDes& aBmpFileName); - - /** - * Converts the welcome note image to bitmap, scales it to fit the screen if - * necessary. - * Stores the bitmap to mbm file. Stores welcome note image path to shared data. - * - * @param aImagePath Descriptor which contains the welcome note image path. - * Max length is KGSMaxImagePath. - */ - IMPORT_C void SetWelcomeNoteImageL(const TDesC& aImagePath, - CGSAsyncImageHandling& aImgHandler ); - - - /** - * Converts the background image to bitmap, scales it to fit the - * screen if necessary, and stores it to the given file. - * - * Background image path is not stored into shared data, but must be - * set separately. - * - * @since 2.6 - * - * @param aImagePath Descriptor which contains the background image - * path. Max length is KGSMaxImagePath. - * @param aBmpFileName Descriptor which contains the bitmap file name. - * Converted image is again stored back in this variable. - * @param aWallpaperType Type of the wallpaper. - */ - IMPORT_C void SetBackgroundImagePathL( - const TDesC& aImagePath, - TDes& aBmpFileName, - TGSWallpaperType aWallpaperType ); - - /** - * Set the current image path for Still Image - * - */ - IMPORT_C void SetVTStillImagePathL( const TDesC& aImagePath, - CGSAsyncImageHandling& aImgHandler ); - - /* - * Returns if Personalisation application exists in device - * @return 1: Personalisation application exists in device - * otherwise: Personalisation application does not exist in device - */ - IMPORT_C TInt GetPlnsStatus(); - - /* - * Checking presence of the personalisation application on the - * device - */ - IMPORT_C void IsPersonalisationApplicationL(); - - /* - * Removing image - * - */ - IMPORT_C void DeleteImageL( const TDesC& aImagePath ); - - - private: - - /** - * C++ default constructor. - */ - CGSBackgroundImage(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - private: - - void LoadImageL( const TDesC& aImagePath, - TInt aWidth, TInt aHeight, - TBool aBgImage, - TGSWallpaperType aWallpaperType ); - - void SaveBitmapsL( TDes& aBmpFileName, - const TDesC& aOriginalFullname ); - public: // Data - TInt iPlnsInDevice; //for personalisation app check - - private: // Data - RSharedDataClient* iClient; //handle to shared data client - CFbsBitmap* iBitmap; //for scaling/dithering of bitmap - - CRepository* iPersonalizationRepository; - CRepository* iStartupConfRepository; - CRepository* iTelephonyRepository; - TDisplayMode iDisplayMode; //4k/64k display support - - RPhCltServer iPhoneClient; - RLibrary iLibrary; - - CGSAsyncImageHandling* iImgHandler; - - // Reserved pointer for future extension - //TAny* iReserved; - - }; - -#endif // CGSBACKGROUNDIMAGE_H - -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_backgroundimage_api/inc/GsAsyncImageHandling.h --- a/gsprofilesrv_plat/settings_backgroundimage_api/inc/GsAsyncImageHandling.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,129 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - - - - -#ifndef GS_ASYNC_IMAGE_HANDLE_H -#define GS_ASYNC_IMAGE_HANDLE_H - -#include -#include -#include -#include -#include -#include "mgsasyncimagehandlingobserver.h" - -// CONSTANTS -const TInt KGSMimeStringLength = 50; - -// DATA TYPES -enum TGSBgImageType - { - EGSWelcomeNoteImage, - EGSVtStillImage - }; - -enum TGSImgState - { - EGSWelcomeConversion, - EGSWelcomeScaling, - EGSVTConversion, - EGSVTScaling - }; - -// FORWARD DECLARTION -class CImageDecoder; -class MGSAsyncImageHandlingObserver; - - -// CLASS DECLARTION -class CGSAsyncImageHandling : public CActive - { - public: - // Static constructor - IMPORT_C static CGSAsyncImageHandling* NewL( - RFs& aFs, - MGSAsyncImageHandlingObserver* aObserver, - const TDesC& aDestinationPath ); - - // Destructor - ~CGSAsyncImageHandling(); - - /* - * Asynchronous loading/scaling/dithering of an image. - * The image is converted to a bitmap. - */ - void ProcessImageL( const TDesC& aFilename, - TInt aScreenWidth, - TInt aScreenHeight, - TGSBgImageType aBgImageType ); - - TDisplayMode GetDisplayMode( const TFrameInfo& aFrameInfo ); - - private: - // C++ constructor - CGSAsyncImageHandling( RFs& aFs, - MGSAsyncImageHandlingObserver* aObserver, - const TDesC& aDestinationPath ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - TSize CalculateLoadSize(TFrameInfo& aFrameInfo, - const TSize aScreenSize ); - - void SaveVTStillImageL(); - - private: - // From CActive - void RunL(); - TInt RunError( TInt aError ); - void DoCancel(); - void Release(); - - private: - MGSAsyncImageHandlingObserver* iObserver; - - // File session - RFs& iFs; - - // Image decoder - CImageDecoder* iDecoder; - - // Currently open file Mime-string - TBuf8 iMimeString; - - CFbsBitmap* iBitmap; - - const TDesC& iDestinationPath; - TInt iBgImageType; - - RPhCltServer iPhoneClient; - RLibrary iLibrary; - CRepository* iStartupRepository; - CBitmapScaler* iBitmapScaler; - TSize iScaleSize; - TInt iState; - - }; - -#endif // GS_ASYNC_IMAGE_HANDLE_H - -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_backgroundimage_api/inc/MGsAsyncImageHandlingObserver.h --- a/gsprofilesrv_plat/settings_backgroundimage_api/inc/MGsAsyncImageHandlingObserver.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,47 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Observer class for asynchronous image handling. -* -*/ - - - -#ifndef MGS_ASYNC_IMAGE_HANDLING_OBSERVER_H -#define MGS_ASYNC_IMAGE_HANDLING_OBSERVER_H - -// INCLUDES -#include - -// CLASS DECLARATION -/** -* Pure virtual observer class to notify events from CGSAsyncImageHandling. -* -* @lib GsEngine.lib -*/ -class MGSAsyncImageHandlingObserver - { - public: // New functions - - /** - * Notifies that image handling is complete. - * image handling involves loading, scaling and dithering - * @param aError Error value if something went wrong. - */ - virtual void ImageHandlingCompleteL( TInt aError ) = 0; - }; - -#endif // MGS_ASYNC_IMAGE_HANDLING_OBSERVER_H - -// End of File \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_backgroundimage_api/settings_backgroundimage_api.metaxml --- a/gsprofilesrv_plat/settings_backgroundimage_api/settings_backgroundimage_api.metaxml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ - - - Settings Backgroundimage API - Sets & gets background image, welcome bitmap - c++ - gssettingsuis - - - - - - - - - no - no - - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/group/bld.inf --- a/gsprofilesrv_plat/settings_framework_api/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -/* -* Copyright (c) 2006-2007 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: File that exports the files belonging to -: Settings Framework API -* -*/ - - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../inc/GSCommon.rh MW_LAYER_PLATFORM_EXPORT_PATH(gscommon.rh) -../inc/GSSettingId.h MW_LAYER_PLATFORM_EXPORT_PATH(gssettingid.h) -../inc/GSChildViewManager.h MW_LAYER_PLATFORM_EXPORT_PATH(gschildviewmanager.h) -../inc/MGSSettingPSObserver.h MW_LAYER_PLATFORM_EXPORT_PATH(mgssettingpsobserver.h) -../inc/GSBaseView.h MW_LAYER_PLATFORM_EXPORT_PATH(gsbaseview.h) -../loc/gs.loc MW_LAYER_LOC_EXPORT_PATH(gs.loc) -../inc/GSPrivatePluginProviderIds.h MW_LAYER_PLATFORM_EXPORT_PATH(gsprivatepluginproviderids.h) -../inc/GSTabbedViewOwner.h MW_LAYER_PLATFORM_EXPORT_PATH(gstabbedviewowner.h) -../inc/GeneralSettingsVariant.hrh MW_LAYER_PLATFORM_EXPORT_PATH(generalsettingsvariant.hrh) -../inc/GSBaseContainer.h MW_LAYER_PLATFORM_EXPORT_PATH(gsbasecontainer.h) -../inc/GSParentPlugin.h MW_LAYER_PLATFORM_EXPORT_PATH(gsparentplugin.h) -../inc/GSTabHelper.h MW_LAYER_PLATFORM_EXPORT_PATH(gstabhelper.h) -../inc/GSPluginLoader.h MW_LAYER_PLATFORM_EXPORT_PATH(gspluginloader.h) -../inc/GSMainView.h MW_LAYER_PLATFORM_EXPORT_PATH(gsmainview.h) -../inc/GSCommon.hrh MW_LAYER_PLATFORM_EXPORT_PATH(gscommon.hrh) -../inc/GSTabbedView.h MW_LAYER_PLATFORM_EXPORT_PATH(gstabbedview.h) -../inc/GSParentContainer.h MW_LAYER_PLATFORM_EXPORT_PATH(gsparentcontainer.h) -../inc/GSPubSubsListener.h MW_LAYER_PLATFORM_EXPORT_PATH(gspubsubslistener.h) -../inc/MGSWatchDog.h MW_LAYER_PLATFORM_EXPORT_PATH(mgswatchdog.h) diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSBaseContainer.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSBaseContainer.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,133 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Base class for GS plugin containers. -* -*/ - - -#ifndef GSBASECONTAINER_H -#define GSBASECONTAINER_H - -// INCLUDES -#include -#include - -// CLASS DECLARATION - -/** -* Base class for GS view containers. Use not necessary. -* -* @lib GSFramework.lib -* @since Series60_3.1 -*/ -class CGSBaseContainer : public CCoeControl -{ - public: // Constructors and destructor - - /** - * Symbian OS default constructor. - */ - IMPORT_C virtual void ConstructL( const TRect& aRect ) = 0; - - /** - * Constructs all common parts of the container. - * - * @param aRect Listbox control's rect. - * @param aResTitleId Resource id for title. - * @param aResLbxId Resource id for listbox. - */ - IMPORT_C void BaseConstructL( const TRect& aRect, - TInt aResTitleId, - TInt aResLbxId ); - - /** - * Constructor. - */ - IMPORT_C CGSBaseContainer(); - - /** - * Destructor. - */ - IMPORT_C virtual ~CGSBaseContainer(); - - public: // New - - /** - * Sets selected item in the listbox. - * @param aIndex Index of the item. - */ - IMPORT_C virtual void SetSelectedItem( TInt aIndex ); - - /** - * Returns selected item in the listbox. - * @return Seleced item index or 0 if no valid lbx. - */ - IMPORT_C virtual TInt SelectedItem(); - - /** - * Set focus on the selected listbox. For animated skins feature. - */ - IMPORT_C void FocusChanged( TDrawNow aDrawNow ); - - public: // From CCoeControl - - /** - * See base class. - */ - IMPORT_C void HandleResourceChange( TInt aType ); - - protected: // New - - /** - * Constructs listbox. - * @param aResLbxId Resource id for listbox. - */ - virtual void ConstructListBoxL( TInt aResLbxId ); - - private: // From CCoeControl - - /** - * See base class. - */ - IMPORT_C void SizeChanged(); - - /** - * See base class. - */ - IMPORT_C TInt CountComponentControls() const; - - /** - * See base class. - */ - IMPORT_C CCoeControl* ComponentControl( TInt /*aIndex*/ ) const; - - /** - * See base class. - */ - IMPORT_C TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, - TEventCode aType ); - - public: // Data - - // Pointer to newly created list box. - CEikTextListBox* iListBox; - - protected: // Data - - // European look and feel. - TBool iElaf; -}; - -#endif // GSBASECONTAINER_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSBaseView.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSBaseView.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,213 +0,0 @@ -/* -* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Base class for settings views. -* -*/ - - -#ifndef GSBASEVIEW_H -#define GSBASEVIEW_H - -// INCLUDES -#include - -#include -#include -#include -#include -#include - -// FORWARD DECLARATIONS -class CGSBaseContainer; -class CAknNavigationDecorator; - -// CLASS DECLARATION - -/** -* CGSBaseView view class -* Base class for GS plugin views. -* -* @lib GSFramework.lib -* @since Series60_3.1 -*/ -class CGSBaseView : public CGSPluginInterface , public MEikListBoxObserver - { - public: - - // Panic code used in this class - enum KGSViewPanicCodes - { - EGSViewPanicNullPtr = 1 - }; - - public: // Constructors and destructor - - /** - * C++ default constructor - */ - IMPORT_C CGSBaseView(); - - /** - * Symbian OS default constructor. - */ - IMPORT_C virtual void ConstructL()=0; - - /** - * Destructor. - */ - IMPORT_C ~CGSBaseView(); - - public: // New - - /** - * This function is used to set the current item in the listbox. - * @param aIndex Current item. Default value is 0 i.e. the first item - * of the list. - */ - IMPORT_C virtual void SetCurrentItem( TInt aIndex = 0 ); - - /** - * Returns the container this view has. - * @return pointer to container, does not transfer ownership. - */ - IMPORT_C CGSBaseContainer* Container(); - - /** - * Opens the nearest localized resourcefile using aResourceLoader. - * aResourceLoader should be opened only once before closing it. - * Otherwise it will raise a panic. Therefore it is better to have - * multiple resource loaders. Uses KDC_RESOURCE_FILES_DIR. - * - * @param aResourceFileName Drive and name of resource file in format - * : - * @param aResourceLoader Resource loader for the resource. The loader - * must not be opened allready or it will raise - * a panic. It is caller's responsibility to - * close the resource loader after using the - * resource. - */ - IMPORT_C void OpenLocalizedResourceFileL( - const TDesC& aResourceFileName, - RConeResourceLoader& aResourceLoader ); - - public: // From CGSPluginInterface - - /** - * See base class. - */ - IMPORT_C virtual void ResetSelectedItemIndex(); - - public: // From CAknView - - /** - * See base class. - */ - IMPORT_C void DoActivateL( const TVwsViewId& aPrevViewId, - TUid /*aCustomMessageId*/, - const TDesC8& /*aCustomMessage*/ ); - - /** - * See base class. - */ - IMPORT_C void DoDeactivate(); - - protected: // New - - /** - * Sets the correct navi pane for the view (eg. tabs, string etc.). - */ - IMPORT_C virtual void SetNaviPaneL(); - - /** - * Creates context for view's navi pane. - * @param aResourceId Resource id for navi pane context's resource. - */ - IMPORT_C virtual void CreateNaviPaneContextL( TInt aResourceId ); - - /** - * Creates container, - */ - IMPORT_C virtual void CreateContainerL(); - - /** - * Functionality for creating a container. Called by DoActivateL(). - * Implemented by sub-class. - */ - IMPORT_C virtual void NewContainerL() = 0; - - protected: // From CAknView - - /** - * See base class. - */ - void HandleClientRectChange(); - - protected: // From MEikListBoxObserver - - /** - * See base class. - */ - IMPORT_C void HandleListBoxEventL( CEikListBox* aListBox, - TListBoxEvent aEventType ); - - private: // New - - /** - * Handles listbox selection. Called by HandleListBoxEventL. - * Implement by sub-class. - */ - virtual void HandleListBoxSelectionL() = 0; - - /** - * Creates navi control container when needed - */ - CAknNavigationControlContainer* NaviControlContainerL(); - - public: // Data - - TVwsViewId iPrevViewId; // Previous view UID - - protected: // Data - - // Pointer to application UI. - CAknViewAppUi* iAppUi; - - // Pointer to the container - CGSBaseContainer* iContainer; - - // Navi pane - CAknNavigationDecorator* iNaviPaneContext; - - // Pointer to the navi control container - CAknNavigationControlContainer* iNaviControlContainer; - - // Currently selected listbox item - TInt iCurrentItem; - - // First item in the listbox - TInt iTopItemIndex; - - // European look and feel - TBool iElaf; - - // Resource loader - RConeResourceLoader iResourceLoader; - - private: // Data - - }; - -#endif // GSBASEVIEW_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSChildViewManager.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSChildViewManager.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - - -#ifndef GSChildViewManager_H -#define GSChildViewManager_H - -// Classes referenced -class CGSPluginInterface; - -class MGSChildViewManager - { -public: - virtual void TransferDynamicPluginL( CGSPluginInterface* aPlugin ) = 0; - }; - - -#endif // GSChildViewManager_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSCommon.hrh --- a/gsprofilesrv_plat/settings_framework_api/inc/GSCommon.hrh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,44 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Common GS menu commands and other common constants. -* -*/ - - -#ifndef GSCOMMON_HRH -#define GSCOMMON_HRH - -// Common GS menu commands. Start from 500 so everything below 500 is free for -// use for plugins. The values are based on the assumption that Avkon process -// commands constants start from 4000 and CBA constants start from 3000 so -// these will not be overwritten. -// -enum TGSMenuCommands - { - EGSCmdAppChange = 500, - EGSCmdAppEdit, - EGSCmdAppHelp, - EGSCmdAppNew, - EGSCmdAppOpen, - EGSMSKCmdAppChange - }; - -enum TGSListBoxItemVisibility - { - EGSListBoxItemTypeIsAlwaysVisible = 0, - EGSListBoxItemTypeIsDynamic - }; - -#endif // GSCOMMON_HRH -//End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSCommon.rh --- a/gsprofilesrv_plat/settings_framework_api/inc/GSCommon.rh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,77 +0,0 @@ -/* -* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Contains common declarations for resources of GS. -* The file can be included only in resource file. -* -*/ - - -#ifndef GSCOMMON_RH -#define GSCOMMON_RH - -#include - -// Global definitions - -// STRUCTURE DEFINITIONS - -// --------------------------------------------------------- -// gs_link_apps -// It defines structure to contain information about apps -// to be able to included in the softkey list. -// --------------------------------------------------------- -// -STRUCT GS_LINK_APPS - { - STRUCT apps[]; - } - -// --------------------------------------------------------- -// gs_app -// It defines structure that contains information about -// a single app. -// --------------------------------------------------------- -// -STRUCT GS_APP - { - WORD id; - LONG app = -1; - } - -// --------------------------------------------------------- -// gs_feature_array -// It defines structure to contain information about items -// to be able to included in the listbox. -// --------------------------------------------------------- -// -STRUCT GS_FEATURE_ARRAY - { - STRUCT items[]; - } - -// --------------------------------------------------------- -// gs_feature -// It defines structure that contains information about -// a single listbox item. -// --------------------------------------------------------- -// -STRUCT GS_FEATURE - { - LTEXT txt = ""; - WORD item = -1; - BYTE type = EGSListBoxItemTypeIsAlwaysVisible; - } - -#endif // GSCOMMON_RH -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSMainView.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSMainView.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,187 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Main view. -* -*/ - - - -#ifndef GSMAINVIEW_H -#define GSMAINVIEW_H - -// INCLUDES -#include "gspluginloader.h" -#include "gschildviewmanager.h" -#include -#include -#include -#include -#include - -// CONSTANTS -_LIT( KGSMainViewResourceFileName, "z:GSApp.rsc" ); - -// FORWARD DECLARATIONS -class CGSMainContainer; -class CGSPluginInterface; - -// CLASS DECLARATION - -/** -* CGSMainView view class -* -* Main view of GS -* -* This view is responsible for visualizing the first level of settings -* plugins. -* -*/ -class CGSMainView : - public CAknView, - public MGSPluginLoadObserver, - public MGSTabbedViewOwner, - public MGSChildViewManager - { - public: // Constructors and destructor - - CGSMainView(); - - /** - * Symbian OS two-phased constructor - * @return GS main view. - */ - static CGSMainView* NewL(); - - /** - * Symbian OS two-phased constructor - * @return GS main view. - */ - static CGSMainView* NewLC(); - - /** - * Symbian OS default constructor. - */ - void ConstructL(); - - /** - * Destructor - */ - ~CGSMainView(); - - public: // New - - /** - * Returns pointer to the owned plugins. - */ - CArrayPtrFlat* Plugins(); - - /** - * Updates plugin's view. This can be used when child plugin's values - * are changed. - */ - void UpdateView(); - - public: // From CAknView - - /** - * See base view. - */ - TUid Id() const; - - public: // From MGSPluginLoadObserver - - /** - * See base view. - */ - void HandlePluginLoaded( KGSPluginLoaderStatus aStatus ); - - public: // From MGSChildViewManager - - /** - * See base view. - */ - void TransferDynamicPluginL( CGSPluginInterface* aPlugin ); - - public: // From MGSTabbedViewOwner - - /** - * See base view. - */ - CArrayPtrFlat* TabbedViews(); - - /** - * See base class. - */ - void TabChangedL( TUid selectedTabUid ); - - protected: // From CAknView - - /** - * See base view. - */ - void DoActivateL( - const TVwsViewId& aPrevViewId, - TUid aCustomMessageId, - const TDesC8& aCustomMessage ); - - /** - * See base view. - */ - void DoDeactivate(); - - /** - * See base view. - */ - void HandleCommandL( TInt aCommand ); - - protected: // From MEikMenuObserver - - void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane ); - - private: - - /** - * Opens the nearest localized resourcefile. - */ - void OpenLocalizedResourceFileL( const TDesC& aResourceFileName ); - - /** - * Creates new container. - */ - void NewContainerL(); - - private: // Data - - // Pointer to Application UI. Not owned. - CAknViewAppUi* iAppUi; - - // Pointer to owned container. - CGSMainContainer* iContainer; - - // GS plug-ins owned by this view. CGSPluginLoader defines the - // ordering of items. - CArrayPtrFlat* iPluginArray; - - // Asynchronous loader for the GS plug-ins. - CGSPluginLoader* iPluginLoader; - - // Resource loader. - RConeResourceLoader iResourceLoader; - - // UID of the selected plugin in the container's lbx. - TUid iSelectedPluginUid; - }; - -#endif // GSMAINVIEW_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSParentContainer.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSParentContainer.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,230 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Container for GSParentPlugin. -* -*/ - - -#ifndef GSPARENTCONTAINER_H -#define GSPARENTCONTAINER_H - -#include "gsparentplugin.h" -#include -#include -#include // For loading icons -#include -#include -#include - -// CLASS DECLARATION -class CAknViewAppUi; -class CGSPluginInterface; -class CAknSingleLargeStyleListBox; -class MGSWatchDog; - -/** -* Container class for the GS Main view. -* @lib GSFramework.lib -* @since Series60_3.1 -*/ -class CGSParentContainer : public CCoeControl, public MEikListBoxObserver - { - public: // Constructors and destructor - - /** - * Symbian OS constructor. - * Required by the base class. - */ - /*void ConstructL( - const TRect& aRect, - CAknViewAppUi* aAppUi, - CArrayPtrFlat* aPluginArray, - TInt aTitleRscId );*/ - - /** - * Symbian OS constructor. - * Required by the base class. - */ - void ConstructL( - const TRect& aRect, - CAknViewAppUi* aAppUi, - CArrayPtrFlat* aPluginArray, - TInt aTitleRscId, - CGSParentPlugin* aParentPlugin, - TGSListboxTypes aListBoxType = - EGSListBoxTypeSingleLarge ); - - /** - * Destructor. - */ - ~CGSParentContainer(); - - public: // New - - /** - * Updates iListBox. Listbox is updated depending on the type of the - * listbox. Plugins are inserted to listbox only if they are visible. - */ - void UpdateListBoxL(); - - /** - * @return Pointer to owned listbox - */ - CEikListBox* ListBox(); - - /** - * @return Plugin which is selected in the lbx or NULL if no plugins - * exist. - */ - CGSPluginInterface* SelectedPlugin(); - - /** - * Sets selected lbx item using the UID of the item. If the item is not - * existing or visible anymore, selected item is the first item in the - * lbx. - */ - void SetSelectedItem( TUid aSelectedItemUid ); - - /** - * @return Plugin which is top in the lbx or NULL if no plugins - * exist. - */ - CGSPluginInterface* TopPlugin(); - - /** - * Sets top lbx item using the UID of the item. - */ - void SetTopItem( TUid aTopItemUid ); - - /** - * Set the empty text of list box. - */ - void SetListBoxEmptyTextL(const TDes& aEmpty ); - - - public: // From CCoeControl - - /** - * Set focus on the selected listbox. For animated skins feature. - */ - IMPORT_C void FocusChanged( TDrawNow aDrawNow ); - - /** - * See base class. - */ - void HandleResourceChange( TInt aType ); - - /** - * See base class. - */ - void GetHelpContext( TCoeHelpContext& aContext ) const; - - public: //New - - void HandleSelectionKeyL(); - - protected: // From MEikListBoxObserver - - /** - * Handles listbox events. - * @param aListBox Listbox where the event occurred. - * @param aEventType Event type. - */ - void HandleListBoxEventL( CEikListBox* aListBox, - TListBoxEvent aEventType ); - - private: // New - - /** - * Creates a listbox. - */ - void CreateListBoxL( TGSListboxTypes aListBoxType ); - - /** - * Adds plugin data to listbox. - * @param aPlugin A plugin whose data is to be used. - * @param aItemTextArray Array for plugin texts and format strings used - * by lbx. - * @param aIconArray Array for icons used in lbx. - * @param aIconCounter Counter for inserted icons, will be updated. - */ - void AddPluginDataToLbxL( CGSPluginInterface* aPlugin, - CDesCArray* aItemTextArray, - CAknIconArray* aIconArray, - TInt& aIconCounter ); - - private: // From CCoeControl - - /** - * See base class. - */ - void SizeChanged(); - - /** - * See base class. - */ - TInt CountComponentControls() const; - - /** - * See base class. - */ - CCoeControl* ComponentControl(TInt /*aIndex*/) const; - - /** - * See base class. - */ - TKeyResponse OfferKeyEventL( - const TKeyEvent& aKeyEvent, - TEventCode aType ); - - private: // Data - - // Application UI. Not owned. - CAknViewAppUi* iAppUi; - - // Owned listbox. - CEikListBox* iListBox; - - // Type of iListBox. - TGSListboxTypes iListBoxType; - - // Pointer to listbox model's item texts. Note that the indexes of - // listbox items are mapped directly to the indexes in plugin array. - // Plugin which maps to selected listbox item index in plugin array is - // activated when item is selected in listbox. - // - // Owned by iListBox. - // - CDesCArray* iItemTextArray; - - // Array of the child plugins. Owned by CGSParentPlugin. - CArrayPtrFlat* iPluginArray; - - // Array of pointers to iPluginArray plugins which are visible. - // This is the actual array which is displayed by the listbox. - // It is needed because iPluginArray also contains non-visible plugins - // and therefore the indexes do not match to lbx items. - CArrayPtrFlat* iVisiblePlugins; - - // Pointer to parent plugin. Not owned. - CGSParentPlugin* iParentPlugin; - - // Pointer to GSWatchDog owned by GS Application document. Not owned. - MGSWatchDog* iGSWatchDog; - - }; - - -#endif // GSPARENTCONTAINER_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSParentPlugin.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSParentPlugin.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,335 +0,0 @@ -/* -* Copyright (c) 2005-2008 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: Base class header for plugins containing other plugins. -* -*/ - - -#ifndef GSPARENTPLUGIN_H -#define GSPARENTPLUGIN_H - -// INCLUDES -#include "gspluginloader.h" -#include "gsplugininterface.h" -#include "gschildviewmanager.h" - -#include -#include -#include - -// CONSTANTS -_LIT( KGSParentPluginResourceFileName, "z:GSParentPluginRsc.rsc" ); - -/** -* Used by CGSParentPlugin::ListBoxType(). These enumerations are used to define -* the desired type of the listbox. Enumerations here are currently implemented -* by CGSParentPlugin. Additional types can be defined later as long as the -* values for previous types are not changed. -*/ -enum TGSListboxTypes - { - // CAknSingleLargeStyleListBox for - // list_single_large_pane - EGSListBoxTypeSingleLarge = 1, // Default - // CAknSettingStyleListBox for - // list_setting_pane and - // list_big_single_setting_pane - EGSListBoxTypeSettings, - // CAknDouble2LargeStyleListBox for - // list_double2_large_graphic_pane - EGSListBoxTypeDouble2Large, - // CAknDoubleLargeStyleListBox for - // list_double_large_graphic_pane - // Note: Only different layout than EGSListBoxTypeDouble2Large - EGSListBoxTypeDoubleLarge - }; - -/** -* Indexes to flags that are used for different customisation options for parent -* plugin. The flags define for example optimization options for loading child -* plugins. -*/ -enum TGSOptionFlagIndexes - { - // On: Will load child plugins when parent plugin is activated. - // Off: Will load child plugins on initialization of the parent plugin. - EGSLoadChildrenOnActivation, - // On: Will delete child plugins when parent plugin is deactivated. - // Off: Will delete child plugins when parent plugin is destroyed. - EGSDeleteChildrenOnDeactivation // CURRENTLY NOT IMPLEMENTED! - }; - -// FORWARD DECLARATIONS -class CGSParentContainer; - -// CLASS DECLARATION - -/** -* CGSParentPlugin view class. Thus is a base class for plugins owning other -* plugins as their sub-views. -* -* @lib GSFramework.lib -* @since Series60_3.1 -*/ -class CGSParentPlugin : public CGSPluginInterface, - public MGSPluginLoadObserver, - public MGSChildViewManager -{ - public: // Constructors and destructor - - /** - * Destructor. - */ - IMPORT_C ~CGSParentPlugin(); - - public: // New - - /** - * Opens the nearest localized resourcefile using aResourceLoader. - * aResourceLoader should be opened only once before closing it. - * Otherwise it will raise a panic. Therefore it is better to have - * multiple resource loaders. Uses KDC_RESOURCE_FILES_DIR. - * - * @param aResourceFileName Drive and name of resource file in format - * : - * @param aResourceLoader Resource loader for the resource. The loader - * must not be opened allready or it will raise - * a panic. It is caller's responsibility to - * close the resource loader after using the - * resource. - */ - IMPORT_C void OpenLocalizedResourceFileL( - const TDesC& aResourceFileName, - RConeResourceLoader& aResourceLoader ); - - /** - * Symbian OS default constructor. Call this from sub classes. - * - * @param aViewTitleRscId Id for the view's resource. - * @parem aTitleRscId Id for the view's title resource. - */ - IMPORT_C void BaseConstructL( TInt aViewRscId, TInt aTitleRscId ); - - /** - * @return UID of the upper level view which launched this view. Note - * that it is not always the previous view because a view can - * be activated also by returning from another view. - */ - IMPORT_C virtual TUid UpperLevelViewUid(); - - /** - * Defines the type of the used listbox visualising the child plugins. - * Classes deriving from CGSParentContainer can override this function - * to define the used type of the listbox. Otherwise default value - * EGSListBoxTypeSingleLarge is used. - * - * @return Type of the listbox. See TGSListboxTypes for - * types. - */ - IMPORT_C virtual TGSListboxTypes ListBoxType(); - - /** - * Updates plugin's view. This can be used when child plugin's values - * are changed. - */ - IMPORT_C virtual void UpdateView(); - - /** - * Defines custom options for parent plugin. Use TGSOptionFlagIndexes to - * enable a combination of bit flags. - * - * @param aOptionFlags Option combination created by combining binary - * option flags. - */ - IMPORT_C virtual void SetOptionFlags( TBitFlags& aOptionFlags ); - - /** - * Gets currently used option flags. - * - * @return Binary option flags used by this plugin. - */ - IMPORT_C virtual const TBitFlags& OptionFlags() const; - - /** - * Provides help context. This should be implemented by CGSParentPlugin - * sub class in case help is needed. Normally this is defined in - * CCoeControl derived class but since all parent plugin implementations - * have only CGSParentContainer class as the only CCoeControl derived - * class, and need still their own unique help contexts, this function - * is needed in view level class. - */ - IMPORT_C virtual void GetHelpContext( TCoeHelpContext& aContext ); - - /** - * @return Plugin which is selected in the lbx or NULL if no plugins - * or iContainer exist. - */ - IMPORT_C CGSPluginInterface* SelectedPlugin(); - - /** - * Attempts to change child plugin load priority on next RunL cycle. - * Use this if parent needs to change plugin loader priority. Normally - * when parent plugin view is opened, it is advisable to increase loader - * priority to get child plugins loaded faster. - * - * @param aPriority Desired priority. - */ - void RequestPriority( CActive::TPriority aPriority ); - - public: // From CGSPluginInterface - - /** - * See base class. - */ - IMPORT_C void ResetSelectedItemIndex(); - - public: // From MGSPluginLoadObserver - - /** - * See base class. - */ - IMPORT_C void HandlePluginLoaded( KGSPluginLoaderStatus aStatus ); - - public: //New - - /** - * Checks if the MSK label needs to be adjusted. - */ - void CheckMiddleSoftkeyLabelL(); - - /** - * Adds given resource text as MSK to CBA. Use either this or - * SetMiddleSoftKeyLabelTextL in in case text is used deirectly instead - * of resource. - * - * @param aResourceId middle softkey label. - * @param aCommandId command that should be performed when MSK - * is pressed. - * @since S60 v3.1 - */ - void SetMiddleSoftKeyLabelL( const TInt aResourceId, const TInt aCommandId ); - - /** - * Adds given text as MSK to CBA. - * - * @param aMskLabel middle softkey label. - * @param aCommandId command that should be performed when MSK - * is pressed. - * @since S60 v3.1 - */ - void SetMiddleSoftKeyLabelTextL( const TPtr aMskLabel, const TInt aCommandId ); - - public: // From MGSChildViewManager - - IMPORT_C void TransferDynamicPluginL( CGSPluginInterface* aPlugin ); - - protected: // From CAknView - - /** - * See base class. - */ - IMPORT_C void DoActivateL( const TVwsViewId& aPrevViewId, - TUid aCustomMessageId, - const TDesC8& aCustomMessage ); - - /** - * See base class. - */ - IMPORT_C void DoDeactivate(); - - /** - * See base class. - */ - IMPORT_C void HandleCommandL( TInt aCommand ); - - /** - * See base class. - */ - IMPORT_C CGSParentPlugin(); - - protected: // From MEikMenuObserver - - /** - * See base class. - */ - IMPORT_C void DynInitMenuPaneL( TInt aResourceId, - CEikMenuPane* aMenuPane ); - - private: // New - - /** - * Constructs container for this view. - */ - void ConstructContainerL(); - - /** - * Remove command from MSK. - * @param aMskCommandId ID of the command to be removed. - */ - void RemoveCommandFromMSK( TInt aMskCommandId ); - - /** - * Used in lazy loading. Starts loading the plugins. - */ - void StartAsyncPluginLoadL(); - - protected: // Data - - // Previous view UID. - TVwsViewId iPrevViewId; - - private: // Data - - // Application UI. - CAknViewAppUi* iAppUi; - - // Owned container. - CGSParentContainer* iContainer; - - // GS plug-ins owned by this view. - // CGSPluginLoader defines the ordering of plugins. - CArrayPtrFlat* iPluginArray; - - // Asynchronous loader for the GS plug-ins. - CGSPluginLoader* iPluginLoader; - - // Resource loader. - RConeResourceLoader iResourceLoader; - - // Resource id for the title. - TInt iTitleRscId; - - // UID of the selected plugin in the container's lbx. Uid is used - // instead of simple index because it is unambiguous whereas index - // could refer to wrong plugin in case plugin order or count is - // changed. - TUid iSelectedPluginUid; - - // Combination of binary flags that can be set to alter parent plugin - // behaviour. - TBitFlags iOptionFlags; - - // This stores the desired MSK command ID. - TInt iMskCommandId; - - // UID of the top plugin in the container's lbx. Uid is used - // instead of simple index because it is unambiguous whereas index - // could refer to wrong plugin in case plugin order or count is - // changed. - TUid iTopPluginUid; -}; - - -#endif // GSPARENTPLUGIN_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSPluginLoader.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSPluginLoader.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,368 +0,0 @@ -/* -* Copyright (c) 2005-2007 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: Class definition for CGSPluginLoader -* -*/ - - - -#ifndef GSPLUGINLOADER_H -#define GSPLUGINLOADER_H - -// INCLUDES -#include -#include - -// CONSTANTS - -// Value for a to b comparison result when logically a == b. -const TInt KGSComparisonEqual = 0; - -// Value for a to b comparison result when logically a < b. -const TInt KGSComparisonBefore = -1; - -// Value for a to b comparison result when logically a > b. -const TInt KGSComparisonAfter = 1; - -// CLASS DEFINITIONS -class CGSPluginInterface; -class MGSPluginLoadObserver; -class CAknViewAppUi; -class REComSession; -class CAknColumnListBox; -class CAknInfoPopupNoteController; -class CGSBaseDocument; -class MGSWatchDog; - -/** -* CGSPluginLoader. Mechanism used to load plugins asynchronously. Uses -* MGSPluginLoadObserver as a callback. -* -* @lib GSFramework.lib -* @since Series60_30.1 -*/ -class CGSPluginLoader : public CActive - { - public: // Constructor and destructor - - /** - * Two-phased constructor. - * - * @param aAppUi Pointer to application UI. Does not take ownership. - */ - IMPORT_C static CGSPluginLoader* NewL( CAknViewAppUi* aAppUi ); - - /** - * Destructor - */ - IMPORT_C ~CGSPluginLoader(); - - private: // Internal construction - - /** - * Default C++ contructor - */ - CGSPluginLoader(); - - /** - * Symbian OS default constructor - * @return void - */ - void ConstructL( CAknViewAppUi* aAppUi ); - - public: // API - - /** - * Starts loading GS plug-ins asynchronously. Will call - * MGSPluginLoadObserver::HandlePluginLoaded() each time a plug-in is - * loaded and when all plugins are loaded. - * - * CGSPluginLoader transfers the ownership of each loaded plugin view to - * CAknViewAppUi. It is client's responsibility to remove the views from - * CAknViewAppUi and delete the plugins if necessary. - * - * @param aInterfaceUid Uid ofthe interfaces to be loaded. - * @param aParentUid Uid of the parent. Only children of this parent - * will be loaded. - * @param aPluginArray An array for the loaded GS plug-ins. - * CGSPluginLoader does not take the ownership of this array. - */ - IMPORT_C void LoadAsyncL( - TUid aInterfaceUid, - TUid aParentUid, - CArrayPtrFlat* aPluginArray ); - - /** - * Load a specific plugin instance synchronously. - * - * @param aInterfaceUid Uid ofthe interfaces to be loaded. - * @param aImplementationUid Uid of the implementation to load - */ - CGSPluginInterface& LoadSyncL( TUid aInterfaceUid, TUid aImplementationUid ); - - /** - * Sets observer for this loader. Only one observer per loader in one - * time is possible. - */ - IMPORT_C void SetObserver(MGSPluginLoadObserver* aObserver); - - /** - * Aborts asynchronous loading of the GS plug-ins. - */ - IMPORT_C void AbortAsyncLoad(); - - /** - * Sorts the plugin array. - * - * Sorting criterias: - * - * 1. Order number if provider category is Internal. - * 2. Provider category. Precedence as follows: - * 1. KGSPluginProviderInternal - * 2. EGSPluginProviderOEM - * 3. EGSPluginProviderOperator - * 4. EGSPluginProvider3rdParty - * 3. Alphabetical - * - * @param aPlugins The array which will be sorted. - */ - IMPORT_C void SortPluginsL( CArrayPtrFlat* aPlugins ); - - - /** - * Attempts to change CActive priority on next RunL cycle. Use this if - * needed to change plugin loader priority. Normally when parent plugin - * view is opened, it is advisable to increase loader priority to get - * child plugins loaded faster. - * - * @param aPriority Desired priority. - */ - IMPORT_C void RequestPriority( CActive::TPriority aPriority ); - - private: // Internal methods - - /** - * Starts loading next plugin. - */ - void LoadNextPluginL(); - - /** - * Creates a plugin instance from given UID. Ownership is transferred. - */ - CGSPluginInterface& CreatePluginInstanceL( - const CImplementationInformation& aImpInfo ); - - /** - * Notifies MGSPluginLoadObserver. - */ - void NotifyProgress(); - - /** - * Notifies MGSPluginLoadObserver. - */ - void NotifyFinished(); - - /** - * Wait for the next round of CActive execution. - */ - void CompleteOwnRequest(); - - // Insertion function used by sorting: - - /** - * Inserts plugin in the correct position in the array using sorting - * criterias. Assumes aPlugins is ordered. - * - * @param aPlugin The plugin to be inserted. - * @param aPlugins Array in which the plugin is inserted into the - * corresponding location. - */ - void InsertPluginInOrderL( - CGSPluginInterface* aPlugin, - CArrayPtrFlat* aPlugins ); - - // Comparison functions: - - /** - * Compares plugins according to comparison criterias. - * - * Note: GS internal comparison constants such as KGSComparisonEqual are - * different from the ones outputted by this function. This is because - * this function is also usable by RArray sort -functionality but BC - * cannot be broken in GS. - * - * @return Negative value: If aFirst before aSecond. - * 0: If equal. - * Positive value: If aSecond before aFirst. - */ - static TInt Compare( const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ); - - /** - * Precedence is as follows: - * 1. KGSPluginProviderInternal - * 2. EGSPluginProviderOEM - * 3. EGSPluginProviderOperator - * 4. EGSPluginProvider3rdParty - * - * @return KGSComparisonEqual = equal categories - * KGSComparisonBefore = aFirst is before aSecond - * KGSComparisonAfter = aFirst is after aSecond - */ - static TInt CompareCategory( - const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ); - /** - * - * @return KGSComparisonEqual = equal captions - * KGSComparisonBefore = aFirst is before aSecond - * KGSComparisonAfter = aFirst is after aSecond - */ - static TInt CompareCaption( - const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ); - /** - * - * @return KGSComparisonEqual = equal indexes - * KGSComparisonBefore = aFirst is before aSecond - * KGSComparisonAfter = aFirst is after aSecond - */ - static TInt CompareIndex( - const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ); - - private: // Utility methods - - /** - * Parses descriptor to UID. - */ - static TInt ParseToUid( const TDesC8& aSource, TUid& aTarget ); - - /** - * Parsers plugin's order number - */ - static TInt ParseOrderNumber( const TDesC8& aSource, TInt& aOrderNumber ); - - /** - * Print debug information. - */ - static void PrintInfoDebugL( const CImplementationInformation& aInfo, - TInt aIterator, - TInt aPluginCount ); - /** - * Print ordering debug data. - */ - void CGSPluginLoader::PrintOrderTracesL( - CArrayPtrFlat* aPlugins ); - - /** - * Display loading error popup message. - */ - void DisplayErrorPopupL( TInt aError, - const CImplementationInformation* aInfo ); - - private: // From CActive - - /** - * See base class. - */ - void RunL(); - - /** - * See base class. - */ - TInt RunError( TInt aError ); - - /** - * See base class. - */ - void DoCancel(); - - private: // Data - - - // Pluginloader goes through this array and loads the plugins into - // iPluginArray if they fulfill the criterias. - RImplInfoPtrArray iImplInfoArray; - - // Used as an iterator to maintain location in iImplInfoArray. - TInt iImplInfoArrayIterator; - - // Array of loaded plugins.Plugins are owned by iAppUi. Only the array - // pointers are owned by this class and therefore only reset array. - CArrayPtrFlat* iPluginArray; - - // UID for plugin parent. - TUid iParentUid; - - // Pointer to app UI. Not owned. - CAknViewAppUi* iAppUi; - - // Pointer to observer. Not owned. - MGSPluginLoadObserver* iObserver; - - // Number of RunL calls. - TInt iRunLDebugCount; - - // For debugging: shows a note in case of a crashing plugin - CAknInfoPopupNoteController* iErrorPopup; - - // Reference to GS application owned watchdog. Not onwed. - MGSWatchDog* iWatchDog; - - // Reference to document. Not owned. - CGSBaseDocument* iDocument; - - // Desired oactive object priority for loading child plugins. - CActive::TPriority iRequestedPriority; - }; - - -/** -* Interface for GSPluginLoader observer. MGSPluginLoadObserver gets -* notifications when plugins are loaded. -* -* @lib GSFramework.lib -* @since Series60_30.1 -*/ -class MGSPluginLoadObserver - { - public: // Enums - enum KGSPluginLoaderStatus - { - // One plugin loaded successfully, continue to next. - EGSSuccess, - // Loading one plugin failed, contiue to next. - EGSFail, - // Client called AbortAsyncLoad(), finished loading. - EGSAborted, - // All plugins loaded successfully, finished loading. - EGSFinished, - // Severe error with loader, finished loading. - EGSError - }; - - public: // New - - /** - * CGSPluginLoader calls this function when each plug-in is loaded or - * loading is finished.. - */ - IMPORT_C virtual void HandlePluginLoaded( - KGSPluginLoaderStatus aStatus ) = 0; - }; - - -#endif // GSPLUGINLOADER_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSPrivatePluginProviderIds.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSPrivatePluginProviderIds.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Ids for private plug-in providers. -* -*/ - - - -#ifndef GSPRIVATEPROVIDERIDS_H -#define GSPRIVATEPROVIDERIDS_H - -// CONSTANTS - -/** -* Private id used for S60 internally provided GS plug-ins. This must not be -* disclosed to other parties. Using this id allows the plugin to be handled -* with more rights than other plugins: -* - Inserted before other plugins in listboxes. -* - Can define their order in the listbox. -* - Plug-in can belong also to other views than applications-view. -* -*/ -const TInt KGSPluginProviderInternal = 87329234; - - -#endif // GSPRIVATEPROVIDERIDS_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSPubSubsListener.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSPubSubsListener.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,129 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Listener for Publish and subscribe data. -* -*/ - - - -#ifndef GSPUBSUBSGSETTINGS_H -#define GSPUBSUBSGSETTINGS_H - -// INCLUDES -#include -#include -#include - -// FORWARD DECLARATIONS -class MGSSettingPSObserver; - -// CLASS DECLARATION - -/** -* RProperty poller. -* -* @lib gs.lib -* @since Series 60 3.0 -*/ -NONSHARABLE_CLASS( CGSPubSubsListener ) : public CActive - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - * @param aUid the Uid to use - * @param aKey item's key - * @param aObserver callback interface for notification - * @return instance of CVtEngPubSubsListener - */ - IMPORT_C static CGSPubSubsListener* NewL( const TUid aUid, - const TInt aKey, MGSSettingPSObserver* aObserver ); - - /** - * Destructor. - */ - IMPORT_C virtual ~CGSPubSubsListener(); - - public: // New functions. - - /** - * Gets integer value from P & S. - * @param aVal a value in return - * @return error code - */ - IMPORT_C TInt Get( TInt& aVal ); - - /** - * Gets 8 bit string value from P&S. - * @param aVal a value in return - * @return error code - */ - IMPORT_C TInt Get( TDes8& aVal ); - - /** - * Gets 16 bit descriptor value from P&S. - * @param aVal a value in return - * @return error code - */ - IMPORT_C TInt Get( TDes16& aVal ); - - private: // From CActive. - - /** @see CActive::RunL */ - virtual void RunL(); - - /** @see CActive::Cancel */ - virtual void DoCancel(); - - /** @see CActive::RunError */ - virtual TInt RunError( TInt aError ); - - /** - * Starts the listening (RunL). - */ - void StartListening(); - - private: - - /** - * C++ default constructor. - * @param aUid the Uid to use - * @param aKey item's key - * @param aObserver callback interface for notification - */ - CGSPubSubsListener( const TUid aUid, TInt aKey, - MGSSettingPSObserver* aObserver ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - private: // Data - - // UID of the monitored item. - TUid iUid; - - // ID of the monitored item. - TInt iId; - - // Property to subscribe to. - RProperty iProperty; - - // The notification interface. - MGSSettingPSObserver* iCallback; - }; - -#endif // GSPUBSUBSGSETTINGS_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSSettingId.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSSettingId.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: All the setting IDs are declared here -* -*/ - - -#ifndef GSSETTINGID_H -#define GSSETTINGID_H - - -// CONSTANTS - -// buffer size constants -const TInt KGSBufSize128 = 128; - -const TInt KGSMapSize = 8; - -// connection packet data -const TInt KGSSettIdV42Comp = 1; - -// accessory display -const TInt KGSSettIdAccIU = 0; - - -enum { - KGSHeadsetDefProfile, - KGSLoopsetDefProfile, - KGSBTAudioDefProfile, - KGSTTYDefProfile - }; - -// call display -enum { - KGSSettIdOwnNumberSending, - KGSSettIdCallWaiting, - KGSSettIdCallCompletionWhenBusy, - KGSSettIdSummaryAfterCall, - KGSSettIdPhoneLineUsed, - KGSSettIdPhoneLineBlocking, - KGSSettIdSoftRejectText - }; - -#endif // GSSETTINGID_H - -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSTabHelper.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSTabHelper.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,170 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Utility class for creating tab groups. -* -*/ - - -#ifndef GSTABHELPER_H -#define GSTABHELPER_H - -#include "gsplugininterface.h" -#include "gstabbedviewowner.h" - -#include -#include -#include - - -// Forward declarations -class CAknNavigationControlContainer; -class CAknNavigationDecorator; -class CAknTabGroup; -class MGSTabbedView; - - -/** -* CGSTabHelper is used to create dynamic tabs from either -* - CGSPluginInterface* array (plugins) -* - MGSTabbedView* interface Array (local views owned by plugin). -* -* How to use: -* -* 1. Call CreateTabGroupL() from the plugin's/view's DoActivate(). Providing an -* array of all the plugins/views which should be in the tab group including -* the plugin/view itself. -* -* 2. Call RemoveTabGroup() from the plugin's/view's DoDeactivate(). -* -* 3. It is recommended to use CGSTabHelper* as an member variable owned by the -* plugin/view class. -* -* @lib GSFramework.lib -* @since Series60_3.1 -*/ -class CGSTabHelper : public CBase, public MAknTabObserver - { - public: // Constructors & destructors - - /** - * Symbian OS two-phased constructor - * @return - */ - IMPORT_C static CGSTabHelper* NewL(); - - /** - * Symbian OS two-phased constructor - * @return - */ - IMPORT_C static CGSTabHelper* NewLC(); - - /** - * Destructor. - */ - IMPORT_C ~CGSTabHelper(); - - public: // New - - /** - * This function is for views implementing MGSTabbedViewOwner. Such may - * be needed in case view needs to update its selected item according to - * tab selection. - * - * Creates and adds a tab group to navipane. The number of visible tabs - * is 4 unless there are less tabbed views in which case the number of - * tabs equal the number of tabbed views. - * - * @param aActiveViewUid UID of the view whose tab should be activated - * when the tab group is added to the navi pane. - * @param aTabOwner Reference to the owner of the tabbed views. - */ - IMPORT_C void CreateTabGroupL( TUid aActiveViewUid, - MGSTabbedViewOwner* aTabOwner ); - - /** - * This function is for plugin implementation. - * - * Creates and adds a tab group to navipane. The number of visible tabs - * is 4 unless there are less tabbed views in which case the number of - * tabs equal the number of tabbed views. - * - * @param aActiveViewUid UID of the view whose tab should be activated - * when the tab group is added to the navi pane. - * @param aTabbedViews References to the views which belong to the tab - * group. - */ - IMPORT_C void CreateTabGroupL( - TUid aActiveViewUid, - CArrayPtrFlat* aTabbedViews ); - - /** - * This function is for local view implementation. - * - * Creates and adds a tab group to navipane. The number of visible tabs - * is 4 unless there are less tabbed views in which case the number of - * tabs equal the number of tabbed views. - * - * @param aActiveViewUid UID of the view whose tab should be activated - * when the tab group is added to the navi pane. - * @param aTabbedViews References to the views which belong to the tab - * group. - */ - IMPORT_C void CreateTabGroupL( - TUid aActiveViewUid, - CArrayPtrFlat* aTabbedViews ); - - /** - * Removes the topmost tab group from navi pane. - */ - IMPORT_C void RemoveTabGroup(); - - public: // From MAknTabObserver - - /** - * See base class. - */ - IMPORT_C void TabChangedL( TInt aIndex ); - - protected: // New - - /** - * C++ default constructor. - */ - CGSTabHelper(); - - /** - * Symbian OS default constructor. - */ - void ConstructL(); - - private: // Data - - // Container for navigation control object. - CAknNavigationControlContainer* iNaviContainer; - - // Navigation decorator object. Created and owned. - CAknNavigationDecorator* iNaviDecorator; - - // Tab group. - CAknTabGroup* iTabGroup; - - // Pointer to App UI. Not owned. - CAknViewAppUi* iAppUi; - - // Pointer to owner (parent) of the tabbed views. - MGSTabbedViewOwner* iTabOwner; - }; - -#endif // GSTABHELPER_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSTabbedView.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSTabbedView.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,48 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Header file for MGSTabbedView class. -* -*/ - - -#ifndef GSTABBEDVIEW_H -#define GSTABBEDVIEW_H - -#include - -class CGulIcon; - -/** -* Interface to be used when creating tab groups. Used by CGSTabHelper. -* -*/ -class MGSTabbedView - { - public: // New - - /** - * Creates new icon for tab. Ownership is transferred to client. - */ - virtual CGulIcon* CreateTabIconL() = 0; - - /** - * UID of the tab. - */ - virtual TUid Id() const = 0; - - }; - -#endif // GSTABBEDVIEW_H -//End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GSTabbedViewOwner.h --- a/gsprofilesrv_plat/settings_framework_api/inc/GSTabbedViewOwner.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Header file for MGSTabbedViewOwner class. -* -*/ - - -#ifndef GSTABBEDVIEWOWNER_H -#define GSTABBEDVIEWOWNER_H - -#include - -class CGSPluginInterface; - -/** -* Interface for MGSTabbedView owner class. Views owning tabbed sub-views -* implement this. -*/ -class MGSTabbedViewOwner - { - public: - /** - * @return Reference to owned tabbed views which should be included in - * the sub-view's tab group. - */ - virtual CArrayPtrFlat* TabbedViews() = 0; - - /** - * Parent view implements this to handle switching tabs. This is needed - * in case parent view needs to update selected item index according to - * tab selection. - * - * @param selectedTabUid UID of the selected tab item. - */ - virtual void TabChangedL( TUid selectedTabUid ) = 0; - }; - -#endif // GSTABBEDVIEWOWNER_H -//End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/GeneralSettingsVariant.hrh --- a/gsprofilesrv_plat/settings_framework_api/inc/GeneralSettingsVariant.hrh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,91 +0,0 @@ -/* -* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - - - -#ifndef GENERALSETTINGSVARIANT_HRH -#define GENERALSETTINGSVARIANT_HRH - -/** -* EGSConfigOTAAutoUpdate is on/off setting for Automatic update of service. -* When it is set on in TGeneralSettingsLocalVariantFlags OTA is enabled. -*/ -#define EGSConfigOTAAutoUpdate 0x00000001 - -/** -* EGSConfigAutoRedial is on/off setting for Automatic redial. -* When it is set on in TGeneralSettingsLocalVariantFlags -* automatic redial is enabled. -*/ -#define EGSConfigAutoRedial 0x00000002 - -/** -* EGSConfig2G3GNetworkIcon is on/off setting for 2G/3G network icon display. -* When it is set ON in KGeneralSettingsLVFlags -* display of 2G/3G icon in network selection list is enabled. -* Used in GSM/WCDMA builds ONLY. -*/ -#define EGSConfig2G3GNetworkIcon 0x00000004 - -/** -* EGSConfigPowerSaveLed is on/off setting for Power Save LED mode setting. -* When it is set ON in KGeneralSettingsLVFlags -* Power Save LED mode item is displayed in the Display settings. -*/ -#define EGSConfigPowerSaveLed 0x00000008 - -/** -* EGSConfigRestrictedSendCallerId is on/off setting for Restricted Send -* Caller ID setting. -* When it is set ON in KGeneralSettingsLVFlags -* Send Caller ID "Set by network" mode item is hidden in the Call settings. -*/ -#define EGSConfigRestrictedSendCallerId 0x00000010 - -/** -* EGSConfigSecureSendCallerId is on/off setting for Secure Send Caller ID -* setting. -* When it is set ON in KGeneralSettingsLVFlags -* Send Caller ID mode item can only be changed in the Call settings -* if a valid security code is entered. -*/ -#define EGSConfigSecureSendCallerId 0x00000020 - -/** -* EGSConfigNoAutoToAutoNetworkSearch is on/off setting for Network search when -* the network selection setting is Automatic and the user selects Automatic -* again. This contradicts the Telefonica request that this should be disabled. -* -* If this value is set, auto-to-auto net search is disabled == Telefonica. -* -* Default: Automatic to Automatic Network search is enabled = 0. -*/ -#define EGSConfigNoAutoToAutoNetworkSearch 0x00000040 - -/** -* EGSConfigOperatorIdle is on/off setting for enabling Operator Idle when -* this is been supported by the operator. -* If this value is set, The user can use the Operator Idle -* instead of Active Idle. -* This feature is Operator Specific -*/ -#define EGSConfigOperatorIdle 0x00000080 - - -#endif // GENERALSETTINGSVARIANT_HRH - -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/MGSSettingPSObserver.h --- a/gsprofilesrv_plat/settings_framework_api/inc/MGSSettingPSObserver.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,52 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Observer interface for indicating publish and subscribe -* setting changes -* -*/ - - - - -#ifndef MGSSETTINGPSOBSERVER_H -#define MGSSETTINGPSOBSERVER_H - -// INCLUDES -#include - -// CLASS DECLARATION - -/** -* Observer interface for indicating setting changes -* -* @lib GSTelPlugin -* @since 3.1 -*/ -class MGSSettingPSObserver - { - public: // New functions - - /** - * Handler for setting changed event - * @param aUid uid of setting - * @param aId id of setting - * @param aStatus status of completed AO operation - */ - virtual void HandleNotifyPSL( const TUid aUid, const TInt& aKey, - const TRequestStatus& aStatus ) = 0; - }; - -#endif // MGSSETTINGPSOBSERVER_H - -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/inc/MGSWatchDog.h --- a/gsprofilesrv_plat/settings_framework_api/inc/MGSWatchDog.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,96 +0,0 @@ -/* -* Copyright (c) 2007 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: -* -*/ - - - -#ifndef GSWATCHDOG_INTERFACE_H -#define GSWATCHDOG_INTERFACE_H - -// System includes -#include - -// CONSTANTS - -// CLASS DECLARATION - -/** -* MGSWatchDog is responsible for quarantining plugins and updating blacklist -* for crashing GS plugins. This is the class responsible for keeping GS -* application functional even if some plugin to panics all the time. -* -* This is the interface for GSWatchDog. Client has no need to know the actual -* implementation as it is owned by GS application. -* -* @since Series60_3.2 -*/ -class MGSWatchDog - { - public: // New - - /** - * Adds plugin to quarantine. In case GS crashes, quarantined plugin - * will be blacklisted so it is not loaded in next GS run. Same plugin - * can be quarantined multiple times or even have several uid instances - * in quarantine if needed as long as all these are removed - * correspondingly. - * - * NOTE: Plugin must ALWAYS be removed from quarantine after plugin's - * function execution. - * 1. QuarantineL(). - * 2. Call quarantined plugin function. - * 3. RemoveFromQuarantineL(). - * - * @param aPluginUid uid of the quarantined plugin. - */ - virtual void QuarantineL( TUid aPluginUid ) = 0; - - /** - * Removes plugin from quarantine. In case plugin is not removed from - * quarantine before GS exits, the plugin will be blacklisted during - * next GS startup. - * - * @param aPluginUid uid of the plugin to be removed from quarantine. - */ - virtual void RemoveFromQuarantineL( TUid aPluginUid ) = 0; - - /** - * @return ETrue if GS exited cleanly last time. - * EFalse if GS crashed during last execution. - */ - virtual TBool WasCleanExitL() = 0; - - /** - * This must be called in all the cases GS exits normally. If GS panics, - * this will not be called resulting in banning of all quarantined - * plugins.Increments iRunsAfterCrash counter for blacklisted plugins. - * Sets iGSAppRunning to EFalse. - */ - virtual void ReportCleanExitL() = 0; - - /** - * Checks if plugin is in blacklist. This can be used to determine if - * plugin should be loaded. - * - * @return ETrue in case plugin is in blacklist and should not be loaded. - * EFalse in case plugin should not be loaded - */ - virtual TBool IsInBlackList( TUid aPluginUid ) = 0; - - }; - -#endif // GSWATCHDOG_INTERFACE_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/loc/gs.loc --- a/gsprofilesrv_plat/settings_framework_api/loc/gs.loc Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Common localization strings for General Settings -* -*/ - - - -// LOCALISATION STRINGS - -// **OPTIONS MENU - -//d:Command in Options list -//d:Opens the highlighted item -//l:list_single_pane_t1_cp2 -//w: -//r: 3.1 -// -#define qtn_set_options_open "Open" - -//d:Command in Options list -//d:Opens value changing dialog of highlighted item -//l:list_single_pane_t1_cp2 -//w: -//r: 3.1 -// -#define qtn_set_options_change "Change" - -// **IMAGE LOADING WAIT NOTE - -//d:Text for image loading wait note -//d:Shown when welcome note image or background image has been selected from image list -//l:popup_note_wait_window -//w: -//r:3.1 -// -#define qtn_set_loading_image "Loading the image..." - - -// **IMAGE ERROR INFORMATION NOTES - -//d:Text for image corrupted information note -//d:Shown when selected background or welcome note image is corrupted or in wrong format. -//l:popup_note_window -//w: -//r:3.1 -// -#define qtn_set_image_format_wrong "Image is corrupted or in wrong format. Can not be selected." - -//d:Text for image too large information note -//d:Shown when selected background or welcome note image is too large to be opened -// in memory -//l:popup_note_window -//w: -//r:3.1 -// -#define qtn_set_image_too_large "Image size is too large. Image can not be selected." - - -// End of File - - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_framework_api/settings_framework_api.metaxml --- a/gsprofilesrv_plat/settings_framework_api/settings_framework_api.metaxml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ - - - Settings Framework API - Loads device settings plug-ins. Provides extensions & utilities for plugins. - c++ - gssettingsuis - - - - - - - - - no - no - - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_launch_api/group/bld.inf --- a/gsprofilesrv_plat/settings_launch_api/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: File that exports the files belonging to -: Settings Launch API -* -*/ - - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -../inc/GSLauncher.h MW_LAYER_PLATFORM_EXPORT_PATH(gslauncher.h) - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_launch_api/inc/GSLauncher.h --- a/gsprofilesrv_plat/settings_launch_api/inc/GSLauncher.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,88 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Launches GS views. -* -*/ - - - - -#ifndef C_GSLAUNCHER_H -#define C_GSLAUNCHER_H - -#include -#include -#include - -/** - * Launches general settings with specific plug-in opened. - * Using this API, a client may request a general settings view to be shown. - * Implementation will launch general settings if it is not yet running. - * - * Example usage of the interface: - * @code - * CGSLauncher* l = CGSLauncher::NewLC(); - * l->LaunchGSViewL ( yourPluginUid, TUid::Uid(0), KNullDesC8 ); - * CleanupStack::PopAndDestroy(l); - * @endcode - * - * @lib gslauncher.lib - * @since S60 5.0 - */ -NONSHARABLE_CLASS(CGSLauncher) : public CBase - { - -public: - - /** - * Two-phased constructors. - */ - IMPORT_C static CGSLauncher* NewL(); - - IMPORT_C static CGSLauncher* NewLC(); - - - /** - * Destructor. - */ - virtual ~CGSLauncher(); - - /** - * Launches general settings with specific plug-in activated. - * Launching of plug-in's local views is not supported. - * General settings application is started if it's not running. - * Any application embedded into general settings will be closed. - * - * Needs capability: SwEvent - * - * @since S60 5.0 - * @param aTarget Target plug-in's view id. (CAknView::Id()) - * @param aCustomMessageId For client data. Passed to the plug-in. - * @param aCustomMessage For client data. Passed to the plug-in. - * @return none - */ - IMPORT_C void LaunchGSViewL( const TUid aTarget,const TUid aCustomMessageId - ,const TDesC8& aCustomMessage ); - - -protected: - -private: - - CGSLauncher(); - - void ConstructL(); - }; - -#endif // C_GSLAUNCHER_H diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_launch_api/settings_launch_api.metaxml --- a/gsprofilesrv_plat/settings_launch_api/settings_launch_api.metaxml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ - - -Settings launch API -Launches general settings with spesific view opened. - -c++ -gssettingsuis - - - - -no -no - - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_listbox_api/group/bld.inf --- a/gsprofilesrv_plat/settings_listbox_api/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2006 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: File that exports the files belonging to -: Settings listbox API -* -*/ - - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../inc/GSListBox.h MW_LAYER_PLATFORM_EXPORT_PATH(gslistbox.h) diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_listbox_api/inc/GSListBox.h --- a/gsprofilesrv_plat/settings_listbox_api/inc/GSListBox.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,257 +0,0 @@ -/* -* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* class description for CGSListBox & CGSListBoxItemTextArray. -* -*/ - - - -#ifndef GS_LIST_BOX_H -#define GS_LIST_BOX_H - -#include -#include -#include -#include - -class CAknRadioButtonSettingPage; -class CEikListBox; - - -/*================================================ -* CGSListboxEntry: class to map feature->item index when selected -* from a listbox. This is required when there are features which are -* dynamically shown/hidden. -================================================*/ -class CGSListboxEntry : public CBase - { - public: - IMPORT_C static CGSListboxEntry* NewLC( TResourceReader& aReader ); - IMPORT_C static CGSListboxEntry* NewLC( TInt aFeatureId ); - IMPORT_C static CGSListboxEntry* NewLC( - TUint32 aResId, CCoeEnv& aEnv, TInt aFeatureId ); - IMPORT_C ~CGSListboxEntry(); - - public: // Accessors - IMPORT_C TInt FeatureId() const; - IMPORT_C const TDesC& Caption() const; - IMPORT_C TInt Type() const; - - public: // Manipulators - IMPORT_C void SetDynamicTextL( const TDesC& aText ); - IMPORT_C void SetDynamicTextDoublePaneL( const TDesC& aText ); - - private: - CGSListboxEntry(); - void ConstructL( TResourceReader& aReader ); - void ConstructL( TUint32 aResId, CCoeEnv& aEnv, TInt aFeatureId ); - - private: - inline TInt StaticTextLength() const { return iStaticTextLength; } - - private: - - /** - * The length of the static text which does not change - */ - TInt iStaticTextLength; - - /** - * The static text and dynamic text combined. We can always - * change the dynamic part due to the fact that we know - * the length (prefix) of the static part. - */ - HBufC* iCaption; - - /** - * One of either EGSListBoxItemTypeIsAlwaysVisible or - * EGSListBoxItemTypeIsDynamic - */ - TInt iType; - - /** - * The id of this feature - */ - TInt iFeatureId; - - /** - * Maximum Length of the Dynamic text which doesnot change.. - * This has been added after inclusion Double Pane List Box - */ - TInt iDynamicTextSize; - }; - - - -/*================================================ -================================================*/ -class CGSItemTextArray : public CBase, public MDesCArray - { - public: - enum TVisibility - { - EInvisible = 0, - EVisible = 1 - }; - - public: - IMPORT_C static CGSItemTextArray* NewL( - TUint32 aResId, - CCoeEnv& aEnv ); - ~CGSItemTextArray(); - - protected: - CGSItemTextArray(); - void ConstructL( TUint32 aResId, CCoeEnv& aEnv ); - void ConstructL( TUint32 aResId, CCoeEnv& aEnv, TInt aCount ); - - public: // From MDesCArray - IMPORT_C TInt MdcaCount() const; - IMPORT_C TPtrC MdcaPoint( TInt aIndex ) const; - - public: // API - - /** - * Used to add dynamic text to the end of an existing model item - */ - IMPORT_C void SetDynamicTextL( TInt aFeatureId, - const TDesC& aAdditionalText ); - - /** - * Used to add dynamic text to the end of an existing model item - * When Double Pane List box is used CAknDoubleStyleListBox - */ - IMPORT_C void SetDynamicTextDoublePaneL( TInt aFeatureId, - const TDesC& aAdditionalText ); - - /** - * Specify that this item should be visible / invisible in the - * iCurrentlyDisplayedEntries array - */ - IMPORT_C void SetItemVisibilityL( TInt aFeatureId, - TVisibility aVisibility ); - - /** - * Access the id of the currently selected feature - */ - IMPORT_C virtual TInt CurrentFeature() const; - - /** - * Set the currently selected feature id - */ - IMPORT_C TInt IndexForFeatureIdL(TInt aFeatureId) const; - - /** - * Returns the feature id corresponding to an index - */ - IMPORT_C TInt FeatureIdByIndex(TInt aIndex) const; - - /** - * - */ - IMPORT_C const CGSListboxEntry* FeatureByIdL( TInt aFeatureId ) const; - - /** - * - */ - IMPORT_C static HBufC* GetItemCaptionFromFeatureIdLC(TUint32 aResourceId, TInt aFeatureId, CCoeEnv& aCone); - - - private: - static TBool CompareEntries( const CGSListboxEntry& aLeft, - const CGSListboxEntry& aRight ); - - - protected: - - /** - * All the entries which may potentially be contained within the listbox - * model. This array is owned and destroyed by this class. - */ - RPointerArray< CGSListboxEntry > iAllEntries; - - /** - * The entries which are currently displayed within the listbox. These - * pointers are actually owned in the iAllEntries array and therefore - * this array must not be 'ResetAndDestroyed()' (but rather just Reset()) - * from within this class' destructor. - */ - RPointerArray< CGSListboxEntry > iCurrentlyDisplayedEntries; - }; - - -/*================================================ -================================================*/ -class CGSRadioButtonSettingPageItemTextArray : public CGSItemTextArray - { - public: - IMPORT_C static CGSRadioButtonSettingPageItemTextArray* NewL( - TUint32 aResId, - CCoeEnv& aEnv, - CAknRadioButtonSettingPage* aSettingPage = NULL - ); - - private: - CGSRadioButtonSettingPageItemTextArray( CAknRadioButtonSettingPage* aSettingPage ); - - public: // FROM CGSItemTextArray - IMPORT_C TInt CurrentFeature() const; - - public: // New API - IMPORT_C void SetRadioButtonSettingPage( CAknRadioButtonSettingPage& aPage ); - - private: - - /** - * Underlying setting page - */ - CAknRadioButtonSettingPage* iSettingPage; - }; - - - -/*================================================ -* CGSListBoxItemTextArray: This class acts as a wrapper class for -* CGSListboxEntry. Instance of this class is created from the -* calling function. -================================================*/ -class CGSListBoxItemTextArray : public CGSItemTextArray - { - public: - IMPORT_C static CGSListBoxItemTextArray* NewL( - TUint32 aResId, - CEikListBox& aListBox, - CCoeEnv& aEnv ); - IMPORT_C static CGSListBoxItemTextArray* NewL( - TUint32 aResId, - CEikListBox& aListBox, - CCoeEnv& aEnv, - TInt aCount ); - - private: - CGSListBoxItemTextArray( CEikListBox& aListBox ); - - public: // FROM CGSItemTextArray - IMPORT_C TInt CurrentFeature() const; - - private: - - /** - * Underlying listbox - */ - CEikListBox& iListBox; - }; - -#endif //GS_LIST_BOX_H diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_listbox_api/settings_listbox_api.metaxml --- a/gsprofilesrv_plat/settings_listbox_api/settings_listbox_api.metaxml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ - - - Settings listbox API - Helper to show listbox in device settings plugins - c++ - gssettingsuis - - - - - - - - - no - no - - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_plugin_api/group/bld.inf --- a/gsprofilesrv_plat/settings_plugin_api/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2006 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: File that exports the files belonging to -: Settings Plugin API -* -*/ - - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../inc/GSPluginInterface.h MW_LAYER_PLATFORM_EXPORT_PATH(gsplugininterface.h) -../inc/GSFWViewUIDs.h MW_LAYER_PLATFORM_EXPORT_PATH(gsfwviewuids.h) diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_plugin_api/inc/GSFWViewUIDs.h --- a/gsprofilesrv_plat/settings_plugin_api/inc/GSFWViewUIDs.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: View UIDs for GS FW -* These UIDs are used to identify the parent of the view/plugin. The same UID -* is used for both plugin and view identification. -* -*/ - - -#ifndef GSFWVIEWUIDS_H -#define GSFWVIEWUIDS_H - - -// Use this UID if plugin belongs to Main view: -const TUid KGSMainViewUid = { 0x1020723B }; - - -// No item is selected in the container's listbox -const TUid KGSNoneSelected = { 0x00000000 }; - -// UIDs used by the sub-view plugins: - -// Use this UID if plugin belongs to General view: -const TUid KGSGenPluginUid = { 0x10207237 }; - -// Use this UID if plugin belongs to Telephony view: -const TUid KGSTelPluginUid = { 0x1020723D }; - -// Use this UID if plugin belongs to Connection view: -const TUid KGSConPluginUid = { 0x10207250 }; - -// Use this UID if plugin belongs to Applications view: -const TUid KGSAppsPluginUid = { 0x10207239 }; - -// Use this UID if plugin belongs to Personalisation view: -const TUid KGSPrslnPluginUid = { 0x10207252 }; - -// Use this UID if plugin belongs to Security view: -const TUid KGSSecurityPluginUid = { 0x1020743A }; - -// Use this UID if plugin belongs to Standby view: -const TUid KGSStandbyPluginUid = { 0x1020743F }; - -// UID of General Settings application. -// This UID is used for accessing the help IDs controlled by GS help files -const TUid KUidGS = { 0x100058EC }; - -// Use this UID if plugin belongs to Packet Data: -const TUid KGSPDataPluginUid = { 0x1020724E }; - -// Use this UID if plugin belongs to Interaction: -const TUid KGSInteractionPluginUid = { 0x10283343 }; - -// Use this UID if plugin belongs to Administration: -const TUid KGSAdminPluginUid = { 0x10283341 }; - -// Use this UID if plugin belongs to Device Management: -const TUid KGSDeviceManagementPluginUid = { 0x10283317 }; - -// Use this UID if plugin belongs to Device Updates: -const TUid KGSDeviceUpdatesPluginUid = { 0x1028331B }; - -// Use this UID if plugin belongs to Synchronisation view: -const TUid KGSSynchronisationPluginUid = { 0x10283319 }; - -// Use this UID if plugin belongs to Installations view: -const TUid KGSInstallationsPluginUid = { 0x10283321 }; - -#endif // GSFWVIEWUIDS_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_plugin_api/inc/GSPluginInterface.h --- a/gsprofilesrv_plat/settings_plugin_api/inc/GSPluginInterface.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,420 +0,0 @@ -/* -* Copyright (c) 2005-2008 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: Header file for CGSPluginInterface class. -* -*/ - - -#ifndef GSPLUGININTERFACE_H -#define GSPLUGININTERFACE_H - -// System includes -#include // For default icons -#include - -#include -#include -#include -#include -#include -#include - -// Constant for plugin interface: -const TUid KGSPluginInterfaceUid = { 0x10207236 }; - -// Constant for listbox icon type: -const TUid KGSIconTypeLbxItem = { 0x10207357 }; -// Constant for listbox settings item icon type: -const TUid KGSIconTypeLbxSettingsItem = { 0x102750C5 }; -// Constant for tab icon type: -const TUid KGSIconTypeTab = { 0x10207358 }; -// Constant for icon in D-Column: -const TUid KGSIconTypeDColumn = { 0x10207359 }; - - -// Constant for indexing (iOrder): -const TInt KGSPluginNotIndexed = -1; - -_LIT( KGSDefaultIconFileName, "Z:Gsfwicon.mbm" ); - -/** -* This enum is used for defining custom operations types. -*/ -enum TGSCustomOperationType - { - // This operation type returns current status of the plugin's view. - // If the plugin's view is active, ETrue will be returned, otherwise - // EFalse. Currently supported by GSStandbyPlugin. - EGSCustomOperationViewActive = 1 - }; - -/** -* Used by GetValue(). These are the keys for retrieving a specific -* value. This enum can be extended to provide other values as well as -* long as the original keys are not changed. -*/ -enum TGSPluginValueKeys - { - // Value for this key is the localized string to be shown in the second row - // of a listbox item. Plugins providing second row of text should provide - // value for this key. Second row of list item text is used for following - // listbox types: - // - EGSListBoxTypeSingleLarge - // - EGSListBoxTypeDouble2Large. - // For plugins listed in these listbox types, second row value can either - // be defined or left empty. - EGSPluginKeySettingsItemValueString = 1, - // Localized string to be used in case of custom MSK and menu activation - // item. See TGSMenuActivationItems. - EGSCustomMenuActivationText - }; - -/** -* Used by PluginItemType(). These enumerations define the desired appearance -* of the plugin in a parent plugin's listbox. Please notice that the parent -* listbox type cannot be altered by a child plugin so plugins using these must -* be aware of the parent plugin listbox type. Safest alternative is to leave -* default implementation for ItemType() in which case EGSItemTypeSingleLarge is -* used. This should fit most of the listbox types. Additionall types can be -* implemented and defined as long as the old enumerations will not be changed. -* -* Different type of items are handled differently: -* - In case of CAknView type items, such as EGSItemTypeSingleLarge and -* EGSItemTypeSetting, the plugin's DoActivate() is called when user selects -* the item. -* - In case of items supporting dialogs, such as EGSItemTypeSettingDialog and -* EGSItemTypeSettingIconDialog, HandleSelection() is called instead of -* DoActivate(). -* -* Item types can be described in a matrix: -* X: Normal list tems with large icon, -* settings items, -* settings items with icon -* Y: Items providing CAknView - activated by DoActivate(), -* items providing dialog - activated by HandleSelection() -* -* All combinations of these are not allowed/supported. -*/ -enum TGSListboxItemTypes - { - // CAknSingleLargeStyleListBox item: - // Caption of the item is a descriptor from GetCaptionL(). - // Icon is from CreateIconL( KGSIconTypeLbxItem ). - EGSItemTypeSingleLarge = 1, // Default - // CAknSettingStyleListBox item providing a CAknView: - // 1st row content is a descriptor from GetCaptionL() - // 2nd row content is a descriptor (can be empty string id needed) from - // GetValue( ..., EGSPluginKeySettingsItemValueString ). - EGSItemTypeSetting, - // CAknSettingStyleListBox item providing a CAknView: - // 1st row content is a descriptor from GetCaptionL() - // 2nd row content is a icon from CreateIconL( KGSIconTypeLbxSettingsItem ) - // GetValue(, EGSPluginKeySettingsItemValueString ). - EGSItemTypeSettingIcon, - // CAknSettingStyleListBox item launching a dialog: - // 1st row content is a descriptor from GetCaptionL() - // 2nd row content is a descriptor (can be empty string id needed) from - // GetValue( ..., EGSPluginKeySettingsItemValueString ). - EGSItemTypeSettingDialog, - // CAknSingleLargeStyleListBox item launching a dialog: - // Caption of the item is a descriptor from GetCaptionL(). - // Icon is from CreateIconL( KGSIconTypeLbxItem ). - EGSItemTypeSingleLargeDialog - }; - -/** -* These are used to define the type of the menu item which opens the selected -* plugin. By default, parent plugin's menu has 'Open' item for child plugins. -* If parent plugin's menu must have 'Change' instead of 'Open' for activating -* the plugin, use EGSMenuActivationItemChange. This functionality is just for -* the visual aspects for views in GS - requested by UI design. Plugins are -* handled logically similarly regardless this value. -*/ -enum TGSMenuActivationItems - { - // Default - will use the item defined in menu resource. - EGSMenuActivationItemDefault = 0, - // Menu should contain 'Open' Item. - EGSMenuActivationItemOpen = 1, - // Menu should contain 'Change' item. - EGSMenuActivationItemChange, - // Menu should contain custom text which is defined by GetValue() function: - // GetValue( EGSCustomMenuActivationText, ... ); - // NOTE: When this custom menu item is selected, used menu command ID is - // EGSCmdAppChange. This might be checked in for example plugin's - // HandleCommand(). If text is empy, MSK is empty and there's no - // corresponding item in options menu. - EGSMenuActivationItemCustom - }; - -/** -* Selection types. Used in HandleSelection(). -*/ -enum TGSSelectionTypes - { - // User selected the item by pressing selection key. - EGSSelectionBySelectionKey = 1, - // User selected the item by selecting a command from the menu. - EGSSelectionByMenu - }; - -/** -* Interface class for GS plugin. All GS plugins will implement this class. -* -* The main functionality GS framework will use from CAknView is: -* -DoActivate() -* -DoDeactivate() -* -Id() -* functions. -* -* Id() function must return the value of the plugin implementation UID. This -* means that the main view of the plugin will have the same UID as the plugin -* implementation. This will prevent multiple plugins from having same view -* UIDs as their main view. If plugin has more views, it is plugin's -* responsibility to ensure that the UIDs of the other views are unique. This -* can be done for example reserving a unique UID from Symbian. -* -* Most of the functions have implementation using default values. Override -* functions if different values or implementations are desired. -* -* CGSPluginInterface UID = 0x10207236 -* -* See GSFWViewUIDs.h for plugin UIDs. -* -* Plugin implementation UID will be used when defining the parent view of a -* plugin. If plugin belongs to application settings view, set the -* ApplicationSettingsView plugin implementation Uid as a value in the plugin's -* default_data field in plugin's implementation info resource file. -* -* Needed libraries (at least): -* GSEcomPlugin.lib -* GSFramework.lib -* egul.lib -* aknskins.lib -* efsrv.lib -* -* @lib GSFramework.lib -* @since Series60_3.1 -*/ -class CGSPluginInterface: public CAknView - { - - // CGSPluginLoader accesses iOrder which should not be accessed outside. - friend class CGSPluginLoader; - - public: // Constructors & destructors - - /** - * Creates new GS plugin having the given UID. - * Uses Leave code KErrNotFound if implementation is not found. - * - * @param aImplementationUid Implementation UID of the plugin to be - * created. - * @param aInitParams Plugin's initialization parameters. Make sure you know - * what the plugin expects as initialization parameters. This - * should be an agreement between the plugin client and the - * plugin. Parameter can be used for example as sharing a common - * data model between multiple plugins. - */ - IMPORT_C static CGSPluginInterface* NewL( - const TUid aImplementationUid, - TAny* aInitParams ); - - /** - * Destructor - */ - IMPORT_C ~CGSPluginInterface(); - - public: // New - - /** - * Method for getting caption of this plugin. This should be the - * localized name of the settings view to be shown in parent view. - * - * @param aCaption pointer to Caption variable - */ - virtual void GetCaptionL( TDes& aCaption ) const = 0; - - /** - * Function for getting plugin's value for a certain key. - * Override to provide own functionality. - * - * @param aKey Key for the value to be retrieved. - * @parem aValue Value for the given gey in TDes format. - */ - IMPORT_C virtual void GetValue( const TGSPluginValueKeys aKey, - TDes& aValue ); - - /** - * This function is called in case plugin is an item in a settings - * listbox and user selects the item. Override this if plugin needs to - * provide functionality for item selection. - * - * Default implementation activates the plugin. - * @param aSelectionType Defines how user selected the plugin. See - * TGSSelectionTypes. - */ - IMPORT_C virtual void HandleSelection( - const TGSSelectionTypes aSelectionType ); - - /** - * This defines the appearance of the plugin in a parent plugin listbox. - * Default value is EGSItemTypeSingleLarge. Please notice that the - * parent listbox type cannot be defined by a child plugin so plugins - * using these must be aware of the parent plugin listbox type. - * - * @return Desired listbox presentation and functional type for the - * plugin. - */ - IMPORT_C virtual TGSListboxItemTypes ItemType(); - - /** - * This function is only used for child plugins. Defines the dynamic - * menu item that activates this plugin from parent plugin. This menu - * item will override the item defined in resource file. Normally - * 'Open' is used to open the child plugin. Override this to change the - * activation to for example 'Change'. TGSMenuActivationItems defines the - * different possible menu items that can be used to open this plugin. - * - * Note: This also defines MSK. Menu activation item and MSK have - * identical label and behaviour. An exception to this is - * when custom text is empty: in this case MSK is empty but there - * is no item in options menu (no empty item in menu). - * - * @ return Type of the menu item and MSK that should activate this - * child plugin from parent plugin. - */ - IMPORT_C virtual TGSMenuActivationItems MenuActivationItem(); - - /** - * Creates a new icon of desired type. Override this to provide custom - * icons. Othervise default icon is used for KGSIconTypeLbxItem. Other - * icons are empty. Ownership of the created icon is transferred to the - * caller. - * NOTE: Return NULL if icon is not to be displayed. - * - * Icon type UIDs (use these defined constants): - * KGSIconTypeLbxItem - ListBox item icon. - * KGSIconTypeLbxSettingsItem - Settings item icon. - * KGSIconTypeTab - Tab icon. - * KGSIconTypeDColumn - Small icon in D-column. - * - * @param aIconType UID Icon type UID of the icon to be created. - * @return Pointer of the icon or NULL. - */ - IMPORT_C virtual CGulIcon* CreateIconL( const TUid aIconType ); - - /** - * Method for reading the ID of the plugin provider category. See - * TGSPluginProviderCategory. PluginProviderCategory can be used for - * sorting plugins. - * - * Default value is EGSPluginProvider3rdParty. Override this function - * to change the category. - * - * @return Plugin provider category ID defined by - * TGSPluginProviderCategory - */ - IMPORT_C virtual TInt PluginProviderCategory() const; - - /** - * Reserved for future use/plugin's custom functionality. This can be - * overwritten if plugin needs to have custom functionality which cannot - * be fulfilled otherwise. - * - * Use TGSCustomOperationType enumeration as aParam1 to - * define operation type. - */ - IMPORT_C virtual TAny* CustomOperationL( TAny* aParam1, TAny* aParam2 ); - - /** - * Method for checking, if plugin should be visible and used in GS FW. - * (for example shown in listbox of the parent view). - * - * On default plugin is visible. Overwrite this function to enable or - * disable your plugin dynamically. - * - * @return ETrue if plugin should be visible in GS. - * @return EFalse if plugin should not be visible in GS. - */ - IMPORT_C virtual TBool Visible() const; - - /** - * Resets plugin's selected item index if this is supported. Default - * implementation does nothing. This is needed when navigating from - * child plugin back to parent plugin. In this case child plugin should - * reset selected index in its listbox. - */ - IMPORT_C virtual void ResetSelectedItemIndex(); - - /** - * Sets the Index of the plugin in listbox. Used for CGSPluginLoader. Default - * value is KGSPluginNotIndexed which means not ordered. This value is - * read, if defined, from the opaque_data field of the plugin's resource - * definition. Index starts from 0. - */ - IMPORT_C void SetOrder( TInt aOrder ); - - /** - * In case plug-in is loaded outside GS application and CGSPluginLoader, - * cleaning up plug-in's ECOM resources must be done manually. - * - * Example: - * CGSPluginInterface* myPlugin = CGSPluginInterface::NewL(...); - * REComSession::DestroyedImplementation( myPlugin->GetEcomDestructorKey() ); - * delete myPlugin; - * - * @return UID of the plug-in instance which can be used to free dependent ECOM resources. - */ - IMPORT_C TUid GetEcomDestructorKey(); - - protected: // New - - /** - * C++ constructor. - */ - IMPORT_C CGSPluginInterface(); - - public: // Enumerations - - /** - * Category of the plugin provider. Provider's type affects the sorting - * of the plugins. Type EGSPluginProvider3rdParty plugins are allowed - * to be loaded only by Applications-plugin. Other categories may exist - * but they should be used only internally. - **/ - enum TGSPluginProviderCategory - { - EGSPluginProviderOEM = 1, - EGSPluginProviderOperator = 2, - EGSPluginProvider3rdParty = 3 - }; - - private: // Data - - // ECOM plugin instance UID. - TUid iDtor_ID_Key; - - /** - * Index of the plugin in listbox. Used for CGSPluginLoader. Default - * value is KGSPluginNotIndexed which means not ordered. This value is - * read, if defined, from the opaque_data field of the plugin's resource - * definition. Index starts from 0. - */ - TInt iOrder; - - }; - -#endif // GSPLUGININTERFACE_H -//End of file diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_plat/settings_plugin_api/settings_plugin_api.metaxml --- a/gsprofilesrv_plat/settings_plugin_api/settings_plugin_api.metaxml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ - - - Settings Plugin API - API for the device settings plug-ins. - c++ - gssettingsuis - - - - - - - - - no - no - - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/group/bld.inf --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ b/gsprofilesrv_pub/profiles_engine_wrapper_api/group/bld.inf Thu Jul 22 16:35:53 2010 +0100 @@ -39,8 +39,3 @@ ../inc/MProEngToneSettings.h MW_LAYER_PUBLIC_EXPORT_PATH(MProEngToneSettings.h) ../inc/MProEngProfileNameArrayObserver.h MW_LAYER_PUBLIC_EXPORT_PATH(MProEngProfileNameArrayObserver.h) ../inc/MProEngEngine.h MW_LAYER_PUBLIC_EXPORT_PATH(MProEngEngine.h) -//Since 10.1 -../inc/MProEngActiveSettingsObserver.h MW_LAYER_PUBLIC_EXPORT_PATH(MProEngActiveSettingsObserver.h) -../inc/MProEngMasterSettingsObserver.h MW_LAYER_PUBLIC_EXPORT_PATH(MProEngMasterSettingsObserver.h) -../inc/MProEngNotifyHandler2.h MW_LAYER_PUBLIC_EXPORT_PATH(MProEngNotifyHandler2.h) -../inc/ProEngFactory2.h MW_LAYER_PUBLIC_EXPORT_PATH(ProEngFactory2.h) \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/inc/MProEngActiveSettingsObserver.h --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/inc/MProEngActiveSettingsObserver.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,82 +0,0 @@ -/* -* 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: Abstract interface for handling the active profile events. -* -*/ - - -#ifndef MPROENGACTIVESETTINGSOBSERVER_H -#define MPROENGACTIVESETTINGSOBSERVER_H - -// INCLUDES -#include - -// FORWARD DECLARATIONS -class MProEngActiveSettingsObserverExt; - -// CLASS DECLARATION - -/** -* Active profile settings modification observer interface. -* Implement this interface to get notifications of changes in the active profile settings -* data. -* -* @lib ProfileEngine.lib -* @since 10.1 -*/ -class MProEngActiveSettingsObserver - { - public: // New functions - - /** - * Abstract method for handling active profile settings modification event. - * This method is called when the current active profile settings has been - * modified some way. (e.g. switch active profile, change active profile) - * - * @since Series 10.1 - */ - virtual void HandleActiveSettingsModifiedL() = 0; - - /** - * Error handler for handling the errors in the active profile settings - * modification notification process. If HandleActiveSettingsModifiedL() - * leaves, this method is called with the leave code. This method has - * default empty implementation. - * @since 10.1 - * @param aError the code of the error which occurred during - * notification process. - */ - virtual void HandleActiveSettingsNotificationError( - TInt /* aError */ ) {}; - - protected: - - /** - * Destructor. - */ - virtual ~MProEngActiveSettingsObserver() {} - - private: // Extension interface - - /** - * This member is internal and not intended for use. - */ - virtual MProEngActiveSettingsObserverExt* Extension() { return NULL; } - - }; - -#endif // MPROENGACTIVESETTINGSOBSERVER_H - -// End of File - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/inc/MProEngMasterSettingsObserver.h --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/inc/MProEngMasterSettingsObserver.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -/* -* 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: Abstract interface for handling the master settings change events. -* -*/ - - - -#ifndef MPROENGMASTERSETTINGSOBSERVER_H -#define MPROENGMASTERSETTINGSOBSERVER_H - -// INCLUDES -#include - -// FORWARD DECLARATIONS -class MProEngMasterSettingsObserverExt; - -// CLASS DECLARATION - -/** -* master settings modification observer interface. -* Implement this interface to get notifications of changes in the master settings -* data. -* -* @lib ProfileEngine.lib -* @since Series 10.1 -*/ -class MProEngMasterSettingsObserver - { - public: // New functions - - /** - * Abstract method for handling master settings modification event. - * This method is called when the master settings has been - * modified some way. - * - * @since Series 10.1 - */ - virtual void HandleMasterSettingsModifiedL() = 0; - - /** - * Error handler for handling the errors in the master settings - * modification notification process. If HandleMasterSettingsModifiedL() - * leaves, this method is called with the leave code. This method has - * default empty implementation. - * @since 10.1 - * @param aError the code of the error which occurred during - * notification process. - */ - virtual void HandleMasterSettingsNotificationError( - TInt /* aError */ ) {}; - - protected: - - /** - * Destructor. - */ - virtual ~MProEngMasterSettingsObserver() {} - - private: // Extension interface - - /** - * This member is internal and not intended for use. - */ - virtual MProEngMasterSettingsObserverExt* Extension() { return NULL; } - - }; - -#endif // MPROENGMASTERSETTINGSOBSERVER_H - -// End of File - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/inc/MProEngNotifyHandler2.h --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/inc/MProEngNotifyHandler2.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,113 +0,0 @@ -/* -* 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: Abstract interface for handling profile change notification -* -*/ - - - -#ifndef MPROENGNOTIFYHANDLER2_H -#define MPROENGNOTIFYHANDLER2_H - -// INCLUDES -#include - -// FORWARD DECLARATIONS -class MProEngNotifyHandler2Ext; -class MProEngActiveSettingsObserver; -class MProEngMasterSettingsObserver; - - -// CLASS DECLARATION - -/** -* Profiles change notification handler. -* This class is used for registration to get notifications about changes in -* Profiles data. -* -* @lib ProfileEngine.lib -* @since S60 3.1 -*/ -class MProEngNotifyHandler2 : public MProEngNotifyHandler - { - public: // New functions - - - /** - * Request notifications of active profile settings. The notifications are - * received as long as CancelActiveSettingsNotificationsL() or - * CancelAll() is called. If the client wants to change the observer, - * he should first cancel these notifications and then re-request them - * with the new observer instance. - * @since 10.1 - * @param aObserver Reference to the observer to be notified in the - * event of profile activation. - * @return KErrNone if succesful, KErrAlreadyExists if this notification - * handler is already used for requesting profile activation - * notifications. In other cases another system wide error code. - */ - virtual TInt RequestActiveSettingsNotificationsL( - MProEngActiveSettingsObserver &aObserver ) = 0; - - /** - * Request notifications of master settings. The notifications are - * received as long as CanceltMasterSettingsNotificationsL() or - * CancelAll() is called. If the client wants to change the observer, - * he should first cancel these notifications and then re-request them - * with the new observer instance. - * @since 10.1 - * @param aObserver Reference to the observer to be notified in the - * event of profile activation. - * @return KErrNone if succesful, KErrAlreadyExists if this notification - * handler is already used for requesting profile activation - * notifications. In other cases another system wide error code. - */ - virtual TInt RequestMasterSettingsNotificationsL( - MProEngMasterSettingsObserver &aObserver ) = 0; - - - /** - * Cancel the registration for receiving notifications about the active - * settings modification events. - * @since 10.1 - */ - virtual void CancelActiveSettingsNotificationsL() = 0; - - /** - * Cancel the registration for receiving notifications about the master - * settings modification events. - * @since 10.1 - */ - virtual void CancelMasterSettingsNotificationsL() = 0; - - public: - - /** - * Destructor. - */ - virtual ~MProEngNotifyHandler2() {} - - private: // Extension interface - - /** - * This member is internal and not intended for use. - */ - virtual MProEngNotifyHandler2Ext* Extension2() { return NULL; } - - }; - -#endif // MPROENGNOTIFYHANDLER2_H - -// End of File - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/inc/ProEngFactory2.h --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/inc/ProEngFactory2.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,77 +0,0 @@ -/* -* 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: Factory for Profiles Engine Wrapper. -* -*/ - - - -#ifndef PROENGFACTORY2_H -#define PROENGFACTORY2_H - -// INCLUDES -#include - -// FORWARD DECLARATIONS - -class MProEngNotifyHandler2; - -// CLASS DECLARATION - -/** -* Factory for Profiles Engine Wrapper. -* You can create new instances of Profiles Engines, Notification Handlers and -* Alert Tone Seekers by using this factory.

-* Example: -* @code -* // Create a new instance of Profiles Engine: -* MProEngEngine* engine = -* ProEngFactory2::NewEngineLC(); -* -* // Create a new instance of Notification Handler: -* MProEngNotifyHandler* notifyHandler = -* ProEngFactory2::NewNotifyHandlerL(); -* -* // Create a new instance of Alert Tone Seeker: -* MProEngAlertToneSeeker* toneSeeker = -* ProEngFactory2::NewAlertToneSeekerL(); -* @endcode -* -* @lib ProfileEngine.lib -* @since 10.1 -*/ -class ProEngFactory2 : public ProEngFactory - { - public: // New functions - /** - * Create a new instance of Profiles Notification Handler 2. - * @since 10.1 - * @return New instance of Notification Handler. - * Ownership is transferred to the client application. - */ - IMPORT_C static MProEngNotifyHandler2* NewNotifyHandler2L(); - - private: - - // Prohibit C++ default constructor. - ProEngFactory2(); - // Prohibit Destructor. - ~ProEngFactory2(); - - }; - -#endif // PROENGFACTORY2_H - -// End of File - diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/group/ProEngWrapAPI.mmp --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/group/ProEngWrapAPI.mmp Fri Jun 11 16:24:54 2010 +0100 +++ b/gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/group/ProEngWrapAPI.mmp Thu Jul 22 16:35:53 2010 +0100 @@ -11,15 +11,13 @@ * * Contributors: * -* Description: ?Description +* Description: BC test mmp for profile engine wrapper * */ -#if defined(__S60_) - // To get the OS_LAYER_SYSTEMINCLUDE-definition - #include -#endif +// To get the OS_LAYER_SYSTEMINCLUDE-definition +#include TARGET ProEngWrapAPI.dll TARGETTYPE dll @@ -29,28 +27,10 @@ DEFFILE ProEngWrapAPI.def -#ifdef SBSV2 USERINCLUDE ../inc - - #if defined(__S60_) - MW_LAYER_SYSTEMINCLUDE - #else // __S60_ not defined -SYSTEMINCLUDE /epoc32/include -SYSTEMINCLUDE /epoc32/include/internal - #endif // __S60_ - -#else // SBSV2 not defined -USERINCLUDE ../inc - - #if defined(__S60_) - MW_LAYER_SYSTEMINCLUDE - #else // __S60_ not defined -SYSTEMINCLUDE /epoc32/include -SYSTEMINCLUDE /epoc32/include/internal - #endif // __S60_ +MW_LAYER_SYSTEMINCLUDE SOURCEPATH ../src -#endif // SBSV2 SOURCE ProEngWrapAPI.cpp SOURCE ProEngWrapAPIBlocks.cpp CSchedulerUtility.cpp diff -r 572294aa6075 -r f48d04161a92 gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/group/ProEngWrapAPI_DoxyFile.txt --- a/gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/group/ProEngWrapAPI_DoxyFile.txt Fri Jun 11 16:24:54 2010 +0100 +++ b/gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/group/ProEngWrapAPI_DoxyFile.txt Thu Jul 22 16:35:53 2010 +0100 @@ -1,3 +1,20 @@ +/* +* Copyright (c) 2002-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 +* +*/ + # Doxyfile 1.4.1 #--------------------------------------------------------------------------- diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/BWINS/BackgroundImageU.DEF --- a/gssettingsuis/Gs/BWINS/BackgroundImageU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ -EXPORTS - ??1CGSBackgroundImage@@UAE@XZ @ 1 NONAME ; CGSBackgroundImage::~CGSBackgroundImage(void) - ?BackgroundImageL@CGSBackgroundImage@@QAEHXZ @ 2 NONAME ; int CGSBackgroundImage::BackgroundImageL(void) - ?DeleteImageL@CGSBackgroundImage@@QAEXABVTDesC16@@@Z @ 3 NONAME ; void CGSBackgroundImage::DeleteImageL(class TDesC16 const &) - ?GetPlnsStatus@CGSBackgroundImage@@QAEHXZ @ 4 NONAME ; int CGSBackgroundImage::GetPlnsStatus(void) - ?IsPersonalisationApplicationL@CGSBackgroundImage@@QAEXXZ @ 5 NONAME ; void CGSBackgroundImage::IsPersonalisationApplicationL(void) - ?NewL@CGSAsyncImageHandling@@SAPAV1@AAVRFs@@PAVMGSAsyncImageHandlingObserver@@ABVTDesC16@@@Z @ 6 NONAME ; class CGSAsyncImageHandling * CGSAsyncImageHandling::NewL(class RFs &, class MGSAsyncImageHandlingObserver *, class TDesC16 const &) - ?NewL@CGSBackgroundImage@@SAPAV1@XZ @ 7 NONAME ; class CGSBackgroundImage * CGSBackgroundImage::NewL(void) - ?SetBackgroundImageL@CGSBackgroundImage@@QAEXH@Z @ 8 NONAME ; void CGSBackgroundImage::SetBackgroundImageL(int) - ?SetBackgroundImagePathL@CGSBackgroundImage@@QAEXABVTDesC16@@@Z @ 9 NONAME ; void CGSBackgroundImage::SetBackgroundImagePathL(class TDesC16 const &) - ?SetBackgroundImagePathL@CGSBackgroundImage@@QAEXABVTDesC16@@AAVTDes16@@@Z @ 10 NONAME ; void CGSBackgroundImage::SetBackgroundImagePathL(class TDesC16 const &, class TDes16 &) - ?SetBackgroundImagePathL@CGSBackgroundImage@@QAEXABVTDesC16@@AAVTDes16@@W4TGSWallpaperType@@@Z @ 11 NONAME ; void CGSBackgroundImage::SetBackgroundImagePathL(class TDesC16 const &, class TDes16 &, enum TGSWallpaperType) - ?SetVTStillImagePathL@CGSBackgroundImage@@QAEXABVTDesC16@@AAVCGSAsyncImageHandling@@@Z @ 12 NONAME ; void CGSBackgroundImage::SetVTStillImagePathL(class TDesC16 const &, class CGSAsyncImageHandling &) - ?SetWelcomeNoteImageL@CGSBackgroundImage@@QAEXABVTDesC16@@AAVCGSAsyncImageHandling@@@Z @ 13 NONAME ; void CGSBackgroundImage::SetWelcomeNoteImageL(class TDesC16 const &, class CGSAsyncImageHandling &) - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/BWINS/GSEcomPluginU.DEF --- a/gssettingsuis/Gs/BWINS/GSEcomPluginU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -EXPORTS - ??0CGSPluginInterface@@IAE@XZ @ 1 NONAME ; CGSPluginInterface::CGSPluginInterface(void) - ??1CGSPluginInterface@@UAE@XZ @ 2 NONAME ; CGSPluginInterface::~CGSPluginInterface(void) - ?CreateIconL@CGSPluginInterface@@UAEPAVCGulIcon@@VTUid@@@Z @ 3 NONAME ; class CGulIcon * CGSPluginInterface::CreateIconL(class TUid) - ?CustomOperationL@CGSPluginInterface@@UAEPAXPAX0@Z @ 4 NONAME ; void * CGSPluginInterface::CustomOperationL(void *, void *) - ?GetValue@CGSPluginInterface@@UAEXW4TGSPluginValueKeys@@AAVTDes16@@@Z @ 5 NONAME ; void CGSPluginInterface::GetValue(enum TGSPluginValueKeys, class TDes16 &) - ?HandleSelection@CGSPluginInterface@@UAEXW4TGSSelectionTypes@@@Z @ 6 NONAME ; void CGSPluginInterface::HandleSelection(enum TGSSelectionTypes) - ?ItemType@CGSPluginInterface@@UAE?AW4TGSListboxItemTypes@@XZ @ 7 NONAME ; enum TGSListboxItemTypes CGSPluginInterface::ItemType(void) - ?NewL@CGSPluginInterface@@SAPAV1@VTUid@@PAX@Z @ 8 NONAME ; class CGSPluginInterface * CGSPluginInterface::NewL(class TUid, void *) - ?PluginProviderCategory@CGSPluginInterface@@UBEHXZ @ 9 NONAME ; int CGSPluginInterface::PluginProviderCategory(void) const - ?Visible@CGSPluginInterface@@UBEHXZ @ 10 NONAME ; int CGSPluginInterface::Visible(void) const - ?ResetSelectedItemIndex@CGSPluginInterface@@UAEXXZ @ 11 NONAME ; void CGSPluginInterface::ResetSelectedItemIndex(void) - ?MenuActivationItem@CGSPluginInterface@@UAE?AW4TGSMenuActivationItems@@XZ @ 12 NONAME ; enum TGSMenuActivationItems CGSPluginInterface::MenuActivationItem(void) - ?SetOrder@CGSPluginInterface@@QAEXH@Z @ 13 NONAME ; void CGSPluginInterface::SetOrder(int) - ?GetEcomDestructorKey@CGSPluginInterface@@QAE?AVTUid@@XZ @ 14 NONAME ; class TUid CGSPluginInterface::GetEcomDestructorKey(void) - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/BWINS/GSFrameworkU.DEF --- a/gssettingsuis/Gs/BWINS/GSFrameworkU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ -EXPORTS - ?SetDetails@CGSPluginWrapper@@QAEXVTUid@@@Z @ 1 NONAME ; void CGSPluginWrapper::SetDetails(class TUid) - ?SelectedPlugin@CGSParentPlugin@@QAEPAVCGSPluginInterface@@XZ @ 2 NONAME ; class CGSPluginInterface * CGSParentPlugin::SelectedPlugin(void) - ?SelectedItem@CGSBaseContainer@@UAEHXZ @ 3 NONAME ; int CGSBaseContainer::SelectedItem(void) - ?SetNaviPaneL@CGSBaseView@@MAEXXZ @ 4 NONAME ; void CGSBaseView::SetNaviPaneL(void) - ?Container@CGSBaseView@@QAEPAVCGSBaseContainer@@XZ @ 5 NONAME ; class CGSBaseContainer * CGSBaseView::Container(void) - ?WatchDog@CGSBaseDocument@@QAEPAVMGSWatchDog@@XZ @ 6 NONAME ; class MGSWatchDog * CGSBaseDocument::WatchDog(void) - ?SetSelectedItem@CGSBaseContainer@@UAEXH@Z @ 7 NONAME ; void CGSBaseContainer::SetSelectedItem(int) - ?ComponentControl@CGSBaseContainer@@EBEPAVCCoeControl@@H@Z @ 8 NONAME ; class CCoeControl * CGSBaseContainer::ComponentControl(int) const - ?NewL@CGSPubSubsListener@@SAPAV1@VTUid@@HPAVMGSSettingPSObserver@@@Z @ 9 NONAME ; class CGSPubSubsListener * CGSPubSubsListener::NewL(class TUid, int, class MGSSettingPSObserver *) - ?GetImplInfo@CGSBaseDocument@@QAE?AV?$RPointerArray@VCImplementationInformation@@@@XZ @ 10 NONAME ; class RPointerArray CGSBaseDocument::GetImplInfo(void) - ?LoadNextPluginL@CGSPluginLoader@@AAEXXZ @ 11 NONAME ; void CGSPluginLoader::LoadNextPluginL(void) - ??0CGSParentPlugin@@IAE@XZ @ 12 NONAME ; CGSParentPlugin::CGSParentPlugin(void) - ?NewL@CGSPluginLoader@@SAPAV1@PAVCAknViewAppUi@@@Z @ 13 NONAME ; class CGSPluginLoader * CGSPluginLoader::NewL(class CAknViewAppUi *) - ?GetHelpContext@CGSParentPlugin@@UAEXAAVTCoeHelpContext@@@Z @ 14 NONAME ; void CGSParentPlugin::GetHelpContext(class TCoeHelpContext &) - ?HandleCommandL@CGSParentPlugin@@MAEXH@Z @ 15 NONAME ; void CGSParentPlugin::HandleCommandL(int) - ?Get@CGSPubSubsListener@@QAEHAAVTDes8@@@Z @ 16 NONAME ; int CGSPubSubsListener::Get(class TDes8 &) - ??1CGSBaseContainer@@UAE@XZ @ 17 NONAME ; CGSBaseContainer::~CGSBaseContainer(void) - ?NewL@CGSTabHelper@@SAPAV1@XZ @ 18 NONAME ; class CGSTabHelper * CGSTabHelper::NewL(void) - ?ResetSelectedItemIndex@CGSParentPlugin@@UAEXXZ @ 19 NONAME ; void CGSParentPlugin::ResetSelectedItemIndex(void) - ??1CGSPubSubsListener@@UAE@XZ @ 20 NONAME ; CGSPubSubsListener::~CGSPubSubsListener(void) - ?SetObserver@CGSPluginLoader@@QAEXPAVMGSPluginLoadObserver@@@Z @ 21 NONAME ; void CGSPluginLoader::SetObserver(class MGSPluginLoadObserver *) - ?PrepareForUIDestruction@CGSBaseDocument@@QAEXXZ @ 22 NONAME ; void CGSBaseDocument::PrepareForUIDestruction(void) - ??1CGSPluginLoader@@UAE@XZ @ 23 NONAME ; CGSPluginLoader::~CGSPluginLoader(void) - ?CreateNaviPaneContextL@CGSBaseView@@MAEXH@Z @ 24 NONAME ; void CGSBaseView::CreateNaviPaneContextL(int) - ?CreateTabGroupL@CGSTabHelper@@QAEXVTUid@@PAV?$CArrayPtrFlat@VMGSTabbedView@@@@@Z @ 25 NONAME ; void CGSTabHelper::CreateTabGroupL(class TUid, class CArrayPtrFlat *) - ?SetOptionFlags@CGSParentPlugin@@UAEXAAV?$TBitFlagsT@K@@@Z @ 26 NONAME ; void CGSParentPlugin::SetOptionFlags(class TBitFlagsT &) - ??1CGSBaseDocument@@UAE@XZ @ 27 NONAME ; CGSBaseDocument::~CGSBaseDocument(void) - ?CreateTabGroupL@CGSTabHelper@@QAEXVTUid@@PAVMGSTabbedViewOwner@@@Z @ 28 NONAME ; void CGSTabHelper::CreateTabGroupL(class TUid, class MGSTabbedViewOwner *) - ?DynInitMenuPaneL@CGSParentPlugin@@MAEXHPAVCEikMenuPane@@@Z @ 29 NONAME ; void CGSParentPlugin::DynInitMenuPaneL(int, class CEikMenuPane *) - ?RemoveTabGroup@CGSTabHelper@@QAEXXZ @ 30 NONAME ; void CGSTabHelper::RemoveTabGroup(void) - ?DoDeactivate@CGSBaseView@@UAEXXZ @ 31 NONAME ; void CGSBaseView::DoDeactivate(void) - ?RequestPriority@CGSPluginLoader@@QAEXW4TPriority@CActive@@@Z @ 32 NONAME ; void CGSPluginLoader::RequestPriority(enum CActive::TPriority) - ?ConstructL@CGSPluginLoader@@AAEXPAVCAknViewAppUi@@@Z @ 33 NONAME ; void CGSPluginLoader::ConstructL(class CAknViewAppUi *) - ?AbortAsyncLoad@CGSPluginLoader@@QAEXXZ @ 34 NONAME ; void CGSPluginLoader::AbortAsyncLoad(void) - ?OpenLocalizedResourceFileL@CGSBaseView@@QAEXABVTDesC16@@AAVRConeResourceLoader@@@Z @ 35 NONAME ; void CGSBaseView::OpenLocalizedResourceFileL(class TDesC16 const &, class RConeResourceLoader &) - ?ResetSelectedItemIndex@CGSBaseView@@UAEXXZ @ 36 NONAME ; void CGSBaseView::ResetSelectedItemIndex(void) - ?BaseConstructL@CGSParentPlugin@@QAEXHH@Z @ 37 NONAME ; void CGSParentPlugin::BaseConstructL(int, int) - ??1CGSEComNotifier@@UAE@XZ @ 38 NONAME ; CGSEComNotifier::~CGSEComNotifier(void) - ?DoDeactivate@CGSParentPlugin@@MAEXXZ @ 39 NONAME ; void CGSParentPlugin::DoDeactivate(void) - ?DoActivateL@CGSParentPlugin@@MAEXABVTVwsViewId@@VTUid@@ABVTDesC8@@@Z @ 40 NONAME ; void CGSParentPlugin::DoActivateL(class TVwsViewId const &, class TUid, class TDesC8 const &) - ?OfferKeyEventL@CGSBaseContainer@@EAE?AW4TKeyResponse@@ABUTKeyEvent@@W4TEventCode@@@Z @ 41 NONAME ; enum TKeyResponse CGSBaseContainer::OfferKeyEventL(struct TKeyEvent const &, enum TEventCode) - ?NewL@CGSEComNotifier@@SAPAV1@PAVMGSEComObserver@@V?$RPointerArray@VCImplementationInformation@@@@@Z @ 42 NONAME ; class CGSEComNotifier * CGSEComNotifier::NewL(class MGSEComObserver *, class RPointerArray) - ?Get@CGSPubSubsListener@@QAEHAAH@Z @ 43 NONAME ; int CGSPubSubsListener::Get(int &) - ?SortPluginsL@CGSPluginLoader@@QAEXPAV?$CArrayPtrFlat@VCGSPluginInterface@@@@@Z @ 44 NONAME ; void CGSPluginLoader::SortPluginsL(class CArrayPtrFlat *) - ??1CGSTabHelper@@UAE@XZ @ 45 NONAME ; CGSTabHelper::~CGSTabHelper(void) - ?HandlePluginLoaded@CGSParentPlugin@@UAEXW4KGSPluginLoaderStatus@MGSPluginLoadObserver@@@Z @ 46 NONAME ; void CGSParentPlugin::HandlePluginLoaded(enum MGSPluginLoadObserver::KGSPluginLoaderStatus) - ?ListBoxType@CGSParentPlugin@@UAE?AW4TGSListboxTypes@@XZ @ 47 NONAME ; enum TGSListboxTypes CGSParentPlugin::ListBoxType(void) - ?FocusChanged@CGSBaseContainer@@UAEXW4TDrawNow@@@Z @ 48 NONAME ; void CGSBaseContainer::FocusChanged(enum TDrawNow) - ?UpperLevelViewUid@CGSParentPlugin@@UAE?AVTUid@@XZ @ 49 NONAME ; class TUid CGSParentPlugin::UpperLevelViewUid(void) - ?OptionFlags@CGSParentPlugin@@UBEABV?$TBitFlagsT@K@@XZ @ 50 NONAME ; class TBitFlagsT const & CGSParentPlugin::OptionFlags(void) const - ?BaseConstructL@CGSBaseContainer@@QAEXABVTRect@@HH@Z @ 51 NONAME ; void CGSBaseContainer::BaseConstructL(class TRect const &, int, int) - ?TabChangedL@CGSTabHelper@@UAEXH@Z @ 52 NONAME ; void CGSTabHelper::TabChangedL(int) - ?CountComponentControls@CGSBaseContainer@@EBEHXZ @ 53 NONAME ; int CGSBaseContainer::CountComponentControls(void) const - ?NewLC@CGSTabHelper@@SAPAV1@XZ @ 54 NONAME ; class CGSTabHelper * CGSTabHelper::NewLC(void) - ?SetCurrentItem@CGSBaseView@@UAEXH@Z @ 55 NONAME ; void CGSBaseView::SetCurrentItem(int) - ??1CGSBaseView@@UAE@XZ @ 56 NONAME ; CGSBaseView::~CGSBaseView(void) - ?Get@CGSPubSubsListener@@QAEHAAVTDes16@@@Z @ 57 NONAME ; int CGSPubSubsListener::Get(class TDes16 &) - ?PreparePluginCacheL@CGSBaseDocument@@QAEXAAVCEikAppUi@@@Z @ 58 NONAME ; void CGSBaseDocument::PreparePluginCacheL(class CEikAppUi &) - ?HandleResourceChange@CGSBaseContainer@@UAEXH@Z @ 59 NONAME ; void CGSBaseContainer::HandleResourceChange(int) - ?UpdateView@CGSParentPlugin@@UAEXXZ @ 60 NONAME ; void CGSParentPlugin::UpdateView(void) - ?TransferDynamicPluginL@CGSParentPlugin@@UAEXPAVCGSPluginInterface@@@Z @ 61 NONAME ; void CGSParentPlugin::TransferDynamicPluginL(class CGSPluginInterface *) - ?SizeChanged@CGSBaseContainer@@EAEXXZ @ 62 NONAME ; void CGSBaseContainer::SizeChanged(void) - ??0CGSBaseContainer@@QAE@XZ @ 63 NONAME ; CGSBaseContainer::CGSBaseContainer(void) - ??1CGSParentPlugin@@UAE@XZ @ 64 NONAME ; CGSParentPlugin::~CGSParentPlugin(void) - ?NewPluginUnloadWrapperLC@CGSBaseDocument@@QAEPAVCGSPluginWrapper@@XZ @ 65 NONAME ; class CGSPluginWrapper * CGSBaseDocument::NewPluginUnloadWrapperLC(void) - ?HandleListBoxEventL@CGSBaseView@@MAEXPAVCEikListBox@@W4TListBoxEvent@MEikListBoxObserver@@@Z @ 66 NONAME ; void CGSBaseView::HandleListBoxEventL(class CEikListBox *, enum MEikListBoxObserver::TListBoxEvent) - ?OpenLocalizedResourceFileL@CGSParentPlugin@@QAEXABVTDesC16@@AAVRConeResourceLoader@@@Z @ 67 NONAME ; void CGSParentPlugin::OpenLocalizedResourceFileL(class TDesC16 const &, class RConeResourceLoader &) - ?DoActivateL@CGSBaseView@@UAEXABVTVwsViewId@@VTUid@@ABVTDesC8@@@Z @ 68 NONAME ; void CGSBaseView::DoActivateL(class TVwsViewId const &, class TUid, class TDesC8 const &) - ?CreateTabGroupL@CGSTabHelper@@QAEXVTUid@@PAV?$CArrayPtrFlat@VCGSPluginInterface@@@@@Z @ 69 NONAME ; void CGSTabHelper::CreateTabGroupL(class TUid, class CArrayPtrFlat *) - ??0CGSBaseView@@QAE@XZ @ 70 NONAME ; CGSBaseView::CGSBaseView(void) - ??1CGSPluginWrapper@@UAE@XZ @ 71 NONAME ; CGSPluginWrapper::~CGSPluginWrapper(void) - ?FocusChanged@CGSParentContainer@@UAEXW4TDrawNow@@@Z @ 72 NONAME ; void CGSParentContainer::FocusChanged(enum TDrawNow) - ?LoadAsyncL@CGSPluginLoader@@QAEXVTUid@@0PAV?$CArrayPtrFlat@VCGSPluginInterface@@@@@Z @ 73 NONAME ; void CGSPluginLoader::LoadAsyncL(class TUid, class TUid, class CArrayPtrFlat *) - ?ConstructL@CGSBaseDocument@@IAEXXZ @ 74 NONAME ; void CGSBaseDocument::ConstructL(void) - ?CreateContainerL@CGSBaseView@@MAEXXZ @ 75 NONAME ; void CGSBaseView::CreateContainerL(void) - ??0CGSBaseDocument@@IAE@AAVCEikApplication@@@Z @ 76 NONAME ; CGSBaseDocument::CGSBaseDocument(class CEikApplication &) - ?CreateShimmedViewL@CGSBaseDocument@@QAEXVTUid@@@Z @ 77 NONAME ; void CGSBaseDocument::CreateShimmedViewL(class TUid) - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/BWINS/GSListBoxU.DEF --- a/gssettingsuis/Gs/BWINS/GSListBoxU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -EXPORTS - ??1CGSListboxEntry@@UAE@XZ @ 1 NONAME ; CGSListboxEntry::~CGSListboxEntry(void) - ?Caption@CGSListboxEntry@@QBEABVTDesC16@@XZ @ 2 NONAME ; class TDesC16 const & CGSListboxEntry::Caption(void) const - ?CurrentFeature@CGSItemTextArray@@UBEHXZ @ 3 NONAME ; int CGSItemTextArray::CurrentFeature(void) const - ?CurrentFeature@CGSListBoxItemTextArray@@UBEHXZ @ 4 NONAME ; int CGSListBoxItemTextArray::CurrentFeature(void) const - ?CurrentFeature@CGSRadioButtonSettingPageItemTextArray@@UBEHXZ @ 5 NONAME ; int CGSRadioButtonSettingPageItemTextArray::CurrentFeature(void) const - ?FeatureByIdL@CGSItemTextArray@@QBEPBVCGSListboxEntry@@H@Z @ 6 NONAME ; class CGSListboxEntry const * CGSItemTextArray::FeatureByIdL(int) const - ?FeatureId@CGSListboxEntry@@QBEHXZ @ 7 NONAME ; int CGSListboxEntry::FeatureId(void) const - ?FeatureIdByIndex@CGSItemTextArray@@QBEHH@Z @ 8 NONAME ; int CGSItemTextArray::FeatureIdByIndex(int) const - ?GetItemCaptionFromFeatureIdLC@CGSItemTextArray@@SAPAVHBufC16@@KHAAVCCoeEnv@@@Z @ 9 NONAME ; class HBufC16 * CGSItemTextArray::GetItemCaptionFromFeatureIdLC(unsigned long, int, class CCoeEnv &) - ?IndexForFeatureIdL@CGSItemTextArray@@QBEHH@Z @ 10 NONAME ; int CGSItemTextArray::IndexForFeatureIdL(int) const - ?MdcaCount@CGSItemTextArray@@UBEHXZ @ 11 NONAME ; int CGSItemTextArray::MdcaCount(void) const - ?MdcaPoint@CGSItemTextArray@@UBE?AVTPtrC16@@H@Z @ 12 NONAME ; class TPtrC16 CGSItemTextArray::MdcaPoint(int) const - ?NewL@CGSItemTextArray@@SAPAV1@KAAVCCoeEnv@@@Z @ 13 NONAME ; class CGSItemTextArray * CGSItemTextArray::NewL(unsigned long, class CCoeEnv &) - ?NewL@CGSListBoxItemTextArray@@SAPAV1@KAAVCEikListBox@@AAVCCoeEnv@@@Z @ 14 NONAME ; class CGSListBoxItemTextArray * CGSListBoxItemTextArray::NewL(unsigned long, class CEikListBox &, class CCoeEnv &) - ?NewL@CGSRadioButtonSettingPageItemTextArray@@SAPAV1@KAAVCCoeEnv@@PAVCAknRadioButtonSettingPage@@@Z @ 15 NONAME ; class CGSRadioButtonSettingPageItemTextArray * CGSRadioButtonSettingPageItemTextArray::NewL(unsigned long, class CCoeEnv &, class CAknRadioButtonSettingPage *) - ?NewLC@CGSListboxEntry@@SAPAV1@AAVTResourceReader@@@Z @ 16 NONAME ; class CGSListboxEntry * CGSListboxEntry::NewLC(class TResourceReader &) - ?NewLC@CGSListboxEntry@@SAPAV1@H@Z @ 17 NONAME ; class CGSListboxEntry * CGSListboxEntry::NewLC(int) - ?SetDynamicTextL@CGSItemTextArray@@QAEXHABVTDesC16@@@Z @ 18 NONAME ; void CGSItemTextArray::SetDynamicTextL(int, class TDesC16 const &) - ?SetDynamicTextL@CGSListboxEntry@@QAEXABVTDesC16@@@Z @ 19 NONAME ; void CGSListboxEntry::SetDynamicTextL(class TDesC16 const &) - ?SetItemVisibilityL@CGSItemTextArray@@QAEXHW4TVisibility@1@@Z @ 20 NONAME ; void CGSItemTextArray::SetItemVisibilityL(int, enum CGSItemTextArray::TVisibility) - ?SetRadioButtonSettingPage@CGSRadioButtonSettingPageItemTextArray@@QAEXAAVCAknRadioButtonSettingPage@@@Z @ 21 NONAME ; void CGSRadioButtonSettingPageItemTextArray::SetRadioButtonSettingPage(class CAknRadioButtonSettingPage &) - ?Type@CGSListboxEntry@@QBEHXZ @ 22 NONAME ; int CGSListboxEntry::Type(void) const - ?NewL@CGSListBoxItemTextArray@@SAPAV1@KAAVCEikListBox@@AAVCCoeEnv@@H@Z @ 23 NONAME ; class CGSListBoxItemTextArray * CGSListBoxItemTextArray::NewL(unsigned long, class CEikListBox &, class CCoeEnv &, int) - ?NewLC@CGSListboxEntry@@SAPAV1@KAAVCCoeEnv@@H@Z @ 24 NONAME ; class CGSListboxEntry * CGSListboxEntry::NewLC(unsigned long, class CCoeEnv &, int) - ?SetDynamicTextDoublePaneL@CGSItemTextArray@@QAEXHABVTDesC16@@@Z @ 25 NONAME ; void CGSItemTextArray::SetDynamicTextDoublePaneL(int, class TDesC16 const &) - ?SetDynamicTextDoublePaneL@CGSListboxEntry@@QAEXABVTDesC16@@@Z @ 26 NONAME ; void CGSListboxEntry::SetDynamicTextDoublePaneL(class TDesC16 const &) - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/BWINS/GSServerEngineU.DEF --- a/gssettingsuis/Gs/BWINS/GSServerEngineU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -EXPORTS - ??0RGSServerClient@@QAE@XZ @ 1 NONAME ; RGSServerClient::RGSServerClient(void) - ??1CGSServerEngine@@UAE@XZ @ 2 NONAME ; CGSServerEngine::~CGSServerEngine(void) - ?AspectRatioL@CGSServerEngine@@QAEHXZ @ 3 NONAME ; int CGSServerEngine::AspectRatioL(void) - ?BootConfigL@CGSServerEngine@@QAEXH@Z @ 4 NONAME ; void CGSServerEngine::BootConfigL(int) - ?Close@RGSServerClient@@QAEXXZ @ 5 NONAME ; void RGSServerClient::Close(void) - ?Connect@RGSServerClient@@QAEHXZ @ 6 NONAME ; int RGSServerClient::Connect(void) - ?DisableDriver@CGSServerEngine@@QAEXXZ @ 7 NONAME ; void CGSServerEngine::DisableDriver(void) - ?FlickerFilterL@CGSServerEngine@@QAEHXZ @ 8 NONAME ; int CGSServerEngine::FlickerFilterL(void) - ?NewL@CGSServerEngine@@SAPAV1@XZ @ 9 NONAME ; class CGSServerEngine * CGSServerEngine::NewL(void) - ?NewLC@CGSServerEngine@@SAPAV1@XZ @ 10 NONAME ; class CGSServerEngine * CGSServerEngine::NewLC(void) - ?SetAspectRatioL@CGSServerEngine@@QAEXH@Z @ 11 NONAME ; void CGSServerEngine::SetAspectRatioL(int) - ?SetFlickerFilterL@CGSServerEngine@@QAEXH@Z @ 12 NONAME ; void CGSServerEngine::SetFlickerFilterL(int) - ?SetTvSystemL@CGSServerEngine@@QAEXH@Z @ 13 NONAME ; void CGSServerEngine::SetTvSystemL(int) - ?TvSystemL@CGSServerEngine@@QAEHXZ @ 14 NONAME ; int CGSServerEngine::TvSystemL(void) - ?ListenForTvCableEventsL@CGSServerEngine@@QAEXH@Z @ 15 NONAME ; void CGSServerEngine::ListenForTvCableEventsL(int) - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/Cenrep/SettingsPrivateCRKeys.h --- a/gssettingsuis/Gs/Cenrep/SettingsPrivateCRKeys.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,175 +0,0 @@ -/* -* Copyright (c) 2007 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: Settings UIs private Central Repository keys. -* -*/ - - -#ifndef SETTINGSPRIVATECRKEYS_H -#define SETTINGSPRIVATECRKEYS_H - -// INCLUDES -#include - -// CONSTANTS - -// --------------------------------------------------------------------------- -/** Following keys belong to category KCRUidMiscSettings */ - -/** -* -* String value. -*/ -const TUint32 KWatchDogQuarantine = 0x00000001; - -/** -* -* String value. -*/ -const TUint32 KWatchDogBlackList = 0x00000002; -const TUint32 KWatchDogGSRunning = 0x00000003; -const TUint32 KWatchDogCrashCounter = 0x00000004; -const TUint32 KWatchdogActivationLimit = 0x00000005; -const TUint32 KWatchdogMaxPluginBlackListedRuns = 0x00000006; - - -// --------------------------------------------------------------------------- -/** Following keys belong to category KCRUidNetworkSettings */ - -/** -* This key is required for the programs to control if the "network mode" -* item should be available in the UI. -* -* Possible integer values: -* 0 = "network mode" item hidden -* 1 = "network mode" item visible in GS -*/ -const TUint32 KSettingsNetworkMode = 0x00000001; - -/** -* This key is required for the programs to list the supported -* network mode UI list items that will be visible from GS setting page. -*/ -const TUint32 KSettingsNetworkModeList = 0x00000002; - -/** -* This key is required for the programs to set a default value to the -* network mode UI list item visible from GS. -* This value is used to display the selected item from associated setting page. -* -* Possible integer values: -* 0 = Dual mode -* 1 = UMTS -* 2 = GSM -*/ -const TUint32 KSettingsNetworkModeValue = 0x00000003; - -/** -* HSDPA Visibility -* -* Possible values: -* 0 = Hide -* 1 = Show -*/ -const TUint32 KSettingsHSDPAVisbility = 0x00000007; - -/** -* HSDPA Value -* -* Possible values: -* 0 = Disable -* 1 = Enable -*/ -const TUint32 KSettingsHSDPAValue = 0x00000008; - - -// --------------------------------------------------------------------------- -/** Following keys belong to category KCRUidPersonalizationSettings */ - -/** -* Background image. -* Possible values are: -* 0 = No image -* 1 = Image used -*/ -const TUint32 KSettingsBackgroundImage = 0x00000001; - -/** -* Background image path. -* The value is a string which length can vary from 0 to maximum length. -*/ -const TUint32 KSettingsBackgroundImagePath = 0x00000002; - -/** -* Hide/Unhide user welcome note item in UI. -* 0 = Hide -* 1 = Show -*/ -const TUint32 KSettingsWelcomeNoteSupported = 0x00000005; - - -// --------------------------------------------------------------------------- -/** Following keys belong to category KCRUidCdmaTelephonySettings */ - -/** -* This key indicates whether the call guard is activated -* for MO and MT calls. -* -* 0 = Disabled -* 1 = Enabled -*/ -const TUint32 KSettingsCallGuard = 0x00000001; - - -/** -* This key indicates whether voice privacy settings -* needs to be included and voice privacy status. -* -* Possible integer values: -* 0 = Option 1 - {VP Menu excluded, VP Off} -* 1 = Option 2 - {VP Menu excluded, VP On} -* 2 = Option 3 - {VP Menu included, VP Off} -* 3 = Option 4 - {VP Menu included, VP On} -*/ -const TUint32 KSettingsVoicePrivacy = 0x00000002; - - -/** -* This key indicates whether the distinctive ring tone -* is enabled while roaming. -* -* 0 = Disabled -* 1 = Enabled -*/ -const TUint32 KSettingsRoamingRingingTone = 0x00000003; - - -// --------------------------------------------------------------------------- -/** Following keys belong to category KCRUidSettingsVariation */ - -/** -* Settings Variation API -* Keys under this category are used in defining settings variation. -*/ -const TUid KCRUidSettingsVariation = {0x1020720A}; - -/** -* Settings Local Variation Flags. Values are defined in GeneralSettingsVariant.hrh. -*/ -const TUint32 KSettingsVariationFlags = 0x00000001; - - -#endif // SETTINGSPRIVATECRKEYS_H - -// End of file \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/Cenrep/keys_s60settingsuis.xls Binary file gssettingsuis/Gs/Cenrep/keys_s60settingsuis.xls has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/Data/GSCommonResources.rss --- a/gssettingsuis/Gs/Data/GSCommonResources.rss Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,187 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Common resources for internal GS plugins. This .rss is -* included by other .rss files. This should not be compiled - alone. -* -*/ - -// RESOURCE IDENTIFIER -//NAME GSCR // 4 letter ID - -// INCLUDES -#include // Common localized GS strings -#include // Common GS resource structures - -#include -#include -#include -#include -#include - -// CONSTANTS - -// ----------------------------------------------------------------------------- -// -// r_gs_menubar_change_exit -// GS menu with 'change' and 'exit' items. -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_BAR r_gs_menubar_change_exit - { - titles = - { - MENU_TITLE - { - menu_pane = r_gs_menu_item_exit; - }, - MENU_TITLE - { - menu_pane = r_gs_menu_item_help; - }, - MENU_TITLE - { - menu_pane = r_gs_menu_item_change; - } - }; - } - -// ----------------------------------------------------------------------------- -// -// r_gs_menubar_open_exit -// GS menu with 'Open' and 'Exit' items. -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_BAR r_gs_menubar_open_exit - { - titles = - { - MENU_TITLE - { - menu_pane = r_gs_menu_item_exit; - }, - MENU_TITLE - { - menu_pane = r_gs_menu_item_help; - }, - MENU_TITLE - { - menu_pane = r_gs_menu_item_open; - } - }; - } - -//---------------------------------------------------- -// -// r_gs_menu_item_open -// Open item. -// -//---------------------------------------------------- - -RESOURCE MENU_PANE r_gs_menu_item_open - { - items = - { - MENU_ITEM - { - command = EAknSoftkeyOpen; - txt = qtn_set_options_open; - } - }; - } - - -// ----------------------------------------------------------------------------- -// -// r_gs_menu_item_exit -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_PANE r_gs_menu_item_exit - { - items = - { - MENU_ITEM - { - command = EAknCmdExit; - txt = qtn_options_exit; - } - }; - } - - -// ----------------------------------------------------------------------------- -// -// r_gs_menu_item_change -// Change item. -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_PANE r_gs_menu_item_change - { - items = - { - MENU_ITEM - { - command = EGSCmdAppChange; - txt = qtn_set_options_change; - } - }; - } - -// ----------------------------------------------------------------------------- -// -// r_gs_menu_item_help -// Change item. -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_PANE r_gs_menu_item_help - { - items = - { - MENU_ITEM - { - command = EAknCmdHelp; - txt = qtn_options_help; - } - }; - } - - -// ----------------------------------------------------------------------------- -// -// r_setting_listbox -// Common listbox editor resource for setting pages. -// -// ----------------------------------------------------------------------------- -// -RESOURCE LISTBOX r_setting_listbox - { - flags = EEikListBoxMultipleSelection; - } - - -// ----------------------------------------------------------------------------- -// -// r_gs_cba_exit -// Exit text for RSK -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_gs_cba_exit { buf = text_softkey_exit; } - -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/Data/backup_registration.xml --- a/gssettingsuis/Gs/Data/backup_registration.xml Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/EABI/BackgroundImageU.DEF --- a/gssettingsuis/Gs/EABI/BackgroundImageU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -EXPORTS - _ZN18CGSBackgroundImage12DeleteImageLERK7TDesC16 @ 1 NONAME - _ZN18CGSBackgroundImage13GetPlnsStatusEv @ 2 NONAME - _ZN18CGSBackgroundImage16BackgroundImageLEv @ 3 NONAME - _ZN18CGSBackgroundImage19SetBackgroundImageLEi @ 4 NONAME - _ZN18CGSBackgroundImage20SetVTStillImagePathLERK7TDesC16R21CGSAsyncImageHandling @ 5 NONAME - _ZN18CGSBackgroundImage20SetWelcomeNoteImageLERK7TDesC16R21CGSAsyncImageHandling @ 6 NONAME - _ZN18CGSBackgroundImage23SetBackgroundImagePathLERK7TDesC16 @ 7 NONAME - _ZN18CGSBackgroundImage23SetBackgroundImagePathLERK7TDesC16R6TDes16 @ 8 NONAME - _ZN18CGSBackgroundImage23SetBackgroundImagePathLERK7TDesC16R6TDes1616TGSWallpaperType @ 9 NONAME - _ZN18CGSBackgroundImage29IsPersonalisationApplicationLEv @ 10 NONAME - _ZN18CGSBackgroundImage4NewLEv @ 11 NONAME - _ZN21CGSAsyncImageHandling4NewLER3RFsP29MGSAsyncImageHandlingObserverRK7TDesC16 @ 12 NONAME - _ZTI18CGSBackgroundImage @ 13 NONAME ; ## - _ZTI21CGSAsyncImageHandling @ 14 NONAME ; ## - _ZTV18CGSBackgroundImage @ 15 NONAME ; ## - _ZTV21CGSAsyncImageHandling @ 16 NONAME ; ## - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/EABI/GSEcomPluginU.DEF --- a/gssettingsuis/Gs/EABI/GSEcomPluginU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -EXPORTS - _ZN18CGSPluginInterface11CreateIconLE4TUid @ 1 NONAME - _ZN18CGSPluginInterface15HandleSelectionE17TGSSelectionTypes @ 2 NONAME - _ZN18CGSPluginInterface16CustomOperationLEPvS0_ @ 3 NONAME - _ZN18CGSPluginInterface4NewLE4TUidPv @ 4 NONAME - _ZN18CGSPluginInterface8GetValueE18TGSPluginValueKeysR6TDes16 @ 5 NONAME - _ZN18CGSPluginInterface8ItemTypeEv @ 6 NONAME - _ZN18CGSPluginInterfaceC2Ev @ 7 NONAME - _ZN18CGSPluginInterfaceD0Ev @ 8 NONAME - _ZN18CGSPluginInterfaceD1Ev @ 9 NONAME - _ZN18CGSPluginInterfaceD2Ev @ 10 NONAME - _ZNK18CGSPluginInterface22PluginProviderCategoryEv @ 11 NONAME - _ZNK18CGSPluginInterface7VisibleEv @ 12 NONAME - _ZTI18CGSPluginInterface @ 13 NONAME ; ## - _ZTV18CGSPluginInterface @ 14 NONAME ; ## - _ZN18CGSPluginInterface22ResetSelectedItemIndexEv @ 15 NONAME - _ZN18CGSPluginInterface18MenuActivationItemEv @ 16 NONAME - _ZN18CGSPluginInterface8SetOrderEi @ 17 NONAME - _ZN18CGSPluginInterface20GetEcomDestructorKeyEv @ 18 NONAME - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/EABI/GSFrameworkU.DEF --- a/gssettingsuis/Gs/EABI/GSFrameworkU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,122 +0,0 @@ -EXPORTS - _ZN11CGSBaseView11DoActivateLERK10TVwsViewId4TUidRK6TDesC8 @ 1 NONAME - _ZN11CGSBaseView12DoDeactivateEv @ 2 NONAME - _ZN11CGSBaseView12SetNaviPaneLEv @ 3 NONAME - _ZN11CGSBaseView14SetCurrentItemEi @ 4 NONAME - _ZN11CGSBaseView16CreateContainerLEv @ 5 NONAME - _ZN11CGSBaseView19HandleListBoxEventLEP11CEikListBoxN19MEikListBoxObserver13TListBoxEventE @ 6 NONAME - _ZN11CGSBaseView22CreateNaviPaneContextLEi @ 7 NONAME - _ZN11CGSBaseView26OpenLocalizedResourceFileLERK7TDesC16R19RConeResourceLoader @ 8 NONAME - _ZN11CGSBaseView9ContainerEv @ 9 NONAME - _ZN11CGSBaseViewC2Ev @ 10 NONAME - _ZN11CGSBaseViewD0Ev @ 11 NONAME - _ZN11CGSBaseViewD1Ev @ 12 NONAME - _ZN11CGSBaseViewD2Ev @ 13 NONAME - _ZN12CGSTabHelper11TabChangedLEi @ 14 NONAME - _ZN12CGSTabHelper14RemoveTabGroupEv @ 15 NONAME - _ZN12CGSTabHelper15CreateTabGroupLE4TUidP13CArrayPtrFlatI13MGSTabbedViewE @ 16 NONAME - _ZN12CGSTabHelper15CreateTabGroupLE4TUidP13CArrayPtrFlatI18CGSPluginInterfaceE @ 17 NONAME - _ZN12CGSTabHelper15CreateTabGroupLE4TUidP18MGSTabbedViewOwner @ 18 NONAME - _ZN12CGSTabHelper4NewLEv @ 19 NONAME - _ZN12CGSTabHelper5NewLCEv @ 20 NONAME - _ZN12CGSTabHelperD0Ev @ 21 NONAME - _ZN12CGSTabHelperD1Ev @ 22 NONAME - _ZN12CGSTabHelperD2Ev @ 23 NONAME - _ZN15CGSParentPlugin10UpdateViewEv @ 24 NONAME - _ZN15CGSParentPlugin11DoActivateLERK10TVwsViewId4TUidRK6TDesC8 @ 25 NONAME - _ZN15CGSParentPlugin11ListBoxTypeEv @ 26 NONAME - _ZN15CGSParentPlugin12DoDeactivateEv @ 27 NONAME - _ZN15CGSParentPlugin14BaseConstructLEii @ 28 NONAME - _ZN15CGSParentPlugin14HandleCommandLEi @ 29 NONAME - _ZN15CGSParentPlugin17UpperLevelViewUidEv @ 30 NONAME - _ZN15CGSParentPlugin18HandlePluginLoadedEN21MGSPluginLoadObserver21KGSPluginLoaderStatusE @ 31 NONAME - _ZN15CGSParentPlugin22ResetSelectedItemIndexEv @ 32 NONAME - _ZN15CGSParentPlugin26OpenLocalizedResourceFileLERK7TDesC16R19RConeResourceLoader @ 33 NONAME - _ZN15CGSParentPluginC2Ev @ 34 NONAME - _ZN15CGSParentPluginD0Ev @ 35 NONAME - _ZN15CGSParentPluginD1Ev @ 36 NONAME - _ZN15CGSParentPluginD2Ev @ 37 NONAME - _ZN15CGSPluginLoader10ConstructLEP13CAknViewAppUi @ 38 NONAME - _ZN15CGSPluginLoader10LoadAsyncLE4TUidS0_P13CArrayPtrFlatI18CGSPluginInterfaceE @ 39 NONAME - _ZN15CGSPluginLoader11SetObserverEP21MGSPluginLoadObserver @ 40 NONAME - _ZN15CGSPluginLoader14AbortAsyncLoadEv @ 41 NONAME - _ZN15CGSPluginLoader15LoadNextPluginLEv @ 42 NONAME - _ZN15CGSPluginLoader4NewLEP13CAknViewAppUi @ 43 NONAME - _ZN15CGSPluginLoaderD0Ev @ 44 NONAME - _ZN15CGSPluginLoaderD1Ev @ 45 NONAME - _ZN15CGSPluginLoaderD2Ev @ 46 NONAME - _ZN16CGSBaseContainer11SizeChangedEv @ 47 NONAME - _ZN16CGSBaseContainer14BaseConstructLERK5TRectii @ 48 NONAME - _ZN16CGSBaseContainer14OfferKeyEventLERK9TKeyEvent10TEventCode @ 49 NONAME - _ZN16CGSBaseContainer20HandleResourceChangeEi @ 50 NONAME - _ZN16CGSBaseContainerC2Ev @ 51 NONAME - _ZN16CGSBaseContainerD0Ev @ 52 NONAME - _ZN16CGSBaseContainerD1Ev @ 53 NONAME - _ZN16CGSBaseContainerD2Ev @ 54 NONAME - _ZNK16CGSBaseContainer16ComponentControlEi @ 55 NONAME - _ZNK16CGSBaseContainer22CountComponentControlsEv @ 56 NONAME - _ZTI11CGSBaseView @ 57 NONAME ; ## - _ZTI12CGSTabHelper @ 58 NONAME ; ## - _ZTI15CGSParentPlugin @ 59 NONAME ; ## - _ZTI15CGSPluginLoader @ 60 NONAME ; ## - _ZTI16CGSBaseContainer @ 61 NONAME ; ## - _ZTI18CGSParentContainer @ 62 NONAME ; ## - _ZTV11CGSBaseView @ 63 NONAME ; ## - _ZTV12CGSTabHelper @ 64 NONAME ; ## - _ZTV15CGSParentPlugin @ 65 NONAME ; ## - _ZTV15CGSPluginLoader @ 66 NONAME ; ## - _ZTV16CGSBaseContainer @ 67 NONAME ; ## - _ZTV18CGSParentContainer @ 68 NONAME ; ## - _ZThn4_N12CGSTabHelper11TabChangedLEi @ 69 NONAME ; ## - _ZThn88_N11CGSBaseView19HandleListBoxEventLEP11CEikListBoxN19MEikListBoxObserver13TListBoxEventE @ 70 NONAME ; ## - _ZThn88_N15CGSParentPlugin18HandlePluginLoadedEN21MGSPluginLoadObserver21KGSPluginLoaderStatusE @ 71 NONAME ; ## - _ZN11CGSBaseView22ResetSelectedItemIndexEv @ 72 NONAME - _ZN16CGSBaseContainer12SelectedItemEv @ 73 NONAME - _ZN16CGSBaseContainer15SetSelectedItemEi @ 74 NONAME - _ZN15CGSParentPlugin14GetHelpContextER15TCoeHelpContext @ 75 NONAME - _ZN15CGSParentPlugin14SetOptionFlagsER10TBitFlagsTImE @ 76 NONAME - _ZN15CGSParentPlugin16DynInitMenuPaneLEiP12CEikMenuPane @ 77 NONAME - _ZNK15CGSParentPlugin11OptionFlagsEv @ 78 NONAME - _ZThn12_N15CGSParentPlugin16DynInitMenuPaneLEiP12CEikMenuPane @ 79 NONAME ; ## - _ZN16CGSBaseContainer12FocusChangedE8TDrawNow @ 80 NONAME - _ZN18CGSParentContainer12FocusChangedE8TDrawNow @ 81 NONAME - _ZN15CGSBaseDocument10ConstructLEv @ 82 NONAME - _ZN15CGSBaseDocument24NewPluginUnloadWrapperLCEv @ 83 NONAME - _ZN15CGSBaseDocumentC2ER15CEikApplication @ 84 NONAME - _ZN15CGSBaseDocumentD0Ev @ 85 NONAME - _ZN15CGSBaseDocumentD1Ev @ 86 NONAME - _ZN15CGSBaseDocumentD2Ev @ 87 NONAME - _ZN16CGSPluginWrapper10SetDetailsE4TUid @ 88 NONAME - _ZN16CGSPluginWrapperD0Ev @ 89 NONAME - _ZN16CGSPluginWrapperD1Ev @ 90 NONAME - _ZN16CGSPluginWrapperD2Ev @ 91 NONAME - _ZTI15CGSBaseDocument @ 92 NONAME ; ## - _ZTV15CGSBaseDocument @ 93 NONAME ; ## - _ZN15CGSParentPlugin22TransferDynamicPluginLEP18CGSPluginInterface @ 94 NONAME - _ZN15CGSPluginLoader12SortPluginsLEP13CArrayPtrFlatI18CGSPluginInterfaceE @ 95 NONAME - _ZThn92_N15CGSParentPlugin22TransferDynamicPluginLEP18CGSPluginInterface @ 96 NONAME ; ## - _ZN18CGSPubSubsListener3GetER5TDes8 @ 97 NONAME - _ZN18CGSPubSubsListener3GetER6TDes16 @ 98 NONAME - _ZN18CGSPubSubsListener3GetERi @ 99 NONAME - _ZN18CGSPubSubsListener4NewLE4TUidiP20MGSSettingPSObserver @ 100 NONAME - _ZN18CGSPubSubsListenerD0Ev @ 101 NONAME - _ZN18CGSPubSubsListenerD1Ev @ 102 NONAME - _ZN18CGSPubSubsListenerD2Ev @ 103 NONAME - _ZN15CGSBaseDocument19PreparePluginCacheLER9CEikAppUi @ 104 NONAME - _ZN15CGSBaseDocument23PrepareForUIDestructionEv @ 105 NONAME - _ZTI14CGSShimmedView @ 106 NONAME ; ## - _ZTI18CGSPlaceholderView @ 107 NONAME ; ## - _ZTI23CGSPluginAndViewIdCache @ 108 NONAME ; ## - _ZTV14CGSShimmedView @ 109 NONAME ; ## - _ZTV18CGSPlaceholderView @ 110 NONAME ; ## - _ZTV23CGSPluginAndViewIdCache @ 111 NONAME ; ## - _ZN15CGSParentPlugin14SelectedPluginEv @ 112 NONAME - _ZN15CGSBaseDocument8WatchDogEv @ 113 NONAME - _ZN15CGSBaseDocument11GetImplInfoEv @ 114 NONAME - _ZN15CGSEComNotifier4NewLEP15MGSEComObserver13RPointerArrayI26CImplementationInformationE @ 115 NONAME - _ZN15CGSEComNotifierD0Ev @ 116 NONAME - _ZN15CGSEComNotifierD1Ev @ 117 NONAME - _ZN15CGSEComNotifierD2Ev @ 118 NONAME - _ZN15CGSPluginLoader15RequestPriorityEN7CActive9TPriorityE @ 119 NONAME - _ZN15CGSBaseDocument18CreateShimmedViewLE4TUid @ 120 NONAME - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/EABI/GSListBoxU.DEF --- a/gssettingsuis/Gs/EABI/GSListBoxU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -EXPORTS - _ZN15CGSListboxEntry15SetDynamicTextLERK7TDesC16 @ 1 NONAME - _ZN15CGSListboxEntry5NewLCER15TResourceReader @ 2 NONAME - _ZN15CGSListboxEntry5NewLCEi @ 3 NONAME - _ZN15CGSListboxEntryD0Ev @ 4 NONAME - _ZN15CGSListboxEntryD1Ev @ 5 NONAME - _ZN15CGSListboxEntryD2Ev @ 6 NONAME - _ZN16CGSItemTextArray15SetDynamicTextLEiRK7TDesC16 @ 7 NONAME - _ZN16CGSItemTextArray18SetItemVisibilityLEiNS_11TVisibilityE @ 8 NONAME - _ZN16CGSItemTextArray29GetItemCaptionFromFeatureIdLCEmiR7CCoeEnv @ 9 NONAME - _ZN16CGSItemTextArray4NewLEmR7CCoeEnv @ 10 NONAME - _ZN23CGSListBoxItemTextArray4NewLEmR11CEikListBoxR7CCoeEnv @ 11 NONAME - _ZN38CGSRadioButtonSettingPageItemTextArray25SetRadioButtonSettingPageER26CAknRadioButtonSettingPage @ 12 NONAME - _ZN38CGSRadioButtonSettingPageItemTextArray4NewLEmR7CCoeEnvP26CAknRadioButtonSettingPage @ 13 NONAME - _ZNK15CGSListboxEntry4TypeEv @ 14 NONAME - _ZNK15CGSListboxEntry7CaptionEv @ 15 NONAME - _ZNK15CGSListboxEntry9FeatureIdEv @ 16 NONAME - _ZNK16CGSItemTextArray12FeatureByIdLEi @ 17 NONAME - _ZNK16CGSItemTextArray14CurrentFeatureEv @ 18 NONAME - _ZNK16CGSItemTextArray16FeatureIdByIndexEi @ 19 NONAME - _ZNK16CGSItemTextArray18IndexForFeatureIdLEi @ 20 NONAME - _ZNK16CGSItemTextArray9MdcaCountEv @ 21 NONAME - _ZNK16CGSItemTextArray9MdcaPointEi @ 22 NONAME - _ZNK23CGSListBoxItemTextArray14CurrentFeatureEv @ 23 NONAME - _ZNK38CGSRadioButtonSettingPageItemTextArray14CurrentFeatureEv @ 24 NONAME - _ZTI15CGSListboxEntry @ 25 NONAME ; ## - _ZTI16CGSItemTextArray @ 26 NONAME ; ## - _ZTI23CGSListBoxItemTextArray @ 27 NONAME ; ## - _ZTI38CGSRadioButtonSettingPageItemTextArray @ 28 NONAME ; ## - _ZTV15CGSListboxEntry @ 29 NONAME ; ## - _ZTV16CGSItemTextArray @ 30 NONAME ; ## - _ZTV23CGSListBoxItemTextArray @ 31 NONAME ; ## - _ZTV38CGSRadioButtonSettingPageItemTextArray @ 32 NONAME ; ## - _ZThn4_NK16CGSItemTextArray9MdcaCountEv @ 33 NONAME ; ## - _ZThn4_NK16CGSItemTextArray9MdcaPointEi @ 34 NONAME ; ## - _ZN15CGSListboxEntry5NewLCEmR7CCoeEnvi @ 35 NONAME - _ZN23CGSListBoxItemTextArray4NewLEmR11CEikListBoxR7CCoeEnvi @ 36 NONAME - _ZN15CGSListboxEntry25SetDynamicTextDoublePaneLERK7TDesC16 @ 37 NONAME - _ZN16CGSItemTextArray25SetDynamicTextDoublePaneLEiRK7TDesC16 @ 38 NONAME - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/EABI/GSServerEngineU.DEF --- a/gssettingsuis/Gs/EABI/GSServerEngineU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -EXPORTS - 0 @ 1 ABSENT - _ZN15CGSServerEngine12AspectRatioLEv @ 2 NONAME - _ZN15CGSServerEngine12SetTvSystemLEi @ 3 NONAME - 0 @ 4 ABSENT - _ZN15CGSServerEngine14FlickerFilterLEv @ 5 NONAME - _ZN15CGSServerEngine15SetAspectRatioLEi @ 6 NONAME - _ZN15CGSServerEngine17SetFlickerFilterLEi @ 7 NONAME - _ZN15CGSServerEngine4NewLEv @ 8 NONAME - _ZN15CGSServerEngine5NewLCEv @ 9 NONAME - _ZN15CGSServerEngine9TvSystemLEv @ 10 NONAME - _ZN15CGSServerEngineD0Ev @ 11 NONAME - _ZN15CGSServerEngineD1Ev @ 12 NONAME - _ZN15CGSServerEngineD2Ev @ 13 NONAME - _ZN15RGSServerClient5CloseEv @ 14 NONAME - _ZN15RGSServerClient7ConnectEv @ 15 NONAME - _ZN15RGSServerClientC1Ev @ 16 NONAME - _ZN15RGSServerClientC2Ev @ 17 NONAME - 0 @ 18 ABSENT - 0 @ 19 ABSENT - 0 @ 20 ABSENT - 0 @ 21 ABSENT - 0 @ 22 ABSENT - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/Data/GSApp.rss --- a/gssettingsuis/Gs/GSApplication/Data/GSApp.rss Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,460 +0,0 @@ -/* -* Copyright (c) 2002-2004 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: -* Resource file for main view. -* -*/ - - -// RESOURCE IDENTIFIER -NAME GSMV // 4 letter ID - -// INCLUDES -#include - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -// Common resources among GS -#include - -// CONSTANTS - -RESOURCE RSS_SIGNATURE - { - } - - -RESOURCE TBUF - { - buf="GSApp"; - } - -//---------------------------------------------------- -// -// EIK_APP_INFO -// It contains application information. -// -//---------------------------------------------------- -// -RESOURCE EIK_APP_INFO - { - } - - -//---------------------------------------------------- -// -// r_gs_main_view -// Main view. -// -//---------------------------------------------------- -// -RESOURCE AVKON_VIEW r_gs_main_view - { - menubar = r_gs_menubar_open_exit; - cba = r_gs_softkeys_options_exit_open; - } - -//---------------------------------------------------- -// -// r_gs_main_view_title -// Main view's title. -// -//---------------------------------------------------- -// -RESOURCE TITLE_PANE r_gs_main_view_title - { -#ifdef RD_CONTROL_PANEL - txt = qtn_cp_title_control_panel; -#else - txt = qtn_set_title_settings; -#endif //RD_CONTROL_PANEL - } - - -RESOURCE LISTBOX r_mainview_lbx - { - flags = EEikListBoxMultipleSelection; - } - - -// ----------------------------------------------------------------------------- -// -// r_gs_menubar_open_exit -// GS menu with 'Open' and 'Exit' items. -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_BAR r_gs_menubar_open_exit - { - titles = - { - MENU_TITLE - { - menu_pane = r_gs_menu_item_exit; - }, - MENU_TITLE - { - menu_pane = r_gs_menu_item_help; - }, - MENU_TITLE - { - menu_pane = r_gs_menu_item_open; - } - }; - } - -//---------------------------------------------------- -// -// r_gs_menu_item_open -// Open item. -// -//---------------------------------------------------- -// -RESOURCE MENU_PANE r_gs_menu_item_open - { - items = - { - MENU_ITEM - { - command = EAknSoftkeyOpen; - txt = qtn_set_options_open; - } - }; - } - - -// ----------------------------------------------------------------------------- -// -// r_gs_menu_item_exit -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_PANE r_gs_menu_item_exit - { - items = - { - MENU_ITEM - { - command = EAknCmdExit; - txt = qtn_options_exit; - } - }; - } - - -// ----------------------------------------------------------------------------- -// -// r_gs_menu_item_help -// Help item. -// -// ----------------------------------------------------------------------------- -// -RESOURCE MENU_PANE r_gs_menu_item_help - { - items = - { - MENU_ITEM - { - command = EAknCmdHelp; - txt = qtn_options_help; - } - }; - } - - - -// SVG changes -RESOURCE LOCALISABLE_APP_INFO r_gsapp_localisable_app_info - { -#ifdef RD_CONTROL_PANEL - short_caption = qtn_apps_controlpanel_grid; -#else - short_caption = qtn_apps_settings_grid; -#endif //RD_CONTROL_PANEL - caption_and_icon = - CAPTION_AND_ICON_INFO - { -#ifdef RD_CONTROL_PANEL - caption = qtn_apps_controlpanel_list; -#else - caption = qtn_apps_settings_list; -#endif //RD_CONTROL_PANEL - number_of_icons = 1; - icon_file = "Z:"APP_BITMAP_DIR"\\GSApp_aif.mif"; - - }; - } - -//---------------------------------------------------- -// -// String for GS Cannot be opened during backup restore -// r_confirm_note_gs_exit_backup_restore_string -// -//---------------------------------------------------- -// -RESOURCE TBUF r_confirm_note_gs_exit_backup_restore_string - { buf = qtn_cp_error_open_during_backuprestore; } - -// MSK Handling - -// ----------------------------------------------------------------------------- -// -// r_gs_msk_open -// Middle softkey label: open. -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_gs_msk_open - { - buf = qtn_msk_open; - } - -// ----------------------------------------------------------------------------- -// -// r_gs_msk_activate -// Middle softkey label: activate. -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_gs_msk_activate - { - buf = qtn_msk_activate; - } - -// ----------------------------------------------------------------------------- -// -// r_gs_msk_select -// Middle softkey label: select. -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_gs_msk_select - { - buf = qtn_msk_select; - } - -// ----------------------------------------------------------------------------- -// -// r_gs_msk_change -// Middle softkey label: change. -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_gs_msk_change - { - buf = qtn_msk_change; - } - -// ----------------------------------------------------------------------------- -// -// r_gs_softkey_option -// Middle softkey label: Options. -// -// ----------------------------------------------------------------------------- -// -RESOURCE TBUF r_gs_softkey_option - { - buf = text_softkey_option; - } - -//---------------------------------------------------- -// -// r_gs_softkeys_options_back_contextoptions -// MSK activates Context Menu -// -//---------------------------------------------------- -// -RESOURCE CBA r_gs_softkeys_options_back_contextoptions - { - buttons = - { - CBA_BUTTON - { - id=EAknSoftkeyOptions; - txt = text_softkey_option; - }, - CBA_BUTTON - { - id=EAknSoftkeyBack; - txt = text_softkey_back; - }, - CBA_BUTTON - { - id=EAknSoftkeyContextOptions; - txt = text_softkey_option; - } - }; - } - -//---------------------------------------------------- -// -// r_gs_softkeys_options_back_open -// Text association with MSK ( OPEN ) -// -//---------------------------------------------------- -// -RESOURCE CBA r_gs_softkeys_options_back_open - { - buttons = - { - CBA_BUTTON - { - id=EAknSoftkeyOptions; - txt = text_softkey_option; - }, - CBA_BUTTON - { - id=EAknSoftkeyBack; - txt = text_softkey_back; - }, - CBA_BUTTON - { - id=EGSCmdAppOpen; - txt = qtn_msk_open; - } - }; - } - -//---------------------------------------------------- -// -// r_gs_softkeys_options_exit_open -// Text association with MSK ( OPEN ) -// -//---------------------------------------------------- -// -RESOURCE CBA r_gs_softkeys_options_exit_open - { - buttons = - { - CBA_BUTTON - { - id=EAknSoftkeyOptions; - txt = text_softkey_option; - }, - CBA_BUTTON - { - id=EAknSoftkeyExit; - txt = text_softkey_exit; - }, - CBA_BUTTON - { - id=EGSCmdAppOpen; - txt = qtn_msk_open; - } - }; - } - - -//---------------------------------------------------- -// -// r_gs_softkeys_options_back_change -// Text association with MSK ( CHANGE ) -// -//---------------------------------------------------- -// -RESOURCE CBA r_gs_softkeys_options_back_change - { - buttons = - { - CBA_BUTTON - { - id=EAknSoftkeyOptions; - txt = text_softkey_option; - }, - CBA_BUTTON - { - id=EAknSoftkeyBack; - txt = text_softkey_back; - }, - CBA_BUTTON - { - id=EGSMSKCmdAppChange; - txt = qtn_msk_change; - } - }; - } - -//---------------------------------------------------- -// -// r_gs_softkeys_options_exit_change -// Text association with MSK ( CHANGE ) -// -//---------------------------------------------------- -// -RESOURCE CBA r_gs_softkeys_options_exit_change - { - buttons = - { - CBA_BUTTON - { - id=EAknSoftkeyOptions; - txt = text_softkey_option; - }, - CBA_BUTTON - { - id=EAknSoftkeyExit; - txt = text_softkey_exit; - }, - CBA_BUTTON - { - id=EGSMSKCmdAppChange; - txt = qtn_msk_change; - } - }; - } - -//---------------------------------------------------- -// -// r_gs_softkeys_options_exit_change -// Text association with MSK ( CHANGE ) -// -//---------------------------------------------------- -// -RESOURCE CBA r_gs_softkeys_options_back_empty - { - buttons = - { - CBA_BUTTON - { - id=EAknSoftkeyOptions; - txt = text_softkey_option; - }, - CBA_BUTTON - { - id=EAknSoftkeyBack; - txt = text_softkey_back; - }, - CBA_BUTTON - { - id=EAknSoftkeyOk; - txt = ""; - } - }; - } - -//End of File - - - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/Data/SoftReject.rss --- a/gssettingsuis/Gs/GSApplication/Data/SoftReject.rss Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,140 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Resource file for Soft Reject -* -*/ - -// RESOURCE IDENTIFIER -NAME PHSR // 4 letter ID - -// INCLUDES -#include -#include -#include -#include -#include -#include -#include -#include - -// RESOURCE DEFINITIONS - -RESOURCE RSS_SIGNATURE - { - } - -//----------------------------------------------------------------------------- -// -// r_soft_reject_on -// Soft reject: "On" -// -//----------------------------------------------------------------------------- -// -RESOURCE TBUF r_soft_reject_on - { - buf = qtn_gs_soft_on; - } - -//----------------------------------------------------------------------------- -// -// r_soft_reject_off -// Soft reject: "Off" -// -//----------------------------------------------------------------------------- -// -RESOURCE TBUF r_soft_reject_off - { - buf = qtn_gs_soft_off; - } - -//---------------------------------------------------- -// -// qtn_gs_soft_reject_text_title -// Soft Reject Text setting page resources -// "Soft Reject" -//---------------------------------------------------- -// -RESOURCE TBUF r_soft_reject_text - { - buf = qtn_gs_soft_reject_text_title; - } - -//----------------------------------------------------------------------------- -// -// r_soft_reject_default_txt -// Default text for Soft reject. -// "Hi, I’m busy at the moment, but I contact you a bit later." -//----------------------------------------------------------------------------- -// -RESOURCE TBUF r_soft_reject_default_txt - { - buf = qtn_gs_soft_default_text; - } - -//----------------------------------------------------------------------------- -// -// r_soft_reject_txt_title -// Default text title. -// "Text for Soft reject" -//----------------------------------------------------------------------------- -// -RESOURCE TBUF r_soft_reject_txt_title - { - buf = qtn_gs_soft_reject_text; - } - -//---------------------------------------------------- -// -// r_setting_app_edwin -// Text editor for Soft Reject text. -// -//---------------------------------------------------- -// -RESOURCE EDWIN r_setting_app_edwin - { - flags = 0; - width = 9; - lines = 5; - maxlength = 160; - } - -//---------------------------------------------------- -// -// r_text_setting_page -// Setting page for Soft Reject text. -// "Text for Soft reject" -//---------------------------------------------------- -// -RESOURCE AVKON_SETTING_PAGE r_text_setting_page - { - label= qtn_gs_soft_reject_text_title; - type = EEikCtEdwin; - softkey_resource = R_AVKON_SOFTKEYS_OK_CANCEL__OK; - editor_resource_id = r_setting_app_edwin; - } - -//---------------------------------------------------- -// -// qtn_mocal_sett_softrej_title -// Soft Reject setting page resources -// "Soft reject" -//---------------------------------------------------- -// -RESOURCE TBUF r_soft_reject - { - buf = qtn_mocal_sett_softrej_title; - } - - -//End of File \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/GSApplication.mmp --- a/gssettingsuis/Gs/GSApplication/GSApplication.mmp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* This is project specification file for General Settings. -* -*/ - -#include - -#include - -// Default system include paths for middleware layer modules. -MW_LAYER_SYSTEMINCLUDE - - -TARGETTYPE none - -// Source files - -SOURCEPATH Data - -START RESOURCE GSApp.rss -HEADER -TARGETPATH APP_RESOURCE_DIR -LANGUAGE_IDS -END // GSApp.rss - -START RESOURCE SoftReject.rss -HEADER -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END - -// User include paths -USERINCLUDE loc - - -//End of File - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/bld.inf --- a/gssettingsuis/Gs/GSApplication/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Information required for building GSApplication. -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../rom/GSApp.iby CORE_MW_LAYER_IBY_EXPORT_PATH( GSApp.iby ) -../rom/GSAppResources.iby LANGUAGE_MW_LAYER_IBY_EXPORT_PATH( GSAppResources.iby ) -../Data/backup_registration.xml z:/private/100058EC/backup_registration.xml -../rom/GsResources.iby LANGUAGE_MW_LAYER_IBY_EXPORT_PATH( GsResources.iby ) -loc/GSApp.loc MW_LAYER_LOC_EXPORT_PATH( GSApp.loc ) -loc/SoftReject.loc MW_LAYER_LOC_EXPORT_PATH( SoftReject.loc ) - -PRJ_EXTENSIONS -START EXTENSION s60/mifconv - OPTION TARGETFILE gsapp_aif.mif - OPTION SOURCES -c8,8 qgn_menu_set -END - -PRJ_MMPFILES - -GSApplication.mmp - -PRJ_TESTMMPFILES - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/clean.cmd --- a/gssettingsuis/Gs/GSApplication/clean.cmd Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -rem -rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -rem All rights reserved. -rem This component and the accompanying materials are made available -rem under the terms of "Eclipse Public License v1.0" -rem which accompanies this distribution, and is available -rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -rem -rem Initial Contributors: -rem Nokia Corporation - initial contribution. -rem -rem Contributors: -rem -rem Description: -rem - -del *.cwlink -del *.mcp -del *.xml -del *.resources -del *_UID_.cpp -rd GSApplication_Data /s /q \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/loc/GSApp.loc --- a/gssettingsuis/Gs/GSApplication/loc/GSApp.loc Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Localization strings for GS Application -* -*/ - - -// LOCALISATION STRINGS - - -//d:Text in title pane -//d:Main view -//l:title_pane_t2/opt9 -// -#define qtn_set_title_settings "General settings" - -//d:Text in title pane -//d:Main view -//l:title_pane_t2/opt9 -// -#define qtn_cp_title_control_panel "Control Panel" - -//d:Command in Options list -//d:Opens the highlighted item -//l:list_single_pane_t1_cp2 -// -#define qtn_set_options_open "Open" - -//d:Application title for aif caption file -//d:Long string -//l:list_single_large_graphic_pane_t1 -// -#define qtn_apps_settings_list "General settings" - -//d:Application title for aif caption file -//d:Short string -//l:cell_app_pane_t1 -// -#define qtn_apps_settings_grid "Settings" - -//d:Application title for aif caption file -//d:Long string -//l:list_single_large_graphic_pane_t1 -// -#define qtn_apps_controlpanel_list "Control Panel" - -//d:Application title for aif caption file -//d:Short string -//l:cell_app_pane_t1 -// -#define qtn_apps_controlpanel_grid "Control Panel" - -//d:Text of a list item in Network setting list view's list -//d: Confirmation for Network mode selection operation. -//l: popup_note_window -//w: -//r: 3.1 -#define qtn_set_error_open_during_backuprestore "General Settings cannot be opened during backup/restore" - -//d:Text of a list item in Network setting list view's list -//d: Confirmation for Network mode selection operation. -//l: popup_note_window -//w: -//r: 5.0 -#define qtn_cp_error_open_during_backuprestore "Control Panel cannot be opened during backup/restore" - -// End of File - - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSApplication/loc/SoftReject.loc --- a/gssettingsuis/Gs/GSApplication/loc/SoftReject.loc Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -/* -* Copyright (c) 2003 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: -* Resource file for Phone Application -* -*/ - - -// LOCALISATION STRINGS - -//d: heading in soft reject settings menu -//l: list_setting_pane_t1 -// -#define qtn_mocal_sett_softrej_title "Reject call with message" - -//d: heading in soft reject text settings menu -//l: list_setting_pane_t1 -// -#define qtn_gs_soft_reject_text_title "Message text" - -//d: Command in general settings call folder, opens soft reject menu -//l: list_setting_pane_t1 -// -#define qtn_gs_soft_reject "Reject call with message" - -//d: Command in general settings call folder, opens soft reject text menu -//l: list_setting_pane_t1 -// -#define qtn_gs_soft_reject_text "Message text" - - -//d: soft reject selection (ON) in the settings page -//l: list_set_graphic_pane_t1 -// -#define qtn_gs_soft_on "On" - -//d: soft reject selection (OFF) in the settings page -//l: list_set_graphic_pane_t1 -// -#define qtn_gs_soft_off "Off" - -// d: It is used as softkey text. If pressed, the call isn't rejected, -// d: but an SMS editor with soft reject default text is opened. -// l: control_pane_t1/opt7 -// -#define qtn_softkey_soft_reject "Soft Reject" - -//d: soft reject text in the settings page -//l: list_set_graphic_pane_t1 -// -#define qtn_gs_soft_default_text "Hi, I’m busy at the moment, but I contact you a bit later." - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSBackgroundImage/GSBackgroundImage.mmp --- a/gssettingsuis/Gs/GSBackgroundImage/GSBackgroundImage.mmp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This is project specification for GS Background Image DLL -* -*/ - - - -#include - -// Capability assignment. -CAPABILITY CAP_GENERAL_DLL DRM - -TARGET backgroundimage.dll -TARGETTYPE DLL -UID 0x1000008d 0x101FD68C - -// This defines that the CGSModel uses IETD to enhance -// background and welcome note image while loading/processing. -MACRO __USE_IETD__ - -SOURCEPATH Src -SOURCE BackgroundImage.cpp -SOURCE GsAsyncImageHandling.cpp - -USERINCLUDE . -USERINCLUDE .. -USERINCLUDE Inc -USERINCLUDE ../Logger -USERINCLUDE ../Cenrep - -//System include paths -// Default system include paths for middleware layer modules. -MW_LAYER_SYSTEMINCLUDE - -// Libraries required by framework -LIBRARY bafl.lib -LIBRARY euser.lib -LIBRARY cone.lib -LIBRARY apparc.lib - -// Libraries for model -LIBRARY commonengine.lib // shareddata -LIBRARY efsrv.lib -LIBRARY estor.lib -LIBRARY mediaclientimage.lib // media server -LIBRARY sysutil.lib // memory CL check -LIBRARY fbscli.lib -LIBRARY apgrfx.lib // for Personalization app -LIBRARY drmcommon.lib -LIBRARY bitgdi.lib -LIBRARY cdlengine.lib //Scalable UI -LIBRARY imageconversion.lib //for image handling -LIBRARY avkon.lib -LIBRARY eikcore.lib -LIBRARY centralrepository.lib -LIBRARY phoneclient.lib -LIBRARY aknlayout2.lib -LIBRARY flogger.lib //tracing -LIBRARY drmparsers.lib -LIBRARY bitmaptransforms.lib //bitmap scaling - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSBackgroundImage/Src/BackgroundImage.cpp --- a/gssettingsuis/Gs/GSBackgroundImage/Src/BackgroundImage.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,542 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - - - -// INCLUDE FILES -#include "backgroundimage.h" -#include "GsLogger.h" -#include "settingsinternalcrkeys.h" -#include "SettingsPrivateCRKeys.h" - -#include -#include -#include -#include -#include -#include -#include //DRM v2 migration -#include -#include -#include -#include - - - -// CONSTANTS -// Setting values for Background and Welcome note image -const TInt KGSBackgroundModeImage = 1; -// estimated image max size in bytes -const TInt KGSMaxBackgroundImgSize = 520000; -// estimated image max size in bytes -const TInt KGSMaxWelcomeNoteImgSize = 100000; -const TInt KGSVTStillImageWidth = 176; -const TInt KGSVTStillImageHeight = 144; - -//Personalisation application is availble on ROM (1) or not (0) -const TInt KGSPlsnOnRom = 1; -const TInt KGSPlsnNotOnRom = 0; - -// other constants -_LIT( KGSBackgroundImgPath, "c:\\resource\\apps\\backgroundimage.mbm"); -_LIT( KGSVTStillImgPath, "c:\\resource\\apps\\vtstillimage.mbm"); - - - - -// FORWARD DECLARATIONS - - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CGSBackgroundImage::CGSBackgroundImage -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CGSBackgroundImage::CGSBackgroundImage() - { - } - -// ----------------------------------------------------------------------------- -// CGSBackgroundImage::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CGSBackgroundImage::ConstructL() - { - iPersonalizationRepository = - CRepository::NewL( KCRUidPersonalizationSettings ); - iStartupConfRepository = CRepository::NewL( KCRUidStartupConf ); - iTelephonyRepository = CRepository::NewL( KCRUidTelephonySettings ); - - iDisplayMode = CEikonEnv::Static()->ScreenDevice()->DisplayMode(); - } - - -// ----------------------------------------------------------------------------- -// CGSBackgroundImage::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -EXPORT_C CGSBackgroundImage* CGSBackgroundImage::NewL() - { - CGSBackgroundImage* self = new( ELeave ) CGSBackgroundImage; - - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - - return self; - } - - -// ---------------------------------------------------------------------------- -// Destructor -// -//----------------------------------------------------------------------------- -// -CGSBackgroundImage::~CGSBackgroundImage() - { - delete iPersonalizationRepository; - delete iStartupConfRepository; - delete iTelephonyRepository; - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::BackgroundImageL -// -// Returns background image mode. -// DEPRECATED -// ---------------------------------------------------------------------------- -// -EXPORT_C TInt CGSBackgroundImage::BackgroundImageL() - { - TInt image; - User::LeaveIfError( iPersonalizationRepository-> - Get( KSettingsBackgroundImage, image ) ); - return image; - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SetBackgroundImageL -// -// Sets background image mode. -// DEPRECATED -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::SetBackgroundImageL(const TInt aImage) - { - User::LeaveIfError( iPersonalizationRepository-> - Set( KSettingsBackgroundImage, aImage ) ); - if (aImage != KGSBackgroundModeImage) - { - // It doesn't matter much if the image deletion fails, - // so no need to handle the error. - TRAP_IGNORE( DeleteImageL( KGSBackgroundImgPath ) ); - } - - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SetBackgroundImagePathL -// -// Sets background image. -// DEPRECATED -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::SetBackgroundImagePathL( - const TDesC& aImagePath ) - { - // Check if there is enough space in disk to store background image - if (SysUtil::FFSSpaceBelowCriticalLevelL(NULL, KGSMaxBackgroundImgSize)) - { - // don't show any own notes here - User::Leave(KErrDiskFull); - } - - // make sure there is no memory leaks because of iBitmap and iDimmedBmp - if (iBitmap) - { - delete iBitmap; - iBitmap = NULL; - } - - iBitmap = new(ELeave) CFbsBitmap; - - TRect appRect = iAvkonAppUi->ApplicationRect(); - TAknLayoutRect layout; - - layout.LayoutRect(appRect, AknLayout::wallpaper_pane()); - LoadImageL(aImagePath, layout.Rect().Width(), layout.Rect().Height(), - ETrue, EGSWallpaperIdle); - TBuf<1> KGSNullParam; - SaveBitmapsL( KGSNullParam, KGSNullParam ); - - delete iBitmap; - iBitmap = NULL; - User::LeaveIfError( iPersonalizationRepository-> - Set( KSettingsBackgroundImagePath, KGSBackgroundImgPath ) ); - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SetBackgroundImagePathL -// Sets background image. Does not store image to SD -// Overloaded function, takes 2 parameters -// DEPRECATED -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::SetBackgroundImagePathL( - const TDesC& aImagePath, - TDes& aBmpFileName ) - { - SetBackgroundImagePathL( aImagePath, aBmpFileName, EGSWallpaperIdle ); - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SetBackgroundImagePathL -// Sets background image. Does not store image to SD -// Overloaded function, takes 3 parameters -// DEPRECATED -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::SetBackgroundImagePathL( - const TDesC& aImagePath, - TDes& aBmpFileName, - TGSWallpaperType aWallpaperType ) - { - // Check if there is enough space in disk to store background image - if (SysUtil::FFSSpaceBelowCriticalLevelL(NULL, KGSMaxBackgroundImgSize)) - { - // don't show any own notes here - User::Leave(KErrDiskFull); - } - - // Make sure there is no memory leaks because of iBitmap and iDimmedBmp - if (iBitmap) - { - delete iBitmap; - iBitmap = NULL; - } - - iBitmap = new(ELeave) CFbsBitmap; - - if( aWallpaperType == EGSWallpaperIdle ) - { - //Reading wallpaper size - __GSLOGSTRING( - "[CGSBackgroundImage] SetBackgroundImagePathL |->"); - TRect screenRect( CEikonEnv::Static()->ScreenDevice()->SizeInPixels() ); - TAknLayoutRect appRect; - appRect.LayoutRect( - screenRect, - AknLayout::application_window( screenRect ) ); - TAknLayoutRect mainRectSmall; - mainRectSmall.LayoutRect( - appRect.Rect(), - AknLayout::main_pane( appRect.Rect(), 0, 1, 1 ) ); - TAknLayoutRect layout; - layout.LayoutRect( mainRectSmall.Rect(), AknLayout::wallpaper_pane() ); - - __GSLOGSTRING("[CGSBackgroundImage] SetBackgroundImagePathL"); - LoadImageL(aImagePath, layout.Rect().Width(), layout.Rect().Height(), - ETrue, EGSWallpaperIdle); - } - else if( aWallpaperType == EGSWallpaperPinboard ) - { - //Reading wallpaper size - __GSLOGSTRING("[CGSBackgroundImage] SetBackgroundImagePathL 1"); - - TRect screenRect( CEikonEnv::Static()->ScreenDevice()->SizeInPixels() ); - TAknLayoutRect appRect; - appRect.LayoutRect( - screenRect, - AknLayout::application_window( screenRect ) ); - TAknLayoutRect mainRectSmall; - mainRectSmall.LayoutRect( - appRect.Rect(), - AknLayout::main_pane( appRect.Rect(), 0, 0, 1 ) ); - TAknLayoutRect layout; - - layout.LayoutRect( - mainRectSmall.Rect(), AknLayoutScalable_Apps::bg_pinb_pane(0) ); - - __GSLOGSTRING("[CGSBackgroundImage] SetBackgroundImagePathL 2"); - LoadImageL(aImagePath, layout.Rect().Width(), layout.Rect().Height(), - ETrue, EGSWallpaperPinboard); - __GSLOGSTRING("[CGSBackgroundImage] SetBackgroundImagePathL -|"); - } - - SaveBitmapsL( aBmpFileName, aImagePath ); - - delete iBitmap; - iBitmap = NULL; - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SetWelcomeNoteImageL -// -// Sets welcome note image's path -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::SetWelcomeNoteImageL(const TDesC& aImagePath, - CGSAsyncImageHandling& aImgHandler ) - { - // Check if there is enough space in disk to store welcome note image - if ( SysUtil::FFSSpaceBelowCriticalLevelL( NULL, KGSMaxWelcomeNoteImgSize ) ) - { - // don't show any own notes here - User::Leave( KErrDiskFull ); - } - - - - TRect screen = iAvkonAppUi->ApplicationRect(); - TInt screenWidth = screen.Width() - 2; - TInt screenHeight = screen.Height() - 2; - - //rescale - aImgHandler.ProcessImageL( aImagePath, screenWidth, screenHeight, - EGSWelcomeNoteImage ); - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::LoadImageL -// Loads an image to bitmap and scales it if it's too large. -// Deprecated -// ---------------------------------------------------------------------------- -// -void CGSBackgroundImage::LoadImageL(const TDesC& /*aImagePath*/, - TInt /*aWidth*/, TInt /*aHeight*/, - TBool /*aBgImage*/, TGSWallpaperType /*aWallpaperType*/) - { - } - - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SaveBitmapsL -// Stores background image and dimmed image to the same mbm file. -// ---------------------------------------------------------------------------- -// -void CGSBackgroundImage::SaveBitmapsL( TDes& aBmpFileName, - const TDesC& aOriginalFullname ) - { - RFs fs; - User::LeaveIfError( fs.Connect() ); - CleanupClosePushL( fs ); - - CDirectFileStore* fileStore; - if( aBmpFileName != KNullDesC ) - { - fileStore = CDirectFileStore::ReplaceLC( - fs, aBmpFileName, EFileWrite ); - } - else - { - fileStore = CDirectFileStore::ReplaceLC( - fs, KGSBackgroundImgPath, EFileWrite ); - } - - TUidType uidType( KDirectFileStoreLayoutUid, KMultiBitmapFileImageUid ); - fileStore->SetTypeL( uidType ); - - RStoreWriteStream bmpStream; - TStreamId imgId = bmpStream.CreateLC( *fileStore ); - iBitmap->ExternalizeL( bmpStream ); - - CleanupStack::PopAndDestroy(); //bmpStream - - RStoreWriteStream rootStream; - // create root stream - TStreamId rootStreamId = rootStream.CreateLC( *fileStore ); - rootStream.WriteInt32L( 1 ); // number of bitmaps - - rootStream << imgId; // stream id of bitmap - - CleanupStack::PopAndDestroy(); //rootStream - - fileStore->SetRootL( rootStreamId ); - CleanupStack::PopAndDestroy(); // filestore; - - TBool isprotected( EFalse ); - - DRMCommon* drmclient = DRMCommon::NewL(); - - CleanupStack::PushL( drmclient ); - TInt error = drmclient->Connect(); - if ( error != DRMCommon::EOk ) - { - User::Leave( KErrCorrupt ); - } - - if ( aOriginalFullname != KNullDesC ) - { - error = drmclient->IsProtectedFile( aOriginalFullname, isprotected ); - if ( error != DRMCommon::EOk ) - { - User::Leave( KErrCorrupt ); - } - } - - - if ( isprotected ) - { - HBufC8* contenturi = NULL; - HBufC8* mimetype = NULL; - DRMCommon::TContentProtection contentProtection; - TUint datalen( 0 ); - CDRMRights* rights = NULL; - - - error = drmclient->GetFileInfo( - aOriginalFullname, contentProtection, - mimetype, contenturi, datalen ); - CleanupStack::PushL( mimetype ); - CleanupStack::PushL( contenturi ); - if ( error != DRMCommon::EOk ) - { - User::Leave( KErrCorrupt ); - } - - drmclient->GetActiveRights( - *contenturi, DRMCommon::EDisplay, rights ); - CleanupStack::PushL( rights ); - - RFile file; - User::LeaveIfError( file.Open( fs, aBmpFileName, - EFileWrite|EFileShareAny ) ); - CleanupClosePushL( file ); - - TInt filesize( 0 ); - User::LeaveIfError( file.Size( filesize ) ); - HBufC8* content = HBufC8::NewL( filesize ); // use actual filesize - - CleanupStack::PushL( content ); - - TPtr8 readPtr( content->Des() ); - User::LeaveIfError( file.Read( readPtr ) ); - - CleanupStack::Pop(); // content - COma1DcfCreator* dcfCreator = COma1DcfCreator::NewL(); - dcfCreator->EncryptContentL( content, *mimetype, rights ); - CleanupStack::PushL( content ); - - TInt offset = 0; - User::LeaveIfError( file.Seek( ESeekStart,offset ) ); - TPtr8 writePtr( content->Des() ); - User::LeaveIfError( file.Write( writePtr ) ); - User::LeaveIfError( file.Flush() ); - // mimetype, contenturi, rights, file, content - CleanupStack::PopAndDestroy(5); - delete dcfCreator; - } - - drmclient->Disconnect(); - CleanupStack::PopAndDestroy(2); // fs & drmclient - } - - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::DeleteImageL -// Deletes file specified in the parameter. -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::DeleteImageL(const TDesC& aImagePath) - { - RFs fs; - User::LeaveIfError(fs.Connect()); - CleanupClosePushL(fs); - - User::LeaveIfError(fs.Delete(aImagePath)); - - CleanupStack::PopAndDestroy(); // fs - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::SetVTStillImagePathL -// -// Sets VT still image. -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::SetVTStillImagePathL( - const TDesC& aImagePath, - CGSAsyncImageHandling& aImgHandler ) - { - // Check if there is enough space in disk to store still image - if (SysUtil::FFSSpaceBelowCriticalLevelL(NULL, KGSMaxBackgroundImgSize)) - { - // don't show any own notes here - User::Leave(KErrDiskFull); - } - aImgHandler.ProcessImageL( aImagePath, KGSVTStillImageWidth, - KGSVTStillImageHeight, EGSVtStillImage ); - User::LeaveIfError( iTelephonyRepository-> - Set( KSettingsVTStillImagePath, KGSVTStillImgPath ) ); - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::GetPlnsStatus -// -// Check if Personalisation application is on the device -// ---------------------------------------------------------------------------- -// -EXPORT_C TInt CGSBackgroundImage::GetPlnsStatus() - { - TRAP_IGNORE( IsPersonalisationApplicationL() ); - return iPlnsInDevice; - } - -// ---------------------------------------------------------------------------- -// CGSBackgroundImage::IsPersonalisationApplication -// -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSBackgroundImage::IsPersonalisationApplicationL() - { - RApaLsSession session; - User::LeaveIfError( session.Connect() ); - - const TUid KUidPsln = { 0x10005A32 }; - TApaAppInfo appInfo; - TInt search = session.GetAppInfo( appInfo, KUidPsln ); - session.Close(); - - if ( search == KErrNone ) - { - TParse fileInfo; - fileInfo.Set( appInfo.iFullName, NULL, NULL ); - TPtrC drive = fileInfo.Drive(); - _LIT( KZDrive, "Z:" ); - if ( drive == KZDrive ) - { - iPlnsInDevice = KGSPlsnOnRom; - } - else - { - iPlnsInDevice = KGSPlsnNotOnRom; - } - } - else - { - iPlnsInDevice = KErrNotFound; - } - } - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSBackgroundImage/Src/GsAsyncImageHandling.cpp --- a/gssettingsuis/Gs/GSBackgroundImage/Src/GsAsyncImageHandling.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,445 +0,0 @@ -/* -* Copyright (c) 2005-2007 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: -* -*/ - - -// INCLUDE FILES -#include "gsasyncimagehandling.h" -#include -#include -#include -#include -#include - -#include "mgsasyncimagehandlingobserver.h" -#include "GsLogger.h" - -#include -#include -#include - -//_LIT( KGSWelcomeNoteImgPath, "c:\\private\\100058ec\\welcomeimage.mbm"); - -const TInt KGSVTStillImageWidth = 176; -const TInt KGSVTStillImageHeight = 144; - - -// ================= MEMBER FUNCTIONS ======================= - -// --------------------------------------------------------------------------- -// CGSAsyncImageHandling::CGSAsyncImageHandling -// C++ constructor. -// -// --------------------------------------------------------------------------- -// -CGSAsyncImageHandling::CGSAsyncImageHandling( RFs& aFs, - MGSAsyncImageHandlingObserver* aObserver, - const TDesC& aDestinationPath ) - : CActive( EPriorityNormal ), - iObserver( aObserver ), - iFs( aFs ), - iDestinationPath( aDestinationPath ) - - { - CActiveScheduler::Add( this ); - } - - -// --------------------------------------------------------------------------- -// CGSAsyncImageHandling::NewL() -// C++ constructor. -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSAsyncImageHandling* CGSAsyncImageHandling::NewL( RFs& aFs, - MGSAsyncImageHandlingObserver* aObserver, - const TDesC& aDestinationPath ) - { - CGSAsyncImageHandling* self = - new( ELeave ) CGSAsyncImageHandling( aFs, aObserver, - aDestinationPath ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - - return self; - } - - -// ----------------------------------------------------------------------------- -// CGSAsyncImageHandling::ConstructL -// Symbian 2nd phase constructor can leave. -// -// ----------------------------------------------------------------------------- -// -void CGSAsyncImageHandling::ConstructL() - { - iStartupRepository = CRepository::NewL( KCRUidStartupConf ); - iBitmapScaler = CBitmapScaler::NewL(); - } - - -// --------------------------------------------------------------------------- -// CGSAsyncImageHandling::~CGSAsyncImageHandling -// destructor. -// -// --------------------------------------------------------------------------- -// -CGSAsyncImageHandling::~CGSAsyncImageHandling() - { - Cancel(); - - if ( iStartupRepository ) - { - delete iStartupRepository; - } - - if( iDecoder ) - { - delete iDecoder; - } - - if ( iBitmapScaler ) - { - delete iBitmapScaler; - } - - if ( iBitmap ) - { - delete iBitmap; - } - } - -// --------------------------------------------------------------------------- -// CGSAsyncImageHandling::ProcessImageL -// -// Processing the image asynchronously -// --------------------------------------------------------------------------- -// -void CGSAsyncImageHandling::ProcessImageL( const TDesC& aFileName, - TInt aScreenWidth, - TInt aScreenHeight, - TGSBgImageType aBgImageType ) - { -__GSLOGSTRING1( "[CGSAsyncImageHandling] process image %S", &aFileName ); - - TInt frameNumber = 0; //for JPEG & bmp images - iBgImageType = aBgImageType; - - // make sure there is no memory leaks because of iBitmap and iDimmedBmp - if (iBitmap) - { - delete iBitmap; - iBitmap = NULL; - } - iBitmap = new(ELeave) CFbsBitmap; - - // Loading image from file into CFbsBitmap - CImageDecoder::GetMimeTypeFileL( iFs, aFileName, iMimeString ); - iDecoder = CImageDecoder::FileNewL( iFs, aFileName, - CImageDecoder::EOptionNone ); - - TFrameInfo frameInfo = iDecoder->FrameInfo(); - TSize imgSize = frameInfo.iOverallSizeInPixels; - - - TDisplayMode displayMode = GetDisplayMode( frameInfo ); - - TSize screenSize( aScreenWidth, aScreenHeight ); - TSize loadSize( CalculateLoadSize( frameInfo, screenSize ) ); - iScaleSize = loadSize; - - iBitmap->Reset(); - User::LeaveIfError( iBitmap->Create( imgSize, displayMode ) ); - iDecoder->Convert( &iStatus, *iBitmap, frameNumber ); - - if ( aBgImageType == EGSWelcomeNoteImage ) - { - iState = EGSWelcomeConversion; - } - else if ( aBgImageType == EGSVtStillImage ) - { - iState = EGSVTConversion; - } - - SetActive(); - } - -// --------------------------------------------------------------------------- -// CGSAsyncImageHandling::GetDisplayMode -// -// Dithers the image to attain the required dithering according to the display -// mode settings -// --------------------------------------------------------------------------- -// -TDisplayMode CGSAsyncImageHandling::GetDisplayMode( const TFrameInfo& aFrameInfo ) - { - if( aFrameInfo.iFlags & TFrameInfo::ECanDither ) - { - if( aFrameInfo.iFrameDisplayMode < EColor64K ) - { - return aFrameInfo.iFrameDisplayMode; - } - else - { - return EColor64K; - } - } - else - { - return aFrameInfo.iFrameDisplayMode; - } - } - - -// ----------------------------------------------------------------------------- -// CGSAsyncImageHandling::RunL -// -// -// --------------------------------------------------------------------------- -// -void CGSAsyncImageHandling::RunL() - { - if( iStatus.Int() == KErrNone ) - { - switch( iState ) - { - case EGSWelcomeConversion: - iBitmapScaler->Scale(&iStatus, *iBitmap, iScaleSize, ETrue ); - iState = EGSWelcomeScaling; - SetActive(); - break; - - case EGSWelcomeScaling: - { - TInt err = iBitmap->Save( iDestinationPath ); - iStartupRepository->Set( KStartupWelcomeNoteImage, - iDestinationPath ); - - //raising completion event - iObserver->ImageHandlingCompleteL( iStatus.Int() ); - Cancel(); - } - break; - - case EGSVTConversion: - iBitmapScaler->Scale(&iStatus, *iBitmap, iScaleSize, ETrue ); - iState = EGSVTScaling; - SetActive(); - break; - - case EGSVTScaling: - SaveVTStillImageL(); - iObserver->ImageHandlingCompleteL( iStatus.Int() ); - Cancel(); - break; - - default: - break; - } - } - else - { - iObserver->ImageHandlingCompleteL( iStatus.Int() ); - Cancel(); - } - } - -// ----------------------------------------------------------------------------- -// CGSAsyncImageHandling::DoCancel -// -// -// --------------------------------------------------------------------------- -// -void CGSAsyncImageHandling::DoCancel() - { - if ( iDecoder ) - { - iDecoder->Cancel(); - } - - if ( iBitmapScaler ) - { - iBitmapScaler->Cancel(); - } - - delete iDecoder; - iDecoder = NULL; - } - -// ----------------------------------------------------------------------------- -// CGSAsyncImageHandling::RunError -// -// -// --------------------------------------------------------------------------- -// -TInt CGSAsyncImageHandling::RunError( TInt aError ) - { - TRAP_IGNORE( iObserver->ImageHandlingCompleteL( aError ) ); - DoCancel(); - return aError; - } - -// ---------------------------------------------------------------------------- -// TSize CGSAsyncImageHandling::CalculateLoadSize -// -// Calculates the load size -// ---------------------------------------------------------------------------- -// -TSize CGSAsyncImageHandling::CalculateLoadSize( TFrameInfo& aFrameInfo, - const TSize aScreenSize ) - { - TReal perfectAspect = ( TReal )( - ( TReal )aScreenSize.iWidth/ - ( TReal )aScreenSize.iHeight ); - TReal aspect = ( TReal )( - ( TReal )aFrameInfo.iFrameCoordsInPixels.Width()/ - ( TReal )aFrameInfo.iFrameCoordsInPixels.Height() ); - TSize size( aScreenSize.iWidth, aScreenSize.iHeight ); - TSize cropsize( aScreenSize.iWidth, aScreenSize.iHeight ); - - TAknWindowLineLayout layout = AknLayout::wallpaper_pane(); - if( aFrameInfo.iFrameCoordsInPixels.Width() > aScreenSize.iWidth || - aFrameInfo.iFrameCoordsInPixels.Height() > aScreenSize.iHeight ) - { - //calculating dynamically range for image aspect ratio close to screen - TReal maxAspect = ((TReal)aScreenSize.iWidth/(TReal)aScreenSize.iHeight) + 0.12; - TReal minAspect = ((TReal)aScreenSize.iWidth/(TReal)aScreenSize.iHeight) - 0.12; - - if (aspect >= minAspect && aspect <= maxAspect ) - { - if( aspect < perfectAspect ) - { - size.iWidth = aScreenSize.iWidth; - size.iHeight = (TInt)((TReal)aScreenSize.iWidth/ - (TReal)aFrameInfo.iFrameCoordsInPixels.Width()* - (TReal)aFrameInfo.iFrameCoordsInPixels.Height()); - } - else - { - size.iWidth = (TInt)((TReal)aScreenSize.iHeight/ - (TReal)aFrameInfo.iFrameCoordsInPixels.Height()* - (TReal)aFrameInfo.iFrameCoordsInPixels.Width()); - size.iHeight = aScreenSize.iHeight; - } - if (size.iWidth > aScreenSize.iWidth) - { - cropsize.iWidth = aScreenSize.iWidth; - } - else - { - cropsize.iWidth = size.iWidth; - } - if (size.iHeight > aScreenSize.iHeight) - { - cropsize.iHeight = aScreenSize.iHeight; - } - else - { - cropsize.iHeight = size.iHeight; - } - } - else - { - // Scale and maintain aspect ratio - if( aspect < perfectAspect ) - { - if (aFrameInfo.iFrameCoordsInPixels.Height() > aScreenSize.iHeight) - { - size.iWidth = (TInt)((TReal)aScreenSize.iHeight/ - (TReal)aFrameInfo.iFrameCoordsInPixels.Height()* - (TReal)aFrameInfo.iFrameCoordsInPixels.Width()); - size.iHeight = aScreenSize.iHeight; - } - } - else - { - if (aFrameInfo.iFrameCoordsInPixels.Width() > aScreenSize.iWidth) - { - size.iWidth = aScreenSize.iWidth; - size.iHeight = (TInt)((TReal)aScreenSize.iWidth/ - (TReal)aFrameInfo.iFrameCoordsInPixels.Width()* - (TReal)aFrameInfo.iFrameCoordsInPixels.Height()); - } - } - } - } - - return size; - } - -// ----------------------------------------------------------------------------- -// CGSAsyncImageHandling::SaveVTStillImageL -// -// -// --------------------------------------------------------------------------- -// -void CGSAsyncImageHandling::SaveVTStillImageL() - { - //creating new and merging - const TSize KStillImageSize( KGSVTStillImageWidth, KGSVTStillImageHeight ); - - CFbsBitmap* newBitmap = new ( ELeave ) CFbsBitmap; - CleanupStack::PushL( newBitmap ); - - User::LeaveIfError( - newBitmap->Create( KStillImageSize, iBitmap->DisplayMode() ) ); - - CFbsBitmapDevice* device = CFbsBitmapDevice::NewL( newBitmap ); - CleanupStack::PushL( device ); - - CFbsBitGc* context = NULL; - User::LeaveIfError( device->CreateContext( context ) ); - User::LeaveIfNull( context ); - - context->SetPenStyle( CGraphicsContext::ENullPen ); - context->SetBrushColor( TRgb( 0, 0, 0 ) ); // black color - context->SetBrushStyle( CGraphicsContext::ESolidBrush ); - context->Clear(); - - const TSize scaledImageSize( iBitmap->SizeInPixels() ); - - TInt xPos = ( KStillImageSize.iWidth - scaledImageSize.iWidth ) / 2; - TInt yPos = ( KStillImageSize.iHeight - scaledImageSize.iHeight ) / 2; - - context->BitBlt( TPoint( xPos, yPos ), iBitmap ); - - delete context; - CleanupStack::PopAndDestroy( device ); - - //saving bitmap - CPhCltImageHandler* phCltImageHandler = CPhCltImageHandler::NewL(); - CleanupStack::PushL( phCltImageHandler ); - - // Acquires ownership of *imageParams - // Bad naming for create-function CPhCltBaseImageParamsL(). - CPhCltImageParams* imageParams = phCltImageHandler-> - CPhCltBaseImageParamsL( EPhCltTypeVTStill ); - CleanupStack::PushL( imageParams ); - TInt ret = newBitmap->Handle(); - imageParams->AddImageL( ret ); - phCltImageHandler->SaveImages( *imageParams ); - CleanupStack::PopAndDestroy( imageParams ); - CleanupStack::PopAndDestroy( phCltImageHandler ); - - delete iBitmap; - iBitmap = NULL; - - CleanupStack::PopAndDestroy( newBitmap ); - } - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSBackgroundImage/bld.inf --- a/gssettingsuis/Gs/GSBackgroundImage/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file provides the information required for building - GSBackgroundImage. -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../rom/GSBackgroundImage.iby CORE_MW_LAYER_IBY_EXPORT_PATH( gsbackgroundimage.iby ) - -PRJ_MMPFILES -GSBackgroundImage.mmp - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSBackgroundImage/clean.cmd --- a/gssettingsuis/Gs/GSBackgroundImage/clean.cmd Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -rem -rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -rem All rights reserved. -rem This component and the accompanying materials are made available -rem under the terms of "Eclipse Public License v1.0" -rem which accompanies this distribution, and is available -rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -rem -rem Initial Contributors: -rem Nokia Corporation - initial contribution. -rem -rem Contributors: -rem -rem Description: -rem - -del *.cwlink -del *.mcp -del *.xml -del *.resources -del *_UID_.cpp -rd GSBackgroundImage_Data /s /q \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/GSEcomPlugin.mmp --- a/gssettingsuis/Gs/GSFramework/GSEcomPlugin.mmp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This is project specification file for GSEcomPlugin.dll. -* -*/ - -#include "../Logger/GsLoggingConfiguration.h" -#include -#include - -CAPABILITY CAP_GENERAL_DLL -VENDORID VID_DEFAULT -TARGET gsecomplugin.dll -TARGETTYPE DLL -UID 0x1000008d 0x1020723C - -// Source files -SOURCEPATH src -SOURCE GSPluginInterface.cpp - -// User include paths -//USERINCLUDE ../data -//USERINCLUDE data -//USERINCLUDE ../Logger -USERINCLUDE inc - -// System include paths - -MW_LAYER_SYSTEMINCLUDE -SYSTEMINCLUDE /epoc32/include/ecom - -SOURCEPATH data -// CGSPluginInterface icon resources -START RESOURCE GSFrameworkRsc.rss -HEADER -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END - - -// Libraries required by framework -LIBRARY aknskins.lib // for enhanced skinning -LIBRARY aknskinsrv.lib // for enhanced skinning -LIBRARY apgrfx.lib // for RApaLsSession -LIBRARY apparc.lib -LIBRARY avkon.lib -LIBRARY bafl.lib -LIBRARY charconv.lib //for CnvUtfConverter used in CGSPluginLoader -LIBRARY commonengine.lib // for RConeResourceLoader -LIBRARY cone.lib -LIBRARY ecom.lib -LIBRARY efsrv.lib -LIBRARY egul.lib // CGulIcon -LIBRARY eikcoctl.lib -LIBRARY eikcore.lib -LIBRARY eikctl.lib // CEikColumnListBox -LIBRARY euser.lib -LIBRARY fbscli.lib // for CFbsBitmap -LIBRARY featmgr.lib // feature manager -LIBRARY flogger.lib // logging -LIBRARY hlplch.lib // for "Help" options menu -LIBRARY ws32.lib - - -SOURCEPATH data - -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/GSFWIcons.mk --- a/gssettingsuis/Gs/GSFramework/GSFWIcons.mk Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ -# -# Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -# All rights reserved. -# This component and the accompanying materials are made available -# under the terms of "Eclipse Public License v1.0" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Nokia Corporation - initial contribution. -# -# Contributors: -# -# Description: -# - -ifeq (WINS,$(findstring WINS, $(PLATFORM))) -ZDIR=\epoc32\release\$(PLATFORM)\$(CFG)\Z -else -ZDIR=\epoc32\data\z -endif - -# ---------------------------------------------------------------------------- -# -# ---------------------------------------------------------------------------- - -TARGETDIR=$(ZDIR)\resource\apps -HEADERDIR=\epoc32\include -ICONTARGETFILENAME=$(TARGETDIR)\gsfwicon.mif -HEADERFILENAME=$(HEADERDIR)\gsfwicon.mbg - -do_nothing : - @rem do_nothing - -MAKMAKE : do_nothing - -BLD : do_nothing - -CLEAN : do_nothing - -LIB : do_nothing - -CLEANLIB : do_nothing - -# ---------------------------------------------------------------------------- -# -# -# NOTE 1: DO NOT DEFINE MASK FILE NAMES! They are included automatically by -# MifConv if the mask detph is defined. -# -# NOTE 2: Usually, source paths should not be included in the bitmap -# definitions. MifConv searches for the icons in all icon directories in a -# predefined order, which is currently \s60\icons, \s60\bitmaps2, \s60\bitmaps. -# The directory \s60\icons is included in the search only if the feature flag -# __SCALABLE_ICONS is defined. -# ---------------------------------------------------------------------------- - -RESOURCE : - mifconv $(ICONTARGETFILENAME) /h$(HEADERFILENAME) \ - /c8,8 qgn_prop_set_default_sub.bmp \ - /c8,1 qgn_prop_set_device_tab4.bmp - - -FREEZE : do_nothing - -SAVESPACE : do_nothing - -RELEASABLES : - @echo $(HEADERFILENAME)&& \ - @echo $(ICONTARGETFILENAME) - -FINAL : do_nothing diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/GSFramework.mmp --- a/gssettingsuis/Gs/GSFramework/GSFramework.mmp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,107 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This is project specification file for GSFramework. -* -*/ - -#include "../Logger/GsLoggingConfiguration.h" -#include -#include - -CAPABILITY CAP_GENERAL_DLL -VENDORID VID_DEFAULT -TARGET gsframework.dll -TARGETTYPE DLL -UID 0x1000008d 0x1020723F - -// Source files -SOURCEPATH src -SOURCE GSBaseContainer.cpp -SOURCE GSBaseView.cpp -SOURCE GSParentContainer.cpp -SOURCE GSParentPlugin.cpp -SOURCE GSPluginLoader.cpp -SOURCE GSTabHelper.cpp -SOURCE GSPluginWrapper.cpp -SOURCE GSBaseDocument.cpp -SOURCE GSPluginAndViewIdCache.cpp -SOURCE GSPlaceholderView.cpp -SOURCE GSShimmedView.cpp -SOURCE GSPubSubsListener.cpp -SOURCE GSWatchDog.cpp -SOURCE GSEComNotifier.cpp - -// User include paths -USERINCLUDE data -USERINCLUDE inc -USERINCLUDE ../Logger -USERINCLUDE ../Data -USERINCLUDE ../Cenrep - -// System include paths - -MW_LAYER_SYSTEMINCLUDE -SYSTEMINCLUDE /epoc32/include/ecom - -// Parent plugin resources -SOURCEPATH data -START RESOURCE GSParentPluginRsc.rss -HEADER -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END - -// CGSPluginInterface icon resources -SOURCEPATH data -START RESOURCE GSFrameworkRsc.rss -HEADER -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END - -// Libraries required by framework -LIBRARY aknskins.lib // for enhanced skinning -LIBRARY aknskinsrv.lib // for enhanced skinning -LIBRARY apgrfx.lib // for RApaLsSession -LIBRARY apparc.lib -LIBRARY avkon.lib -LIBRARY bafl.lib -LIBRARY charconv.lib //for CnvUtfConverter used in CGSPluginLoader -LIBRARY commonengine.lib // for RConeResourceLoader -LIBRARY cone.lib -LIBRARY ecom.lib -LIBRARY efsrv.lib -LIBRARY egul.lib // CGulIcon -LIBRARY eikcoctl.lib -LIBRARY eikcore.lib -LIBRARY eikctl.lib // CEikColumnListBox -LIBRARY euser.lib -LIBRARY fbscli.lib // for CFbsBitmap -LIBRARY featmgr.lib // feature manager -LIBRARY flogger.lib // logging -LIBRARY gsecomplugin.lib -LIBRARY ws32.lib -LIBRARY estor.lib -LIBRARY centralrepository.lib // GSWatchDog - -SOURCEPATH data -DOCUMENT ../GSFWIcons.mk -DOCUMENT GSFrameworkRsc.rss -DOCUMENT GSParentPluginRsc.rss - -SOURCEPATH ../Data -DOCUMENT GSCommonResources.rss - -//End of File - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/bld.inf --- a/gssettingsuis/Gs/GSFramework/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,48 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file provides the information required for building framework. -* -* -*/ - - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -//#ifdef __SERIES60_HELP -../GSFramework/inc/conset.hlp.hrh /epoc32/include/cshelp/conset.hlp.hrh -../GSFramework/inc/div.hlp.hrh /epoc32/include/cshelp/div.hlp.hrh -//../GSFramework/inc/set.hlp.hrh /epoc32/include/cshelp/set.hlp.hrh -//#endif //__SERIES60_HELP - -PRJ_EXTENSIONS -START EXTENSION s60/mifconv - OPTION TARGETFILE gsfwicon.mif - OPTION HEADERFILE gsfwicon.mbg - OPTION SOURCES -c8,8 qgn_prop_set_default_sub -c8,1 qgn_prop_set_device_tab4 -END - -PRJ_MMPFILES - -GSEcomPlugin.mmp -GSFramework.mmp - -PRJ_TESTMMPFILES - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/clean.cmd --- a/gssettingsuis/Gs/GSFramework/clean.cmd Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -rem -rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -rem All rights reserved. -rem This component and the accompanying materials are made available -rem under the terms of "Eclipse Public License v1.0" -rem which accompanies this distribution, and is available -rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -rem -rem Initial Contributors: -rem Nokia Corporation - initial contribution. -rem -rem Contributors: -rem -rem Description: -rem - -del *.cwlink -del *.mcp -del *.xml -del *.resources -del *_UID_.cpp -rd GSFramework_Data /s /q \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/data/GSFrameworkRsc.rss --- a/gssettingsuis/Gs/GSFramework/data/GSFrameworkRsc.rss Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,70 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Resource file for GS framework. -* -*/ - - -// RESOURCE IDENTIFIER -NAME GSFW // 4 letter ID - -// INCLUDES -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - - -// CONSTANTS - -RESOURCE RSS_SIGNATURE - { - } - -//---------------------------------------------------- -// -// r_gs_plugin_default_icon_array -// Default icons used by the CGSPluginInterface. -// -//---------------------------------------------------- -// -RESOURCE AKN_ICON_ARRAY r_gs_plugin_default_icon_array - { - bmpfile = KGsBitmap; - - icons = - { - AKN_ICON - { - iconId = EMbmGsfwiconQgn_prop_set_default_sub; - maskId = EMbmGsfwiconQgn_prop_set_default_sub_mask; - } - }; - } - - -//End of File - - - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/data/GSParentPluginRsc.rss --- a/gssettingsuis/Gs/GSFramework/data/GSParentPluginRsc.rss Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,54 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Resource file for GSParentPlugin. -* -*/ - - -// RESOURCE IDENTIFIER -NAME GSPP // 4 letter ID - -// INCLUDES -#include -#include -#include -#include -#include -#include -#include -#include - -// CONSTANTS - -RESOURCE RSS_SIGNATURE - { - } - -// Common resources among GS -#include "GSCommonResources.rss" - -// ----------------------------------------------------------------------------- -// -// r_gs_parentplugin_lbx -// GSParentPlugin listbox. -// -// ----------------------------------------------------------------------------- -// -RESOURCE LISTBOX r_gs_parentplugin_lbx - { - flags = EEikListBoxMultipleSelection; - } - -RESOURCE TBUF r_gs_parentplugin_cba_exit { buf = text_softkey_exit; } -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSBaseDocument.h --- a/gssettingsuis/Gs/GSFramework/inc/GSBaseDocument.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,126 +0,0 @@ -/* -* Copyright (c) 2002-2006 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: -* Base Document class required by Symbian OS architecture. -* -*/ - - -#ifndef GSBASEDOCUMENT_H -#define GSBASEDOCUMENT_H - -// INCLUDES -#include -#include - -// CONSTANTS - -// FORWARD DECLARATIONS -class CEikAppUi; -class CGSPluginWrapper; -class CGSPluginAndViewIdCache; -class MGSWatchDog; -class CGSWatchDog; - - -// CLASS DECLARATION - -/** -* CGSBaseDocument application class. -* @since Series60_3.1 -*/ -class CGSBaseDocument : public CAknDocument -{ - public: // Constructor and destructor - - /** - * Destructor. - */ - IMPORT_C ~CGSBaseDocument(); - - public: // New - - /** - * - */ - IMPORT_C CGSPluginWrapper* NewPluginUnloadWrapperLC(); - - /** - * - */ - IMPORT_C void PreparePluginCacheL( CEikAppUi& aAppUi ); - - /** - * - */ - IMPORT_C void PrepareForUIDestruction(); - - /** - * @return Pointer to GS application-wide watchdog. Does not transfer - * ownership. - */ - IMPORT_C MGSWatchDog* WatchDog(); - - /** - * Stored array of GS plugin implementation infos. Use this instead of - * repeatedly using REComSession::ListImplementationsL (performance). - * - * @ return reference to plugin inplementation info array. - * Does not transfer ownership. - */ - IMPORT_C RImplInfoPtrArray GetImplInfo(); - - IMPORT_C void CreateShimmedViewL(const TUid aViewUid); - - public: // API - but not exported - CGSPluginAndViewIdCache& PluginViewIdCache(); - const CGSPluginAndViewIdCache& PluginViewIdCache() const; - - protected: - - /** - * C++ constructor - */ - IMPORT_C CGSBaseDocument( CEikApplication& aApp ); - - /** - * Second phase constructor - */ - IMPORT_C void ConstructL(); - - private: // Cleanup support - static void CleanupPluginWrapperObject( TAny* aWrapper ); - void DoCleanupPluginWrapper( CGSPluginWrapper* aWrapper ); - static void PrintImplInfoArray( const RImplInfoPtrArray& aImplInfoArray ); - static void PrintImplInfo( const CImplementationInformation& aInfo ); - - private: // Data - - // Plugin view id cache - CGSPluginAndViewIdCache* iPluginViewIdCache; - - // Asynchronous loader for the GS plug-ins. - RPointerArray iUnloadWrapperObjects; - - // Watchdog used GS application-wide. Owned. - CGSWatchDog* iWatchDog; - - // Array of GS plugin implementation info-objects. Array is created on - // GS startup for better performance. Use this instead of repeatedly - // querying from ECOM. - RImplInfoPtrArray iImplInfoArray; -}; - -#endif // GSBASEDOCUMENT_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSEComNotifier.h --- a/gssettingsuis/Gs/GSFramework/inc/GSEComNotifier.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,141 +0,0 @@ -/* -* Copyright (c) 2008 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: GS utilities. -* -*/ - - -#ifndef GSECOMNOTIFIER_H -#define GSECOMNOTIFIER_H - -#include -#include - - - -/** - * Utility class to capsulate active object observing ECOM events. - * MGSEComObserver is provided as easy callback when GS related ECOM events - * occur. - * - * @lib GSFramework.lib - * @since S60 5.0 - */ -class MGSEComObserver - { -public: - - /** - * Not really used yet. To provide more extendability. - */ - enum TEComEvent - { - EPluginRemoved, - EPluginAdded - }; - -public: - virtual void HandleEComEvent( TEComEvent aEvent ) = 0; - }; - - -/** - * Utility class capsulating active object for observing ECOM events. - * - * @lib GSFramework.lib - * @since S60 5.0 - */ -NONSHARABLE_CLASS( CGSEComNotifier ) : public CActive - { -public: - - /** - * Two-phased constructor. - * - * @param aObserver Callback object. - * @param aImplInfo Initial list of ECOM interfaces against which new list - * is compared when ECOM events occur. - */ - IMPORT_C static CGSEComNotifier* NewL( MGSEComObserver* aObserver, - RImplInfoPtrArray aImplInfo ); - - /** - * Destructor. - */ - IMPORT_C virtual ~CGSEComNotifier(); - -protected: // from CActive - - /** - * See base class. - */ - void DoCancel(); - - /** - * See base class. - */ - void RunL(); - - /** - * See base class. - */ - TInt RunError( TInt aError ); - -protected: - -private: - - /** - * C++ Constructor. - * - * @param aObserver Callback object. - * @param aImplInfo Initial list of ECOM interfaces against which new list - * is compared when ECOM events occur. - */ - CGSEComNotifier( MGSEComObserver* aObserver, - RImplInfoPtrArray aImplInfo ); - - /** - * 2nd phase constructor. - */ - void ConstructL(); - - /** - * Issues new request. - */ - void IssueRequest(); - - /** - * @return Difference between old and new list of GS-plugins. Negative - * number means plugins are removed, positive means plugins are - * added, 0 means no change in plugin count. - */ - TInt PluginCountDeltaL(); - -private: // data - - // Callback. - MGSEComObserver* iObserver; - - // ECom handle. - REComSession iEComSession; - - // Stored original plugin info. This will be compared against latest info - // for any changes. - RImplInfoPtrArray iOriginalImplInfo; - - }; - - -#endif // GSECOMNOTIFIER_H diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSPlaceholderView.h --- a/gssettingsuis/Gs/GSFramework/inc/GSPlaceholderView.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,97 +0,0 @@ -/* -* Copyright (c) 2002-2006 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: Placeholder view during synchronous view activation -* -*/ - - -#ifndef GSPLACEHOLDERVIEW_H -#define GSPLACEHOLDERVIEW_H - -// INCLUDES -#include -#include -#include - -// CONSTANTS - -// FORWARD DECLARATIONS - -// CLASS DECLARATION - -/** -* Dummy view class used by CGSPluginAndViewIdCache view switching between two -* actual views. See CGSPluginAndViewIdCache for details. -* -* @since Series60_3.1 -* -*/ -class CGSPlaceholderView : public CBase, public MCoeView - { - public: // Constructor and destructor - - /** - * - */ - static CGSPlaceholderView* NewL( CCoeAppUi& aAppUi ); - - /** - * Destructor. - */ - ~CGSPlaceholderView(); - - private: - - /** - * C++ constructor - */ - CGSPlaceholderView( CCoeAppUi& aAppUi ); - - /** - * Second phase constructor - */ - void ConstructL(); - - public: // API - - /** - * - */ - void ActivateL(); - - /** - * - */ - const TVwsViewId& PreviouslyActiveViewId() const; - - /** - * - */ - void SetPreviouslyActiveViewId( const TVwsViewId& aViewId ); - - private: // From MCoeView - TVwsViewId ViewId() const; - void ViewActivatedL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId, const TDesC8& aCustomMessage ); - void ViewDeactivated(); - - private: // Internal methods - - private: // Data - CCoeAppUi& iAppUi; - TVwsViewId iPreviouslyActiveViewId; - }; - - -#endif // GSPLACEHOLDERVIEW_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSPluginAndViewIdCache.h --- a/gssettingsuis/Gs/GSFramework/inc/GSPluginAndViewIdCache.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,239 +0,0 @@ -/* -* Copyright (c) 2002-2006 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: Plugin and view id caching support -* -*/ - - -#ifndef GSPLUGINANDVIEWIDCACHE_H -#define GSPLUGINANDVIEWIDCACHE_H - -// INCLUDES -#include -#include -#include -#include - -// CONSTANTS - -// FORWARD DECLARATIONS -class CEikAppUi; -class CGSShimmedView; -class CGSPluginInterface; -class CGSPlaceholderView; - -// CLASS DECLARATION - -/** -* CGSPluginAndViewIdCache application class. -* - Creates/Loads a list of CGSShimmedViews from a cache file on GS start-up. -* - Inserts CGSShimmedViews into view-framework view list. -* -* -* Problem/rationale: -* Launching GS plugin view outside GS application when GS application is not -* already running may fail. This was caused by application inter working -* combined with GS application's asynchronized plugin loading. High level -* functionality for external view launching goes: -* 1. Application framework starts desired application -* 2. Application framework calls view-activation on the desired application view. -* 3. Desired view handles the activation call-back by drawing itself on -* screen or whatever required. -* -* Starting from phase 2, things can go wrong: when GS start-up call returns, GS -* has not yet loaded all the plugins and the views owned by plugins are not -* added yet to the view-framework view list. Calling non-existing view will -* naturally fail. -* -* -* Solution: -* When GS start-up is called, populate view-frameworks view list with all the -* views provided by GS application before function return. Kind of: This would -* ruin GS's asynchronous plugin loading and would cause devastating freeze-up -* times on GS start-up. Hence, on GS start-up we're not actually loading the -* plugins nor the real views. We use light-weight dummy views -* (aka CGSShimmedView) wich we add into view-framework view list immedieately -* on start-up. If it happens so, that the view framework-decides to call view -* activation on one of these dummy views, dummy view will load manually the -* real plugin view and switch it with the dummy view. Dummy views are created -* by CGSPluginAndViewIdCache on GS-application start-up. -* -* -* Different use scenarios: -* -* 1. First GS-application start on a new device, create cache & save as file. -* -* 2. Launch GS-application second time. Always populate CCoeAppUi with -* CGSShimmedView instances created from cache file (cache maps view uid -* to ecom plugin implementation uid). -* - When pluginloader loads plugin, it replaces dummy view (shim) with the real -* view from the plugin. The shim is then destroyed. -* -* 3. GS plugin view is activated externally when GS is not running: -* - Uses normal application framework to launch GS application. -* - Same functionality as in scenario 2 but if shimmed view is requested -* before actual view is created, load actual plugin manually and -* synchronously. -* - CGSPlaceholderView: View-FW will only switch between two different view -* uids. This is why we need to switch between 3 different views. -* -> Will result in 3x fold different view activation. -* - Used view activations are: -* 1. Shimmed view DoActivate for view uid . -* 2. Shimmed view calls Placeholder::DoActivate with a dummy "uid DEADBED". -* 3. Placeholder view calls actual plugin::DoActivate with actual view uid -* . -* -* -* NOTE: Requirements: -* - Cache: GS has to be launched once successfully for the cache to work. -* -> otherwise error if launching from external application. -* - Views which need to be used externally (external view launch) must be -* implemented as a GS-plugin. Those cannot be implemented as a local view. -* -* -* @since Series60_3.1 -* -*/ -class CGSPluginAndViewIdCache : public CBase - { - public: // Constructor and destructor - - /** - * - */ - static CGSPluginAndViewIdCache* NewL( CEikAppUi& aAppUi ); - - /** - * Destructor. - */ - ~CGSPluginAndViewIdCache(); - - private: - - /** - * C++ constructor - */ - CGSPluginAndViewIdCache( CEikAppUi& aAppUi ); - - /** - * Second phase constructor - */ - void ConstructL(); - - public: // API - placeholder view related - - /** - * - */ - void ActivatePlaceholderViewL(); - - /** - * - */ - const TVwsViewId& PriorToPlaceholderActiveViewId() const; - - /** - * - */ - void SetPriorToPlaceholderActiveViewId( const TVwsViewId& aViewId ); - - public: // API - caching - - /** - * - */ - void RegisterViewAndImplementationAssociationL( TUid aViewId, TUid aImplementationUid ); - - /** - * - */ - void RegisterViewAndImplementationAssociationL( TUid aViewId, TUid aImplementationUid, TBool aCreateShim ); - - /** - * - */ - void PrepareToRegisterPluginInstanceLC( TUid aViewId ); - - /** - * - */ - void RegisterPluginInstanceL( TUid aViewId, CGSPluginInterface& aPluginInstance ); - - /** - * - */ - TBool IsPluginLoaded( TUid aViewId ) const; - - /** - * - */ - CGSPluginInterface* PluginInstance( TUid aViewId ) const; - - /** - * - */ - TUid PluginImplementationUidForView( TUid aViewId ) const; - - /** - * - */ - void PrepareForUIDestruction(); - - /** - * - */ - void HandleShimDestruction( TUid aViewId ); - - private: // Internal methods - void DestroyShims(); - void RestoreL(); - void StoreL(); - void GetCacheFileNameL( TDes& aFileName ); - void GetCachePathL( TDes& aPath ); - static void ReRegisterShimWithUi( TAny* aSelf ); - - private: // Hash function support - static TUint32 HashFunction( const TUid& aViewId ); - static TBool HashIdentityRelation( const TUid& aLeft, const TUid& aRight ); - - private: // Internal object - - struct TCacheEntry - { - TUid iImplementationUid; - CGSShimmedView* iShim; - CGSPluginInterface* iLoadedPluginImplementation; - }; - - private: // Data - - // UI - not owned - CEikAppUi& iAppUi; - - // File server session - owned - RFs iFsSession; - - // Cache table - owned - RHashMap< TUid /* KEY = view id */, TCacheEntry /* VALUE */ > iLookupTable; - - // Placeholder view - owned - CGSPlaceholderView* iPlaceholderView; - - // Transient variable used during plugin registration preparation. - TUid iTransientCleanupViewUid; - }; - - -#endif // GSBASEDOCUMENT_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSPluginWrapper.h --- a/gssettingsuis/Gs/GSFramework/inc/GSPluginWrapper.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,77 +0,0 @@ -/* -* Copyright (c) 2002-2006 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: -* -*/ - - -#ifndef GSPLUGINWRAPPER_H -#define GSPLUGINWRAPPER_H - -// System includes -#include - -// Classes referenced -class CGSBaseDocument; - - -/** - * Utility class for separating ECOM plugin destruction from view-framework - * view cleanup. - * - * Owned by CGSBaseDocument which has the longest lifetime during GS - * application run. This will ensure that ECOM resources are not deleted - * before view cleanup. - * - * Problem/rationale: - * Before the functionality provided by this class, GS would occasionally - * crash in exit. This was caused by the dual nature of CGSPluginInterface - * class: It is both ECOM-plugin having individual dll and view-framework - * dependant CAknView owned by CCoeAppUi. When exiting GS, it was possible - * that a plugin still had local views (CAknViews) which were owned - * by view-framework. - * - * When the view framework destroys the registered views, it would cause - * the ECOM plugin dll to be unloaded. Should this happen before all the views - * owned and implemented by the plugin have been destroyed, an access - * violation would occur because the code needed to call the view's destructor - * was no longer loaded into memory within the GS process. - * - * Solution: - * Purpose of CGSPluginWrapper is to move ECOM-related memory cleanup outside - * the scope of CGSPluginInterface destructor. This way view-framework can - * call destructor in an arbitrary order on all it's owned views even though - * plugins which had local views were already deleted. - * - */ -NONSHARABLE_CLASS( CGSPluginWrapper ) : public CBase - { - public: - CGSPluginWrapper( CGSBaseDocument& aDocument ); - IMPORT_C ~CGSPluginWrapper(); - - public: - IMPORT_C void SetDetails( TUid aDestructorIdKey ); - inline CGSBaseDocument& Document() { return iDocument; } - - private: - TUid iDestructorIdKey; - CGSBaseDocument& iDocument; - }; - - - - -#endif // GSPLUGINWRAPPER_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSShimmedView.h --- a/gssettingsuis/Gs/GSFramework/inc/GSShimmedView.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,126 +0,0 @@ -/* -* Copyright (c) 2002-2006 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: Shim view -* -*/ - - -#ifndef GSSHIMMEDVIEW_H -#define GSSHIMMEDVIEW_H - -// INCLUDES -#include -#include -#include - -// CONSTANTS - -// FORWARD DECLARATIONS -class CGSPluginAndViewIdCache; - -// CLASS DECLARATION - -/** -* CGSShimmedView is used by CGSPluginAndViewIdCache to provide view-framework -* with all existing plugin views immediately in GS start-up. Shimmed views -* are used to cache actual views: in case GS view is opened outside GS -* application while GS is not running in the background, view-framework needs -* the requested view to exist immediately after GS start-up. This is a problem -* as GS loads plugins asynchronously after GS start-up. Therefore we provide -* view-framework with shimmed views in the GS start-up instead of the actual -* views. Afterwards, when each plugin is loaded, we replace the shimmed view -* representing the plugin with a real view provided by the loaded plugin. -* (Each plugin is normally also a view). -* -* Shimmed views are only used and needed for enabling external GS plugin -* view launch. -* -* See CGSPluginAndViewIdCache for details. -* -* @since Series60_3.1 -* -*/ -class CGSShimmedView : public CActive, public MCoeView - { - public: // Constructor and destructor - - /** - * - */ - static CGSShimmedView* NewLC( TUid aViewId, CGSPluginAndViewIdCache& aCache, CCoeAppUi& aAppUi ); - - /** - * Destructor. - */ - ~CGSShimmedView(); - - private: - - /** - * C++ constructor - */ - CGSShimmedView( TUid aViewId, CGSPluginAndViewIdCache& aCache, CCoeAppUi& aAppUi ); - - /** - * Second phase constructor - */ - void ConstructL(); - - public: // API - - /** - * - */ - void RegisterViewL(); - - /** - * - */ - void DeregisterView(); - - public: // From MCoeView - TVwsViewId ViewId() const; - void ViewActivatedL( const TVwsViewId& aPrevViewId, TUid aCustomMessageId, const TDesC8& aCustomMessage ); - void ViewDeactivated(); - - private: // State - enum TState - { - EStateInactive = 0, - EStateActivatingPlaceholderView, - EStateLoadingPlugin, - EStateDeletingSelf - }; - - void SetState( TState aState, TBool aCompleteRequest = ETrue ); - void StateActivatePlaceholderViewL(); - void StateLoadPluginL(); - - private: // From CActive - void RunL(); - void DoCancel(); - - private: // Data - TUid iViewId; - CGSPluginAndViewIdCache& iCache; - CCoeAppUi& iAppUi; - TState iState; - TBool iIsRegistered; - HBufC8* iCustomMessage; - TUid iCustomMessageId; - }; - - -#endif // GSSHIMMEDVIEW_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/GSWatchDog.h --- a/gssettingsuis/Gs/GSFramework/inc/GSWatchDog.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,293 +0,0 @@ -/* -* Copyright (c) 2007 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: -* -*/ - - -#ifndef GSWATCHDOG_H -#define GSWATCHDOG_H - -// System includes -#include -#include - -// CONSTANTS - - -/** -* Maximum number of GS runs during which plugin is held in blacklist. After -* this plugin is allowed normal execution unless it crashes again. -* -* Used only in case no CenRep value is defined. -*/ -const TInt KGSDefaultMaxPluginBlackListedRuns = 5; - - -/** -* Defines how many crashes are observed before watchdog is activated. The -* bigger the value, more tolerant behaviour towards crashing plugins. -* -* -1 = Watchdog is completely disabled regardless any crash -* (KGSWatchdogActivationDisabled). -* 1 = In practise, the fastest reaction, meaning watchdog is enabled the next -* run GS starts after a crash. -* 2 = GS can have 1 crash without watchdog being enabled = 2nd GS crash in a -* row will enable watchdog. -* n = GS can have n-1 crashes before watchdog being activated etc. -* -* Used only in case no CenRep value is defined. -*/ -const TInt KGSDefaultWatchdogActivationLimit = 1; - -/** -* Watchdog is completely disabled. -*/ -const TInt KGSWatchdogActivationDisabled = -1; - - -// FORWARD DECLARATIONS -class CRepository; -class RReadStream; -class RWriteStream; - -// CLASS DECLARATION - - - -/** -* Container class for quarantined plugin data. -*/ -class TGSPluginQuarantine - { - public: - /** - * Read data from aStream. - * @param aStream read stream. - */ - void InternalizeL( RReadStream& aStream ); - - /** - * Write data to aStream. - * @param aStream write stream. - */ - void ExternalizeL( RWriteStream& aStream ) const; - - public: - - /** - * Uid of the plugin. - */ - TUid iUid; - - /** - * Counter which is incremented each time GS is started and the plugin - * is in blacklist. This is used for removing plugin from blacklist - * after certain number of GS runs (iMaxPluginBlackListedRuns). This - * means plugins are not in blacklist for ever but it is possible to try - * running the plugin after a number of GS runs. This is needed in case - * of ramdom crash while some essential plugin is in quarantine. - */ - TInt iRunsAfterCrash; - }; - -/** -* CGSWatchDog is responsible for quarantining plugins and updating blacklist -* for crashing GS plugins. This is the class responsible for keeping GS -* application functional even if some plugin to panics all the time. -* -* @since Series60_3.2 -*/ -NONSHARABLE_CLASS( CGSWatchDog ) : public CBase, - public MGSWatchDog - { - public: // Constructor and destructor - - /** - * Symbian OS two-phased constructor - * @return CGSWatchDog. - */ - static CGSWatchDog* NewL(); - - /** - * Destructor. - */ - ~CGSWatchDog(); - - public: // From MGSWatchDog - - /** - * Adds plugin to quarantine. In case GS crashes, quarantined plugin - * will be blacklisted so it is not loaded in next GS run. Same plugin - * can be quarantined multiple times or even have several uid instances - * in quarantine if needed as long as all these are removed - * correspondingly. - * - * NOTE: Plugin must ALWAYS be removed from quarantine after plugin's - * function execution. - * 1. QuarantineL(). - * 2. Call quarantined plugin function. - * 3. RemoveFromQuarantineL(). - * - * @param aPluginUid uid of the quarantined plugin. - */ - void QuarantineL( TUid aPluginUid ); - - /** - * Removes plugin from quarantine. In case plugin is not removed from - * quarantine before GS exits, the plugin will be blacklisted during - * next GS startup. - * - * @param aPluginUid uid of the plugin to be removed from quarantine. - */ - void RemoveFromQuarantineL( TUid aPluginUid ); - - /** - * @return ETrue if GS exited cleanly last time. - * EFalse if GS crashed during last execution. - */ - TBool WasCleanExitL(); - - /** - * This must be called in all the cases GS exits normally. If GS panics, - * this will not be called resulting in banning of all quarantined - * plugins.Increments iRunsAfterCrash counter for blacklisted plugins. - * Sets iGSAppRunning to EFalse. - */ - void ReportCleanExitL(); - - /** - * Checks if plugin is in blacklist. This can be used to determine if - * plugin should be loaded. - * - * @return ETrue in case plugin is in blacklist and should not be loaded. - * EFalse in case plugin should not be loaded - */ - TBool IsInBlackList( TUid aPluginUid ); - - protected: // New - - /** - * C++ constructor - */ - CGSWatchDog(); - - /** - * Second phase constructor - */ - void ConstructL(); - - /** - * Reads previous state from persistent data storage. - */ - void ReadStateL(); - - /** - * Stores iGSAppRunning, iQuarantinedPluginUid and iBlackList data to - * persistent storage. - */ - void StoreStateL(); - - /** - * Sets state values to default values and stores these. - */ - void InitStateL(); - - /** - * Reads quarantine data from persistent storage. - */ - void ReadQuarantineL(); - - /** - * Stores quarantine data to persistent storage. - */ - void StoreQuarantineL(); - - /** - * Reads blacklist data from persistent storage. - */ - void ReadBlackListL(); - - /** - * Stores blacklist data to persistent storage. - */ - void StoreBlackListL(); - - /** - * Updates run counter of each blacklisted plugin. Removes plugin from - * blacklist if it has been there long enough - * (KGSDefaultMaxPluginBlackListedRuns). - */ - void UpdateBlackListedPluginRunCounters(); - - private: // Data - - /** - * ETrue if WatchDog is active (GS has crashed in previous run). - */ - TBool iIsActive; - - /** - * Counter for GS crashes in a row. This is used to customize watchdog - * behaviour. Defines how many crashes are observed before watchdog is - * activated. The bigger the value, more tolerant behaviour towards crashing - * plugins. See iWatchdogActivationLimit. - * - * -1 = Watchdog is completely disabled regardless any crash. - * 1 = In paractise the fastest reaction, meaning watchdog is enabled the next - * run GS starts after a crash. - * 2 = GS can have 1 crash without watchdog being enabled = 2nd GS crash in a - * row will enable watchdog. - * n = GS can have n-1 crashes before watchdog being activated etc. - */ - TInt iCrashCounter; - - /** - * Emulates stored data. Set on when GS running, off when GS exits - * cleanly. Check this when starting GS to see if last exit was clean. - */ - TBool iGSAppRunning; - - /** - * Uids for plugins which should be banned. They caused GS crash in - * previous runs. - */ - RArray iBlackList; - - /** - * Run time quarantine for plugins. - */ - RArray iQuarantine; - - /** - * Persistent storage. - */ - CRepository* iStore; - - /** - * Defines how long a plugin is held in blacklist. - * KGSDefaultMaxPluginBlackListedRuns is used if no CenRep value is defined. - */ - TInt iMaxPluginBlackListedRuns; - - /** - * Defines how many crashes is needed to activate watchdog. - * KGSDefaultWatchdogActivationLimit is used in case no CenRep value is - * defined. - */ - TInt iWatchdogActivationLimit; - }; - -#endif // GSWATCHDOG_H -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/conset.hlp.hrh --- a/gssettingsuis/Gs/GSFramework/inc/conset.hlp.hrh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -/* -* 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: -* -*/ -// -// conset.hlp.hrh -// - -// -// File generated by cshlpcmp Version 011 -// - -#ifndef __CONSET_HLP_HRH__ -#define __CONSET_HLP_HRH__ - - -_LIT(KSET_HLP_CONNEC_AP_VIEW,"SET_HLP_CONNEC_AP_VIEW"); //Access points item of Connection settings -_LIT(KSET_HLP_AP_SETTING_DATA,"SET_HLP_AP_SETTING_DATA"); //Data call access point settings -_LIT(KSET_HLP_AP_SETTING_GPRS,"SET_HLP_AP_SETTING_GPRS"); //GPRS access point settings -_LIT(KSET_HLP_AP_SETTING_WLAN,"SET_HLP_AP_SETTING_WLAN"); //WLAN access point settings -_LIT(KSET_HLP_WLAN_WEP_MAIN,"SET_HLP_WLAN_WEP_MAIN"); //WLAN security settings for WEP -_LIT(KSET_HLP_WLAN_WEP_KEY_SETT,"SET_HLP_WLAN_WEP_KEY_SETT"); //WEP key parameters -_LIT(KSET_HLP_WLAN_8021X_MAIN,"SET_HLP_WLAN_8021X_MAIN"); //WLAN security settings for 802.1 -_LIT(KSET_HLP_WLAN_WPA_MAIN,"SET_HLP_WLAN_WPA_MAIN"); //WLAN security settings for WPA -_LIT(KSET_HLP_AP_SETTING_GPRS_AS,"SET_HLP_AP_SETTING_GPRS_AS"); //GPRS access point settings, Advanced -_LIT(KSET_HLP_AP_SETTING_DATA_AS,"SET_HLP_AP_SETTING_DATA_AS"); //Data call access point settings, Advanced -_LIT(KSET_HLP_AP_SETTING_WLAN_AS,"SET_HLP_AP_SETTING_WLAN_AS"); //WLAN access point settings, Advanced -_LIT(KSET_HLP_AP_DATA_AS_IPV4,"SET_HLP_AP_DATA_AS_IPV4"); //IPv4 data call ap settings -_LIT(KSET_HLP_AP_WLAN_AS_IPV4,"SET_HLP_AP_WLAN_AS_IPV4"); //IPv4 WLANl ap settings -_LIT(KSET_HLP_AP_DATA_AS_IPV6,"SET_HLP_AP_DATA_AS_IPV6"); //IPv6 data call ap settings -_LIT(KSET_HLP_AP_WLAN_AS_IPV6,"SET_HLP_AP_WLAN_AS_IPV6"); //IPv6 data call ap settings -_LIT(KSET_HLP_CONNEC_GPRS,"SET_HLP_CONNEC_GPRS"); //GPRS item of Connection settings -_LIT(KSET_HLP_WLAN_SETTINGS,"SET_HLP_WLAN_SETTINGS"); //WLAN settings view -_LIT(KSET_HLP_WLAN_ADV_SETTINGS,"SET_HLP_WLAN_ADV_SETTINGS"); //WLAN advanced settings -_LIT(KSET_HLP_CONNEC_DATA,"SET_HLP_CONNEC_DATA"); //Data call item of Connection settings -_LIT(KPROV_HLP_CONFCONT,"PROV_HLP_CONFCONT"); //Configurations contexts list -_LIT(KSET_HLP_VPN_AP_VIEW,"SET_HLP_VPN_AP_VIEW"); //VPN access points view -_LIT(KSET_HLP_VPN_AP_SETTINGS_VIEW,"SET_HLP_VPN_AP_SETTINGS_VIEW"); //VPN access point settings view -_LIT(KSIP_HLP_MAIN,"SIP_HLP_MAIN"); //SIP settings, main view -_LIT(KSIP_HLP_PROF_PARAMS,"SIP_HLP_PROF_PARAMS"); //SIP profile parameters -_LIT(KSIP_HLP_PROXY_PARAMS,"SIP_HLP_PROXY_PARAMS"); //Proxy server parameters view -_LIT(KSIP_HLP_REGISTRAR_PARAM,"SIP_HLP_REGISTRAR_PARAM"); //Registrar server parameters view -_LIT(KACL_HLP_MAIN,"ACL_HLP_MAIN"); //ACL main view - -#endif diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/div.hlp.hrh --- a/gssettingsuis/Gs/GSFramework/inc/div.hlp.hrh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/* -* Copyright (c) 2002, 2003 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: Help text context for Divert. -* -*/ - - -#ifndef __DIV_HLP_HRH__ -#define __DIV_HLP_HRH__ - -//Call divert/forwarding -_LIT(KDIV_HLP_CALL_FORW,"DIV_HLP_CALL_FORW"); - -#endif - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/inc/set.hlp.hrh --- a/gssettingsuis/Gs/GSFramework/inc/set.hlp.hrh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2002 - 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* All the help IDs are declared here -* -*/ - -// -// File generated by cshlpcmp Version 011 -// - -#ifndef __SET_HLP_HRH__ -#define __SET_HLP_HRH__ - - -_LIT(KSET_HLP_SETTINGS_MAIN_VIEW,"SET_HLP_SETTINGS_MAIN_VIEW"); //General settings, Main view -_LIT(KSET_HLP_GENERAL_LIST,"SET_HLP_GENERAL_LIST"); //General settings list -_LIT(KSET_HLP_PERSONAL_LIST,"SET_HLP_PERSONAL_LIST"); //Personalisation list view -_LIT(KSET_HLP_PERSONAL_DISPLAY,"SET_HLP_PERSONAL_DISPLAY"); //Display settings view -_LIT(KSET_HLP_PERSONAL_IDLE,"SET_HLP_PERSONAL_IDLE"); //Idle settings view -_LIT(KSET_HLP_PERSONAL_LANGUAGE,"SET_HLP_PERSONAL_LANGUAGE"); //Language settings view -_LIT(KSET_HLP_ACCESSORIES_LIST,"SET_HLP_ACCESSORIES_LIST"); //Accessories list -_LIT(KSET_HLP_ACCESSORIES_HEADSET,"SET_HLP_ACCESSORIES_HEADSET"); //Accessories; Headset settings -_LIT(KSET_HLP_ACCESSORIES_LOOPSET,"SET_HLP_ACCESSORIES_LOOPSET"); //Accessories; Loopset settings -_LIT(KSET_HLP_ACCESS_WIRED_CK,"SET_HLP_ACCESS_WIRED_CK"); //Wired carkit accessory settings -_LIT(KSET_HLP_ACCESS_WIRELESS_CK,"SET_HLP_ACCESS_WIRELESS_CK"); //Wireless carkit accessory settings -_LIT(KSET_HLP_ACCESSORIES_TTY,"SET_HLP_ACCESSORIES_TTY"); //Accessories; TTY settings -_LIT(KSET_HLP_ACCESSORIES_MUSIC_ST,"SET_HLP_ACCESSORIES_MUSIC_ST"); //Music stand settings -_LIT(KSET_HLP_SECURITY_LIST,"SET_HLP_SECURITY_LIST"); //Security settings list -_LIT(KSET_HLP_SECURITY_DEVICE_SIM,"SET_HLP_SECURITY_DEVICE_SIM"); //Device & SIM security -_LIT(KSET_HLP_TRANSACTION_TRACKING,"SET_HLP_TRANSACTION_TRACKING"); //Transaction tracking security settings -_LIT(KSET_HLP_GENERAL_ORIG_SET,"SET_HLP_GENERAL_ORIG_SET"); //Restore original settings view -_LIT(KSET_HLP_TELEPHONE_LIST,"SET_HLP_TELEPHONE_LIST"); //Telephone settings list view -_LIT(KSET_HLP_TELEP_CALL_SET,"SET_HLP_TELEP_CALL_SET"); //Call settings -_LIT(KCCBS_HLP_QUEUE_LIST,"CCBS_HLP_QUEUE_LIST"); //CCBS queue view -_LIT(KDIV_HLP_CALL_FORW_MAIN,"DIV_HLP_CALL_FORW_MAIN"); //Call divert settings, main view -_LIT(KDIV_HLP_CALL_FORW_VOI,"DIV_HLP_CALL_FORW_VOI"); //Call divert/forward for voice calls -_LIT(KDIV_HLP_CALL_FORW_DAT,"DIV_HLP_CALL_FORW_DAT"); //Call divert/forward for data and video calls -_LIT(KDIV_HLP_CALL_FORW_FAX,"DIV_HLP_CALL_FORW_FAX"); //Call divert/forward for fax calls -_LIT(KDIV_HLP_BARRING_MAIN,"DIV_HLP_BARRING_MAIN"); //Call barring settings -_LIT(KDIV_HLP_CALL_FORW_VOIP,"DIV_HLP_CALL_FORW_VOIP"); //Internet call barring -_LIT(KSET_HLP_BARRING_SETTINGS,"SET_HLP_BARRING_SETTINGS"); //Regular call barring settings -_LIT(KSET_HLP_TELEP_NETWORK_SET,"SET_HLP_TELEP_NETWORK_SET"); //GSM Network settings -_LIT(KSET_HLP_CONN_LIST,"SET_HLP_CONN_LIST"); //Connection settings list -_LIT(KVOIP_HLP_SETTING,"VOIP_HLP_SETTING"); //VOip settings -_LIT(KVOIP_HLP_CONNECTION_SETTING,"VOIP_HLP_CONNECTION_SETTING"); //VoIP connection set view -_LIT(KSET_HLP_APPLICATIONS_LIST,"SET_HLP_APPLICATIONS_LIST"); //Application settings list view -_LIT(KSET_HLP_ACCESSORIES_TVOUT,"SET_HLP_ACCESSORIES_TVOUT"); //Accessories; TvOut settings -_LIT(KSET_HLP_ACCESSORIES_HEADPHONE,"SET_HLP_ACCESSORIES_HEADPHONE"); //Accessories; TvOut settings - -#endif diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSBaseContainer.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSBaseContainer.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,255 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* Base container for GS some views. -* -*/ - - -// INCLUDE FILES -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -// ================= MEMBER FUNCTIONS ======================= - -// --------------------------------------------------------------------------- -// CGSBaseContainer::BaseConstructL -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseContainer::BaseConstructL( const TRect& aRect, - TInt aResTitleId, - TInt aResLbxId ) - { - CEikStatusPane* sp = iAvkonAppUi->StatusPane(); - - CAknTitlePane* title = - static_cast ( - sp->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) ); - - TResourceReader rReader; - iCoeEnv->CreateResourceReaderLC( rReader, aResTitleId ); - title->SetFromResourceL( rReader ); - CleanupStack::PopAndDestroy(); // rReader - - - CreateWindowL(); // Makes the control a window-owning control - - // Set iListBox to be contained in this container: - iListBox->SetContainerWindowL( *this ); - - ConstructListBoxL( aResLbxId ); - - iListBox->CreateScrollBarFrameL( ETrue ); - iListBox->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, - CEikScrollBarFrame::EAuto ); - - SetRect( aRect ); - ActivateL(); - } - - -// --------------------------------------------------------------------------- -// CGSBaseContainer::CGSBaseContainer -// Constructor -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSBaseContainer::CGSBaseContainer() - { - iElaf = ( AknLayoutUtils::Variant() == EEuropeanVariant ); - } - - -// --------------------------------------------------------------------------- -// CGSBaseContainer::~CGSBaseContainer -// Destructor -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSBaseContainer::~CGSBaseContainer() - { - if ( iListBox ) - { - delete iListBox; - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseContainer::ConstructListBoxL -// -// Construct's ListBox from Resource ID -// --------------------------------------------------------------------------- -// -void CGSBaseContainer::ConstructListBoxL( TInt aResLbxId ) - { - TResourceReader rReader; - iCoeEnv->CreateResourceReaderLC( rReader, aResLbxId ); - - // Construct's iListBox from resource file - iListBox->ConstructFromResourceL( rReader ); - CleanupStack::PopAndDestroy(); // rReader - } - - -// --------------------------------------------------------------------------- -// CGSBaseContainer::SizeChanged -// called by framwork when the view size is changed -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseContainer::SizeChanged() - { - if ( iListBox ) - { - iListBox->SetRect( Rect() ); - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseContainer::CountComponentControls -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C TInt CGSBaseContainer::CountComponentControls() const - { - return 1; - } - - -// --------------------------------------------------------------------------- -// CGSBaseContainer::ComponentControl -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C CCoeControl* CGSBaseContainer::ComponentControl( TInt /*aIndex*/ ) - const - { - return iListBox; - } - - -// --------------------------------------------------------------------------- -// CGSMainContainer::TKeyResponse OfferKeyEventL -// Called when a key is pressed. -// -// --------------------------------------------------------------------------- - -EXPORT_C TKeyResponse CGSBaseContainer::OfferKeyEventL( - const TKeyEvent& aKeyEvent, - TEventCode aType ) - { - switch ( aKeyEvent.iCode ) - { - case EKeyLeftArrow: - case EKeyRightArrow: - // Listbox takes all event even if it doesn't use them: - return EKeyWasNotConsumed; - default: - break; - } - - // Now it's iListBox's job to process the key event - return iListBox->OfferKeyEventL( aKeyEvent, aType ); - } - - -// --------------------------------------------------------------------------- -// CGSMainContainer::HandleResourceChange -// -// --------------------------------------------------------------------------- -EXPORT_C void CGSBaseContainer::HandleResourceChange( TInt aType ) - { - CCoeControl::HandleResourceChange( aType ); - if ( aType == KAknsMessageSkinChange || - aType == KEikDynamicLayoutVariantSwitch ) - { - TRect mainPaneRect; - AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, - mainPaneRect); - SetRect( mainPaneRect ); - } - } - - -// ----------------------------------------------------------------------------- -// CGSBaseContainer::SetSelectedItem() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseContainer::SetSelectedItem( TInt aIndex ) - { - if( iListBox && aIndex >= 0 ) - { - iListBox->SetCurrentItemIndexAndDraw( aIndex ); - } - } - - -// ----------------------------------------------------------------------------- -// CGSBaseContainer::SelectedItem() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt CGSBaseContainer::SelectedItem() - { - TInt selectedItem = 0; - if( iListBox ) - { - selectedItem = iListBox->CurrentItemIndex(); - } - return selectedItem; - } - - -// --------------------------------------------------------------------------- -// CGSContainer::FocusChanged -// -// Set focus on the selected listbox. For animated skins feature. -// --------------------------------------------------------------------------- -EXPORT_C void CGSBaseContainer::FocusChanged( TDrawNow /*aDrawNow*/ ) - { - if( iListBox ) - { - iListBox->SetFocus( IsFocused() ); - } - } - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSBaseDocument.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSBaseDocument.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,264 +0,0 @@ -/* -* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Base Document for the General Settings Application -* -*/ - -#include "GSBaseDocument.h" - -// User includes -#include "GSPluginWrapper.h" -#include "GSPluginAndViewIdCache.h" -#include "GSWatchDog.h" -#include "gsplugininterface.h" -#include "GsLogger.h" - -// Constants -const TInt KGSPluginWrapperObjectGranularity = 10; - - -// ================= MEMBER FUNCTIONS ======================= - -// ---------------------------------------------------- -// CGSBaseDocument::CGSBaseDocument() -// constructor -// -// ---------------------------------------------------- -// -EXPORT_C CGSBaseDocument::CGSBaseDocument( CEikApplication& aApp ) -: CAknDocument( aApp ), - iUnloadWrapperObjects( KGSPluginWrapperObjectGranularity ) - { - } - - -// ---------------------------------------------------- -// CGSBaseDocument::~CGSBaseDocument() -// destructor -// -// ---------------------------------------------------- -// -EXPORT_C CGSBaseDocument::~CGSBaseDocument() - { - // This physically unloads the plugin dlls if their ECOM - // reference count is zero. This must be the last thing to - // occur to any plugin object (i.e. all of its code must have - // finished running by the time this next line takes place). - const TInt count = iUnloadWrapperObjects.Count(); - for( TInt i=count-1; i>=0; i-- ) - { - CGSPluginWrapper* object = iUnloadWrapperObjects[ i ]; - (void) object; - delete object; - } - - iUnloadWrapperObjects.Close(); - delete iPluginViewIdCache; - delete iWatchDog; - - iImplInfoArray.ResetAndDestroy();// This is needed - iImplInfoArray.Close(); - } - - -// ---------------------------------------------------- -// CGSBaseDocument::ConstructL() -// Symbian OS second phase constructor -// -// ---------------------------------------------------- -// -EXPORT_C void CGSBaseDocument::ConstructL() - { - iWatchDog = CGSWatchDog::NewL(); - - REComSession::ListImplementationsL( - KGSPluginInterfaceUid, - iImplInfoArray ); -#ifdef _DEBUG - PrintImplInfoArray( iImplInfoArray ); -#endif //_DEBUG - - __GSLOGSTRING1( - "[CGSBaseDocument::ConstructL] iImplInfoArray count:%d", - iImplInfoArray.Count() ); - } - - -// ---------------------------------------------------- -// CGSBaseDocument::NewPluginUnloadWrapperLC() -// -// -// ---------------------------------------------------- -// -EXPORT_C CGSPluginWrapper* CGSBaseDocument::NewPluginUnloadWrapperLC() - { - CGSPluginWrapper* wrapper = new(ELeave) CGSPluginWrapper( *this ); - TCleanupItem wrapperCleanupItem( CleanupPluginWrapperObject, wrapper ); - CleanupStack::PushL( wrapperCleanupItem ); - iUnloadWrapperObjects.AppendL( wrapper ); - // - return wrapper; - } - - -// ---------------------------------------------------- -// CGSBaseDocument::PreparePluginCacheL() -// -// -// ---------------------------------------------------- -// -EXPORT_C void CGSBaseDocument::PreparePluginCacheL( CEikAppUi& aAppUi ) - { - iPluginViewIdCache = CGSPluginAndViewIdCache::NewL( aAppUi ); - } - - -// ---------------------------------------------------- -// CGSBaseDocument::PrepareForUIDestruction() -// -// -// ---------------------------------------------------- -// -EXPORT_C void CGSBaseDocument::PrepareForUIDestruction() - { - if ( iPluginViewIdCache ) - { - iPluginViewIdCache->PrepareForUIDestruction(); - } - } - - -// ---------------------------------------------------- -// CGSBaseDocument::CleanupPluginWrapperObject() -// Cleanup support -// -// ---------------------------------------------------- -// -void CGSBaseDocument::CleanupPluginWrapperObject( TAny* aWrapper ) - { - CGSPluginWrapper* wrapper = - reinterpret_cast< CGSPluginWrapper* >( aWrapper ); - CGSBaseDocument& document = wrapper->Document(); - document.DoCleanupPluginWrapper( wrapper ); - } - - -// ---------------------------------------------------- -// CGSBaseDocument::DoCleanupPluginWrapper() -// Cleanup support - called when loading a plugin fails -// -// ---------------------------------------------------- -// -void CGSBaseDocument::DoCleanupPluginWrapper( CGSPluginWrapper* aWrapper ) - { - const TInt index = iUnloadWrapperObjects.Find( aWrapper ); - if ( index >= 0 && index < iUnloadWrapperObjects.Count() ) - { - iUnloadWrapperObjects.Remove( index ); - delete aWrapper; - } - } - - -// ---------------------------------------------------- -// CGSBaseDocument::PluginViewIdCache() -// -// -// ---------------------------------------------------- -// -CGSPluginAndViewIdCache& CGSBaseDocument::PluginViewIdCache() - { - ASSERT( iPluginViewIdCache ); - return *iPluginViewIdCache; - } - - -// ---------------------------------------------------- -// CGSBaseDocument::PluginViewIdCache() -// -// -// ---------------------------------------------------- -// -const CGSPluginAndViewIdCache& CGSBaseDocument::PluginViewIdCache() const - { - ASSERT( iPluginViewIdCache ); - return *iPluginViewIdCache; - } - - - -// ---------------------------------------------------- -// CGSBaseDocument::WatchDog() -// -// -// ---------------------------------------------------- -// -EXPORT_C MGSWatchDog* CGSBaseDocument::WatchDog() - { - return iWatchDog; - } - -// ---------------------------------------------------- -// CGSBaseDocument::GetImplInfos() -// -// -// ---------------------------------------------------- -// -EXPORT_C RImplInfoPtrArray CGSBaseDocument::GetImplInfo() - { - return iImplInfoArray; - } - -EXPORT_C void CGSBaseDocument::CreateShimmedViewL(const TUid aViewUid) - { - ASSERT(iPluginViewIdCache); - if ( !iPluginViewIdCache->PluginInstance(aViewUid) ) - { - iPluginViewIdCache->RegisterViewAndImplementationAssociationL(aViewUid, aViewUid, ETrue); - } - } - -void CGSBaseDocument::PrintImplInfoArray( const RImplInfoPtrArray& aImplInfoArray ) - { - for( TInt i = 0; i < aImplInfoArray.Count(); i++ ) - { - PrintImplInfo( *aImplInfoArray[ i ] ); - } - } - - -void CGSBaseDocument::PrintImplInfo( const CImplementationInformation& aInfo ) - { - __GSLOGSTRING1( "[CGSBaseDocument] --Plugin 0x%X info--", &aInfo); - __GSLOGSTRING1( "[CGSBaseDocument] DisplayName:%S", &aInfo.DisplayName() ); - __GSLOGSTRING1( "[CGSBaseDocument] ImplementationUid:0x%X", - aInfo.ImplementationUid() ); - - const TInt KMaxEComDataLength = 256; - - HBufC* dataType = HBufC::New( KMaxEComDataLength ); - HBufC* opaqueData = HBufC::New( KMaxEComDataLength ); - - dataType->Des().Copy( aInfo.DataType() ); - opaqueData->Des().Copy( aInfo.OpaqueData() ); - __GSLOGSTRING1( "[CGSBaseDocument] DataType:%S", dataType ); - __GSLOGSTRING1( "[CGSBaseDocument] OpaqueData:%S", opaqueData ); - - delete opaqueData; - delete dataType; - } - - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSBaseView.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSBaseView.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,308 +0,0 @@ -/* -* Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Base view for all General Settings views. -* -*/ - - -// INCLUDE FILES -#include -#include - -#include -#include -#include -#include -#include -#include -#include // BaflUtils -#include -#include - - -//Disabling warning caused by KGSDoActivateError constant -#pragma diag_suppress 177 -// CONSTANTS -_LIT( KGSDoActivateError, "DoActivateL" ); - -// ========================= MEMBER FUNCTIONS ================================ - -// --------------------------------------------------------------------------- -// CGSBaseView::CGSBaseView -// -// C++ constructor -// --------------------------------------------------------------------------- -EXPORT_C CGSBaseView::CGSBaseView() - : iResourceLoader( *iCoeEnv ) - { - iAppUi = AppUi(); - iElaf = ( AknLayoutUtils::Variant() == EEuropeanVariant ); - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::~CGSBaseView -// -// Destructor -// --------------------------------------------------------------------------- -EXPORT_C CGSBaseView::~CGSBaseView() - { - iResourceLoader.Close(); - if (iContainer) - { - AppUi()->RemoveFromViewStack( *this, iContainer ); - delete iContainer; - } - if ( iNaviPaneContext ) - { - delete iNaviPaneContext; - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::Container -// -// -// --------------------------------------------------------------------------- -EXPORT_C CGSBaseContainer* CGSBaseView::Container() - { - return iContainer; - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::SetCurrentItem -// -// -// --------------------------------------------------------------------------- -EXPORT_C void CGSBaseView::SetCurrentItem( TInt aIndex ) - { - iCurrentItem = aIndex; - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::HandleListBoxEventL -// -// -// --------------------------------------------------------------------------- - -EXPORT_C void CGSBaseView::HandleListBoxEventL( CEikListBox* /*aListBox*/, - TListBoxEvent aEventType ) - { - switch ( aEventType ) - { - case EEventEnterKeyPressed: - case EEventItemDoubleClicked: - HandleListBoxSelectionL(); - break; - default: - break; - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::SetNaviPaneL -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseView::SetNaviPaneL() - { - CAknNavigationControlContainer* naviControlContainer = - NaviControlContainerL(); - if ( iNaviPaneContext ) - { - naviControlContainer->PushL( *iNaviPaneContext ); - } - else - { - naviControlContainer->PushDefaultL(); - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::CreateNaviPaneContextL -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseView::CreateNaviPaneContextL( TInt aResourceId ) - { - TResourceReader reader; - iCoeEnv->CreateResourceReaderLC( reader, aResourceId ); - CAknNavigationControlContainer* naviControlContainer = - NaviControlContainerL(); - iNaviPaneContext = naviControlContainer->CreateMessageLabelL( reader ); - CleanupStack::PopAndDestroy(); // reader - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::NaviControlContainerL -// -// -// --------------------------------------------------------------------------- -// -CAknNavigationControlContainer* CGSBaseView::NaviControlContainerL() - { - CAknNavigationControlContainer* control = NULL; - if( !iNaviControlContainer ) - { - iNaviControlContainer = - static_cast( - AppUi()->StatusPane()->ControlL( TUid::Uid( - EEikStatusPaneUidNavi ) ) ); - } - else - { - control = iNaviControlContainer; - } - - return control; - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::HandleClientRectChange -// -// -// --------------------------------------------------------------------------- -void CGSBaseView::HandleClientRectChange() - { - if ( iContainer && iContainer->iListBox ) - { - iContainer->SetRect( ClientRect() ); - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::DoActivateL -// Activates the view. -// -// --------------------------------------------------------------------------- -EXPORT_C void CGSBaseView::DoActivateL( const TVwsViewId& aPrevViewId, - TUid /*aCustomMessageId*/, - const TDesC8& /*aCustomMessage*/ ) - { - iPrevViewId = aPrevViewId; -// if( iContainer ) -// { -// AppUi()->RemoveFromViewStack( *this, iContainer ); -// -// delete iContainer; -// iContainer = NULL; -// } - if ( !iContainer ) - { - CreateContainerL(); - AppUi()->AddToViewStackL( *this, iContainer ); - iContainer->iListBox->SetListBoxObserver( this ) ; - iContainer->iListBox->SetTopItemIndex( iTopItemIndex ); - iContainer->SetSelectedItem( iCurrentItem ); - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::DoDeactivate() -// -// -// --------------------------------------------------------------------------- -EXPORT_C void CGSBaseView::DoDeactivate() - { - if ( iContainer ) - { - iCurrentItem = iContainer->SelectedItem(); - AppUi()->RemoveFromViewStack( *this, iContainer ); - delete iContainer; - iContainer = NULL; - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::CreateContainerL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseView::CreateContainerL() - { - NewContainerL(); - __ASSERT_DEBUG( - iContainer, User::Panic( KGSDoActivateError, EGSViewPanicNullPtr ) ); - iContainer->SetMopParent( this ); - - TRAPD( error, iContainer->ConstructL( ClientRect() ) ); - - if ( error ) - { - delete iContainer; - iContainer = NULL; - User::Leave( error ); - } - } - - -// --------------------------------------------------------------------------- -// CGSBaseView::OpenLocalizedResourceFileL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseView::OpenLocalizedResourceFileL( - const TDesC& aResourceFileName, - RConeResourceLoader& aResourceLoader ) - { - RFs fsSession; - User::LeaveIfError( fsSession.Connect() ); - - // Find the resource file: - TParse parse; - parse.Set( aResourceFileName, &KDC_RESOURCE_FILES_DIR, NULL ); - TFileName fileName( parse.FullName() ); - - // Get language of resource file: - BaflUtils::NearestLanguageFile( fsSession, fileName ); - - // Open resource file: - aResourceLoader.OpenL( fileName ); - - // If leave occurs before this, close is called automatically when the - // thread exits. - fsSession.Close(); - } - - -// ----------------------------------------------------------------------------- -// CGSBaseView::ResetSelectedItemIndex() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSBaseView::ResetSelectedItemIndex() - { - iCurrentItem = 0; - if( iContainer ) - { - iContainer->SetSelectedItem( iCurrentItem ); - } - } - -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSEComNotifier.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSEComNotifier.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,172 +0,0 @@ -/* -* Copyright (c) 2008 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: -* -*/ - - -#include -#include "GSEComNotifier.h" -#include "GsLogger.h" - -// ======== MEMBER FUNCTIONS ======== - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -CGSEComNotifier::CGSEComNotifier( MGSEComObserver* aObserver, - RImplInfoPtrArray aImplInfo ) - : CActive( EPriorityStandard ), - iObserver( aObserver ), - iOriginalImplInfo( aImplInfo ) - { - CActiveScheduler::Add( this ); - } - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CGSEComNotifier::ConstructL() - { - iEComSession = REComSession::OpenL(); - IssueRequest(); - } - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSEComNotifier* CGSEComNotifier::NewL( MGSEComObserver* aObserver, - RImplInfoPtrArray aImplInfo ) - { - CGSEComNotifier* self = new( ELeave ) CGSEComNotifier( - aObserver, - aImplInfo ); - - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSEComNotifier::~CGSEComNotifier() - { - Cancel(); - iEComSession.Close(); - } - - -// --------------------------------------------------------------------------- -// See base class. -// --------------------------------------------------------------------------- -// -void CGSEComNotifier::DoCancel() - { - iEComSession.CancelNotifyOnChange( iStatus ); - } - - -// --------------------------------------------------------------------------- -// See base class. -// --------------------------------------------------------------------------- -// -void CGSEComNotifier::RunL() - { - __GSLOGSTRING1( "[CGSEComNotifier::RunL] iStatus:%d", iStatus ); - - if( PluginCountDeltaL() < 0 ) - { - iObserver->HandleEComEvent( MGSEComObserver::EPluginRemoved ); - } - - IssueRequest(); - - __GSLOGSTRING1( "[CGSEComNotifier::RunL] iStatus:%d", iStatus ); - } - - -// --------------------------------------------------------------------------- -// See base class. -// --------------------------------------------------------------------------- -// -TInt CGSEComNotifier::RunError( TInt aError ) - { - __GSLOGSTRING2( - "[CGSEComNotifier::RunError] aError:%d iStatus:%d", - aError, iStatus ); - - // Special case: Application can throw KLeaveExit basically anytime so we - // have to forward it upwards to app framework. - if( aError == KLeaveExit ) - { - return aError; - } - return KErrNone; - } - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -void CGSEComNotifier::IssueRequest() - { - if( !IsActive() ) - { - // NotifyOnChange is single shot. - iEComSession.NotifyOnChange( iStatus ); - SetActive(); - } - } - - -// --------------------------------------------------------------------------- -// -// --------------------------------------------------------------------------- -// -TInt CGSEComNotifier::PluginCountDeltaL() - { - // Owned - RImplInfoPtrArray newImplInfo; - - REComSession::ListImplementationsL( - KGSPluginInterfaceUid, - newImplInfo ); - - TInt oldInfoCount = iOriginalImplInfo.Count(); - TInt newInfoCount = newImplInfo.Count(); - - __GSLOGSTRING2( - "[CGSEComNotifier::PluginCountDeltaL] iOriginalImplInfo:%d newImplInfo:%d", - oldInfoCount, newInfoCount ); - - newImplInfo.ResetAndDestroy(); - newImplInfo.Close(); - - // Count the delta between old and current infos: - return newInfoCount - oldInfoCount; - } - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSParentContainer.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSParentContainer.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,836 +0,0 @@ -/* -* Copyright (c) 2005-2008 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: Container for GSParentPlugin. -* -*/ - -// INCLUDE FILES -#include -#include -#include -#include "GsLogger.h" -#include -#include -#include "GSBaseDocument.h" -#include - -#include //for loading icons -#include -#include //for loading icons -#include -#include -#include -#include // For TResourceReader -#include -#include -#include - -//CONSTANTS -const TInt KGSPluginArrayInitSize = 10; -const TInt KGSCaptionBufSize = 256; - -// ========================= MEMBER FUNCTIONS ================================ - -// --------------------------------------------------------------------------- -// CGSParentContainer::ConstructL(const TRect& aRect) -// Symbian OS two phased constructor -// -// --------------------------------------------------------------------------- -// -void CGSParentContainer::ConstructL( - const TRect& aRect, - CAknViewAppUi* aAppUi, - CArrayPtrFlat* aPluginArray, - TInt aTitleRscId, - CGSParentPlugin* aParentPlugin, - TGSListboxTypes aListBoxType ) - { - iAppUi = aAppUi; - iPluginArray = aPluginArray; - iListBoxType = aListBoxType; - iParentPlugin = aParentPlugin; - - CGSBaseDocument* doc = static_cast< CGSBaseDocument* >( iAppUi->Document() ); - iGSWatchDog = doc->WatchDog(); - - // Initialize the array containing pointers to plugins that are actually - // displayed in lbx. - iVisiblePlugins = new (ELeave) CArrayPtrFlat( KGSPluginArrayInitSize ); - - __GSLOGSTRING( "[CGSParentContainer] ConstructL" ); - - // Set view title from resource: - CEikStatusPane* sp = iAppUi->StatusPane(); - CAknTitlePane* title = static_cast - ( sp->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) ); - TResourceReader rReader; - iCoeEnv->CreateResourceReaderLC( rReader, aTitleRscId ); - title->SetFromResourceL( rReader ); - CleanupStack::PopAndDestroy(); // rReader - - CreateWindowL(); //makes this control a window-owning control - - CreateListBoxL( iListBoxType ); - - SetRect( aRect ); - ActivateL(); - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::~CGSParentContainer() -// Destructor -// -// --------------------------------------------------------------------------- -// -CGSParentContainer::~CGSParentContainer() - { - __GSLOGSTRING( "[CGSParentContainer] ~CGSParentContainer()|->" ); - if ( iVisiblePlugins ) - { - iVisiblePlugins->Reset(); - } - delete iVisiblePlugins; - if ( iListBox ) - { - delete iListBox; - } - __GSLOGSTRING( "[CGSParentContainer] ~CGSParentContainer()-|" ); - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::UpdateListboxL -// -// Updates listbox from iPluginArray. Uses switch statement to handle different -// listbox types from TGSListboxTypes because the list item format -// and icon numbers depend on the listbox type. -// --------------------------------------------------------------------------- -// -void CGSParentContainer::UpdateListBoxL() - { - __GSLOGSTRING( "[CGSParentContainer::UpdateListBoxL]" ); - iItemTextArray->Reset(); - - // Empty the array because it will be updated. - iVisiblePlugins->Reset(); - - // Array for icons in the listbox. Array owns the icons. - CAknIconArray* icons = NULL; - - // Create icon array if required by the listbox type: - switch( iListBoxType ) - { - case EGSListBoxTypeSingleLarge: - case EGSListBoxTypeDouble2Large: - case EGSListBoxTypeDoubleLarge: - icons = new (ELeave) CAknIconArray( KGSPluginArrayInitSize ); - CleanupStack::PushL( icons ); - break; - - default: - break; - } - - // Counter for created icons. This is used to maintain corrext indexing for - // each plugin's icons in case a plugin has multiple icons and icon indexes - // can not be mapped directly to plugin index. - TInt iconCounter = 0; - - // 1) Add each plugin's data to listbox if the plugin is visible. - for( TInt i = 0; i < iPluginArray->Count(); i++ ) - { - CGSPluginInterface* plugin = iPluginArray->operator[]( i ); - - // Adding plugin data to lbx has a lot of CGSPluginInterface API calls. - // -> A good place to use quarantine to catch panicking plugins in - // any of these calls. - iGSWatchDog->QuarantineL( plugin->Id() ); - if( plugin->Visible() ) - { - AddPluginDataToLbxL( plugin, - iItemTextArray, - icons, - iconCounter ); - } - iGSWatchDog->RemoveFromQuarantineL( plugin->Id() ); - } - - // 2) Replace old icon array if needed. - switch( iListBoxType ) - { - case EGSListBoxTypeSingleLarge: - { - // Temporary variable needed to use casted lbx. - CAknSingleLargeStyleListBox* lbx = - STATIC_CAST( CAknSingleLargeStyleListBox*, iListBox ); - // Destroy the old icons because SetIconArray() does not destroy them. - CArrayPtr* oldIcons - = lbx->ItemDrawer()->ColumnData()->IconArray(); - if( oldIcons ) - { - __GSLOGSTRING( "[CGSParentContainer] Destroying old icons." ); - oldIcons->ResetAndDestroy(); - delete oldIcons; - } - // Transfer ownership of icon array to the lbx. - // SetIconArray() does not delete the old icon array - lbx->ItemDrawer()->ColumnData()->SetIconArray( icons ); - CleanupStack::Pop( icons ); - } - break; - case EGSListBoxTypeDouble2Large: - case EGSListBoxTypeDoubleLarge: - { - // Temporary variable needed to use casted lbx. - CEikFormattedCellListBox* lbx = - STATIC_CAST( CEikFormattedCellListBox*, iListBox ); - // Destroy the old icons because SetIconArray() does not destroy them. - CArrayPtr* oldIcons - = lbx->ItemDrawer()->ColumnData()->IconArray(); - if( oldIcons ) - { - __GSLOGSTRING( "[CGSParentContainer] Destroying old icons." ); - oldIcons->ResetAndDestroy(); - delete oldIcons; - } - // Transfer ownership of icon array to the lbx. - // SetIconArray() does not delete the old icon array - lbx->ItemDrawer()->ColumnData()->SetIconArray( icons ); - CleanupStack::Pop( icons ); - } - break; - - case EGSListBoxTypeSettings: - break; - - default: - break; - } - -#ifdef _GS_PARENTPLUGIN_LBX_FORMAT_TRACES -#pragma message("_GS_PARENTPLUGIN_LBX_FORMAT_TRACES activated") - __GSLOGSTRING( "[CGSParentContainer::UpdateListBoxL] iItemTextArray:" ); - for( TInt i = 0; i < iItemTextArray->Count(); i++ ) - { - __GSLOGSTRING1( "%S", &iItemTextArray->operator[]( i ) ); - } -#endif // _GS_PARENTPLUGIN_LBX_FORMAT_TRACES - - // 3) Draw listbox again - iListBox->HandleItemAdditionL(); - __GSLOGSTRING( "[CGSParentContainer] UpdateListBoxL()-|" ); - } - - -// ----------------------------------------------------------------------------- -// CGSParentContainer::AddPluginDataToLbxL() -// -// -// ----------------------------------------------------------------------------- -// -void CGSParentContainer::AddPluginDataToLbxL( CGSPluginInterface* aPlugin, - CDesCArray* aItemTextArray, - CAknIconArray* aIconArray, - TInt& aIconCounter ) - { - // Used to disable icon - const TInt KIconNotSupported = -1; - - // Index of icon used in AB-column - TInt iconIndexAB = KIconNotSupported; - - // Index of icon used in D-column - TInt iconIndexD = KIconNotSupported; - -#pragma message("TODO: The HBufC buffer sizes could be optimized if possible:") - - // First line of lbx item text (plugin caption) - HBufC* firstLabelBuf = HBufC::NewLC( KGSCaptionBufSize ); - TPtr firstLabel = firstLabelBuf->Des(); - - // Second line of lbx item text (optional) - HBufC* secondLabelBuf = HBufC::NewLC( KGSCaptionBufSize ); - TPtr secondLabel = secondLabelBuf->Des(); - - // The complete formatted lbx item string which is added to lbx - HBufC* lbxItemStringBuf = HBufC::NewLC( KGSCaptionBufSize * 2 ); - TPtr lbxItemString = lbxItemStringBuf->Des(); - - // Separates lbx item elements - _LIT( KTab, "\t" ); - - // Normal icon in AB-Column - CGulIcon* iconAB = NULL; - - // Small icon used in D-column (optional) - CGulIcon* iconD = NULL; - - // Add the plugin to visible plugins array: - iVisiblePlugins->AppendL( aPlugin ); - - // 1) Read item descriptor from plugin: - TRAPD( captionErr, - aPlugin->GetCaptionL( firstLabel ); - ) - - // If plugin caption fails, set caption to error string. - if( captionErr != KErrNone ) - { - _LIT( KGSParentPluginCaptionErrorTxt, "Error" ); - firstLabel.Append( KGSParentPluginCaptionErrorTxt ); - } - else - { - __GSLOGSTRING2( "[CGSParentContainer] 0x%X::GetCaptionL Error: %d", - aPlugin->Id().iUid, captionErr ); - } - - // 2) Add icons if listbox uses them: - // - AB-column icon - // - D-column icon - switch( iListBoxType ) - { - case EGSListBoxTypeSingleLarge: - case EGSListBoxTypeDouble2Large: - case EGSListBoxTypeDoubleLarge: - { - // This might fail because plugin implementors might do funny stuff. - // GS Must still behave well... - TRAPD( iconErr, - iconAB = aPlugin->CreateIconL( KGSIconTypeLbxItem ); - ) - if( iconErr != KErrNone ) - { - // Use default icon because plugin implementor's CreateIconL - // failed. If this fails, everything is lost anyway so might as - // well leave (abort GS). - iconAB = aPlugin->CGSPluginInterface::CreateIconL( KGSIconTypeLbxItem ); - __GSLOGSTRING2( "[CGSParentContainer] CreateIconL for 0x%X failed:%d", - aPlugin->Id().iUid, - iconErr ); - } - if( iconAB ) // Append only if not NULL (not supported) - { - CleanupStack::PushL( iconAB ); - aIconArray->AppendL( iconAB ); - CleanupStack::Pop( iconAB ); - iconIndexAB = aIconCounter; - aIconCounter++; - } - - TRAPD( iconDColErr, - iconD = aPlugin->CreateIconL( KGSIconTypeDColumn ); - ) - if( iconDColErr != KErrNone ) - { - iconD = aPlugin->CGSPluginInterface::CreateIconL( KGSIconTypeDColumn ); - __GSLOGSTRING2( "[CGSParentContainer] CreateIconL for 0x%X failed:%d", - aPlugin->Id().iUid, - iconErr ); - } - if( iconD ) // Append only if not NULL (not supported) - { - CleanupStack::PushL( iconD ); - aIconArray->AppendL( iconD ); - CleanupStack::Pop( iconD ); - iconIndexD = aIconCounter; - aIconCounter++; - } - break; - } - case EGSListBoxTypeSettings: - break; - - default: - break; - } - - /** - * 3) Create formatted item string. Lbx item's format string depends - * on lbx type. - */ - switch( iListBoxType ) - { - /** - * list_single_large_pane: - * list item string format: "1\tTextLabel\t0\t0" - * where 0 is an index to icon array - */ - case EGSListBoxTypeSingleLarge: - { - if( iconIndexAB != KIconNotSupported ) lbxItemString.AppendNum( iconIndexAB ); // AB-Column icon - lbxItemString.Append( KTab ); - lbxItemString.Append( firstLabel ); - break; - } - /** - * list_setting_pane and list_big_single_setting_pane: - * list item string format: "\tFirstLabel\t\tValueText" - * list item string format: "\tFirstLabel\t0\t" - * list item string format: "\tFirstLabel\t\tValueText\t*" - * list item string format: "\tFirstLabel\t\t\t\tSecondLabel" - * where 0 is an index to icon array - */ - case EGSListBoxTypeSettings: - { - aPlugin->GetValue( EGSPluginKeySettingsItemValueString, secondLabel ); - - lbxItemString.Append( KTab ); - lbxItemString.Append( firstLabel ); - lbxItemString.Append( KTab ); - lbxItemString.Append( KTab ); - lbxItemString.Append( secondLabel ); - break; - } - /** - * list_double2_large_graphic_pane: - * list item string format: "1\tFirstLabel\tSecondLabel\t0" - * where 0 is an index of small (13x13) icon in icon array - * and 1 is an index of a thumbnail image - */ - case EGSListBoxTypeDouble2Large: - case EGSListBoxTypeDoubleLarge: - { - aPlugin->GetValue( EGSPluginKeySettingsItemValueString, secondLabel ); - - if( iconIndexAB != KIconNotSupported ) lbxItemString.AppendNum( iconIndexAB ); // AB-Column icon - lbxItemString.Append( KTab ); - lbxItemString.Append( firstLabel ); // FirstLabel - lbxItemString.Append( KTab ); - lbxItemString.Append( secondLabel ); // SecondLabel - lbxItemString.Append( KTab ); - if( iconIndexD != KIconNotSupported ) lbxItemString.AppendNum( iconIndexD ); // D-Column Icon - break; - } - } - aItemTextArray->AppendL( lbxItemString ); - - CleanupStack::PopAndDestroy( lbxItemStringBuf ); - CleanupStack::PopAndDestroy( secondLabelBuf ); - CleanupStack::PopAndDestroy( firstLabelBuf ); - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::ListBox() -// -// -// --------------------------------------------------------------------------- -// -CEikListBox* CGSParentContainer::ListBox() - { - return iListBox; - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::SizeChanged -// called by framework when the view size is changed -// -// --------------------------------------------------------------------------- -// -void CGSParentContainer::SizeChanged() - { - if ( iListBox ) - { - iListBox->SetRect( Rect() ); - } - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::CountComponentControls -// -// -// --------------------------------------------------------------------------- -// -TInt CGSParentContainer::CountComponentControls() const - { - return 1; - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::ComponentControl -// -// -// --------------------------------------------------------------------------- -// -CCoeControl* CGSParentContainer::ComponentControl(TInt /*aIndex*/) const - { - return iListBox; - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::TKeyResponse OfferKeyEventL -// Called when a key is pressed. -// -// --------------------------------------------------------------------------- -// -TKeyResponse CGSParentContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent, - TEventCode aType ) - { - switch ( aKeyEvent.iCode ) - { - case EKeyUpArrow: - case EKeyDownArrow: - { - TKeyResponse listboxResp = - iListBox->OfferKeyEventL( aKeyEvent, aType ); - if ( iParentPlugin ) - { - iParentPlugin->CheckMiddleSoftkeyLabelL(); - } - return listboxResp; - } - case EKeyLeftArrow: - case EKeyRightArrow: - // Listbox takes all events even if it doesn't use them - return EKeyWasNotConsumed; - default: - break; - } - // now it's iListBox's job to process the key event - return iListBox->OfferKeyEventL( aKeyEvent, aType ); - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::HandleListBoxEventL -// -// -// --------------------------------------------------------------------------- -void CGSParentContainer::HandleListBoxEventL( CEikListBox* aListBox, - TListBoxEvent aEventType ) - { - __GSLOGSTRING1( - "[CGSParentContainer] HandleListBoxEventL aEventType:%d", - aEventType); - switch (aEventType) - { - case EEventEnterKeyPressed: - case EEventItemDoubleClicked: - { - __GSLOGSTRING1( - "[CGSParentContainer] Activating view plugin in index[%d]", - aListBox->CurrentItemIndex() ); - - if( aListBox->CurrentItemIndex() < 0 ) - { - // Negative listbox value -> no item selected? - break; - } - - CGSPluginInterface* selectedPlugin = iVisiblePlugins->operator[]( - aListBox->CurrentItemIndex() ); - - // Different command is used depending on the plugin type. - switch( selectedPlugin->ItemType() ) - { - // In these cases the plugin is a view: - case EGSItemTypeSingleLarge: - case EGSItemTypeSetting: - case EGSItemTypeSettingIcon: - iAppUi->ActivateLocalViewL( selectedPlugin->Id() ); - break; - // In these cases the plugin is a dialog: - case EGSItemTypeSettingDialog: - case EGSItemTypeSingleLargeDialog: - selectedPlugin->HandleSelection( - EGSSelectionBySelectionKey ); - UpdateListBoxL(); // Refrest the listbox if value changed. - break; - } - } - break; - - default: - break; - } - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::HandleResourceChange() -// -// -// --------------------------------------------------------------------------- -// -void CGSParentContainer::HandleResourceChange( TInt aType ) - { - CCoeControl::HandleResourceChange( aType ); - //Handle layout orientation or skin change - if ( aType == KAknsMessageSkinChange || - aType == KEikDynamicLayoutVariantSwitch ) - { - TRect mainPaneRect; - AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, - mainPaneRect); - SetRect( mainPaneRect ); - if ( aType == KAknsMessageSkinChange ) - { - TRAP_IGNORE( UpdateListBoxL() ); - } - } - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::CreateListBoxL() -// -// -// --------------------------------------------------------------------------- -// -void CGSParentContainer::CreateListBoxL( - TGSListboxTypes aListBoxType ) - { - switch( aListBoxType ) - { - case EGSListBoxTypeSingleLarge: - { - CAknSingleLargeStyleListBox* lbx = - new( ELeave ) CAknSingleLargeStyleListBox; - iListBox = lbx; - lbx->ConstructL( this ); - lbx->SetContainerWindowL( *this ); - lbx->SetListBoxObserver( this ); - lbx->CreateScrollBarFrameL( ETrue ); - lbx->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto ); - // Obtain reference to listbox model's item text array: - iItemTextArray = STATIC_CAST( CDesCArray*, - lbx->Model()->ItemTextArray() ); - } - break; - - case EGSListBoxTypeSettings: - { - CAknSettingStyleListBox* lbx = - new( ELeave ) CAknSettingStyleListBox; - iListBox = lbx; - lbx->ConstructL( this, EAknListBoxSelectionList ); - lbx->SetContainerWindowL( *this ); - lbx->SetListBoxObserver( this ); - lbx->CreateScrollBarFrameL( ETrue ); - lbx->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto ); - // Obtain reference to listbox model's item text array: - iItemTextArray = STATIC_CAST( CDesCArray*, - lbx->Model()->ItemTextArray() ); - } - break; - - case EGSListBoxTypeDouble2Large: - { - TInt flags = 0; - CAknDouble2LargeStyleListBox* lbx = - new( ELeave ) CAknDouble2LargeStyleListBox; - iListBox = lbx; - lbx->ConstructL( this, flags ); - lbx->SetContainerWindowL( *this ); - lbx->SetListBoxObserver( this ); - lbx->CreateScrollBarFrameL( ETrue ); - lbx->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto ); - // Obtain reference to listbox model's item text array: - iItemTextArray = STATIC_CAST( CDesCArray*, - lbx->Model()->ItemTextArray() ); - } - break; - - case EGSListBoxTypeDoubleLarge: - { - TInt flags = 0; - CAknDoubleLargeStyleListBox* lbx = - new( ELeave ) CAknDoubleLargeStyleListBox; - iListBox = lbx; - lbx->ConstructL( this, flags ); - lbx->SetContainerWindowL( *this ); - lbx->SetListBoxObserver( this ); - lbx->CreateScrollBarFrameL( ETrue ); - lbx->ScrollBarFrame()->SetScrollBarVisibilityL( - CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto ); - // Obtain reference to listbox model's item text array: - iItemTextArray = STATIC_CAST( CDesCArray*, - lbx->Model()->ItemTextArray() ); - } - break; - - default: - break; - } - } - - -// ----------------------------------------------------------------------------- -// CGSParentContainer::SelectedPlugin() -// -// -// ----------------------------------------------------------------------------- -// -CGSPluginInterface* CGSParentContainer::SelectedPlugin() - { - CGSPluginInterface* plugin = NULL; - const TInt index = iListBox->CurrentItemIndex(); - if ( index >= 0 && index < iVisiblePlugins->Count() ) - { - plugin = iVisiblePlugins->operator[]( index ); - __GSLOGSTRING2( "[CGSParentContainer] SelectedPlugin 0x%X in index %d", - plugin->Id().iUid, index ); - } - return plugin; - } - - -// ----------------------------------------------------------------------------- -// CGSParentContainer::SetSelectedItem() -// -// -// ----------------------------------------------------------------------------- -// -void CGSParentContainer::SetSelectedItem( TUid aSelectedItemUid ) - { - __GSLOGSTRING1( "[CGSParentContainer] SetSelectedItem(0x%X)", - aSelectedItemUid.iUid ); - - if( aSelectedItemUid != KGSNoneSelected ) - { - TInt selectedItemIndex = 0; - for( TInt i = 0; i < iVisiblePlugins->Count(); i++ ) - { - CGSPluginInterface* plugin = iVisiblePlugins->operator[]( i ); - __GSLOGSTRING2( "[CGSParentContainer] Checking [%d] 0x%X)", - i, plugin->Id().iUid ); - // If plugin is found, select it: - if( plugin->Id() == aSelectedItemUid ) - { - __GSLOGSTRING2( "[CGSParentContainer] Match 0x%X in index %d", - plugin->Id().iUid, i ); - selectedItemIndex = i; - break; - } - } - iListBox->SetCurrentItemIndexAndDraw( selectedItemIndex ); - } - } - - -// ----------------------------------------------------------------------------- -// CGSParentContainer::GetHelpContext() -// -// -// ----------------------------------------------------------------------------- -// -void CGSParentContainer::GetHelpContext( TCoeHelpContext& aContext ) const - { - // This is forwarded to the CGSParentPlugin type class that actually knows - // the help context but does not have its own CCoeControl class. - iParentPlugin->GetHelpContext( aContext ); - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::FocusChanged -// -// Set focus on the selected listbox. For animated skins feature. -// --------------------------------------------------------------------------- -EXPORT_C void CGSParentContainer::FocusChanged( TDrawNow /*aDrawNow*/ ) - { - if( iListBox ) - { - iListBox->SetFocus( IsFocused() ); - } - } - - -// --------------------------------------------------------------------------- -// CGSParentContainer::HandleSelectionKeyL -// -// Behaves like a selection key. -// --------------------------------------------------------------------------- -void CGSParentContainer::HandleSelectionKeyL() - { - HandleListBoxEventL( iListBox,EEventEnterKeyPressed ); - } - - -// ----------------------------------------------------------------------------- -// CGSParentContainer::TopPlugin() -// -// -// ----------------------------------------------------------------------------- -// -CGSPluginInterface* CGSParentContainer::TopPlugin() - { - CGSPluginInterface* plugin = NULL; - const TInt index = iListBox->TopItemIndex(); - if ( index >= 0 && index < iVisiblePlugins->Count() ) - { - plugin = iVisiblePlugins->operator[]( index ); - __GSLOGSTRING2( "[CGSParentContainer] TopPlugin 0x%X in index %d", - plugin->Id().iUid, index ); - } - return plugin; - } - - -// ----------------------------------------------------------------------------- -// CGSParentContainer::SetSelectedItem() -// -// -// ----------------------------------------------------------------------------- -// -void CGSParentContainer::SetTopItem( TUid aTopItemUid ) - { - __GSLOGSTRING1( "[CGSParentContainer] SetTopItem(0x%X)", - aTopItemUid.iUid ); - - if( aTopItemUid != KGSNoneSelected ) - { - TInt topItemIndex = 0; - for( TInt i = 0; i < iVisiblePlugins->Count(); i++ ) - { - CGSPluginInterface* plugin = iVisiblePlugins->operator[]( i ); - __GSLOGSTRING2( "[CGSParentContainer] Checking [%d] 0x%X)", - i, plugin->Id().iUid ); - // If plugin is found, select it: - if( plugin->Id() == aTopItemUid ) - { - __GSLOGSTRING2( "[CGSParentContainer] Match 0x%X in index %d", - plugin->Id().iUid, i ); - topItemIndex = i; - break; - } - } - iListBox->SetTopItemIndex( topItemIndex ); - } - } - -// ----------------------------------------------------------------------------- -// CGSParentContainer::SetListBoxEmptyTextL() -// -//Set the empty text of list box. -// ----------------------------------------------------------------------------- -// -void CGSParentContainer::SetListBoxEmptyTextL(const TDes& aEmpty ) - { - if ( iListBox ) - { - iListBox->View()->SetListEmptyTextL( aEmpty ); - } - } - -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSParentPlugin.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSParentPlugin.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,730 +0,0 @@ -/* -* Copyright (c) 2005-2008 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: Base class for plugins containing other plugins. Asynchronous -* loading of plugins is used. -* -*/ - - -// INCLUDE FILES -#include -#include -#include -#include "GsLogger.h" -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -// Middle Softkey control ID. -const TInt KGSMSKControlID = 3; -const TInt KGSMSKLength = 256; -const TInt KGSPluginArrayInitSize = 10; - -// ========================= MEMBER FUNCTIONS ================================ - -// --------------------------------------------------------------------------- -// CGSParentPlugin::CGSParentPlugin() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSParentPlugin::CGSParentPlugin() - : iResourceLoader( *iCoeEnv ) - { - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::BaseConstructL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::BaseConstructL( - TInt aViewRscId, - TInt aTitleRscId ) - { - iTitleRscId = aTitleRscId; - iSelectedPluginUid = KGSNoneSelected; - iTopPluginUid = KGSNoneSelected; - - __GSLOGSTRING( "[CGSParentPlugin] ConstructL()" ); - iAppUi = AppUi(); - - OpenLocalizedResourceFileL( KGSParentPluginResourceFileName, - iResourceLoader ); - CAknView::BaseConstructL( aViewRscId ); - - if( !iOptionFlags[ EGSLoadChildrenOnActivation ] ) - { - StartAsyncPluginLoadL(); - } - } - -// --------------------------------------------------------------------------- -// CGSParentPlugin::StartAsyncPluginLoadL() -// -// -// --------------------------------------------------------------------------- -// -void CGSParentPlugin::StartAsyncPluginLoadL() - { - //Initialize array and start loading plugins into it. - iPluginArray = new (ELeave) CArrayPtrFlat( KGSPluginArrayInitSize ); - iPluginLoader = CGSPluginLoader::NewL( iAppUi ); - iPluginLoader->SetObserver( this ); - iPluginLoader->LoadAsyncL( KGSPluginInterfaceUid, Id(), iPluginArray ); - } - -// --------------------------------------------------------------------------- -// CGSParentPlugin::UpperLevelViewUid() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C TUid CGSParentPlugin::UpperLevelViewUid() - { - __GSLOGSTRING( "[CGSParentPlugin] UpperLevelViewUid()" ); - return iPrevViewId.iViewUid; - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::~CGSParentPlugin() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSParentPlugin::~CGSParentPlugin() - { - __GSLOGSTRING( "[CGSParentPlugin] ~CGSParentPlugin" ); - if ( iPluginLoader ) - { - iPluginLoader->AbortAsyncLoad(); - } - delete iPluginLoader; - - if ( iPluginArray ) - { - iPluginArray->Reset();//Do not destroy - Plugins are owned by iAppUi - } - delete iPluginArray; - iResourceLoader.Close(); - - if( iContainer ) - { - iAppUi->RemoveFromViewStack( *this, iContainer ); - delete iContainer; - } - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::OpenLocalizedResourceFileL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::OpenLocalizedResourceFileL( - const TDesC& aResourceFileName, - RConeResourceLoader& aResourceLoader ) - { - RFs fsSession; - User::LeaveIfError( fsSession.Connect() ); - - // Find the resource file: - TParse parse; - parse.Set( aResourceFileName, &KDC_RESOURCE_FILES_DIR, NULL ); - TFileName fileName( parse.FullName() ); - - // Get language of resource file: - BaflUtils::NearestLanguageFile( fsSession, fileName ); - - // Open resource file: - aResourceLoader.OpenL( fileName ); - - // If leave occurs before this, close is called automatically when the - // thread exits. - fsSession.Close(); - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::DoActivateL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::DoActivateL( const TVwsViewId& aPrevViewId, - TUid /*aCustomMessageId*/, - const TDesC8& /*aCustomMessage*/ ) - { - __GSLOGSTRING( "[CGSParentPlugin::DoActivateL]" ); - iPrevViewId = aPrevViewId; - - // If iPluginArray does not exist. Lazy loading is enabled and should start - // loading now. - if( !iPluginArray ) - { - StartAsyncPluginLoadL(); - } - - // Set priority only after plugin loader is created in - // StartAsyncPluginLoadL. - iPluginLoader->RequestPriority( CActive::EPriorityHigh ); - - //if( iContainer ) - // { - // iAppUi->RemoveFromViewStack( *this, iContainer ); - // delete iContainer; - // iContainer=NULL; - // } - - if ( !iContainer ) - { - ConstructContainerL(); - - // Set the empty text of list box. - _LIT( KEmptyText, "" ); - TBuf<1> empty( KEmptyText ); - iContainer->SetListBoxEmptyTextL( empty ); - - // Update listbox from already existing iPluginArray: - iContainer->UpdateListBoxL(); - iAppUi->AddToViewStackL( *this, iContainer ); - if( iTopPluginUid != KGSNoneSelected ) - { - iContainer->SetTopItem( iTopPluginUid ); - } - if( iSelectedPluginUid != KGSNoneSelected ) - { - iContainer->SetSelectedItem( iSelectedPluginUid ); - } - } - - // Navigating to parent view will reset all child plugin selected indexes: - for( TInt i = 0; i < iPluginArray->Count(); i++ ) - { - CGSPluginInterface* plugin = iPluginArray->operator[]( i ); - plugin->ResetSelectedItemIndex(); - } - - iMskCommandId = EAknSoftkeyOpen; - - SetMiddleSoftKeyLabelL( R_QTN_MSK_OPEN, EAknSoftkeyOpen ); - CheckMiddleSoftkeyLabelL(); - - // If this view was launched from external source, use "exit" as RSK - if ( iPrevViewId.iAppUid != KUidGS ) - { - CEikButtonGroupContainer* cbaGroup = Cba(); - if(cbaGroup) - { - HBufC* rightSKText = StringLoader::LoadLC (R_GS_PARENTPLUGIN_CBA_EXIT); - TPtr rskPtr = rightSKText->Des(); - cbaGroup->SetCommandL(2,EAknSoftkeyExit,*rightSKText); - CleanupStack::PopAndDestroy(rightSKText); - } - } - - } - -// --------------------------------------------------------------------------- -// CGSParentPlugin::DoDeactivate() -// -// -// --------------------------------------------------------------------------- -EXPORT_C void CGSParentPlugin::DoDeactivate() - { - __GSLOGSTRING( "[CGSParentPlugin::DoDeactivate]" ); - - iPluginLoader->RequestPriority( CActive::EPriorityLow ); - - if ( iContainer ) - { - CGSPluginInterface* selectedPlugin = iContainer->SelectedPlugin(); - if( selectedPlugin ) - { - iSelectedPluginUid = selectedPlugin->Id(); - } - else - { - iSelectedPluginUid = KGSNoneSelected; - } - - CGSPluginInterface* topPlugin = iContainer->TopPlugin(); - if ( topPlugin ) - { - iTopPluginUid = topPlugin->Id(); - } - else - { - iTopPluginUid = KGSNoneSelected; - } - iAppUi->RemoveFromViewStack( *this, iContainer ); - delete iContainer; - iContainer = NULL; - } - __GSLOGSTRING( "[CGSParentPlugin::DoDeactivate] Done" ); - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::ConstructContainerL() -// -// -// --------------------------------------------------------------------------- -// -void CGSParentPlugin::ConstructContainerL() - { - iContainer = new( ELeave ) CGSParentContainer; - iContainer->SetMopParent( this ); - - TRAPD - ( - error, - iContainer->ConstructL( - ClientRect() , - AppUi(), - iPluginArray, - iTitleRscId, - this, - ListBoxType() ) - ); - - if ( error ) - { - delete iContainer; - iContainer = NULL; - User::Leave( error ); - } - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::HandleCommandL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::HandleCommandL( TInt aCommand ) - { - __GSLOGSTRING1( "[CGSParentPlugin] HandleCommandL(%d)", aCommand ); - - switch ( aCommand ) - { - case EAknSoftkeyBack: - __GSLOGSTRING1( "[CGSParentPlugin] Returning to view 0x%X", - UpperLevelViewUid().iUid ); - iAppUi->ActivateLocalViewL( UpperLevelViewUid() ); - break; - // These all should be handled similarily: - case EAknSoftkeyOpen: - case EGSCmdAppChange: - case EGSCmdAppOpen: - if( iContainer && iPluginArray->Count() > 0 ) - { - CGSPluginInterface* selectedPlugin = - iContainer->SelectedPlugin(); - - if ( NULL != selectedPlugin ) - { - switch( selectedPlugin->ItemType() ) - { - // In these cases the plugin is a view: - case EGSItemTypeSingleLarge: - case EGSItemTypeSetting: - case EGSItemTypeSettingIcon: - iAppUi->ActivateLocalViewL( selectedPlugin->Id() ); - break; - // In these cases the plugin is a dialog: - case EGSItemTypeSettingDialog: - case EGSItemTypeSingleLargeDialog: - selectedPlugin->HandleSelection( - EGSSelectionByMenu ); - break; - } - } - - } - break; - case EGSMSKCmdAppChange: - iContainer->HandleSelectionKeyL(); - break; - case EAknCmdHelp: - { - break; - } - default: - iAppUi->HandleCommandL( aCommand ); - break; - } - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::HandlePluginLoaded() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::HandlePluginLoaded( KGSPluginLoaderStatus aStatus ) - { - __GSLOGSTRING1( "[CGSParentPlugin::HandlePluginLoaded] aStatus:%d", aStatus ); - - switch( aStatus ) - { - case MGSPluginLoadObserver::EGSSuccess: - // Should not update each time when plugin is loaded, only when - // finished loading spesific view plugins? - break; - case MGSPluginLoadObserver::EGSFinished: - if( iContainer ) - { - TRAPD( ignore, iContainer->UpdateListBoxL(); ); - if( ignore != KErrNone ) - { - __GSLOGSTRING1( - "[CGSParentPlugin] HandlePluginLoaded error:%d", - ignore ); - } - } - break; - default: - break; - } - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::TransferDynamicPluginL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::TransferDynamicPluginL( CGSPluginInterface* aPlugin ) - { - __GSLOGSTRING1( "[CGSParentPlugin] CGSParentPlugin::TransferDynamicPluginL() - plugin id: 0x%x added to appUi.", aPlugin->Id() ); - - CleanupStack::PushL( aPlugin ); - iAppUi->AddViewL( aPlugin ); - CleanupStack::Pop( aPlugin ); - - // Add to the overall plugin array for this parent plugin - iPluginArray->AppendL( aPlugin ); - - // Resort the plugins so that they are in order - iPluginLoader->SortPluginsL( iPluginArray ); - - // Update the listbox with the new information - HandlePluginLoaded( MGSPluginLoadObserver::EGSSuccess ); - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::ListBoxType() -// Default implementation. Overwrite if different type of listbox is needed. -// -// --------------------------------------------------------------------------- -// -EXPORT_C TGSListboxTypes CGSParentPlugin::ListBoxType() - { - return EGSListBoxTypeSingleLarge; - } - - -// --------------------------------------------------------------------------- -// CGSParentPlugin::UpdateView() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::UpdateView() - { - __GSLOGSTRING( "[CGSParentPlugin::UpdateView]" ); - TRAP_IGNORE - ( - if( iContainer ) - { - iContainer->UpdateListBoxL(); - } - ); - } - - -// ----------------------------------------------------------------------------- -// CGSParentPlugin::ResetSelectedItemIndex() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::ResetSelectedItemIndex() - { - iSelectedPluginUid = KGSNoneSelected; - if( iContainer ) - { - iContainer->ListBox()->SetCurrentItemIndex( 0 ); - } - } - - -// ----------------------------------------------------------------------------- -// CGSParentPlugin::SetOptionFlags() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::SetOptionFlags( TBitFlags& aOptionFlags ) - { - iOptionFlags = aOptionFlags; - } - - -// ----------------------------------------------------------------------------- -// CGSParentPlugin::OptionFlags() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C const TBitFlags& CGSParentPlugin::OptionFlags() const - { - return iOptionFlags; - } - - -// ----------------------------------------------------------------------------- -// CGSParentPlugin::DynInitMenuPaneL() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::DynInitMenuPaneL( TInt /*aResourceId*/, - CEikMenuPane* aMenuPane ) - { - // Check what is the plugin's desired menu item type for activating the - // plugin. If it doesn't match to the item defined by parent plugin menu - // resource, change the item dynamically. - if ( iContainer->SelectedPlugin() ) - { - CGSPluginInterface* selectedPlugin = iContainer->SelectedPlugin(); - TGSMenuActivationItems desiredItemType = selectedPlugin->MenuActivationItem(); - - // Append new item after this position, delete item in this position. - TInt removableItemPos; - - // MSK command should be identical to the desired activation command in - // options menu. Posibilities are such as 'open' (also as default), - // 'change' or custom text. - // Note: Activation item in options menu is depending on the highlighted - // child plugin's MenuActivationItem() function. - switch( desiredItemType ) - { - case EGSMenuActivationItemDefault: - case EGSMenuActivationItemOpen: - if( aMenuPane->MenuItemExists( EGSCmdAppChange, removableItemPos ) ) - { - aMenuPane->AddMenuItemsL( R_GS_MENU_ITEM_OPEN, removableItemPos ); - aMenuPane->DeleteBetweenMenuItems( removableItemPos, removableItemPos ); - } - break; - - case EGSMenuActivationItemChange: - if( aMenuPane->MenuItemExists( EAknSoftkeyOpen, removableItemPos ) ) - { - aMenuPane->AddMenuItemsL( R_GS_MENU_ITEM_CHANGE, removableItemPos ); - aMenuPane->DeleteBetweenMenuItems( removableItemPos, removableItemPos ); - } - break; - - case EGSMenuActivationItemCustom: - { - // Using EGSCmdAppChange as EGSMenuActivationItemCustom - // functionality is same as for EGSMenuActivationItemChange. - // Here we're replacing EGSCmdAppChange always because we - // cannot be sure whether it's the actual custom command - // already or just EAknSoftkeyOpen. Custom commands will be set - // to use the same command ID (EGSCmdAppChange). - // - CEikMenuPaneItem::SData menuItem; - selectedPlugin->GetValue( EGSCustomMenuActivationText, menuItem.iText ); - menuItem.iCommandId = EGSCmdAppChange; - menuItem.iCascadeId = 0; - menuItem.iFlags = 0; - - if( aMenuPane->MenuItemExists( EGSCmdAppChange, removableItemPos ) ) - { - // Add custom item before 'change' and then remove 'change' - if( menuItem.iText.Length() > 0) - { - aMenuPane->AddMenuItemL( menuItem, EGSCmdAppChange ); - } - aMenuPane->DeleteBetweenMenuItems( removableItemPos, removableItemPos ); - } - else if( aMenuPane->MenuItemExists( EAknSoftkeyOpen, removableItemPos ) ) - { - // Add custom item before 'open' and then remove 'open' - if( menuItem.iText.Length() > 0 ) - { - aMenuPane->AddMenuItemL( menuItem, EAknSoftkeyOpen ); - } - aMenuPane->DeleteBetweenMenuItems( removableItemPos, removableItemPos ); - } - break; - } - default: - break; - } - } - } - - -// ----------------------------------------------------------------------------- -// CGSParentPlugin::GetHelpContext() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSParentPlugin::GetHelpContext( TCoeHelpContext& /*aContext*/ ) - { - // Default implementation does nothing. - } - -// ----------------------------------------------------------------------------- -// When this method is called, view checks based on highlight focus, if the MSK -// label is correct. -// ----------------------------------------------------------------------------- -// -void CGSParentPlugin::CheckMiddleSoftkeyLabelL() - { - if ( iContainer->SelectedPlugin() ) - { - // Remove current MSK - RemoveCommandFromMSK( iMskCommandId ); - - CGSPluginInterface* selectedPlugin = iContainer->SelectedPlugin(); - TGSMenuActivationItems desiredItemType = - selectedPlugin->MenuActivationItem(); - - switch( desiredItemType ) - { - case EGSMenuActivationItemChange: - SetMiddleSoftKeyLabelL( R_QTN_MSK_CHANGE, EGSMSKCmdAppChange ); - iMskCommandId = EGSMSKCmdAppChange; - break; - case EGSMenuActivationItemOpen: - case EGSMenuActivationItemDefault: - SetMiddleSoftKeyLabelL( R_QTN_MSK_OPEN, EAknSoftkeyOpen ); - iMskCommandId = EAknSoftkeyOpen; - break; - case EGSMenuActivationItemCustom: - { - HBufC* mskText = HBufC::NewLC( KGSMSKLength ); - TPtr mskPtr = mskText->Des(); - selectedPlugin->GetValue( EGSCustomMenuActivationText, mskPtr ); - SetMiddleSoftKeyLabelTextL( mskPtr, EGSMSKCmdAppChange ); - CleanupStack::PopAndDestroy( mskText ); - break; - } - default: - // Use 'open' as default - SetMiddleSoftKeyLabelL( R_QTN_MSK_OPEN, EAknSoftkeyOpen ); - iMskCommandId = EAknSoftkeyOpen; - break; - } - } - } - -// ----------------------------------------------------------------------------- -// Remove unnecessary commands from Middle softkey. -// ----------------------------------------------------------------------------- -// -void CGSParentPlugin::RemoveCommandFromMSK( TInt aMskCommandId ) - { - CEikButtonGroupContainer* cbaGroup = Cba(); - if ( cbaGroup ) - { - cbaGroup->RemoveCommandFromStack( KGSMSKControlID, aMskCommandId ); - } - } - -// --------------------------------------------------------------------------- -// Sets middle softkey label. -// --------------------------------------------------------------------------- -// -void CGSParentPlugin::SetMiddleSoftKeyLabelL( - const TInt aResourceId, const TInt aCommandId ) - { - CEikButtonGroupContainer* cbaGroup = Cba(); - if ( cbaGroup ) - { - HBufC* middleSKText = StringLoader::LoadLC( aResourceId ); - TPtr mskPtr = middleSKText->Des(); - cbaGroup->AddCommandToStackL( - KGSMSKControlID, - aCommandId, - mskPtr ); - CleanupStack::PopAndDestroy( middleSKText ); - } - } - -// --------------------------------------------------------------------------- -// Sets middle softkey label. -// --------------------------------------------------------------------------- -// -void CGSParentPlugin::SetMiddleSoftKeyLabelTextL( - const TPtr aMskLabel, const TInt aCommandId ) - { - CEikButtonGroupContainer* cbaGroup = Cba(); - if ( cbaGroup ) - { - cbaGroup->AddCommandToStackL( - KGSMSKControlID, - aCommandId, - aMskLabel ); - } - } - -// --------------------------------------------------------------------------- -// Returns selected plugin. -// --------------------------------------------------------------------------- -// -EXPORT_C CGSPluginInterface* CGSParentPlugin::SelectedPlugin() - { - CGSPluginInterface* selectedPlugin = NULL; - if( iContainer ) - { - selectedPlugin = iContainer->SelectedPlugin(); - } - return selectedPlugin; - } - - -void CGSParentPlugin::RequestPriority( CActive::TPriority aPriority ) - { - iPluginLoader->RequestPriority( aPriority ); - __GSLOGSTRING2( "[CGSParentPlugin::RequestPriority] 0x%X aPriority:%d", Id().iUid, aPriority ); - } - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSPlaceholderView.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSPlaceholderView.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,156 +0,0 @@ -/* -* Copyright (c) 2006 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: -* GS plugin wrapper. -* -*/ - -#include "GSPlaceholderView.h" - -// System includes -#include - -// User includes -#include - -// Constants -const TUid KGSInternalPlaceholderViewUid = { 0x0DEADBED }; - - -// ================= MEMBER FUNCTIONS ======================= - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::CGSPlaceholderView -// -// -// ---------------------------------------------------------------------------- -// -CGSPlaceholderView::CGSPlaceholderView( CCoeAppUi& aAppUi ) -: iAppUi( aAppUi ) - { - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::~CGSPlaceholderView -// -// -// ---------------------------------------------------------------------------- -// -CGSPlaceholderView::~CGSPlaceholderView() - { - iAppUi.DeregisterView( *this ); - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::ConstructL -// -// -// ---------------------------------------------------------------------------- -// -void CGSPlaceholderView::ConstructL() - { - iAppUi.RegisterViewL( *this ); - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::NewL -// -// -// ---------------------------------------------------------------------------- -// -CGSPlaceholderView* CGSPlaceholderView::NewL( CCoeAppUi& aAppUi ) - { - CGSPlaceholderView* self = new(ELeave) CGSPlaceholderView( aAppUi ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::ActivateL -// -// -// ---------------------------------------------------------------------------- -// -void CGSPlaceholderView::ActivateL() - { - iAppUi.ActivateViewL( ViewId() ); - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::PreviouslyActiveViewId -// -// -// ---------------------------------------------------------------------------- -// -const TVwsViewId& CGSPlaceholderView::PreviouslyActiveViewId() const - { - return iPreviouslyActiveViewId; - } - - -// --------------------------------------------------------------------------- -// CGSPlaceholderView::SetPreviouslyActiveViewId -// -// -// --------------------------------------------------------------------------- -// -void CGSPlaceholderView::SetPreviouslyActiveViewId( const TVwsViewId& aViewId ) - { - iPreviouslyActiveViewId = aViewId; - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::ViewId -// -// -// ---------------------------------------------------------------------------- -// -TVwsViewId CGSPlaceholderView::ViewId() const - { - const TVwsViewId ret( KUidGS, KGSInternalPlaceholderViewUid ); - return ret; - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::ViewActivatedL -// -// -// ---------------------------------------------------------------------------- -// -void CGSPlaceholderView::ViewActivatedL( const TVwsViewId& /*aPrevViewId*/, TUid /*aCustomMessageId*/, const TDesC8& /*aCustomMessage*/ ) - { - // NB: aPrevViewId will be the id of the plugin we are trying to load... - } - - -// ---------------------------------------------------------------------------- -// CGSPlaceholderView::ViewDeactivated -// -// -// ---------------------------------------------------------------------------- -// -void CGSPlaceholderView::ViewDeactivated() - { - } - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSPluginAndViewIdCache.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSPluginAndViewIdCache.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,552 +0,0 @@ -/* -* Copyright (c) 2002-2006 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: -* Plugin and view id caching support -* -*/ - - -// INCLUDE FILES -#include "GSPluginAndViewIdCache.h" - -// System includes -#include -#include -#include - -// User includes -#include "GSShimmedView.h" -#include "GSPlaceholderView.h" - -// Constants -_LIT( KGSCacheFileName, "PluginUidToViewIdCache.dat" ); - - -// ================= MEMBER FUNCTIONS ======================= - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::CGSPluginAndViewIdCache -// C++ constructor. -// -// --------------------------------------------------------------------------- -// -CGSPluginAndViewIdCache::CGSPluginAndViewIdCache( CEikAppUi& aAppUi ) -: iAppUi( aAppUi ), iLookupTable( &HashFunction, &HashIdentityRelation ) - { - } - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::~CGSPluginAndViewIdCache -// C++ destructor. -// -// --------------------------------------------------------------------------- -// -CGSPluginAndViewIdCache::~CGSPluginAndViewIdCache() - { - TRAP_IGNORE( StoreL() ); - // - delete iPlaceholderView; - DestroyShims(); - iLookupTable.Close(); - // - iFsSession.Close(); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::ConstructL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::ConstructL() - { - User::LeaveIfError( iFsSession.Connect() ); - User::LeaveIfError( iFsSession.CreatePrivatePath( EDriveC ) ); - // - iPlaceholderView = CGSPlaceholderView::NewL( iAppUi ); - // - TRAP_IGNORE( RestoreL() ); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::NewL -// -// -// --------------------------------------------------------------------------- -// -CGSPluginAndViewIdCache* CGSPluginAndViewIdCache::NewL( CEikAppUi& aAppUi ) - { - CGSPluginAndViewIdCache* self = new(ELeave) CGSPluginAndViewIdCache( aAppUi ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::ActivatePlaceholderViewL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::ActivatePlaceholderViewL() - { - iPlaceholderView->ActivateL(); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::PriorToPlaceholderActiveViewId -// -// -// ---------------------------------------------------------------------------- -// -const TVwsViewId& CGSPluginAndViewIdCache::PriorToPlaceholderActiveViewId() const - { - return iPlaceholderView->PreviouslyActiveViewId(); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::SetPriorToPlaceholderActiveViewId -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::SetPriorToPlaceholderActiveViewId( const TVwsViewId& aViewId ) - { - iPlaceholderView->SetPreviouslyActiveViewId( aViewId ); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::RegisterViewAndImplementationAssociationL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::RegisterViewAndImplementationAssociationL( TUid aViewId, TUid aImplementationUid ) - { - RegisterViewAndImplementationAssociationL( aViewId, aImplementationUid, EFalse ); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::PrepareToRegisterPluginInstanceLC -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::PrepareToRegisterPluginInstanceLC( TUid aViewId ) - { - TCacheEntry* value = iLookupTable.Find( aViewId ); - if ( value && value->iShim ) - { - // Store cleanup view uid so that we know which shim to re-register - // if the cleanup item is invoked. - iTransientCleanupViewUid = aViewId; - - // Prepare item - TCleanupItem item( ReRegisterShimWithUi, this ); - CleanupStack::PushL( item ); - - // Unregister shim view - value->iShim->DeregisterView(); - - // If a leave now occurs, the cleanup stack will unwind and will - // invoke our cleanup item. This item will then re-add - // the specified shim to the view framework. See ReRegisterShimWithUiL - // for further details. - } - else - { - // Record not found - just push NULL to ensure cleanup stack - // remains balanced. - CleanupStack::PushL( (CBase*) NULL ); - } - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::RegisterPluginInstanceL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::RegisterPluginInstanceL( TUid aViewId, CGSPluginInterface& aPluginInstance ) - { - TCacheEntry* value = iLookupTable.Find( aViewId ); - ASSERT( value != NULL ); - - // Can now associate the plugin instance with the cache entry. - value->iLoadedPluginImplementation = &aPluginInstance; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::PluginImplementationUidForView -// -// -// --------------------------------------------------------------------------- -// -TBool CGSPluginAndViewIdCache::IsPluginLoaded( TUid aViewId ) const - { - CGSPluginInterface* instance = PluginInstance( aViewId ); - - TBool loaded = EFalse; - if ( instance ) - { - loaded = ETrue; - } - - return loaded; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::PluginInstance -// -// -// --------------------------------------------------------------------------- -// -CGSPluginInterface* CGSPluginAndViewIdCache::PluginInstance( TUid aViewId ) const - { - CGSPluginInterface* ret = NULL; - // - const TCacheEntry* value = iLookupTable.Find( aViewId ); - if ( value ) - { - ret = value->iLoadedPluginImplementation; - } - // - return ret; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::PluginImplementationUidForView -// -// -// --------------------------------------------------------------------------- -// -TUid CGSPluginAndViewIdCache::PluginImplementationUidForView( TUid aViewId ) const - { - TUid pluginUid = KNullUid; - // - const TCacheEntry* value = iLookupTable.Find( aViewId ); - if ( value ) - { - pluginUid = value->iImplementationUid; - } - // - return pluginUid; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::DestroyShims -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::DestroyShims() - { - RHashMap< TUid, TCacheEntry >::TIter iterator( iLookupTable ); - FOREVER - { - const TUid* key = iterator.NextKey(); - if ( key ) - { - TCacheEntry* value = iterator.CurrentValue(); - - // Destroy shim instance - delete value->iShim; - value->iShim = NULL; - } - else - { - break; - } - } - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::RestoreL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::RestoreL() - { - TFileName* cacheFile = new(ELeave) TFileName(); - CleanupStack::PushL( cacheFile ); - GetCacheFileNameL( *cacheFile ); - // - if ( BaflUtils::FileExists( iFsSession, *cacheFile ) ) - { - RFileReadStream cacheStream; - TInt error = cacheStream.Open( iFsSession, *cacheFile, EFileRead ); - User::LeaveIfError( error ); - CleanupClosePushL( cacheStream ); - - // Now read in cache hash table - TUid key = KNullUid; - TUid value = KNullUid; - - const TInt entryCount = cacheStream.ReadInt32L(); - for( TInt i=0; i::TIter iterator( iLookupTable ); - FOREVER - { - const TUid* key = iterator.NextKey(); - if ( key ) - { - const TCacheEntry* value = iterator.CurrentValue(); - stream.WriteUint32L( key->iUid ); - stream.WriteUint32L( value->iImplementationUid.iUid ); - } - else - { - break; - } - } - - // Finalise the stream - stream.CommitL(); - stream.Close(); // Also closes the file - CleanupStack::PopAndDestroy( &stream ); - - // If we got this far it means we created the cache file successfully. - // Now its okay to replace any pre-existing cache file with the - // file we just created. We're re-use the cachePath variable for the - // ultimate filename since it saves allocating another 1/2kb on the heap. - GetCacheFileNameL( *cachePath ); - if ( BaflUtils::FileExists( iFsSession, *cachePath ) ) - { - error = iFsSession.Delete( *cachePath ); - User::LeaveIfError( error ); - } - - // Now rename intermediate file name to ultimate cache file name. - error = iFsSession.Rename( *intermediateFileName, *cachePath ); - User::LeaveIfError( error ); - - CleanupStack::PopAndDestroy( 2, intermediateFileName ); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::GetCacheFileNameL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::GetCacheFileNameL( TDes& aFileName ) - { - GetCachePathL( aFileName ); - aFileName.Append( KGSCacheFileName ); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::GetCachePathL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::GetCachePathL( TDes& aPath ) - { - aPath.Zero(); - - // Get private data cage path - TInt err = iFsSession.PrivatePath( aPath ); - User::LeaveIfError( err ); - - // Combine with C: drive - const TDriveUnit cDrive( EDriveC ); - const TDriveName cDriveName( cDrive.Name() ); - aPath.Insert( 0, cDriveName ); - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::RegisterViewAndImplementationAssociationL -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::RegisterViewAndImplementationAssociationL( TUid aViewId, TUid aImplementationUid, TBool aCreateShim ) - { - // Check if aViewId is a key within the look up table, so as to avoid - // adding duplicate entries... - const TCacheEntry* value = iLookupTable.Find( aViewId ); - if ( !value ) - { - // No registration for this view yet, so create a new entry - TCacheEntry cacheEntry; - cacheEntry.iImplementationUid = aImplementationUid; - cacheEntry.iLoadedPluginImplementation = NULL; - - if ( aCreateShim ) - { - // Create a new shim - cacheEntry.iShim = CGSShimmedView::NewLC( aViewId, *this, iAppUi ); - } - else - { - cacheEntry.iShim = NULL; - } - - // Add entry to table - the shim ownership is also transferred - // at this point, since the destructor of this class will - // destroy all shims. - iLookupTable.InsertL( aViewId, cacheEntry ); - - if ( aCreateShim ) - { - CleanupStack::Pop( cacheEntry.iShim ); - } - } - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::PrepareForUIDestruction -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::PrepareForUIDestruction() - { - // Have to remove all UI furniture before the AppUi rug is pulled out - // from underneath us... - DestroyShims(); - // - delete iPlaceholderView; - iPlaceholderView = NULL; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::HandleShimDestruction -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::HandleShimDestruction( TUid aViewId ) - { - TCacheEntry* value = iLookupTable.Find( aViewId ); - if ( value && value->iShim ) - { - // The shim has been destroyed. - value->iShim = NULL; - } - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::ReRegisterShimWithUi -// -// -// --------------------------------------------------------------------------- -// -void CGSPluginAndViewIdCache::ReRegisterShimWithUi( TAny* aSelf ) - { - CGSPluginAndViewIdCache* self = reinterpret_cast< CGSPluginAndViewIdCache* >( aSelf ); - // - if ( self->iTransientCleanupViewUid != KNullUid ) - { - TCacheEntry* value = self->iLookupTable.Find( self->iTransientCleanupViewUid ); - if ( value && value->iShim ) - { - TRAP_IGNORE( value->iShim->RegisterViewL() ); - } - } - // - self->iTransientCleanupViewUid = KNullUid; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::HashFunction -// -// -// --------------------------------------------------------------------------- -// -TUint32 CGSPluginAndViewIdCache::HashFunction( const TUid& aViewId ) - { - const TUint32 hash = DefaultHash::Integer( aViewId.iUid ); - return hash; - } - - -// --------------------------------------------------------------------------- -// CGSPluginAndViewIdCache::HashIdentityRelation -// -// -// --------------------------------------------------------------------------- -// -TBool CGSPluginAndViewIdCache::HashIdentityRelation( const TUid& aLeft, const TUid& aRight ) - { - const TBool equal = ( aLeft.iUid == aRight.iUid ); - return equal; - } - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSPluginInterface.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSPluginInterface.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,245 +0,0 @@ -/* -* Copyright (c) 2005-2008 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: CGSPluginInteface implementation. -* -*/ - -#include - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::CGSPluginInterface() -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -EXPORT_C CGSPluginInterface::CGSPluginInterface() - : iOrder( KGSPluginNotIndexed ) - { - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::~CGSPluginInterface() -// Destructor. -// ----------------------------------------------------------------------------- -// -EXPORT_C CGSPluginInterface::~CGSPluginInterface() - { - // We don't unload the plugin object here. The loader - // has to do this for us. Without this kind of destruction idiom, - // the view framework can potentially unload an ECOM plugin dll whilst - // there are still child views (Created by the plugin) that are registered - // with the view framework. If this occurs, the plugin code segment isn't - // loaded anymore and so there is no way to run the subsequent destructor - // code => exception. - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::NewL() -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -EXPORT_C CGSPluginInterface* CGSPluginInterface::NewL( TUid aImplementationUid, - TAny* aInitParams ) - { - TAny* ptr; - TInt32 keyOffset = _FOFF( CGSPluginInterface, iDtor_ID_Key ); - ptr = REComSession::CreateImplementationL( aImplementationUid, - keyOffset, - aInitParams ); - - CGSPluginInterface* plugin = REINTERPRET_CAST( CGSPluginInterface*, ptr ); - - return plugin; - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::PluginProviderCategory() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt CGSPluginInterface::PluginProviderCategory() const - { - return EGSPluginProvider3rdParty; - } - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::CustomOperationL() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C TAny* CGSPluginInterface::CustomOperationL( - TAny* /*aParam1*/, - TAny* /*aParam2*/ ) - { - return NULL; - }; - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::Visible() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C TBool CGSPluginInterface::Visible() const - { - return ETrue; - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::CreateIconL() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C CGulIcon* CGSPluginInterface::CreateIconL( - const TUid aIconType ) - { - TParse parse; - parse.Set( KGSDefaultIconFileName, &KDC_BITMAP_DIR, NULL ); - TFileName fileName( parse.FullName() ); - CGulIcon* icon = NULL; - - if( aIconType == KGSIconTypeLbxItem ) - { - icon = AknsUtils::CreateGulIconL( - AknsUtils::SkinInstance(), - KAknsIIDQgnPropSetDeviceSub, - fileName, - EMbmGsfwiconQgn_prop_set_default_sub, - EMbmGsfwiconQgn_prop_set_default_sub_mask ); - } - else if( aIconType == KGSIconTypeTab ) - { - } - else if( aIconType == KGSIconTypeDColumn ) - { - } - else // Unknown type - { - } - return icon; - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::GetValue() -// -// Empty implementation just to minimize plugin implementor work. -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginInterface::GetValue( const TGSPluginValueKeys aKey, - TDes& aValue ) - { - switch( aKey ) - { - case EGSPluginKeySettingsItemValueString: - - _LIT( KStr, "" ); - aValue.Append( KStr ); - break; - - default: - _LIT( KEmptyStr, "" ); - aValue.Append( KEmptyStr ); - break; - } - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::HandleSelection() -// -// Default implementation just to minimize plugin implementor work. -// On default activate plugin. -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginInterface::HandleSelection( - const TGSSelectionTypes /*aSelectionType*/ ) - { - // There is nothing pluginInterface can do if activating view fails. - TRAP_IGNORE( AppUi()->ActivateLocalViewL( Id() ) ); - - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::ItemType() -// -// Default implementation just to minimize plugin implementor work. -// Default value EGSItemTypeSingleLarge -// ----------------------------------------------------------------------------- -// -EXPORT_C TGSListboxItemTypes CGSPluginInterface::ItemType() - { - return EGSItemTypeSingleLarge; - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::ResetSelectedItemIndex() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginInterface::ResetSelectedItemIndex() - { - // Default implementation does nothing. - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::TGSMenuActivationItems() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C TGSMenuActivationItems CGSPluginInterface::MenuActivationItem() - { - // This default item will be the one read from the resource file. - return EGSMenuActivationItemDefault; - } - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::SetOrder() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginInterface::SetOrder( TInt aOrder ) - { - iOrder = aOrder; - } - - -// ----------------------------------------------------------------------------- -// CGSPluginInterface::GetEcomDestructorKey() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C TUid CGSPluginInterface::GetEcomDestructorKey() - { - return iDtor_ID_Key; - } - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSPluginLoader.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSPluginLoader.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,983 +0,0 @@ -/* -* Copyright (c) 2005-2008 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: GS plugin loader. -* -*/ - - -// INCLUDE FILES -#include -#include -#include -#include "GsLogger.h" -#include "GSBaseDocument.h" -#include "GSPluginWrapper.h" -#include "GSPluginAndViewIdCache.h" -#include - -#include -#include -#include // CAknSingleLargeStyleListbox -#include // CColumnListBoxData -#include // For CGulIcon -#include // CnvUtfConverter -#include -#include - -//Flag for enabling/disablign compare by category feature -#undef RD_GS_COMPARE_BY_CATEGORY - -// ================= MEMBER FUNCTIONS ======================= - -#ifdef _DEBUG - #pragma message("-----_DEBUG ACTIVATED IN GS!-----") -#endif //_GEBUG - -#ifdef _GS_PERFORMANCE_TRACES - #pragma message("-GS plugin load performance measurements activated-") -#endif // _GS_PERFORMANCE_TRACES - -const TInt KGSCaptionSize = 256; - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::NewL -// -// EPOC two-phased constructor -// ---------------------------------------------------------------------------- -// -EXPORT_C CGSPluginLoader* CGSPluginLoader::NewL( CAknViewAppUi* aAppUi ) - { - CGSPluginLoader* self = new( ELeave ) CGSPluginLoader; - CleanupStack::PushL( self ); - self->ConstructL( aAppUi ); - CleanupStack::Pop( self ); - return self; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::CGSPluginLoader -// -// C++ default constructor can NOT contain any code, that -// might leave. -// -// Uses low priority for Active Object so that more bandwith is available for -// the most important pluginloaders. -// ---------------------------------------------------------------------------- -// -CGSPluginLoader::CGSPluginLoader() - : CActive( EPriorityLow ), - iRequestedPriority( EPriorityLow ) - { - __GSLOGSTRING( "[GSPlgLoader] CGSPluginLoader()" ); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::ConstructL -// -// EPOC default constructor can leave. -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginLoader::ConstructL( CAknViewAppUi* aAppUi ) - { - __GSLOGSTRING( "[GSPlgLoader] ConstructL()" ); - iAppUi = aAppUi; - iDocument = static_cast( iAppUi->Document() ); - iImplInfoArray = iDocument->GetImplInfo(); - - CActiveScheduler* scheluder = CActiveScheduler::Current(); - __GSLOGSTRING1( "[GSPlgLoader] Current CActiveScheduler:0x%X", scheluder ); - __GSLOGSTRING1( "[GSPlgLoader] CActiveScheduler stackdepth: %d", - scheluder->StackDepth() ); - - CActiveScheduler::Add( this ); - - iWatchDog = iDocument->WatchDog(); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::~CGSPluginLoader -// -// Destructor -// ---------------------------------------------------------------------------- -// -EXPORT_C CGSPluginLoader::~CGSPluginLoader() - { - __GSLOGSTRING( "[GSPlgLoader] ~CGSPluginLoader()" ); - AbortAsyncLoad(); - Cancel(); - - if( iErrorPopup ) - { - iErrorPopup->HideInfoPopupNote(); - delete iErrorPopup; - iErrorPopup = NULL; - } - //iPluginArray is not owned and therefore not deleted. - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::LoadAsync -// -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginLoader::LoadAsyncL( - TUid aInterfaceUid, - TUid aParentUid, - CArrayPtrFlat* aPluginArray ) - { - iPluginArray = aPluginArray; - iParentUid = aParentUid; - - __GSLOGSTRING3( - "[GSPlgLoader] LoadAsync(). aInterfaceUid:0x%X aParentUid:0x%X, aPluginArray:0x%X", - aInterfaceUid, aParentUid, aPluginArray ); - // Reset iterator: - iImplInfoArrayIterator = 0; - - __GSLOGSTRING1( "[GSPlgLoader] Implementation info count: %d", - iImplInfoArray.Count() ); - - NotifyProgress(); - - //Begin CActive asynchronous loop. - CompleteOwnRequest(); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::LoadSyncL -// -// -// ---------------------------------------------------------------------------- -// -CGSPluginInterface& CGSPluginLoader::LoadSyncL( TUid aInterfaceUid, - TUid aImplementationUid ) - { - Cancel(); - CGSPluginInterface* ret = NULL; - - // Get a list of all implementations, even though we only want one specific. - // There appears to be no way to otherwise extract a specific implementation - // info object :( - // Search for the implementation that matches aImplementationUid - const TInt impCount = iImplInfoArray.Count(); - for( TInt i=0; iImplementationUid() == aImplementationUid ) - { - ret = &CreatePluginInstanceL( *info ); - break; - } - } - - if ( !ret ) - { - User::Leave( KErrNotFound ); - } - return *ret; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::AbortAsyncLoad -// -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginLoader::AbortAsyncLoad() - { - __GSLOGSTRING( "[GSPlgLoader] AbortAsyncLoad()" ); - Cancel(); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::RunL -// -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::RunL() - { - iRunLDebugCount++; - - // This must be done only in RunL or otherwise request might be - // outstanding. - if( iRequestedPriority != Priority() ) - { - __GSLOGSTRING3( - "[CGSPluginLoader::RunL] 0x%X original priority:%d requested priority:%d", - iParentUid.iUid, - Priority(), - iRequestedPriority ); - - SetPriority( iRequestedPriority ); - } - - LoadNextPluginL(); - - // Check if there are still more plugins to be loaded: - if ( iImplInfoArrayIterator < iImplInfoArray.Count() ) - { - NotifyProgress(); - // Continue CActive asynchronous loop. - CompleteOwnRequest(); - } - else - { - // All plugins loaded: - __GSLOGSTRING( "[GSPlgLoader] Loading plugins finished." ); - NotifyFinished(); - } - } - - -// --------------------------------------------------------------------------- -// CScGenreItemConstructionConductor::CompleteOwnRequest -// -// Issue request complete notification. -// --------------------------------------------------------------------------- -void CGSPluginLoader::CompleteOwnRequest() - { - TRequestStatus* status = &iStatus; - User::RequestComplete( status, KErrNone ); - SetActive(); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::RunError -// -// -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::RunError( TInt aError ) - { - // This method is called when a plugin loading fails. - // Always "fake" the return value so that ActiveSchedule - // keeps running and later plugins are continued to be loaded. - // Check if still plugins to be loaded: - if( iImplInfoArrayIterator < iImplInfoArray.Count() ) - { - NotifyProgress(); - - //Continue CActive asynchronous loop. - CompleteOwnRequest(); - } - else // All plugins loaded: - { - NotifyFinished(); - } - - if ( aError == KLeaveExit ) - { - return KLeaveExit; - } - - return KErrNone; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::DoCancel -// -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::DoCancel() - { - - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::NotifyProgress -// -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::NotifyProgress() - { - if( iObserver ) - { - iObserver->HandlePluginLoaded( MGSPluginLoadObserver::EGSSuccess); - } - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::NotifyFinished -// -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::NotifyFinished() - { - - #ifdef _GS_PLUGINLOADER_FINAL_SORTING_TRACES - TRAP_IGNORE( PrintOrderTracesL( iPluginArray ) ); - #endif // _GS_PLUGINLOADER_FINAL_SORTING_TRACES - - // I have finished loading: No need to keep me in the expensive scheduler - // queue. - Deque(); - - if( iObserver ) - { - iObserver->HandlePluginLoaded( MGSPluginLoadObserver::EGSFinished ); - } - - __GSLOGSTRING1( "[CGSPluginLoader::NotifyFinished] 0x%X", - iParentUid.iUid ); - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::SetObserver -// -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginLoader::SetObserver(MGSPluginLoadObserver* aObserver) - { - __GSLOGSTRING1("[GSPlgLoader] Observer set:0x%X", aObserver); - iObserver = aObserver; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::ParseToUid -// Parses a UID from descriptor of form '0xNNNNNNNN' where N is hexadecimal. -// -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::ParseToUid( const TDesC8& aSource, TUid& aTarget ) - { - // Remove "0x" from the descriptor if it exists - _LIT8(KHexPrefix, "0x"); - - TPtrC8 pSource( aSource ); - const TInt prefixPosition = pSource.Find( KHexPrefix ); - if ( prefixPosition != KErrNotFound ) - { - pSource.Set( aSource.Mid( prefixPosition + KHexPrefix().Length() ) ); - } - - // Parse to integer - TLex8 lex( pSource ); - TUint integer = 0; - - // Parse using TRadix::EHex as radix: - const TInt err = lex.Val( integer, EHex ); - aTarget.iUid = integer; - - if( err != KErrNone ) - { - // If parsing parent UID failed, do not load plugin: - __GSLOGSTRING1( - "[GSPlgLoader] Parsing parent UID failed. Error code:%d", - err ); - } - return err; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::ParseOrderNumber -// -// -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::ParseOrderNumber( const TDesC8& aSource, TInt& aOrderNumber ) - { - // Parse plugin's order number from opaque_data: - TLex8 lex( aSource ); - const TInt orderErr = lex.Val( aOrderNumber ); - return orderErr; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::PrintInfoDebug -// Print CImplementationInformation to log. Used for debugging. -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::PrintInfoDebugL( const CImplementationInformation& aInfo, - TInt aIterator, - TInt aPluginCount ) - { - - - #pragma message("-CGSPluginLoader verbose traces activated-") - __GSLOGSTRING2( "[GSPlgLoader::LoadNextPluginL] %d/%d", - aIterator, - aPluginCount); - - __GSLOGSTRING1( "[GSPlgLoader] --Plugin 0x%X info--", &aInfo); - __GSLOGSTRING1( "[GSPlgLoader] DisplayName:%S", &aInfo.DisplayName() ); - __GSLOGSTRING1( "[GSPlgLoader] ImplementationUid:0x%X", - aInfo.ImplementationUid() ); - - const TInt KMaxEComDataLength = 256; - - HBufC* dataType = HBufC::New( KMaxEComDataLength ); - HBufC* opaqueData = HBufC::New( KMaxEComDataLength ); - - dataType->Des().Copy( aInfo.DataType() ); - opaqueData->Des().Copy( aInfo.OpaqueData() ); - __GSLOGSTRING1( "[GSPlgLoader] DataType:%S", dataType ); - __GSLOGSTRING1( "[GSPlgLoader] OpaqueData:%S", opaqueData ); - - delete opaqueData; - delete dataType; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::LoadNextPluginL -// Iterate through iImplInfoArray. Load the plugin if it is eligible for -// loading. Loaded plugin is added to iPluginArray. Each time a plugin is -// loaded, iObserver is notified. -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginLoader::LoadNextPluginL() - { - // Iterate through iImplInfoArray. This loop continues between function - // calls. Therefore member variable iImplInfoArrayIterator is used as a - // counter. Loop will break when match is found and continues on next RunL. - for( ; iImplInfoArrayIterator < iImplInfoArray.Count(); ) - { - const CImplementationInformation* info = - iImplInfoArray[ iImplInfoArrayIterator ]; - - iImplInfoArrayIterator++; - - #ifdef _GS_PLUGINLOADER_VERBOSE_TRACES - PrintInfoDebugL( *info, iImplInfoArrayIterator, iImplInfoArray.Count() ); - #endif //_GS_PLUGINLOADER_VERBOSE_TRACES - - // Parse parent UID from default_data: - TUid parentUid; - const TInt uidErr = ParseToUid( info->DataType(), parentUid ); - - if( uidErr == KErrNone && iParentUid == parentUid ) - { - // If this plugin is OK -> load it: - __GSLOGSTRING2( "[GSPlgLoader] %S eligible for parent 0x%X", - &info->DisplayName(), iParentUid.iUid ); - CGSPluginInterface* plugin = NULL; - TInt error = KErrCancel; - if( !iWatchDog->IsInBlackList( info->ImplementationUid() ) ) - { - // Only panics move quarantined plugins to blacklist. Leaving is - // normal programmatic functionality and therefore does not move - // plugin to blacklist. - iWatchDog->QuarantineL( info->ImplementationUid() ); - - #ifdef _GS_PERFORMANCE_TRACES - TTime timeStart; - TTime timeEnd; - timeStart.HomeTime(); - #endif //_GS_PERFORMANCE_TRACES - - // Create plugin. Trap leave for debugging purposes. - TRAP( error, plugin = &CreatePluginInstanceL( *info ); ); - - #ifdef _GS_PERFORMANCE_TRACES - timeEnd.HomeTime(); - TTimeIntervalMicroSeconds funcDuration = timeEnd.MicroSecondsFrom( timeStart ); - __GSLOGSTRING2( "[GSPlgLoader::LoadNextPluginL/perf] %Ld (%S)", funcDuration, &info->DisplayName() ); - #endif //_GS_PERFORMANCE_TRACES - - TRAP_IGNORE( iWatchDog->RemoveFromQuarantineL( info->ImplementationUid() ); ); - } - if( error == KErrNone ) - { - // Plugin ownership is transfered to iPluginArray - InsertPluginInOrderL( plugin, iPluginArray ); - } - else if( error == KLeaveExit ) - { - __GSLOGSTRING( "[GSPlgLoader::LoadNextPluginL] LEAVE: KLeaveExit!!!" ); - // Must pass KLeaveExit through or otherwise Exit-command will - // not be handled. - User::Leave( KLeaveExit ); - } - else - { - // Error note is displayed even if plugin is not loaded - // -> plugin is in blacklist -> blacklist note displayed. - #ifdef _DEBUG - DisplayErrorPopupL( error, info ); - #endif //_DEBUG - } - // Wait for next round - break; - } - } - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::DisplayErrorPopupL -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::DisplayErrorPopupL( - TInt aError, - const CImplementationInformation* aInfo ) - { - - // Log error: - __GSLOGSTRING3( "[GSPlgLoader] %S (0x%X) loading failed with error code %d", - &aInfo->DisplayName(), - aInfo->ImplementationUid().iUid, - aError ); - - // Runtime info message used only in _DEBUG builds. - // Buffer needs space for about 50 chars for debug text - // + 8 chars for hex UID - // + DisplayName().Length() - // + error code 10 chars... - HBufC* buf = HBufC::NewLC( 100 + aInfo->DisplayName().Length() ); - TPtr ptr = buf->Des(); - - if( aError == KErrCancel ) - { - _LIT( KDbgMsgBlacklisted, "Plugin in blacklist:\n%S (0x%X)" ); - ptr.Format( KDbgMsgBlacklisted, - &aInfo->DisplayName(), - aInfo->ImplementationUid().iUid ); - } - else - { - _LIT( KDbgMsg, "Error:\n%S (0x%X)\nloading failed with error code %d" ); - ptr.Format( KDbgMsg, - &aInfo->DisplayName(), - aInfo->ImplementationUid().iUid, - aError ); - } - if( iErrorPopup ) - { - delete iErrorPopup; - iErrorPopup = NULL; - } - iErrorPopup = CAknInfoPopupNoteController::NewL(); - iErrorPopup->SetTextL( ptr ); - CleanupStack::PopAndDestroy( buf ); - iErrorPopup->ShowInfoPopupNote(); - } - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::CreatePluginInstanceL -// -// -// ---------------------------------------------------------------------------- -// -CGSPluginInterface& CGSPluginLoader::CreatePluginInstanceL( - const CImplementationInformation& aImpInfo ) - { - // Create a wrapper for the plugin - this will take - // care of cleaning up the plugin dll. This must be on - // the cleanup stack above the plugin object itself - since - // the cleanup stack will first delete the plugin, then the - // plugin wrapper will be called to unload the ECOM plugin - // dll itself. - CGSPluginWrapper* wrapper = iDocument->NewPluginUnloadWrapperLC(); - - // Now we can load the plugin - const TUid implUid = aImpInfo.ImplementationUid(); - - CGSPluginInterface* plugin = CGSPluginInterface::NewL( implUid, - iAppUi );// Remove iAppUi - CleanupStack::PushL ( plugin ); - - // And now its okay to update the wrapper with the plugin's - // ECOM destructor info. - wrapper->SetDetails( plugin->iDtor_ID_Key ); - - // If plugin's resource definition had a valid order number, - // set it to plugin. - // - // If parent is GSAppsPlugin, this is where the ordering - // could be changed to follow the to-be-implemented resource file - // defining the plugin order. - - // Parse plugin's order number from opaque_data: - TInt orderNumber = 0; - const TInt orderErr = ParseOrderNumber( aImpInfo.OpaqueData(), orderNumber ); - if ( orderErr == KErrNone && orderNumber >= 0 ) - { - plugin->iOrder = orderNumber; - } - - // When a specific view has been activated externally to GS (e.g - // whilst GS is not running) we have to load the view's plugin on-demand. - // This means that the plugin is essentially free-floating and is not bound - // to a parent's CGSParentPlugin::iPluginArray. - // - // In this situation, even though we have activated a specific view, - // the plugin loader(s) continue to operate in the background. - // - // Eventually, as the loaders progress, a second attempt will occur to - // load the same view (that was activated externally). - // - // In this situation, we discard the recently loaded instance of the plugin - // and instead preserve the view that the user is (presumably) already using. - // - // However, we must ensure that we synchronous the parent's iPluginArray - // with the pre-existing view instance. - const TUid viewId = plugin->Id(); - CGSPluginAndViewIdCache& pluginViewIdCache = iDocument->PluginViewIdCache(); - const TBool isAlreadyLoaded = pluginViewIdCache.IsPluginLoaded( viewId ); - - if ( !isAlreadyLoaded ) - { - // Cache the view uid & ECOM plugin dll uid to enable us - // to more quickly handle external view activation requests - // when GS is not already running. - pluginViewIdCache.RegisterViewAndImplementationAssociationL( viewId, implUid ); - - // Prepare to register the plugin with the cache. Pushes a cleanup stack - // item in case adding the view should leave. - pluginViewIdCache.PrepareToRegisterPluginInstanceLC( viewId ); - - // Add loaded view to appUi. At this point, the GS framework - // is no longer responsible for the lifetime of the 'plugin' - // object. - // - // However, to ensure sucessful cleanup of deleted - // views, we have separated the ECOM plugin dll (controlled by - // plugin->iDtor_ID_Key) to a separate object. This object is - // owned by the loader. - iAppUi->AddViewL( plugin ); - - // Pop the cleanup item - all is well now. - CleanupStack::Pop(); // cleanup item from PrepareToRegisterPluginInstanceLC - - CleanupStack::Pop( plugin ); // view framework is now responsible for this memory. - - // Document, when it is destroyed, will handle unloading of ECOM dll. - CleanupStack::Pop( wrapper ); - - // Also register that we have loaded an instance of the specified view - // from a plugin. - pluginViewIdCache.RegisterPluginInstanceL( viewId, *plugin ); - } - else - { - // Plugin is already loaded, presumably due to external view activation - // request. - // - // Discard "just loaded" instance and use the pre-loaded one instead. - CleanupStack::PopAndDestroy( 2, wrapper ); - plugin = pluginViewIdCache.PluginInstance( viewId ); - } - - return *plugin; - } - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::SortPluginsL -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginLoader::SortPluginsL( - CArrayPtrFlat* aPlugins ) - { - RPointerArray plugins; - TLinearOrder order( CGSPluginLoader::Compare ); - - // Insertion will also order - for( TInt i = 0; i < aPlugins->Count(); i++ ) - { - plugins.InsertInOrderL( (*aPlugins)[i], order ); - } - - // Replace original array content with sorted items - aPlugins->Reset(); - for( TInt i = 0; i < plugins.Count(); i++ ) - { - aPlugins->AppendL( plugins[i] ); - } - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::Compare -// -// Compare two plugins. -// Precedence: -// [1. plugin provider category] -// 2. plugin order number -// 3. plugin caption -// Plugin provider gategory is currently disabled (not supported yet). -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::Compare( const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ) - { - TInt comparison = CompareCategory( aFirst, aSecond ); - if( comparison == KGSComparisonEqual ) - { - comparison = CompareIndex( aFirst, aSecond ); - if( comparison == KGSComparisonEqual ) - { - comparison = CompareCaption( aFirst, aSecond ); - } - } - return comparison; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::InsertPluginInOrderL -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::InsertPluginInOrderL( - CGSPluginInterface* aPlugin, - CArrayPtrFlat* aPlugins ) - { - CGSPluginInterface* comparedPlugin; - TInt comparison = 0; - TBool inserted = EFalse; - - for( TInt i = 0; i < aPlugins->Count(); i++ ) - { - comparedPlugin = (*aPlugins)[i]; - // Optimization: do not call time consuming Compare() multiple times! - comparison = Compare( *aPlugin, *comparedPlugin ); - if( comparison < 0 ) - { - aPlugins->InsertL( i, aPlugin ); - inserted = ETrue; - break; - } - else if( comparison == 0 ) - { - aPlugins->InsertL( i+1, aPlugin ); - inserted = ETrue; - break; - } - } - // Plugin was not before any other plugin - make sure it's appended - if( !inserted ) - { - aPlugins->AppendL( aPlugin ); - } - - #ifdef _GS_PLUGINLOADER_ITERATION_SORTING_TRACES - PrintOrderTracesL( aPlugins ); - #endif // _GS_PLUGINLOADER_ITERATION_SORTING_TRACES - - } - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::CompareCategory -// -// ---------------------------------------------------------------------------- -// -void CGSPluginLoader::PrintOrderTracesL( - CArrayPtrFlat* aPlugins ) - { - __GSLOGSTRING1( "---[CGSPluginLoader] Sorted list for 0x%X---", iParentUid.iUid ); - HBufC* name = HBufC::New( KGSCaptionSize ); - CleanupStack::PushL( name ); - - TPtr ptr = name->Des(); - CGSPluginInterface* plg; - - for( TInt i = 0; i < aPlugins->Count(); i++ ) - { - plg = (*aPlugins)[i]; - plg->GetCaptionL( ptr ); - __GSLOGSTRING4( "[CGSPluginLoader] Sorted list[%d] Category:%d (0x%X) %S", - plg->iOrder, - plg->PluginProviderCategory(), - plg->Id().iUid, - &ptr ); - } - CleanupStack::PopAndDestroy( name ); - - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::CompareCategory -// -// -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::CompareCategory( const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ) - { -#ifdef RD_GS_COMPARE_BY_CATEGORY - TInt comparison = KGSComparisonBefore;//KGSComparisonEqual; - - // Compare if a is before b: - TInt a = aFirst.PluginProviderCategory(); - TInt b = aSecond.PluginProviderCategory(); - - // Cannot use less/greater comparison because int values used in here - // (KGSPluginProviderInternal) must not be revealed to 3rd parties. - if( a != b ) - { - switch ( a ) - { -/* case KGSPluginProviderInternal: - if( b != KGSPluginProviderInternal ) - { - comparison = KGSComparisonAfter; - } - break;*/ - case CGSPluginInterface::EGSPluginProviderOEM: - if( b == KGSPluginProviderInternal ) - { - comparison = KGSComparisonAfter; - } - break; - case CGSPluginInterface::EGSPluginProviderOperator: - if( b == KGSPluginProviderInternal || - b == CGSPluginInterface::EGSPluginProviderOEM ) - { - comparison = KGSComparisonAfter; - } - break; - case CGSPluginInterface::EGSPluginProvider3rdParty: - if( b == KGSPluginProviderInternal || - b == CGSPluginInterface::EGSPluginProviderOEM || - b == CGSPluginInterface::EGSPluginProviderOperator ) - { - comparison = KGSComparisonAfter; - } - break; - default: - comparison = KGSComparisonBefore; - break; - } - } - else - { - comparison = KGSComparisonEqual; - } - - return comparison; - -#else //RD_GS_COMPARE_BY_CATEGORY - #pragma message("Comparing by category DISABLED") - // Force comparison to equal so category comparison will not matter. If - // comparison by gategory is needed, simply remove the line below: - return KGSComparisonEqual; -#endif //RD_GS_COMPARE_BY_CATEGORY - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::CompareCaption -// -// -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::CompareCaption( const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ) - { - HBufC* firstCaptionBuf = HBufC::New( KGSCaptionSize ); - HBufC* secondCaptionBuf = HBufC::New( KGSCaptionSize ); - TPtr firstCaption = firstCaptionBuf->Des(); - TPtr secondCaption = secondCaptionBuf->Des(); - TInt comparison = KGSComparisonEqual; - - TRAPD( err, aFirst.GetCaptionL( firstCaption ); ); - TRAPD( err2, aSecond.GetCaptionL( secondCaption ); ); - - if( err == KErrNone && err2 == KErrNone ) - { - // CompareC return value must be converted to KGSComparisonXXX value. - TInt result = secondCaption.CompareC( firstCaption ); - if( result < 0 ) - { - comparison = KGSComparisonAfter; - } - else if( result > 0 ) - { - comparison = KGSComparisonBefore; - } - } - delete firstCaptionBuf; - delete secondCaptionBuf; - return comparison; - } - - -// ---------------------------------------------------------------------------- -// CGSPluginLoader::CompareIndex -// -// -// ---------------------------------------------------------------------------- -// -TInt CGSPluginLoader::CompareIndex( const CGSPluginInterface& aFirst, - const CGSPluginInterface& aSecond ) - { - TInt comparison = KGSComparisonEqual; - - // The plugin having index is before the one not having one - - if( aFirst.iOrder == KGSPluginNotIndexed && - aSecond.iOrder == KGSPluginNotIndexed ) - { - // Neither have index -> equal - comparison = KGSComparisonEqual; - } - else if( aFirst.iOrder == KGSPluginNotIndexed ) - { - // The plugin having index is before the one not having one - comparison = KGSComparisonAfter; - } - else if( aSecond.iOrder == KGSPluginNotIndexed ) - { - // The plugin having index is before the one not having one - comparison = KGSComparisonBefore; - } - else if( aFirst.iOrder < aSecond.iOrder ) - { - // Compare actual index values - comparison = KGSComparisonBefore; - } - else if( aFirst.iOrder > aSecond.iOrder ) - { - // Compare actual index values - comparison = KGSComparisonAfter; - } - - return comparison; - } - - - -EXPORT_C void CGSPluginLoader::RequestPriority( CActive::TPriority aPriority ) - { - iRequestedPriority = aPriority; - } - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSPluginWrapper.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSPluginWrapper.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ -/* -* Copyright (c) 2006 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: -* GS plugin wrapper. -* -*/ - -#include "GSPluginWrapper.h" - -// System includes -#include - - -// ================= MEMBER FUNCTIONS ======================= - -// ---------------------------------------------------------------------------- -// CGSPluginWrapper::CGSPluginWrapper -// -// -// ---------------------------------------------------------------------------- -// -CGSPluginWrapper::CGSPluginWrapper( CGSBaseDocument& aDocument ) -: iDocument( aDocument ) - { - } - - -// ---------------------------------------------------------------------------- -// CGSPluginWrapper::~CGSPluginWrapper -// -// -// ---------------------------------------------------------------------------- -// -EXPORT_C CGSPluginWrapper::~CGSPluginWrapper() - { - if ( iDestructorIdKey != KNullUid ) - { - REComSession::DestroyedImplementation( iDestructorIdKey ); - } - } - - -// ---------------------------------------------------------------------------- -// CGSPluginWrapper::SetDetails -// -// -// ---------------------------------------------------------------------------- -// -EXPORT_C void CGSPluginWrapper::SetDetails( TUid aDestructorIdKey ) - { - iDestructorIdKey = aDestructorIdKey; - } - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSPubSubsListener.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSPubSubsListener.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,155 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Publish and subscribe settings listener. -* -*/ - - -// INCLUDE FILES -#include -#include - - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::CGSPubSubsListener -// C++ constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CGSPubSubsListener::CGSPubSubsListener( const TUid aUid, const TInt aKey, - MGSSettingPSObserver* aObserver ) - : CActive( CActive::EPriorityStandard ) - { - iUid = aUid; - iId = aKey; - iCallback = aObserver; - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::~CGSPubSubsListener -// Destructor. -// ----------------------------------------------------------------------------- -// -EXPORT_C CGSPubSubsListener::~CGSPubSubsListener() - { - Cancel(); - iProperty.Close(); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::RunL -// From CActive. -// ----------------------------------------------------------------------------- -// -void CGSPubSubsListener::RunL() - { - const TRequestStatus status( iStatus ); - StartListening(); - iCallback->HandleNotifyPSL( iUid, iId, status ); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::DoCancel -// From CActive. -// ----------------------------------------------------------------------------- -// -void CGSPubSubsListener::DoCancel() - { - iProperty.Cancel(); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::RunError -// From CActive. -// ----------------------------------------------------------------------------- -// -TInt CGSPubSubsListener::RunError( TInt /*aError*/ ) - { - return KErrNone; - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::NewL -// -// Symbian OS two phased constructor -// ----------------------------------------------------------------------------- -// -EXPORT_C CGSPubSubsListener* CGSPubSubsListener::NewL( const TUid aUid, const TInt aKey, - MGSSettingPSObserver* aObserver ) - { - CGSPubSubsListener* self = new( ELeave ) - CGSPubSubsListener( aUid, aKey, aObserver ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::StartListening -// ----------------------------------------------------------------------------- -// -void CGSPubSubsListener::StartListening() - { - iProperty.Subscribe( iStatus ); - SetActive(); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::ConstructL -// -// Symbian OS default constructor -// ----------------------------------------------------------------------------- -// -void CGSPubSubsListener::ConstructL() - { - CActiveScheduler::Add( this ); - - User::LeaveIfError ( iProperty.Attach( iUid, iId, EOwnerThread ) ); - StartListening(); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::Get -// Read integer value. -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt CGSPubSubsListener::Get( TInt& aVal ) - { - return iProperty.Get( iUid, iId, aVal ); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::Get -// Read binary value. -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt CGSPubSubsListener::Get( TDes8& aVal ) - { - return iProperty.Get( iUid, iId, aVal ); - } - -// ----------------------------------------------------------------------------- -// CGSPubSubsListener::Get -// Read string value. -// ----------------------------------------------------------------------------- -// -EXPORT_C TInt CGSPubSubsListener::Get( TDes16& aVal ) - { - return iProperty.Get( iUid, iId, aVal ); - } - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSShimmedView.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSShimmedView.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,318 +0,0 @@ -/* -* Copyright (c) 2006-1008 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: Shim view -* -*/ - -#include "GSShimmedView.h" - -// System includes -#include -#include - -// User includes -#include "GSPluginAndViewIdCache.h" -#include -#include -#include - -// ================= MEMBER FUNCTIONS ======================= - -// ---------------------------------------------------------------------------- -// CGSShimmedView::CGSShimmedView -// -// -// ---------------------------------------------------------------------------- -// -CGSShimmedView::CGSShimmedView( TUid aViewId, - CGSPluginAndViewIdCache& aCache, - CCoeAppUi& aAppUi ) -: CActive( KMaxTInt ), iViewId( aViewId ), iCache( aCache ), iAppUi( aAppUi ) - { - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::~CGSShimmedView -// -// -// ---------------------------------------------------------------------------- -// -CGSShimmedView::~CGSShimmedView() - { - Cancel(); - DeregisterView(); - iCache.HandleShimDestruction( iViewId ); - delete iCustomMessage; - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::ConstructL -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::ConstructL() - { - RegisterViewL(); - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::NewLC -// -// -// ---------------------------------------------------------------------------- -// -CGSShimmedView* CGSShimmedView::NewLC( TUid aViewId, - CGSPluginAndViewIdCache& aCache, - CCoeAppUi& aAppUi ) - { - CGSShimmedView* self = new(ELeave) CGSShimmedView( aViewId, aCache, aAppUi ); - CleanupStack::PushL( self ); - self->ConstructL(); - return self; - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::ViewId -// -// -// ---------------------------------------------------------------------------- -// -TVwsViewId CGSShimmedView::ViewId() const - { - const TVwsViewId ret( KUidGS, iViewId ); - return ret; - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::ViewActivatedL -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::ViewActivatedL( const TVwsViewId& aPrevViewId, - TUid aCustomMessageId, - const TDesC8& aCustomMessage ) - { - const TBool isLoaded = iCache.IsPluginLoaded( iViewId ); - if ( isLoaded == EFalse ) - { - HBufC8* customMessage = aCustomMessage.AllocL(); - delete iCustomMessage; - iCustomMessage = customMessage; - - iCustomMessageId = aCustomMessageId; - - iCache.SetPriorToPlaceholderActiveViewId( aPrevViewId ); - SetState( EStateActivatingPlaceholderView ); - } - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::ViewDeactivated -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::ViewDeactivated() - { - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::RunL -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::RunL() - { - // NB: At this point, we are the active view. - - switch( iState ) - { - default: - case EStateInactive: - break; - - case EStateActivatingPlaceholderView: - StateActivatePlaceholderViewL(); - break; - - case EStateLoadingPlugin: - StateLoadPluginL(); - break; - - case EStateDeletingSelf: - SetState( EStateInactive, EFalse ); - delete this; - break; - } - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::RegisterViewL -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::RegisterViewL() - { - iAppUi.RegisterViewL( *this ); - iIsRegistered = ETrue; - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::DeregisterView -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::DeregisterView() - { - if ( iIsRegistered ) - { - iAppUi.DeregisterView( *this ); - } - iIsRegistered = EFalse; - } - - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::DoCancel -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::DoCancel() - { - // Nothing to do here - requests already completed - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::SetState -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::SetState( TState aState, TBool aCompleteRequest ) - { - Cancel(); - // - iState = aState; - // - if ( aCompleteRequest ) - { - if ( !IsAdded() ) - { - // Add only on-demand to avoid cluttering the scheduler - CActiveScheduler::Add( this ); - } - - // Complete ourselves to continue activation process asynchronously - // via RunL(). - TRequestStatus* status = &iStatus; - User::RequestComplete( status, KErrNone ); - SetActive(); - } - } - - -// ---------------------------------------------------------------------------- -// CGSShimmedView::StateActivatePlaceholderViewL -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::StateActivatePlaceholderViewL() - { - iCache.ActivatePlaceholderViewL(); - SetState( EStateLoadingPlugin ); - } - - -//Disabling warning caused by err variable used inside macros -#pragma diag_suppress 550 -// ---------------------------------------------------------------------------- -// CGSShimmedView::StateLoadPluginL -// -// -// ---------------------------------------------------------------------------- -// -void CGSShimmedView::StateLoadPluginL() - { - CAknViewAppUi& appUi = static_cast< CAknViewAppUi& >( iAppUi ); - - // As a fall back, we'll try to activate the view that was being - // displayed prior to us attempting to load a plugin. - TUid viewIdToActivate = iCache.PriorToPlaceholderActiveViewId().iViewUid; - - // Get the implementation uid that contains this view. - const TUid impUid = iCache.PluginImplementationUidForView( iViewId ); - - if ( impUid != KNullUid ) - { - CGSPluginLoader* loader = CGSPluginLoader::NewL( &appUi ); - CleanupStack::PushL( loader ); - - // Now try to load the specific instance of the GS plugin that - // implements the real view's concrete implementation. - // - // Since the act of loading a plugin will also attempt to register - // that plugin with the app ui (since a GS plugin "is a" view) we - // must first unregister the shim view. If there was an error - // loading the plugin, then we'll re-register the shim. - DeregisterView(); - - CGSPluginInterface* plugin = NULL; - TRAPD( loadError, plugin = &loader->LoadSyncL( KGSPluginInterfaceUid, impUid ) ); - CleanupStack::PopAndDestroy( loader ); - - if ( loadError == KErrNone ) - { - // .. and set us up to activate the newly loaded plugin view. - viewIdToActivate = iViewId; - - // Set ourselves up to be destroyed in the next RunL callback - SetState( EStateDeletingSelf ); - } - else - { - // Didn't manage to load plugin. Re-register the view - // and bail out. - SetState( EStateInactive, EFalse ); - RegisterViewL(); - } - } - - appUi.ActivateLocalViewL( viewIdToActivate, iCustomMessageId, *iCustomMessage ); - } -//Enabling warnings -#pragma diag_default 550 - - - - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSTabHelper.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSTabHelper.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,288 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Utility class for creating tab groups. -* -*/ - - -// INCLUDE FILES -#include "gstabhelper.h" -#include "gstabbedview.h" -#include "GsLogger.h" - -#include -#include -#include -#include -#include -#include -#include - -// ================= MEMBER FUNCTIONS ======================= - -// --------------------------------------------------------------------------- -// CGSTabHelper::CGSTabHelper -// C++ constructor. -// -// --------------------------------------------------------------------------- -// -CGSTabHelper::CGSTabHelper() - { - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::NewL() -// Symbian OS two-phased constructor. -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSTabHelper* CGSTabHelper::NewL() - { - CGSTabHelper* self = NewLC(); - CleanupStack::Pop( self ); - return self; - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::NewLC() -// Symbian OS two-phased constructor. -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSTabHelper* CGSTabHelper::NewLC() - { - CGSTabHelper* self = new(ELeave) CGSTabHelper(); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::ConstructL(const TRect& aRect) -// Symbian OS default constuctor. -// -// --------------------------------------------------------------------------- -// -void CGSTabHelper::ConstructL() - { - iNaviDecorator = NULL; - - iAppUi = static_cast( CCoeEnv::Static()->AppUi() ); - - CEikStatusPane* statusPane = iAppUi->StatusPane(); - - // Fetch pointer to the default navi pane container: - iNaviContainer = static_cast - ( statusPane->ControlL( TUid::Uid(EEikStatusPaneUidNavi ) ) ); - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::~CGSTabHelper() -// Destructor -// -// --------------------------------------------------------------------------- -// -EXPORT_C CGSTabHelper::~CGSTabHelper() - { - RemoveTabGroup(); - } - - -// ----------------------------------------------------------------------------- -// CGSTabHelper::CreateTabGroupL() -// -// -// ----------------------------------------------------------------------------- -// -EXPORT_C void CGSTabHelper::CreateTabGroupL( TUid aActiveViewUid, - MGSTabbedViewOwner* aTabOwner ) - { - iTabOwner = aTabOwner; - CreateTabGroupL( aActiveViewUid, iTabOwner->TabbedViews() ); - } - -// --------------------------------------------------------------------------- -// CGSTabHelper::CreateTabGroupL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSTabHelper::CreateTabGroupL( - TUid aActiveViewUid, - CArrayPtrFlat* aTabbedViews ) - { - RemoveTabGroup();//Remove possible old tab group. - iNaviDecorator = iNaviContainer->CreateTabGroupL( this ); - iTabGroup = - static_cast ( iNaviDecorator->DecoratedControl() ); - - switch ( aTabbedViews->Count() ) - { - case 1: - iTabGroup->SetTabFixedWidthL( KTabWidthWithOneTab ); - break; - case 2: - iTabGroup->SetTabFixedWidthL( KTabWidthWithTwoTabs ); - break; - case 3: - iTabGroup->SetTabFixedWidthL( KTabWidthWithThreeTabs ); - break; - default: - iTabGroup->SetTabFixedWidthL( KTabWidthWithFourTabs ); - break; - } - - for( TInt i = 0; i < aTabbedViews->Count(); i++ ) - { - CGSPluginInterface* tabbedView = aTabbedViews->operator[]( i ); - CGulIcon* icon = NULL; - TRAPD - ( - err, - icon = tabbedView->CreateIconL( KGSIconTypeTab ); - ) - - // CreateIconL should not leave outside. If creating icon leaves, use - // default icon. - if( err != KErrNone ) - { - __GSLOGSTRING2( - "[CGSTabHelper] ERROR: 0x%X::CreateIconL failed (%d), using default icon.", - tabbedView->Id().iUid, err ); - - icon = - tabbedView->CGSPluginInterface::CreateIconL( KGSIconTypeTab ); - } - CleanupStack::PushL( icon ); - iTabGroup->AddTabL( tabbedView->Id().iUid, - icon->Bitmap(), - icon->Mask() ); - - // Bitmaps are now owned by the tab: - icon->SetBitmapsOwnedExternally( ETrue ); - - // Delete icon object. Bitmaps are not owned by icon anymore and thus - // not deleted: - CleanupStack::PopAndDestroy( icon ); - } - - iNaviContainer->PushL( *iNaviDecorator ); - - // The active tab should be same as active plugin - iTabGroup->SetActiveTabById( aActiveViewUid.iUid ); - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::CreateTabGroupL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSTabHelper::CreateTabGroupL( - TUid aActiveViewUid, - CArrayPtrFlat* aTabbedViews ) - { - RemoveTabGroup();//Remove possible old tab group. - iNaviDecorator = iNaviContainer->CreateTabGroupL( this ); - iTabGroup = - static_cast ( iNaviDecorator->DecoratedControl() ); - - switch ( aTabbedViews->Count() ) - { - case 1: - iTabGroup->SetTabFixedWidthL( KTabWidthWithOneTab ); - break; - case 2: - iTabGroup->SetTabFixedWidthL( KTabWidthWithTwoTabs ); - break; - case 3: - iTabGroup->SetTabFixedWidthL( KTabWidthWithThreeTabs ); - break; - default: - iTabGroup->SetTabFixedWidthL( KTabWidthWithFourTabs ); - break; - } - - for( TInt i = 0; i < aTabbedViews->Count(); i++ ) - { - MGSTabbedView* tabbedView = aTabbedViews->operator[]( i ); - - // Takes icon ownership - CGulIcon* icon = tabbedView->CreateTabIconL(); - CleanupStack::PushL( icon ); - - - iTabGroup->AddTabL( tabbedView->Id().iUid, - icon->Bitmap(), - icon->Mask() ); - - //Bitmaps are now owned by the tab: - icon->SetBitmapsOwnedExternally( ETrue ); - - // Delete icon object. Bitmaps are not owned by icon anymore and thus - // not deleted: - CleanupStack::PopAndDestroy( icon ); - } - - iNaviContainer->PushL( *iNaviDecorator ); - - // The active tab should be same as active plugin - iTabGroup->SetActiveTabById( aActiveViewUid.iUid ); - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::RemoveTabGroup() -// -// Removes the tab group owned by this class from navi pane. -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSTabHelper::RemoveTabGroup() - { - if( iNaviDecorator ) - { - iNaviContainer->Pop( iNaviDecorator ); - delete iNaviDecorator; - iNaviDecorator = NULL; - } - } - - -// --------------------------------------------------------------------------- -// CGSTabHelper::TabChangedL() -// -// -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSTabHelper::TabChangedL( TInt aIndex ) - { - TUid uid; - uid.iUid = iTabGroup->TabIdFromIndex( aIndex ); - - // If has a tab owner, notify it: - if( iTabOwner ) - { - iTabOwner->TabChangedL( uid ); - } - - iAppUi->ActivateLocalViewL( uid ); - } - - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSFramework/src/GSWatchDog.cpp --- a/gssettingsuis/Gs/GSFramework/src/GSWatchDog.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,565 +0,0 @@ -/* -* Copyright (c) 2007 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: -* -*/ - - -// INCLUDE FILES -#include -#include -#include - -// USER INCLUDES -#include "GSWatchDog.h" -#include "GsLogger.h" -#include "settingsinternalcrkeys.h" -#include "SettingsPrivateCRKeys.h" - -#include -#include -#include - -using namespace NCentralRepositoryConstants; - -// CONSTANTS - - -// ========================= MEMBER FUNCTIONS ================================ - -// ---------------------------------------------------------------------------- -// CGSWatchDog::NewL -// -// EPOC two-phased constructor -// ---------------------------------------------------------------------------- -// -CGSWatchDog* CGSWatchDog::NewL() - { - CGSWatchDog* self = new( ELeave ) CGSWatchDog; - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - return self; - } - - -// ---------------------------------------------------------------------------- -// CGSWatchDog::ConstructL -// -// EPOC default constructor can leave. -// ---------------------------------------------------------------------------- -// -void CGSWatchDog::ConstructL() - { - __GSLOGSTRING( "[CGSWatchDog] ConstructL()" ); - iStore = CRepository::NewL( KCRUidMiscSettings ); - - // Read last stored state for watchdog... - ReadStateL(); - - // If GS crashed last time, activate watchdog, reset run counter. Watchdog - // will be active as long as exit was not clean (panicked). - if( !WasCleanExitL() && - iWatchdogActivationLimit != KGSWatchdogActivationDisabled ) - { - iCrashCounter++; - iIsActive = ETrue; - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - #pragma message("-CGSWachDog verbose traces activated-") - User::InfoPrint( _L("Watchdog activated!") ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - - if( iQuarantine.Count() > 0 ) - { - for( TInt i = 0; i < iQuarantine.Count(); i++ ) - { - // If plugin is not already in blacklist, move it there from - // quarantinelist. - if( !IsInBlackList( iQuarantine[i] ) ) - { - TGSPluginQuarantine quarantinedPlugin; - quarantinedPlugin.iRunsAfterCrash = 0; - quarantinedPlugin.iUid = iQuarantine[i]; - iBlackList.Append( quarantinedPlugin ); - iQuarantine.Remove( i ); - } - } - } - } - else - { - iIsActive = EFalse; - iCrashCounter = 0; - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - User::InfoPrint( _L("Watchdog disabled.") ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - - // Clean run -> empty quarantine. - iQuarantine.Reset(); - } - - // Continue normal progress, set application to run state... - iGSAppRunning = ETrue; - - // Store watchdog state at this point as panic will not call normal - // destructors and data would be otherwise lost in case of panic. - StoreStateL(); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::CGSWatchDog -// -// C++ constructor -// --------------------------------------------------------------------------- -CGSWatchDog::CGSWatchDog() - { - } - - - -// --------------------------------------------------------------------------- -// CGSWatchDog::~CGSWatchDog -// -// Destructor -// --------------------------------------------------------------------------- -CGSWatchDog::~CGSWatchDog() - { - // Update all blacklisted plugins in case no crash FIRST, then store... - UpdateBlackListedPluginRunCounters(); - TRAP_IGNORE( StoreStateL(); ); - iBlackList.Close(); - iQuarantine.Close(); - delete iStore; - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::Quarantine -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::QuarantineL( TUid aPluginUid ) - { - if( iIsActive ) - { - iQuarantine.Append( aPluginUid ); - StoreQuarantineL(); // Store to persistent storage - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - __GSLOGSTRING1( "[CGSWatchDog] Quarantined:0x%X", aPluginUid.iUid ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - - } - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::RemoveFromQuarantine -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::RemoveFromQuarantineL( TUid aPluginUid ) - { - if( iIsActive ) - { - for( TInt i = 0; i < iQuarantine.Count(); i++ ) - { - if( iQuarantine[i] == aPluginUid ) - { - iQuarantine.Remove( i ); - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - __GSLOGSTRING1( "[CGSWatchDog] Removed from quarantine:0x%X", aPluginUid.iUid ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - - StoreQuarantineL(); - break; - } - } - } - } - -// --------------------------------------------------------------------------- -// CGSWatchDog::WasCleanExit -// -// -// --------------------------------------------------------------------------- -TBool CGSWatchDog::WasCleanExitL() - { - return !iGSAppRunning; - } - -// --------------------------------------------------------------------------- -// CGSWatchDog::ReportCleanExit -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::ReportCleanExitL() - { - iGSAppRunning = EFalse; - iStore->Set( KWatchDogGSRunning, iGSAppRunning ); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::IsInBlackList -// -// -// --------------------------------------------------------------------------- -TBool CGSWatchDog::IsInBlackList( TUid aPluginUid ) - { - TBool found = EFalse; - if( iIsActive ) - { - for( TInt i = 0; i < iBlackList.Count(); i++ ) - { - if( iBlackList[i].iUid == aPluginUid ) - { - found = ETrue; - break; - } - } - } - - return found; - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::StoreStateL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::StoreStateL() - { - //iStore->Set( KWatchDogIsActive, iIsActive ); - iStore->Set( KWatchDogGSRunning, iGSAppRunning ); - iStore->Set( KWatchDogCrashCounter, iCrashCounter ); - iStore->Set( KWatchdogActivationLimit, iWatchdogActivationLimit ); - iStore->Set( KWatchdogMaxPluginBlackListedRuns, iMaxPluginBlackListedRuns ); - - StoreQuarantineL(); - StoreBlackListL(); - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - // The following is just for debug trace: - __GSLOGSTRING( "[CGSWatchDog] Storing state:" ); - __GSLOGSTRING1( " iIsActive: %d", iIsActive ); - __GSLOGSTRING1( " iGSAppRunning: %d", iGSAppRunning ); - __GSLOGSTRING1( " iCrashCounter: %d", iCrashCounter ); - __GSLOGSTRING1( " iWatchdogActivationLimit: %d", iWatchdogActivationLimit ); - __GSLOGSTRING1( " iMaxPluginBlackListedRuns: %d", iMaxPluginBlackListedRuns ); - - __GSLOGSTRING( "[CGSWatchDog] Stored plugins from quarantine:" ); - for( TInt i = 0; i < iQuarantine.Count(); i++ ) - { - __GSLOGSTRING1( " 0x%X", iQuarantine[i].iUid ); - } - __GSLOGSTRING( "-" ); - - __GSLOGSTRING( "[CGSWatchDog] Stored plugins from blacklist:" ); - for( TInt i = 0; i < iBlackList.Count(); i++ ) - { - __GSLOGSTRING2( " 0x%X %d runs", iBlackList[i].iUid.iUid, iBlackList[i].iRunsAfterCrash ); - } - __GSLOGSTRING( "-" ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::ReadStateL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::ReadStateL() - { - /*TInt isActive = EFalse; // Needed for mapping to TBool value - TInt err = iStore->Get( KWatchDogIsActive, isActive ); - if( isActive == 1 ) - { - iIsActive = ETrue; - } - else - { - iIsActive = EFalse; - }*/ - - TInt appRunning; // Needed for mapping to TBool value - TInt err = iStore->Get( KWatchDogGSRunning, appRunning ); - - if( err ) - { - // CenRep values are uninitialized: first runtime of watchdog - // -> init values - InitStateL(); - } - - if( appRunning ) - { - iGSAppRunning = ETrue; - } - else - { - iGSAppRunning = EFalse; - } - - iStore->Get( KWatchDogCrashCounter, iCrashCounter ); - iStore->Get( KWatchdogActivationLimit, iWatchdogActivationLimit ); - iStore->Get( KWatchdogMaxPluginBlackListedRuns, iMaxPluginBlackListedRuns ); - - ReadQuarantineL(); - ReadBlackListL(); - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - // The following is just for debug trace: - __GSLOGSTRING( "[CGSWatchDog] Read state:" ); - __GSLOGSTRING1( " iIsActive: %d", iIsActive ); - __GSLOGSTRING1( " iGSAppRunning: %d", iGSAppRunning ); - __GSLOGSTRING1( " iCrashCounter: %d", iCrashCounter ); - __GSLOGSTRING1( " iWatchdogActivationLimit: %d", iWatchdogActivationLimit ); - __GSLOGSTRING1( " iMaxPluginBlackListedRuns: %d", iMaxPluginBlackListedRuns ); - - __GSLOGSTRING( "[CGSWatchDog] Read plugins from quarantine:" ); - for( TInt i = 0; i < iQuarantine.Count(); i++ ) - { - __GSLOGSTRING1( " 0x%X", iQuarantine[i].iUid ); - } - __GSLOGSTRING( "-" ); - - __GSLOGSTRING( "[CGSWatchDog] Read plugins from blacklist:" ); - for( TInt i = 0; i < iBlackList.Count(); i++ ) - { - __GSLOGSTRING2( " 0x%X %d runs", iBlackList[i].iUid.iUid, iBlackList[i].iRunsAfterCrash ); - } - __GSLOGSTRING( "-" ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::InitStateL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::InitStateL() - { - __GSLOGSTRING( "[CGSWatchDog] initializing state..." ); - iIsActive = EFalse; - iGSAppRunning = EFalse; - iCrashCounter = 0; - - // Check CenRep, if values do not exist, use default values: - TInt err; - err = iStore->Get( KWatchDogCrashCounter, iWatchdogActivationLimit ); - if( err ) - { - iWatchdogActivationLimit = KGSDefaultWatchdogActivationLimit; - } - - err = iStore->Get( KWatchdogMaxPluginBlackListedRuns, iMaxPluginBlackListedRuns); - if( err ) - { - iMaxPluginBlackListedRuns = KGSDefaultMaxPluginBlackListedRuns; - } - - StoreStateL(); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::ReadQuarantineL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::ReadQuarantineL() - { - HBufC8* buf = HBufC8::NewLC( KMaxBinaryLength ); - TPtr8 serializedArr = buf->Des(); - iStore->Get( KWatchDogQuarantine, serializedArr ); - RDesReadStream stream; - stream.Open( serializedArr ); - CleanupClosePushL( stream ); - - // In case CenRep value is uninitialized (less than 16 bits), don't try - //reading it - TInt count = 0; - if( buf->Size() > 0 ) - { - count = stream.ReadUint16L(); - } - for( TInt i = 0; i < count; i++ ) - { - TUid uid; - uid.iUid = stream.ReadInt32L(); - iQuarantine.Append( uid ); - } - //stream.Close(); - CleanupStack::PopAndDestroy( &stream ); - CleanupStack::PopAndDestroy( buf ); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::StoreQuarantineL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::StoreQuarantineL() - { - // Hmmm. KMaxBinaryLength = 1024*2 unicode characters (16bit) - // = 1024*2*16 bits = 32768. - // 32768 - 16(count) bits reserved for 32 bit TUids = 1023.5 TUids - // -> We can store 1023 UIds in quarantine. Should be enought as we have - // about ~50 plugins at the moment and each plugin ought to be listed in - // quarantine only once at a specific point of time. - HBufC8* buf = HBufC8::NewLC( KMaxBinaryLength ); - TPtr8 serializedArr = buf->Des(); - RDesWriteStream stream; - stream.Open( serializedArr ); - CleanupClosePushL( stream ); - - stream.WriteUint16L( iQuarantine.Count() ); - - for( TInt i = 0; i < iQuarantine.Count(); i++ ) - { - stream.WriteInt32L( iQuarantine[i].iUid ); - } - // This also flushes the stream: - CleanupStack::PopAndDestroy( &stream ); - - iStore->Set( KWatchDogQuarantine, serializedArr ); - - CleanupStack::PopAndDestroy( buf ); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::ReadBlackListL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::ReadBlackListL() - { - HBufC8* buf = HBufC8::NewLC( KMaxBinaryLength ); - TPtr8 serializedArr = buf->Des(); - iStore->Get( KWatchDogBlackList, serializedArr ); - RDesReadStream stream; - stream.Open( serializedArr ); - CleanupClosePushL( stream ); - - // In case CenRep value is uninitialized (less than 16 bits), don't try - //reading it - TInt count = 0; - if( buf->Size() > 0 ) - { - count = stream.ReadUint16L(); - } - for( TInt i = 0; i < count; i++ ) - { - TGSPluginQuarantine plugin; - plugin.InternalizeL( stream ); - iBlackList.Append( plugin ); - } - - //stream.Close(); - CleanupStack::PopAndDestroy( &stream ); - CleanupStack::PopAndDestroy( buf ); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::StoreBlackListL -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::StoreBlackListL() - { - HBufC8* buf = HBufC8::NewLC( KMaxBinaryLength ); - TPtr8 serializedArr = buf->Des(); - RDesWriteStream stream; - stream.Open( serializedArr ); - CleanupClosePushL( stream ); - - stream.WriteUint16L( iBlackList.Count() ); - - for( TInt i = 0; i < iBlackList.Count(); i++ ) - { - iBlackList[i].ExternalizeL( stream ); - -#ifdef _GS_WATCHDOG_VERBOSE_TRACES - __GSLOGSTRING1( "[CGSWatchDog] Written to blacklist 0x%X", - iBlackList[i].iUid.iUid ); -#endif //_GS_WATCHDOG_VERBOSE_TRACES - - } - // This also flushes the stream: - CleanupStack::PopAndDestroy( &stream ); - - iStore->Set( KWatchDogBlackList, serializedArr ); - - CleanupStack::PopAndDestroy( buf ); - } - - -// --------------------------------------------------------------------------- -// CGSWatchDog::UpdateBlackListedPluginRunCounters -// -// -// --------------------------------------------------------------------------- -void CGSWatchDog::UpdateBlackListedPluginRunCounters() - { - TInt count = iBlackList.Count(); - for( TInt i = 0; i < count; i++ ) - { - iBlackList[i].iRunsAfterCrash++; - if( iBlackList[i].iRunsAfterCrash > iMaxPluginBlackListedRuns ) - { -//__GSLOGSTRING2( "[CGSWatchDog] 0x%X removed from blacklist (%d runs)", iBlackList[i].iUid.iUid, iBlackList[i].iRunsAfterCrash ); - iBlackList.Remove( i ); - i--; // Item in index i has been removed - count--;// One item has been removed from the array - } - } - } - - -// --------------------------------------------------------------------------- -// TGSPluginQuarantine::InternalizeL -// -// -// --------------------------------------------------------------------------- -void TGSPluginQuarantine::InternalizeL( RReadStream& aStream ) - { - iUid.iUid = aStream.ReadInt32L(); - iRunsAfterCrash = aStream.ReadInt16L(); - } - - -// --------------------------------------------------------------------------- -// TGSPluginQuarantine::ExternalizeL -// -// -// --------------------------------------------------------------------------- -void TGSPluginQuarantine::ExternalizeL( RWriteStream& aStream ) const - { - aStream.WriteInt32L( iUid.iUid ); - aStream.WriteInt16L( iRunsAfterCrash ); - } - - -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSListBox/GSListBox.mmp --- a/gssettingsuis/Gs/GSListBox/GSListBox.mmp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,49 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This is project specification for GS Listbox DLL -* -*/ - - -#include - -// Capability assignment. -CAPABILITY CAP_GENERAL_DLL - -TARGET gslistbox.dll -TARGETTYPE DLL -UID 0x1000008d 0x101FD68D - -SOURCEPATH Src -SOURCE GSListBox.cpp - -USERINCLUDE . -USERINCLUDE Inc -USERINCLUDE ../Data -USERINCLUDE ../GSFramework/inc - -//System include paths -// Default system include paths for middleware layer modules. -MW_LAYER_SYSTEMINCLUDE - -// Libraries required by framework -LIBRARY bafl.lib -LIBRARY euser.lib -LIBRARY cone.lib -LIBRARY apparc.lib - -//Libraries for the DLL -LIBRARY eikcoctl.lib - -SOURCEPATH . diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSListBox/Src/GSListBox.cpp --- a/gssettingsuis/Gs/GSListBox/Src/GSListBox.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,740 +0,0 @@ -/* -* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Class declaration for CGSListboxEntry & CGSItemTextArray. -* -*/ - -// INCLUDES -#include "gslistbox.h" -#include "gscommon.hrh" - -#include -#include - - -// CONSTANTS -const TInt KGSListboxModelGranularity = 5; -_LIT(KGSEngineItemArrayPanic, "GSEngItemArray"); - -// Panic enum -enum TGSEngineItemArrayPanic - { - EGSEngineItemArrayPanicNoRadioSettingsPage = 0, - }; - -/*================================================ -* -* class declaration for CGSListboxEntry -* -*================================================*/ - - -//------------------------------------------------------------------------------ -// CGSListboxEntry::NewLC() -// Symbian OS two-phased constructor -//------------------------------------------------------------------------------ -EXPORT_C CGSListboxEntry* CGSListboxEntry::NewLC( TResourceReader& aReader ) - { - CGSListboxEntry* self = new (ELeave) CGSListboxEntry; - CleanupStack::PushL( self ); - self->ConstructL( aReader ); - return self; - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry::NewLC() -// Symbian OS two-phased constructor -//------------------------------------------------------------------------------ -EXPORT_C CGSListboxEntry* CGSListboxEntry::NewLC( TInt aFeatureId ) - { - CGSListboxEntry* self = new (ELeave) CGSListboxEntry; - CleanupStack::PushL( self ); - self->iFeatureId = aFeatureId; - return self; - } - -//------------------------------------------------ -// CGSListboxEntry::NewLC() -// Symbian OS two-phased constructor -//------------------------------------------------ -EXPORT_C CGSListboxEntry* CGSListboxEntry::NewLC( - TUint32 aResId, CCoeEnv& aEnv, TInt aFeatureId ) - { - CGSListboxEntry* self = new (ELeave) CGSListboxEntry; - CleanupStack::PushL( self ); - self->ConstructL( aResId, aEnv, aFeatureId ); - return self; - } - -//------------------------------------------------ -// CGSListboxEntry::ConstructL() -// Symbian OS 2nd phase constructor -//------------------------------------------------ -void CGSListboxEntry::ConstructL( - TUint32 aResId, CCoeEnv& aEnv, TInt aFeatureId ) - { - // Create resource reader - TResourceReader reader; - aEnv.CreateResourceReaderLC( reader, aResId ); - - // Just read, not actually needed anywhere - reader.ReadInt16(); - - // Take base settings from resources - iCaption = reader.ReadHBufCL(); - iStaticTextLength = iCaption->Length(); - iFeatureId = aFeatureId + reader.ReadInt16(); - iType = reader.ReadInt8(); - - CleanupStack::PopAndDestroy(); //reader - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry::ConstructL() -// Symbian OS 2nd phase constructor -//------------------------------------------------------------------------------ -void CGSListboxEntry::ConstructL( TResourceReader& aReader ) - { - iCaption = aReader.ReadHBufCL(); - iStaticTextLength = iCaption->Length(); - iFeatureId = aReader.ReadInt16(); - iType = aReader.ReadInt8(); - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry() -// c++ default constructor -//------------------------------------------------------------------------------ -CGSListboxEntry::CGSListboxEntry() - { - } - -//------------------------------------------------------------------------------ -// ~CGSListboxEntry() -// destructor -//------------------------------------------------------------------------------ -EXPORT_C CGSListboxEntry::~CGSListboxEntry() - { - delete iCaption; - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry::Feature() -// Provides feature for the selected entry -// @return feature -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSListboxEntry::FeatureId() const - { - return iFeatureId; - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry::Caption -// Provides caption for the selected entry -// @return caption -//------------------------------------------------------------------------------ -EXPORT_C const TDesC& CGSListboxEntry::Caption() const - { - return *iCaption; - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry::Type -// Provides type for the selected entry -// @return type -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSListboxEntry::Type() const - { - return iType; - } - -//------------------------------------------------------------------------------ -// CGSListboxEntry::SetDynamicTextL -// Appends dynamic text to the static text read -// from the resource. -//------------------------------------------------------------------------------ -EXPORT_C void CGSListboxEntry::SetDynamicTextL( const TDesC& aText ) - { - const TInt requiredLength = StaticTextLength() + aText.Length(); - // - TPtr pCaption( iCaption->Des() ); - const TInt maxLength = pCaption.MaxLength(); - // - if( requiredLength >= maxLength ) - { - // Make enough room for static text + new dynamic text - iCaption = iCaption->ReAllocL( requiredLength ); - } - - // Have to re-get a new modifiable descriptor for the HBufC* since the - // memory address may have changed after the realloc. - pCaption.Set( iCaption->Des() ); - - // Set the length back to only the static part - pCaption.SetLength( StaticTextLength() ); - pCaption.Append( aText ); - } - - -//------------------------------------------------------------------------------ -// CGSListboxEntry::SetDynamicTextDoublePaneL -// Appends dynamic text to the static text read -// from the resource. -//------------------------------------------------------------------------------ -EXPORT_C void CGSListboxEntry::SetDynamicTextDoublePaneL( const TDesC& aText ) - { - const TInt requiredLength = StaticTextLength() + aText.Length(); - // - TPtr pCaption( iCaption->Des() ); - const TInt maxLength = pCaption.MaxLength(); - const TInt textSize = aText.Length(); - TInt location; - - // Here if it is the NULL string then we track of the - // Default text size in iDynamicTextSize - if ( textSize > 0 ) - { - iDynamicTextSize = textSize; - // this location is also preserved for the same purpose - location = aText.Locate( aText[0] ); - } - else - { - location = KErrNotFound; - } - // - if ( location == KErrNotFound ) - { - // We take the value from the end of the string - location = pCaption.LocateReverse('\t'); - // We then delete the string; - // iDynamicTextSize is the size of the "Default" text i.e. 7 - // 1 is added bcos \tText\t\t for the last tab - pCaption.Delete( location - ( iDynamicTextSize + 1 ), iDynamicTextSize ); - } - else - { - if( requiredLength >= maxLength ) - { - // Make enough room for static text + new dynamic text - iCaption = iCaption->ReAllocL( requiredLength ); - } - - // Have to re-get a new modifiable descriptor for the HBufC* since the - // memory address may have changed after the realloc. - pCaption.Set( iCaption->Des() ); - location = pCaption.LocateReverse('\t'); - pCaption.Insert( ( location - 1 ), aText ); - } - } -//... HERE IT ENDS -/*================================================ -* -* class declaration for CGSItemTextArray -* -*================================================*/ - -//------------------------------------------------------------------------------ -// CGSItemTextArray::NewLC() -// Symbian OS two-phased constructor -//------------------------------------------------------------------------------ -EXPORT_C CGSItemTextArray* CGSItemTextArray::NewL( TUint32 aResId, - CCoeEnv& aEnv ) - { - CGSItemTextArray* self = - new (ELeave) CGSItemTextArray( ); - CleanupStack::PushL( self ); - self->ConstructL( aResId, aEnv ); - CleanupStack::Pop( self ); - - return self; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray() -// constructor -//------------------------------------------------------------------------------ -CGSItemTextArray::CGSItemTextArray() -: iAllEntries( KGSListboxModelGranularity ), - iCurrentlyDisplayedEntries( KGSListboxModelGranularity ) - { - } - - -//------------------------------------------------------------------------------ -// ~CGSItemTextArray() -// destructor -//------------------------------------------------------------------------------ -CGSItemTextArray::~CGSItemTextArray() - { - iCurrentlyDisplayedEntries.Close(); - iAllEntries.ResetAndDestroy(); - iAllEntries.Close(); - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::ConstructL() -// Symbian OS two-phased constructor -//------------------------------------------------------------------------------ -void CGSItemTextArray::ConstructL( TUint32 aResId, CCoeEnv& aEnv ) - { - TResourceReader reader; - aEnv.CreateResourceReaderLC( reader, aResId ); - // - const TInt count = reader.ReadInt16(); - for( TInt i = 0; i < count; i++ ) - { - CGSListboxEntry* entry = CGSListboxEntry::NewLC( reader ); - User::LeaveIfError( iAllEntries.Append( entry ) ); - - // Always visible items are added here and never removed - if ( entry->Type() == EGSListBoxItemTypeIsAlwaysVisible ) - { - User::LeaveIfError( iCurrentlyDisplayedEntries.Append( entry ) ); - } - // - CleanupStack::Pop( entry ); - } - - CleanupStack::PopAndDestroy(); //reader - } - -//------------------------------------------------ -// CGSItemTextArray::ConstructL() -// Symbian OS two-phased constructor -//------------------------------------------------ -void CGSItemTextArray::ConstructL( - TUint32 aResId, CCoeEnv& aEnv, TInt aCount ) - { - // Create entries and append them to entrylist. - for( TInt i = 0; i < aCount; i++ ) - { - CGSListboxEntry* entry = CGSListboxEntry::NewLC( aResId, aEnv, i ); - User::LeaveIfError( iAllEntries.Append( entry ) ); - CleanupStack::Pop( entry ); - } - } - -//------------------------------------------------------------------------------ -// CGSItemTextArray::MdcaCount() -// from MDesCArray -// @return count -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSItemTextArray::MdcaCount() const - { - const TInt count = iCurrentlyDisplayedEntries.Count(); - return count; - } - -//------------------------------------------------------------------------------ -// CGSItemTextArray::MdcaPoint() -// from MDesCArray -// @return item text -//------------------------------------------------------------------------------ -EXPORT_C TPtrC CGSItemTextArray::MdcaPoint( TInt aIndex ) const - { - const TPtrC ret( iCurrentlyDisplayedEntries[aIndex]->Caption() ); - return ret; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::SetDynamicTextL() -// Appends dynamic text to a selected listbox item -// -//------------------------------------------------------------------------------ -EXPORT_C void CGSItemTextArray::SetDynamicTextL( TInt aFeatureId, - const TDesC& aAdditionalText ) - { - TIdentityRelation relation(CompareEntries); - // - CGSListboxEntry* entryToSearchFor = CGSListboxEntry::NewLC( aFeatureId ); - const TInt index = iAllEntries.Find( entryToSearchFor, relation ); - CleanupStack::PopAndDestroy( entryToSearchFor ); - User::LeaveIfError( index ); - // - CGSListboxEntry* entry = iAllEntries[index]; - entry->SetDynamicTextL( aAdditionalText ); - } - -//------------------------------------------------------------------------------ -// CGSItemTextArray::SetDynamicTextDoublePaneL() -// Appends dynamic text to a selected listbox item -// -//------------------------------------------------------------------------------ -EXPORT_C void CGSItemTextArray::SetDynamicTextDoublePaneL( TInt aFeatureId, - const TDesC& aAdditionalText ) - { - TIdentityRelation relation(CompareEntries); - // - CGSListboxEntry* entryToSearchFor = CGSListboxEntry::NewLC( aFeatureId ); - const TInt index = iAllEntries.Find( entryToSearchFor, relation ); - CleanupStack::PopAndDestroy( entryToSearchFor ); - User::LeaveIfError( index ); - // - CGSListboxEntry* entry = iAllEntries[index]; - entry->SetDynamicTextDoublePaneL( aAdditionalText ); - } -//*****ENDS HERE - -//------------------------------------------------------------------------------ -// CGSItemTextArray::SetItemVisibilityL() -// Indicates whether an item is to be shown/hidden -// -//------------------------------------------------------------------------------ -EXPORT_C void CGSItemTextArray::SetItemVisibilityL( TInt aFeatureId, - TVisibility aVisibility ) - { - TIdentityRelation relation( CompareEntries ); - CGSListboxEntry* entryToSearchFor = CGSListboxEntry::NewLC( aFeatureId ); - // - if ( aVisibility == EInvisible ) - { - const TInt index = iCurrentlyDisplayedEntries.Find( entryToSearchFor, - relation ); - if ( index != KErrNotFound ) - { - // Remove the item from the currently visible items array - iCurrentlyDisplayedEntries.Remove( index ); - } - } - else if ( aVisibility == EVisible ) - { - // Check its not already visible - const TInt alreadyVisibleIndex = iCurrentlyDisplayedEntries.Find( - entryToSearchFor, relation ); - if ( alreadyVisibleIndex == KErrNotFound ) - { - const TInt index = iAllEntries.Find( entryToSearchFor, relation ); - User::LeaveIfError( index ); - - // This is the entry we are going to make visible - CGSListboxEntry* entry = iAllEntries[index]; - - // Now insert it at the correct location. - TBool foundInsertionPoint = EFalse; - const TInt currentEntriesCount = iCurrentlyDisplayedEntries.Count(); - for( TInt allEntriesIndex=index-1; allEntriesIndex>=0 && - !foundInsertionPoint; allEntriesIndex-- ) - { - // We are going to try and insert the new entry after the entry - // specified as the previous item in the 'all entries' array, - // in the iCurrentlyDisplayedEntries array. - const TInt featureIdOfPreviousItem = - iAllEntries[allEntriesIndex]->FeatureId(); - - for( TInt currentEntriesIndex=0; !foundInsertionPoint && - currentEntriesIndexFeatureId() == featureIdOfPreviousItem ) - { - foundInsertionPoint = ETrue; - // Insert after this item - User::LeaveIfError( iCurrentlyDisplayedEntries.Insert( - entry, currentEntriesIndex+1 ) ); - } - } - - } - - if (!foundInsertionPoint) - { - // Just insert the item at the top of the list - User::LeaveIfError( - iCurrentlyDisplayedEntries.Insert( entry, 0 ) ); - } - } - } - CleanupStack::PopAndDestroy( entryToSearchFor ); - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::CurrentFeature() -// Obtains feature id for a selected listbox item (feature) -// @return feature id -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSItemTextArray::CurrentFeature() const - { - return KErrNotFound; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::IndexForFeatureId() -// -// @return index -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSItemTextArray::IndexForFeatureIdL(TInt aFeatureId) const - { - TIdentityRelation relation( CompareEntries ); - CGSListboxEntry* entryToSearchFor = CGSListboxEntry::NewLC( aFeatureId ); - // - const TInt index = iCurrentlyDisplayedEntries.Find( entryToSearchFor, - relation ); - CleanupStack::PopAndDestroy( entryToSearchFor ); - // - return index; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::FeatureIdByIndexL() -// -// @return index -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSItemTextArray::FeatureIdByIndex(TInt aIndex) const - { - TInt featureId = KErrNotFound; - // - const TInt currentEntriesCount = iCurrentlyDisplayedEntries.Count(); - if (aIndex >= 0 && aIndex < currentEntriesCount) - { - featureId = iCurrentlyDisplayedEntries[ aIndex ]->FeatureId(); - } - // - return featureId; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::FeatureById() -// -// @return feature -//------------------------------------------------------------------------------ -EXPORT_C const CGSListboxEntry* CGSItemTextArray::FeatureByIdL( - TInt aFeatureId ) const - { - const CGSListboxEntry* locatedEntry = NULL; - // - TIdentityRelation relation( CompareEntries ); - CGSListboxEntry* entryToSearchFor = CGSListboxEntry::NewLC( aFeatureId ); - // - const TInt index = iAllEntries.Find( entryToSearchFor, - relation ); - if ( index != KErrNotFound ) - { - locatedEntry = iAllEntries[ index ]; - } - CleanupStack::PopAndDestroy( entryToSearchFor ); - // - return locatedEntry; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::GetItemCaptionFromFeatureIdLC() -// -// @return feature's caption -//------------------------------------------------------------------------------ -EXPORT_C HBufC* CGSItemTextArray::GetItemCaptionFromFeatureIdLC( - TUint32 aResourceId, - TInt aFeatureId, - CCoeEnv& aCone ) - { - HBufC* caption = NULL; - // - CGSItemTextArray* items = CGSItemTextArray::NewL( aResourceId, aCone ); - CleanupStack::PushL( items ); - const CGSListboxEntry* entry = items->FeatureByIdL( aFeatureId ); - // - if ( entry ) - { - caption = entry->Caption().AllocL(); - } - else - { - caption = KNullDesC().AllocL(); - } - // - CleanupStack::PopAndDestroy( items ); - CleanupStack::PushL( caption ); - return caption; - } - - -//------------------------------------------------------------------------------ -// CGSItemTextArray::CompareEntries() -// Compares feature id's to check if they are the same -// @return boolean -//------------------------------------------------------------------------------ -TBool CGSItemTextArray::CompareEntries(const CGSListboxEntry& aLeft, - const CGSListboxEntry& aRight) - { - return aLeft.FeatureId() == aRight.FeatureId(); - } - - - - - - - -/*================================================ -* -* class declaration for CGSListBoxItemTextArray -* -*================================================*/ - -//------------------------------------------------------------------------------ -// CGSListBoxItemTextArray::NewLC() -// Symbian OS two-phased constructor -//------------------------------------------------------------------------------ -EXPORT_C CGSListBoxItemTextArray* CGSListBoxItemTextArray::NewL( TUint32 aResId, - CEikListBox& aListBox, - CCoeEnv& aEnv ) - { - CGSListBoxItemTextArray* self = - new (ELeave) CGSListBoxItemTextArray( aListBox ); - CleanupStack::PushL( self ); - self->ConstructL( aResId, aEnv ); - CleanupStack::Pop( self ); - - return self; - } - -//------------------------------------------------ -// CGSListBoxItemTextArray::NewL() -// Symbian OS two-phased constructor -//------------------------------------------------ -EXPORT_C CGSListBoxItemTextArray* CGSListBoxItemTextArray::NewL( - TUint32 aResId, CEikListBox& aListBox, CCoeEnv& aEnv, TInt aCount ) - { - CGSListBoxItemTextArray* self = - new (ELeave) CGSListBoxItemTextArray( aListBox ); - CleanupStack::PushL( self ); - self->ConstructL( aResId, aEnv, aCount ); - CleanupStack::Pop( self ); - - return self; - } - -//------------------------------------------------------------------------------ -// CGSListBoxItemTextArray() -// constructor -//------------------------------------------------------------------------------ -CGSListBoxItemTextArray::CGSListBoxItemTextArray( CEikListBox& aListBox ) -: iListBox( aListBox ) - { - } - - -//------------------------------------------------------------------------------ -// CGSListBoxItemTextArray::CurrentFeature() -// -// Obtains feature id for a selected listbox item (feature) -// @return feature id -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSListBoxItemTextArray::CurrentFeature() const - { - TInt featureId = KErrNotFound; - const TInt listBoxCurrentItemIndex = iListBox.CurrentItemIndex(); - const TInt count = iCurrentlyDisplayedEntries.Count(); - if ( listBoxCurrentItemIndex >= 0 && listBoxCurrentItemIndex < count ) - { - const CGSListboxEntry* entry = - iCurrentlyDisplayedEntries[ listBoxCurrentItemIndex ]; - featureId = entry->FeatureId(); - } - return featureId; - } - - - - - - - - - -/*================================================ -* -* class declaration for CGSRadioButtonSettingPageItemTextArray -* -*================================================*/ - -//------------------------------------------------------------------------------ -// CGSRadioButtonSettingPageItemTextArray::NewL() -// -// Symbian OS two-phased constructor -//------------------------------------------------------------------------------ -EXPORT_C CGSRadioButtonSettingPageItemTextArray* - CGSRadioButtonSettingPageItemTextArray::NewL( TUint32 aResId, - CCoeEnv& aEnv, - CAknRadioButtonSettingPage* aSettingPage ) - { - CGSRadioButtonSettingPageItemTextArray* self = - new (ELeave) CGSRadioButtonSettingPageItemTextArray( aSettingPage ); - CleanupStack::PushL( self ); - self->ConstructL( aResId, aEnv ); - CleanupStack::Pop( self ); - - return self; - } - - -//------------------------------------------------------------------------------ -// CGSRadioButtonSettingPageItemTextArray() -// -// constructor -//------------------------------------------------------------------------------ -CGSRadioButtonSettingPageItemTextArray::CGSRadioButtonSettingPageItemTextArray ( - CAknRadioButtonSettingPage* aSettingPage ) -: iSettingPage( aSettingPage ) - { - } - - -//------------------------------------------------------------------------------ -// CGSRadioButtonSettingPageItemTextArray::SetRadioButtonSettingPage() -// -// -//------------------------------------------------------------------------------ -EXPORT_C void CGSRadioButtonSettingPageItemTextArray::SetRadioButtonSettingPage ( - CAknRadioButtonSettingPage& aSettingPage ) - { - iSettingPage = &aSettingPage; - } - - -//------------------------------------------------------------------------------ -// CGSRadioButtonSettingPageItemTextArray::CurrentFeature() -// Obtains feature id for a selected listbox item (feature) -// @return feature id -//------------------------------------------------------------------------------ -EXPORT_C TInt CGSRadioButtonSettingPageItemTextArray::CurrentFeature() const - { - __ASSERT_ALWAYS(iSettingPage, User::Panic( KGSEngineItemArrayPanic, - EGSEngineItemArrayPanicNoRadioSettingsPage ) ); - - TInt featureId = KErrNotFound; - - const TInt listBoxCurrentItemIndex = - iSettingPage->ListBoxControl()->CurrentItemIndex(); - const TInt count = iCurrentlyDisplayedEntries.Count(); - if ( listBoxCurrentItemIndex >= 0 && listBoxCurrentItemIndex < count ) - { - const CGSListboxEntry* entry = - iCurrentlyDisplayedEntries[ listBoxCurrentItemIndex ]; - featureId = entry->FeatureId(); - } - return featureId; - } - -//End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/GSListBox/bld.inf --- a/gssettingsuis/Gs/GSListBox/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file provides the information required for building GSEngine. -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -../rom/GSListBox.iby CORE_MW_LAYER_IBY_EXPORT_PATH( gslistbox.iby ) - -PRJ_MMPFILES -GSListBox.mmp - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/Logger/GsLogger.h --- a/gssettingsuis/Gs/Logger/GsLogger.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* -* Copyright (c) 2004 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: -* Macro definition file for logging. -* -* -*/ - - - -#ifndef GSLOGGER_H -#define GSLOGGER_H - -#include "GsLoggingConfiguration.h" -#include -#include -#include - -_LIT( KLogsDir, "Gs"); -_LIT( KLogFileName, "Gs.log"); - -/* - We have 3 possible logging methods: - - set GS_LOGGING_METHOD to 0 to get no logging at all - set GS_LOGGING_METHOD to 1 to get logging via RDebug::Print - set GS_LOGGING_METHOD to 2 to get logging to log file - - Switching on/off is done in the Configuration file (GsLoggingConfiguration.h) - */ - -#if ( defined (_GSLOGGING) ) - #if ( defined (_GS_LOGGING_TO_FILE)) - #define GS_LOGGING_METHOD 2 - #else - #define GS_LOGGING_METHOD 1 - #endif -#else - #define GS_LOGGING_METHOD 0 -#endif - - -#if (GS_LOGGING_METHOD==0) - #define __GSLOGSTRING(C) - #define __GSLOGSTRING1(C, X) - #define __GSLOGSTRING2(C, X, Y) - #define __GSLOGSTRING3(C, X, Y, Z) - #define __GSLOGSTRING4(C, X, Y, Z, A) -#endif -#if (GS_LOGGING_METHOD==1) - #define __GSLOGSTRING(C) RDebug::Print(_L(C)); - #define __GSLOGSTRING1(C, X) RDebug::Print(_L(C),X); - #define __GSLOGSTRING2(C, X, Y) RDebug::Print(_L(C),X, Y); - #define __GSLOGSTRING3(C, X, Y, Z) RDebug::Print(_L(C),X, Y, Z); - #define __GSLOGSTRING4(C, X, Y, Z, A) RDebug::Print(_L(C),X, Y, Z, A); -#endif -#if (GS_LOGGING_METHOD==2) - #define __GSLOGSTRING(C) {_LIT(tempLogDes,C);RFileLogger::WriteFormat(KLogsDir(),KLogFileName(), EFileLoggingModeAppend, tempLogDes());} - #define __GSLOGSTRING1(C, X) {_LIT(tempLogDes,C);RFileLogger::WriteFormat(KLogsDir(),KLogFileName(), EFileLoggingModeAppend, TRefByValue(tempLogDes()),X);} - #define __GSLOGSTRING2(C, X, Y) {_LIT(tempLogDes,C);RFileLogger::WriteFormat(KLogsDir(),KLogFileName(), EFileLoggingModeAppend, TRefByValue(tempLogDes()),X,Y);} - #define __GSLOGSTRING3(C, X, Y, Z) {_LIT(tempLogDes,C);RFileLogger::WriteFormat(KLogsDir(),KLogFileName(), EFileLoggingModeAppend, TRefByValue(tempLogDes()),X,Y,Z);} - #define __GSLOGSTRING4(C, X, Y, Z, A) {_LIT(tempLogDes,C);RFileLogger::WriteFormat(KLogsDir(),KLogFileName(), EFileLoggingModeAppend, TRefByValue(tempLogDes()),X,Y,Z,A);} -#endif - -#endif // GSLOGGER_H diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/Logger/GsLoggingConfiguration.h --- a/gssettingsuis/Gs/Logger/GsLoggingConfiguration.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 2004-2007 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: Macro definition file for logging configuration. -* Note: This file has to be separate from the logging header -* file to be able to include it in mmp file. If not, we -* will get warning about not used flogger.lib in other - logging cases where flogger.lib is not used. -* -*/ - - - -#ifndef GSCONFIGURATION_H -#define GSCONFIGURATION_H - -#ifdef _DEBUG // logging to file in debug only - -/** -* Have this line active if you want to have logging for this component. -* Comment this line out if you don't want any logging for this component. -*/ -//#define _GSLOGGING - -/** -* Have this line active if you want to have logging to file. -* Comment this line out if you want to have logging via RDebug::Print. -*/ -//#define _GS_LOGGING_TO_FILE - -/** -* Have this line active in case you want to have plugin loading performance -* measurements activated. -*/ -//#define _GS_PERFORMANCE_TRACES - -/** -* Have this line active in case you want to have verbose messages for plugin -* loading. This is helpful if loading of plugin(s) is failing. -*/ -//#define _GS_PLUGINLOADER_VERBOSE_TRACES - -/** -* Enable to get traces about plugin sorting. Usable to get each sorted view -* items. -*/ -//#define _GS_PLUGINLOADER_FINAL_SORTING_TRACES - -/** -* Enable to get traces about plugin sorting for each iteration. Usable if -* sorting logic fails. -*/ -//#define _GS_PLUGINLOADER_ITERATION_SORTING_TRACES - -/** -* Enable to active verbose messages for CGSWatchDog. This is helpful if plugins -* are missing or disabled from GS incorrectly. -*/ -//#define _GS_WATCHDOG_VERBOSE_TRACES - -/** -* Activate to get traces of lbx format strings. Good for finding how and which -* icons and texts are used for lbx items. -*/ -//#define _GS_PARENTPLUGIN_LBX_FORMAT_TRACES - - - -#endif // _DEBUG - -#endif // GSCONFIGURATION_H diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis.confml Binary file gssettingsuis/Gs/conf/s60settingsuis.confml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_1000A82B.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_1000A82B.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F8751.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F8751.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F877A.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F877A.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F877B.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F877B.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F877C.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F877C.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F877E.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F877E.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F877F.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F877F.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F8780.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F8780.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F8781.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F8781.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F8782.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F8782.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F8831.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F8831.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_101F883B.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_101F883B.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_1020720A.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_1020720A.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_1028239D.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_1028239D.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/conf/s60settingsuis_2002120B.crml Binary file gssettingsuis/Gs/conf/s60settingsuis_2002120B.crml has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/group/bld.inf --- a/gssettingsuis/Gs/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -/* -* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file provides the information required for building -* General Settings. -* -*/ - - -#ifndef RD_GS_RENOVATION // This is the old GS - - PRJ_PLATFORMS - DEFAULT - - PRJ_EXPORTS - ../Data/backup_registration.xml z:/private/100058EC/backup_registration.xml - - PRJ_MMPFILES - - ../group/GS.mmp - - -#else // This is the RD_GS_RENOVATION - - - #include - - // GS Modules: - #include "../GSBackgroundImage/bld.inf" - #include "../GSListBox/bld.inf" - - #include "../GSFramework/bld.inf" - #include "../GSApplication/bld.inf" - - - #include "../gslauncher/group/bld.inf" - - #include "../help/group/bld.inf" - - PRJ_EXPORTS - //Configuration tool migration - ../conf/s60settingsuis.confml MW_LAYER_CONFML(s60settingsuis.confml) - ../conf/s60settingsuis_101F877A.crml MW_LAYER_CRML(s60settingsuis_101f877a.crml) - ../conf/s60settingsuis_101F877B.crml MW_LAYER_CRML(s60settingsuis_101f877b.crml) - ../conf/s60settingsuis_101F877C.crml MW_LAYER_CRML(s60settingsuis_101f877c.crml) - ../conf/s60settingsuis_101F877E.crml MW_LAYER_CRML(s60settingsuis_101f877e.crml) - ../conf/s60settingsuis_101F877F.crml MW_LAYER_CRML(s60settingsuis_101f877f.crml) - ../conf/s60settingsuis_101F883B.crml MW_LAYER_CRML(s60settingsuis_101f883b.crml) - ../conf/s60settingsuis_101F8751.crml MW_LAYER_CRML(s60settingsuis_101f8751.crml) - ../conf/s60settingsuis_101F8780.crml MW_LAYER_CRML(s60settingsuis_101f8780.crml) - ../conf/s60settingsuis_101F8781.crml MW_LAYER_CRML(s60settingsuis_101f8781.crml) - ../conf/s60settingsuis_101F8782.crml MW_LAYER_CRML(s60settingsuis_101f8782.crml) - ../conf/s60settingsuis_101F8831.crml MW_LAYER_CRML(s60settingsuis_101f8831.crml) - ../conf/s60settingsuis_1000A82B.crml MW_LAYER_CRML(s60settingsuis_1000a82b.crml) - ../conf/s60settingsuis_1020720A.crml MW_LAYER_CRML(s60settingsuis_1020720a.crml) - ../conf/s60settingsuis_1028239D.crml MW_LAYER_CRML(s60settingsuis_1028239d.crml) - ../conf/s60settingsuis_2002120B.crml MW_LAYER_CRML(s60settingsuis_2002120b.crml) - - PRJ_TESTMMPFILES - -#endif // RD_GS_RENOVATION - -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/gslauncher/bwins/gslauncheru.def --- a/gssettingsuis/Gs/gslauncher/bwins/gslauncheru.def Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ -EXPORTS - ?LaunchGSViewL@CGSLauncher@@QAEXVTUid@@0ABVTDesC8@@@Z @ 1 NONAME ; void CGSLauncher::LaunchGSViewL(class TUid, class TUid, class TDesC8 const &) - ?NewL@CGSLauncher@@SAPAV1@XZ @ 2 NONAME ; class CGSLauncher * CGSLauncher::NewL(void) - ?NewLC@CGSLauncher@@SAPAV1@XZ @ 3 NONAME ; class CGSLauncher * CGSLauncher::NewLC(void) - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/gslauncher/eabi/gslauncheru.def --- a/gssettingsuis/Gs/gslauncher/eabi/gslauncheru.def Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ -EXPORTS - _ZN11CGSLauncher13LaunchGSViewLE4TUidS0_RK6TDesC8 @ 1 NONAME - _ZN11CGSLauncher4NewLEv @ 2 NONAME - _ZN11CGSLauncher5NewLCEv @ 3 NONAME - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/gslauncher/group/GSLauncher.mmp --- a/gssettingsuis/Gs/gslauncher/group/GSLauncher.mmp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Project definition file for project GSLauncher -* -*/ - - -#include -#include - -TARGET gslauncher.dll -TARGETTYPE DLL -UID 0x1000008d 0x2000F859 - -CAPABILITY CAP_GENERAL_DLL -VENDORID VID_DEFAULT - -SOURCEPATH ../src -SOURCE GSLauncher.cpp - - -MW_LAYER_SYSTEMINCLUDE - -LIBRARY euser.lib - - -DEFFILE gslauncher.def - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/gslauncher/group/bld.inf --- a/gssettingsuis/Gs/gslauncher/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Build information file for project GSLauncher -* -*/ - - - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -../rom/gslauncher.iby CORE_MW_LAYER_IBY_EXPORT_PATH(gslauncher.iby) - -PRJ_MMPFILES -GSLauncher.mmp - -PRJ_TESTMMPFILES -// This is no good -tsrc's bld.inf should be compiled instead since it has copy script -// ../tsrc/public/basic/group/T_CGSLauncher.mmp - -PRJ_TESTEXPORTS -// ../test/inc/mytestcommon.h /epoc32/somewhere/mytestcommon.h diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/gslauncher/rom/gslauncher.iby --- a/gssettingsuis/Gs/gslauncher/rom/gslauncher.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -/* -* Copyright (c) 2007 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: Image description file for project GSLauncher -* -*/ - - -#ifndef GSLAUNCHER_IBY -#define GSLAUNCHER_IBY - -#include - -file=ABI_DIR\BUILD_DIR\gslauncher.dll SHARED_LIB_DIR\gslauncher.dll - -#endif // GSLAUNCHER_IBY diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/gslauncher/src/GSLauncher.cpp --- a/gssettingsuis/Gs/gslauncher/src/GSLauncher.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Launches GS views. -* -*/ - -#include - - -// ======== MEMBER FUNCTIONS ======== -// --------------------------------------------------------------------------- -// description_if_needed -// --------------------------------------------------------------------------- -// -CGSLauncher::CGSLauncher() - { - } - - -// --------------------------------------------------------------------------- -// description_if_needed -// --------------------------------------------------------------------------- -// -void CGSLauncher::ConstructL() - { - //code - } - - -// --------------------------------------------------------------------------- -// description_if_needed -// --------------------------------------------------------------------------- -// -EXPORT_C CGSLauncher* CGSLauncher::NewL() - { - return NULL; - } - -// --------------------------------------------------------------------------- -// description_if_needed -// --------------------------------------------------------------------------- -// -EXPORT_C CGSLauncher* CGSLauncher::NewLC() - { - return NULL; - } - - -// --------------------------------------------------------------------------- -// description_if_needed -// --------------------------------------------------------------------------- -// -CGSLauncher::~CGSLauncher() - { - } - -// --------------------------------------------------------------------------- -// implementation_description -// --------------------------------------------------------------------------- -// -EXPORT_C void CGSLauncher::LaunchGSViewL( const TUid /*aTarget*/, - const TUid /*aCustomMessageId*/, - const TDesC8& /*aCustomMessage*/ ) - { - } - - diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/help/data/xhtml.zip Binary file gssettingsuis/Gs/help/data/xhtml.zip has changed diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/help/group/bld.inf --- a/gssettingsuis/Gs/help/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -/* -* 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: -* Export help related files. -* -*/ - -#include -PRJ_EXPORTS -:zip ../data/xhtml.zip /epoc32/data/z/resource/ overwrite -:zip ../data/xhtml.zip /epoc32/winscw/c/resource/ overwrite - -../inc/cp.hlp.hrh MW_LAYER_PLATFORM_EXPORT_PATH(csxhelp/cp.hlp.hrh) -../rom/gssettingsuishelps_variant.iby CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(gssettingsuishelps_variant.iby) diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/help/inc/cp.hlp.hrh --- a/gssettingsuis/Gs/help/inc/cp.hlp.hrh Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,121 +0,0 @@ -/* -* 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: -* -*/ - -// -// cp.hlp.hrh -// - -// -// File generated by CSXHelp Utilities on 2009-04-17 -// - -#ifndef __CP_HLP_HRH__ -#define __CP_HLP_HRH__ - -_LIT(KCP_HLP_ADMINISTRATIVE_SETTINGS, "CP_HLP_ADMINISTRATIVE_SETTINGS"); // -_LIT(KSET_HLP_TELEP_NETWORK_SET, "SET_HLP_TELEP_NETWORK_SET"); // -_LIT(KCP_HLP_INSTALLATIONS, "CP_HLP_INSTALLATIONS"); // -_LIT(KCP_HLP_SYNCHRONISATION, "CP_HLP_SYNCHRONISATION"); // -_LIT(KCP_HLP_DEVICE_MANAGEMENT, "CP_HLP_DEVICE_MANAGEMENT"); // -_LIT(KRD_HLP_REMOTE_DRIVES, "RD_HLP_REMOTE_DRIVES"); // -_LIT(KRD_HLP_REMOTE_DRIVE_CONFIG, "RD_HLP_REMOTE_DRIVE_CONFIG"); // -_LIT(KSET_HLP_WLAN_WPA_MAIN, "SET_HLP_WLAN_WPA_MAIN"); // -_LIT(KSET_HLP_WLAN_8021X_MAIN, "SET_HLP_WLAN_8021X_MAIN"); // -_LIT(KSET_HLP_WLAN_SETTINGS, "SET_HLP_WLAN_SETTINGS"); // -_LIT(KSET_HLP_WLAN_ADV_SETTINGS, "SET_HLP_WLAN_ADV_SETTINGS"); // -_LIT(KSET_HLP_WLAN_EAP_PLUGINS_IAP, "SET_HLP_WLAN_EAP_PLUGINS_IAP"); // -_LIT(KSET_HLP_WLAN_EAP_AKA, "SET_HLP_WLAN_EAP_AKA"); // -_LIT(KSET_HLP_WLAN_EAP_SIM, "SET_HLP_WLAN_EAP_SIM"); // -_LIT(KSET_HLP_WLAN_EAP_GTC, "SET_HLP_WLAN_EAP_GTC"); // -_LIT(KSET_HLP_WLAN_EAP_TTLS_TYPES, "SET_HLP_WLAN_EAP_TTLS_TYPES"); // -_LIT(KSET_HLP_WLAN_EAP_TTLS_SUITES, "SET_HLP_WLAN_EAP_TTLS_SUITES"); // -_LIT(KSET_HLP_WLAN_EAP_TTLS_SETT, "SET_HLP_WLAN_EAP_TTLS_SETT"); // -_LIT(KSET_HLP_WLAN_EAP_TLS_SUITES, "SET_HLP_WLAN_EAP_TLS_SUITES"); // -_LIT(KSET_HLP_WLAN_EAP_TLS_SETT, "SET_HLP_WLAN_EAP_TLS_SETT"); // -_LIT(KSET_HLP_WLAN_EAP_PEAP_TYPES, "SET_HLP_WLAN_EAP_PEAP_TYPES"); // -_LIT(KSET_HLP_WLAN_EAP_PEAP_SUITES, "SET_HLP_WLAN_EAP_PEAP_SUITES"); // -_LIT(KSET_HLP_WLAN_EAP_PEAP_SETT, "SET_HLP_WLAN_EAP_PEAP_SETT"); // -_LIT(KSET_HLP_WLAN_EAP_MSCHAPV2, "SET_HLP_WLAN_EAP_MSCHAPV2"); // -_LIT(KSET_HLP_WLAN_EAP_PLAIN_MSCHAP, "SET_HLP_WLAN_EAP_PLAIN_MSCHAP"); // -_LIT(KDIV_HLP_CALL_FORW_DAT, "DIV_HLP_CALL_FORW_DAT"); // -_LIT(KDIV_HLP_CALL_FORW_MAIN, "DIV_HLP_CALL_FORW_MAIN"); // -_LIT(KDIV_HLP_CALL_FORW_VOI, "DIV_HLP_CALL_FORW_VOI"); // -_LIT(KSET_HLP_ACCESSORIES_HEADPHONE, "SET_HLP_ACCESSORIES_HEADPHONE"); // -_LIT(KSET_HLP_ACCESSORIES_HEADSET, "SET_HLP_ACCESSORIES_HEADSET"); // - -_LIT(KSET_HLP_ACCESSORIES_LOOPSET, "SET_HLP_ACCESSORIES_LOOPSET"); // -_LIT(KSET_HLP_ACCESSORIES_MUSIC_ST, "SET_HLP_ACCESSORIES_MUSIC_ST"); // -_LIT(KSET_HLP_ACCESSORIES_TTY, "SET_HLP_ACCESSORIES_TTY"); // -_LIT(KSET_HLP_ACCESSORIES_TVOUT, "SET_HLP_ACCESSORIES_TVOUT"); // -_LIT(KSET_HLP_ACCESS_WIRED_CK, "SET_HLP_ACCESS_WIRED_CK"); // -_LIT(KSET_HLP_ACCESS_WIRELESS_CK, "SET_HLP_ACCESS_WIRELESS_CK"); // -_LIT(KSET_HLP_AP_DATA_AS_IPV4, "SET_HLP_AP_DATA_AS_IPV4"); // -_LIT(KSET_HLP_AP_DATA_AS_IPV6, "SET_HLP_AP_DATA_AS_IPV6"); // -_LIT(KSET_HLP_WLAN_EAP_LEAP, "SET_HLP_WLAN_EAP_LEAP"); // -_LIT(KSET_HLP_AP_SETTING_DATA, "SET_HLP_AP_SETTING_DATA"); // -_LIT(KSET_HLP_WLAN_EAP_FAST_TYPES, "SET_HLP_WLAN_EAP_FAST_TYPES"); // -_LIT(KSET_HLP_AP_SETTING_DATA_AS, "SET_HLP_AP_SETTING_DATA_AS"); // -_LIT(KSET_HLP_WLAN_EAP_FAST_SUITES, "SET_HLP_WLAN_EAP_FAST_SUITES"); // -_LIT(KSET_HLP_WLAN_EAP_FAST_SETT, "SET_HLP_WLAN_EAP_FAST_SETT"); // -_LIT(KSET_HLP_AP_SETTING_GPRS, "SET_HLP_AP_SETTING_GPRS"); // -_LIT(KSET_HLP_AP_SETTING_GPRS_AS, "SET_HLP_AP_SETTING_GPRS_AS"); // -_LIT(KSET_HLP_AP_SETTING_WLAN, "SET_HLP_AP_SETTING_WLAN"); // -_LIT(KSET_HLP_AP_SETTING_WLAN_AS, "SET_HLP_AP_SETTING_WLAN_AS"); // -_LIT(KSET_HLP_WLAN_EAP_PAP, "SET_HLP_WLAN_EAP_PAP"); // -_LIT(KSET_HLP_AP_WLAN_AS_IPV4, "SET_HLP_AP_WLAN_AS_IPV4"); // -_LIT(KSET_HLP_AP_WLAN_AS_IPV6, "SET_HLP_AP_WLAN_AS_IPV6"); // -_LIT(KDIV_HLP_BARRING_MAIN, "DIV_HLP_BARRING_MAIN"); // -_LIT(KDIV_HLP_CALL_FORW_VOIP, "DIV_HLP_CALL_FORW_VOIP"); // -_LIT(KSET_HLP_BARRING_SETTINGS, "SET_HLP_BARRING_SETTINGS"); // -_LIT(KSET_HLP_WLAN_WEP_KEY_SETT, "SET_HLP_WLAN_WEP_KEY_SETT"); // -_LIT(KSET_HLP_WLAN_WEP_MAIN, "SET_HLP_WLAN_WEP_MAIN"); // -_LIT(KACL_HLP_MAIN, "ACL_HLP_MAIN"); // -_LIT(KSET_HLP_VPN_AP_SETTINGS_VIEW, "SET_HLP_VPN_AP_SETTINGS_VIEW"); // -_LIT(KSET_HLP_CONN_DEST_VIEW, "SET_HLP_CONN_DEST_VIEW"); // -_LIT(KSET_HLP_DEFAULT_CONN, "SET_HLP_DEFAULT_CONN"); // -_LIT(KSET_HLP_VPN_DEST_ASSOC_VIEW, "SET_HLP_VPN_DEST_ASSOC_VIEW"); // -_LIT(KSET_HLP_CONN_METHODS_VIEW, "SET_HLP_CONN_METHODS_VIEW"); // -_LIT(KCP_HLP_DEVICE_LOCKING, "CP_HLP_DEVICE_LOCKING"); // -_LIT(K0x100058EC, "0x100058EC"); // SSET_HLP_MAIN_VIEW -_LIT(KSET_HLP_APP_DEST_ASSOC_VIEW, "SET_HLP_APP_DEST_ASSOC_VIEW"); // -_LIT(KCP_HLP_APPILICATION_SETTINGS, "CP_HLP_APPILICATION_SETTINGS"); // -_LIT(KSCP_HLP_CALL, "SCP_HLP_CALL"); // -_LIT(KCP_HLP_CONNECTIVITY, "CP_HLP_CONNECTIVITY"); // -_LIT(KCP_HLP_DISPLAY, "CP_HLP_DISPLAY"); // -_LIT(KCP_HLP_DEVICE, "CP_HLP_DEVICE"); // -_LIT(KCP_HLP_LANGUAGE, "CP_HLP_LANGUAGE"); // -_LIT(KCP_HLP_MAIN_VIEW, "CP_HLP_MAIN_VIEW"); // -_LIT(KCP_HLP_NETWORK, "CP_HLP_NETWORK"); // -_LIT(KCP_HLP_PEN_INPUT, "CP_HLP_PEN_INPUT"); // -_LIT(KCP_HLP_PERSONAL, "CP_HLP_PERSONAL"); // -_LIT(KCP_HLP_SECURITY, "CP_HLP_SECURITY"); // -_LIT(KSET_HLP_SECURITY_DEVICE_SIM, "SET_HLP_SECURITY_DEVICE_SIM"); // -_LIT(KCP_HLP_IDLE, "CP_HLP_IDLE"); // -_LIT(KCP_HLP_TELEPHONY, "CP_HLP_TELEPHONY"); // -_LIT(KCP_HLP_WRITING_LANGUAGE, "CP_HLP_WRITING_LANGUAGE"); // -_LIT(KDIAGNOSTICS_HLP_MAIN_VIEW, "DIAGNOSTICS_HLP_MAIN_VIEW"); // -_LIT(KDIAGNOSTICS_HLP_CONNECT_VIEW, "DIAGNOSTICS_HLP_CONNECT_VIEW"); // -_LIT(KDIAGNOSTICS_HLP_COVERAGE_VIEW, "DIAGNOSTICS_HLP_COVERAGE_VIEW"); // -_LIT(KDIAGNOSTICS_HLP_HARDWARE_VIEW, "DIAGNOSTICS_HLP_HARDWARE_VIEW"); // -_LIT(KDIAGNOSTICS_HLP_SERVICES_VIEW, "DIAGNOSTICS_HLP_SERVICES_VIEW"); // -_LIT(KES_HLP_LIGHT_MAIN, "ES_HLP_LIGHT_MAIN"); // -_LIT(KES_HLP_LIGHT_BLINKING, "ES_HLP_LIGHT_BLINKING"); // -_LIT(KPREDINPUT_HLP_INPUT, "PREDINPUT_HLP_INPUT"); // -_LIT(KSET_HLP_ACCESSORIES_LIST, "SET_HLP_ACCESSORIES_LIST"); // -_LIT(KSSET_HLP_MAIN_VIEW, "SSET_HLP_MAIN_VIEW"); // - -#endif \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/help/rom/gssettingsuishelps_variant.iby --- a/gssettingsuis/Gs/help/rom/gssettingsuishelps_variant.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* 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: -* -*/ - -#ifndef __GSSETTINGSUISHELPS_VARIANT_IBY__ -#define __GSSETTINGSUISHELPS_VARIANT_IBY__ - -#if defined(FF_S60_HELPS_IN_USE) - data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058EC\contents.zip, RESOURCE_FILES_DIR\xhtml\%02d\0x100058EC\contents.zip) - data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058EC\index.xml, RESOURCE_FILES_DIR\xhtml\%02d\0x100058EC\index.xml) - data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058EC\keywords.xml, RESOURCE_FILES_DIR\xhtml\%02d\0x100058EC\keywords.xml) - data=LOCALISE(DATAZ_\resource\xhtml\%02d\0x100058EC\meta.xml, RESOURCE_FILES_DIR\xhtml\%02d\0x100058EC\meta.xml) -#endif - -#endif \ No newline at end of file diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GSApp.iby --- a/gssettingsuis/Gs/rom/GSApp.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: GSApp ROM files. -* -*/ - -#ifndef GSAPP_IBY -#define GSAPP_IBY - - #ifdef RD_GS_RENOVATION - - // AIF icons/files: - #ifdef __SCALABLE_ICONS - data=DATAZ_\APP_BITMAP_DIR\GSApp_aif.MIF APP_BITMAP_DIR\GSApp_aif.mif - #else - AUTO-BITMAP=DATAZ_\APP_BITMAP_DIR\GSApp_aif.MBM APP_BITMAP_DIR\GSApp_aif.mbm - #endif //__SCALABLE_ICONS - - - // GS Framework: - file=ABI_DIR\BUILD_DIR\GSFramework.dll SHARED_LIB_DIR\GSFramework.dll - file=ABI_DIR\BUILD_DIR\GSEcomPlugin.dll SHARED_LIB_DIR\GSEcomPlugin.dll - - // Normal icons: - data=DATAZ_\BITMAP_DIR\Gsfwicon.mif BITMAP_DIR\Gsfwicon.mif - data=DATAZ_\private\100058EC\backup_registration.xml private\100058EC\backup_registration.xml - - #endif // RD_GS_RENOVATION - -#endif // GSAPP_IBY -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GSAppResources.iby --- a/gssettingsuis/Gs/rom/GSAppResources.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: GSAppResources ROM files. -* -*/ - -#ifndef GSAPPRESOURCES_IBY -#define GSAPPRESOURCES_IBY - - #ifdef RD_GS_RENOVATION - - // Resource file(s) for GENERAL SETTINGS application (Gs.iby) - data=DATAZ_\APP_RESOURCE_DIR\GSApp.RSC APP_RESOURCE_DIR\GSApp.rsc - - // GS Framework: - data=DATAZ_\RESOURCE_FILES_DIR\GSParentPluginRsc.rsc RESOURCE_FILES_DIR\GSParentPluginRsc.rsc - data=DATAZ_\RESOURCE_FILES_DIR\GSFrameworkRsc.rsc RESOURCE_FILES_DIR\GSFrameworkRsc.rsc - - #endif // RD_GS_RENOVATION - -#endif // GSAPPRESOURCES_IBY -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GSBackgroundImage.iby --- a/gssettingsuis/Gs/rom/GSBackgroundImage.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* 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: -* -*/ - -#ifndef _BACKGROUNDIMAGE_IBY_ -#define _BACKGROUNDIMAGE_IBY_ - -file=ABI_DIR\BUILD_DIR\BackgroundImage.dll SHARED_LIB_DIR\BackgroundImage.dll - -#endif diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GSCallBarringPlugin.iby --- a/gssettingsuis/Gs/rom/GSCallBarringPlugin.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2006 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: GSCallBarringPlugin ROM files. -* -*/ - -#ifndef GSCALLBARRINGPLUGIN_IBY -#define GSCALLBARRINGPLUGIN_IBY - - #ifdef RD_GS_RENOVATION - - ECOM_PLUGIN( GSCallBarringPlugin.dll,102824A5.rsc ) - data=DATAZ_\BITMAP_DIR\GSCallBarringplugin.mif BITMAP_DIR\GSCallBarringplugin.mif - - #endif // RD_GS_RENOVATION - -#endif // GSCALLBARRINGPLUGIN_IBY -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GSCallBarringPluginResources.iby --- a/gssettingsuis/Gs/rom/GSCallBarringPluginResources.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2006 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: GSCallBarringPluginResources ROM resources. -* -*/ - -#ifndef GSCALLBARRINGPLUGINRESOURCES_IBY -#define GSCALLBARRINGPLUGINRESOURCES_IBY - - #ifdef RD_GS_RENOVATION - - data=DATAZ_\RESOURCE_FILES_DIR\GSCallBarringPluginRsc.rsc RESOURCE_FILES_DIR\GSCallBarringPluginRsc.rsc - - #endif // RD_GS_RENOVATION - -#endif // GSCALLBARRINGPLUGINRESOURCES_IBY -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GSListBox.iby --- a/gssettingsuis/Gs/rom/GSListBox.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* 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: -* -*/ - -#ifndef _GSLISTBOX_IBY_ -#define _GSLISTBOX_IBY_ - -file=ABI_DIR\BUILD_DIR\GSListBox.dll SHARED_LIB_DIR\GSListBox.dll - -#endif diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/Gs/rom/GsResources.iby --- a/gssettingsuis/Gs/rom/GsResources.iby Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: GSResources ROM files. -* -*/ - -#ifndef GSRESOURCES_IBY -#define GSRESOURCES_IBY - - #ifndef RD_GS_RENOVATION - - //Resource file(s) for GENERAL SETTINGS application (Gs.iby) - data=DATAZ_\APP_RESOURCE_DIR\GS.RSC APP_RESOURCE_DIR\GS.rsc - data=DATAZ_\RESOURCE_FILES_DIR\SoftReject.RSC RESOURCE_FILES_DIR\SoftReject.rsc - - #endif // RD_GS_RENOVATION - -#endif // GSRESOURCES_IBY -// End of File diff -r 572294aa6075 -r f48d04161a92 gssettingsuis/group/bld.inf --- a/gssettingsuis/group/bld.inf Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -/* -* Copyright (c) 2006 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 "../Gs/group/bld.inf" diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/BWINS/PROFILEENGINEU.DEF --- a/profilesservices/ProfileEngine/BWINS/PROFILEENGINEU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/BWINS/PROFILEENGINEU.DEF Thu Jul 22 16:35:53 2010 +0100 @@ -5,5 +5,4 @@ ?NewEngineLC@ProEngFactory@@SAPAVMProEngEngine@@AAVRFs@@@Z @ 4 NONAME ; class MProEngEngine * ProEngFactory::NewEngineLC(class RFs &) ?NewEngineLC@ProEngFactory@@SAPAVMProEngEngine@@XZ @ 5 NONAME ; class MProEngEngine * ProEngFactory::NewEngineLC(void) ?NewNotifyHandlerL@ProEngFactory@@SAPAVMProEngNotifyHandler@@XZ @ 6 NONAME ; class MProEngNotifyHandler * ProEngFactory::NewNotifyHandlerL(void) - ?NewNotifyHandler2L@ProEngFactory2@@SAPAVMProEngNotifyHandler2@@XZ @ 7 NONAME ; class MProEngNotifyHandler2 * ProEngFactory2::NewNotifyHandler2L(void) diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/EABI/ProfileEngineU.DEF --- a/profilesservices/ProfileEngine/EABI/ProfileEngineU.DEF Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/EABI/ProfileEngineU.DEF Thu Jul 22 16:35:53 2010 +0100 @@ -5,5 +5,4 @@ _ZN13ProEngFactory11NewEngineLCEv @ 4 NONAME _ZN13ProEngFactory17NewNotifyHandlerLEv @ 5 NONAME _ZN13ProEngFactory19NewAlertToneSeekerLEv @ 6 NONAME - _ZN14ProEngFactory218NewNotifyHandler2LEv @ 7 NONAME diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/ProfileScheduleEventSrc/ProfileScheduleEvent.rss --- a/profilesservices/ProfileEngine/ProfileScheduleEventSrc/ProfileScheduleEvent.rss Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/ProfileScheduleEventSrc/ProfileScheduleEvent.rss Thu Jul 22 16:35:53 2010 +0100 @@ -23,7 +23,7 @@ // INCLUDES #include -#include +#include // CONSTANTS // MACROS diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/CProEngActiveSettingsEventDelegate.cpp --- a/profilesservices/ProfileEngine/WrapperSrc/CProEngActiveSettingsEventDelegate.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -/* -* 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: Implementation of CProEngActiveSettingsEventDelegate -* -*/ - - - -// INCLUDE FILES -#include "CProEngActiveSettingsEventDelegate.h" -#include - -namespace - { - // CONSTANTS - const TInt KProEngActiveId( 0x7E000000 ); - const TUint32 KProEngProfileIdMask( 0xFF000000 ); - } - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CProEngActiveSettingsEventDelegate::CProEngActiveSettingsEventDelegate -// ----------------------------------------------------------------------------- -// -CProEngActiveSettingsEventDelegate::CProEngActiveSettingsEventDelegate( - TUint32 aPartialCenRepKey, - TUint32 aKeyMask, - MProEngActiveSettingsObserver& aObserver ) - : CProEngCenRepObserverBase( aPartialCenRepKey, aKeyMask ), - iObserver( aObserver ) - { - } - -// ----------------------------------------------------------------------------- -// CProEngActiveSettingsEventDelegate::NewL -// ----------------------------------------------------------------------------- -// -CProEngActiveSettingsEventDelegate* CProEngActiveSettingsEventDelegate::NewL( - MProEngActiveSettingsObserver& aObserver ) - { - CProEngActiveSettingsEventDelegate* self = new ( ELeave ) - CProEngActiveSettingsEventDelegate( KProEngActiveId, - KProEngProfileIdMask, aObserver ); - - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - - return self; - } - -// ----------------------------------------------------------------------------- -// CProEngActiveSettingsEventDelegate::NotifyObserverL -// ----------------------------------------------------------------------------- -// -void CProEngActiveSettingsEventDelegate::NotifyObserverL() - { - iObserver.HandleActiveSettingsModifiedL( ); - } - -// ----------------------------------------------------------------------------- -// CProEngActiveSettingsEventDelegate::NotifyError -// ----------------------------------------------------------------------------- -// -void CProEngActiveSettingsEventDelegate::NotifyError( TInt aError ) - { - iObserver.HandleActiveSettingsNotificationError( aError ); - } - -// End of File - diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/CProEngActiveSettingsEventDelegate.h --- a/profilesservices/ProfileEngine/WrapperSrc/CProEngActiveSettingsEventDelegate.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* 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: Delegate notifications about active settings modifications -* to the observer. -* -*/ - - - -#ifndef CPROENGACTIVESETTINGSEVENTDELEGATE_H -#define CPROENGACTIVESETTINGSEVENTDELEGATE_H - -// INCLUDES -#include "CProEngCenRepObserverBase.h" - -// FORWARD DECLARATIONS -class MProEngActiveSettingsObserver; - -// CLASS DECLARATION - -/** -* This class delegates notifications about active profile settings modifications to the observer -* implemented by the client of Profiles Engine Wrapper API. This is a helper -* class for CProEngNotifyHandlerImpl. -* -* @lib ProfileEngine.lib -* @since 10.1 -*/ -NONSHARABLE_CLASS( CProEngActiveSettingsEventDelegate ) - : public CProEngCenRepObserverBase - { - public: // constructor and destructor - - static CProEngActiveSettingsEventDelegate* NewL( - MProEngActiveSettingsObserver& aObserver ); - - virtual ~CProEngActiveSettingsEventDelegate() {}; - - public: // Functions from base classes - - /** - * From CProEngObserverBase. - */ - void NotifyObserverL(); - - /** - * From CProEngObserverBase. - */ - void NotifyError( TInt aError ); - - - public: // New functions - - private: // constructor - - CProEngActiveSettingsEventDelegate( TUint32 aPartialCenRepKey, - TUint32 aKeyMask, - MProEngActiveSettingsObserver& aObserver ); - - private: // Data: - - // The client implemented observer for profile modification events: - MProEngActiveSettingsObserver& iObserver; - - }; - -#endif // CPROENGACTIVESETTINGSEVENTDELEGATE_H - -// End of File - diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/CProEngMasterSettingsEventDelegate.cpp --- a/profilesservices/ProfileEngine/WrapperSrc/CProEngMasterSettingsEventDelegate.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -/* -* 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: Implementation of CProEngMasterSettingsEventDelegate -* -*/ - - - -// INCLUDE FILES -#include "CProEngMasterSettingsEventDelegate.h" -#include - -namespace - { - // CONSTANTS - const TInt KProEngMasterSettingsPartialKey( 0x80000200 ); - const TUint32 KProEngMasterSettingsMask( 0xFFFFFF00 ); - } - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CProEngMasterSettingsEventDelegate::CProEngMasterSettingsEventDelegate -// ----------------------------------------------------------------------------- -// -CProEngMasterSettingsEventDelegate::CProEngMasterSettingsEventDelegate( - TUint32 aPartialCenRepKey, - TUint32 aKeyMask, - MProEngMasterSettingsObserver& aObserver ) - : CProEngCenRepObserverBase( aPartialCenRepKey, aKeyMask ), - iObserver( aObserver ) - { - } - -// ----------------------------------------------------------------------------- -// CProEngMasterSettingsEventDelegate::NewL -// ----------------------------------------------------------------------------- -// -CProEngMasterSettingsEventDelegate* CProEngMasterSettingsEventDelegate::NewL( - MProEngMasterSettingsObserver& aObserver ) - { - CProEngMasterSettingsEventDelegate* self = new ( ELeave ) - CProEngMasterSettingsEventDelegate( KProEngMasterSettingsPartialKey, - KProEngMasterSettingsMask, aObserver ); - - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - - return self; - } - -// ----------------------------------------------------------------------------- -// CProEngMasterSettingsEventDelegate::NotifyObserverL -// ----------------------------------------------------------------------------- -// -void CProEngMasterSettingsEventDelegate::NotifyObserverL() - { - iObserver.HandleMasterSettingsModifiedL( ); - } - -// ----------------------------------------------------------------------------- -// CProEngMasterSettingsEventDelegate::NotifyError -// ----------------------------------------------------------------------------- -// -void CProEngMasterSettingsEventDelegate::NotifyError( TInt aError ) - { - iObserver.HandleMasterSettingsNotificationError( aError ); - } - -// End of File - diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/CProEngMasterSettingsEventDelegate.h --- a/profilesservices/ProfileEngine/WrapperSrc/CProEngMasterSettingsEventDelegate.h Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* 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: Delegate notifications about master settings modifications -* to the observer. -* -*/ - - - -#ifndef CPROENGMASTERSETTINGSEVENTDELEGATE_H -#define CPROENGMASTERSETTINGSEVENTDELEGATE_H - -// INCLUDES -#include "CProEngCenRepObserverBase.h" - -// FORWARD DECLARATIONS -class MProEngMasterSettingsObserver; - -// CLASS DECLARATION - -/** -* This class delegates notifications about master settings modifications to the observer -* implemented by the client of Profiles Engine Wrapper API. This is a helper -* class for CProEngNotifyHandlerImpl. -* -* @lib ProfileEngine.lib -* @since 10.1 -*/ -NONSHARABLE_CLASS( CProEngMasterSettingsEventDelegate ) - : public CProEngCenRepObserverBase - { - public: // constructor and destructor - - static CProEngMasterSettingsEventDelegate* NewL( - MProEngMasterSettingsObserver& aObserver ); - - virtual ~CProEngMasterSettingsEventDelegate() {}; - - public: // Functions from base classes - - /** - * From CProEngObserverBase. - */ - void NotifyObserverL(); - - /** - * From CProEngObserverBase. - */ - void NotifyError( TInt aError ); - - - public: // New functions - - private: // constructor - - CProEngMasterSettingsEventDelegate( TUint32 aPartialCenRepKey, - TUint32 aKeyMask, - MProEngMasterSettingsObserver& aObserver ); - - private: // Data: - - // The client implemented observer for profile modification events: - MProEngMasterSettingsObserver& iObserver; - - }; - -#endif // CPROENGMASTERSETTINGSEVENTDELEGATE_H - -// End of File - diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/CProEngNotifyHandlerImpl.cpp --- a/profilesservices/ProfileEngine/WrapperSrc/CProEngNotifyHandlerImpl.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/WrapperSrc/CProEngNotifyHandlerImpl.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -30,8 +30,7 @@ #include #include #include -#include "CProEngActiveSettingsEventDelegate.h" -#include "CProEngMasterSettingsEventDelegate.h" + // ============================= LOCAL FUNCTIONS =============================== @@ -57,9 +56,7 @@ CProEngNotifyHandlerImpl::CProEngNotifyHandlerImpl() : iActiveIdEventDelegate( NULL ), iActiveProfileEventDelegate( NULL ), - iNameArrayEventDelegate( NULL ), - iActiveSettingEventDelegate( NULL ), - iMasterSettingEventDelegate( NULL ) + iNameArrayEventDelegate( NULL ) { } @@ -200,60 +197,6 @@ return result; } - -// ----------------------------------------------------------------------------- -// CProEngNotifyHandlerImpl::RequestActiveSettingsNotificationsL -// ----------------------------------------------------------------------------- -// -TInt CProEngNotifyHandlerImpl::RequestActiveSettingsNotificationsL( - MProEngActiveSettingsObserver &aObserver ) - { - if( iActiveSettingEventDelegate ) - { - return KErrAlreadyExists; - } - - iActiveSettingEventDelegate = CProEngActiveSettingsEventDelegate::NewL( - aObserver ); - - // make the actual request to the Central Repository: - TInt result( iActiveSettingEventDelegate->RequestNotification() ); - if( result != KErrNone ) - { - delete iActiveSettingEventDelegate; - iActiveSettingEventDelegate = NULL; - } - - return result; - } - -// ----------------------------------------------------------------------------- -// CProEngNotifyHandlerImpl::RequestMasterSettingsNotificationsL -// ----------------------------------------------------------------------------- -// -TInt CProEngNotifyHandlerImpl::RequestMasterSettingsNotificationsL( - MProEngMasterSettingsObserver &aObserver ) - { - if( iMasterSettingEventDelegate ) - { - return KErrAlreadyExists; - } - - iMasterSettingEventDelegate = CProEngMasterSettingsEventDelegate::NewL( - aObserver ); - - // make the actual request to the Central Repository: - TInt result( iMasterSettingEventDelegate->RequestNotification() ); - if( result != KErrNone ) - { - delete iMasterSettingEventDelegate; - iMasterSettingEventDelegate = NULL; - } - - return result; - } - - // ----------------------------------------------------------------------------- // CProEngNotifyHandlerImpl::CancelProfileActivationNotifications // ----------------------------------------------------------------------------- @@ -316,35 +259,6 @@ } } - -// ----------------------------------------------------------------------------- -// CProEngNotifyHandlerImpl::CancelActiveSettingsNotificationsL -// ----------------------------------------------------------------------------- -// -void CProEngNotifyHandlerImpl::CancelActiveSettingsNotificationsL() - { - if( iActiveSettingEventDelegate ) - { - iActiveSettingEventDelegate->Cancel(); - delete iActiveSettingEventDelegate; - iActiveSettingEventDelegate = NULL; - } - } - -// ----------------------------------------------------------------------------- -// CProEngNotifyHandlerImpl::CancelMasterSettingsNotificationsL -// ----------------------------------------------------------------------------- -// -void CProEngNotifyHandlerImpl::CancelMasterSettingsNotificationsL() - { - if( iMasterSettingEventDelegate ) - { - iMasterSettingEventDelegate->Cancel(); - delete iMasterSettingEventDelegate; - iMasterSettingEventDelegate = NULL; - } - } - // ----------------------------------------------------------------------------- // CProEngNotifyHandlerImpl::CancelAll // ----------------------------------------------------------------------------- @@ -354,9 +268,6 @@ CancelProfileActivationNotifications(); CancelActiveProfileNotifications(); CancelProfileNameArrayNotifications(); - CancelActiveSettingsNotificationsL(); - CancelMasterSettingsNotificationsL(); - TInt count = iProfileEventDelegates.Count(); for( TInt i( 0 ); i +#include #include // FORWARD DECLARATIONS @@ -29,8 +29,6 @@ class CProEngActiveProfileDelegate; class CProEngProfileNameArrayEventDelegate; class CProEngProfileEventDelegate; -class CProEngActiveSettingsEventDelegate; -class CProEngMasterSettingsEventDelegate; // CLASS DECLARATION @@ -41,7 +39,7 @@ * @since 3.1 */ NONSHARABLE_CLASS( CProEngNotifyHandlerImpl ) : public CBase, - public MProEngNotifyHandler2 + public MProEngNotifyHandler { public: // Constructors and destructor @@ -83,18 +81,6 @@ MProEngProfileNameArrayObserver& aObserver ); /** - * From MProEngNotifyHandler2 - */ - virtual TInt RequestActiveSettingsNotificationsL( - MProEngActiveSettingsObserver &aObserver ); - - /** - * From MProEngNotifyHandler2 - */ - virtual TInt RequestMasterSettingsNotificationsL( - MProEngMasterSettingsObserver &aObserver ); - - /** * From MProEngNotifyHandler */ void CancelProfileActivationNotifications(); @@ -115,20 +101,9 @@ void CancelProfileNameArrayNotifications(); /** - * From MProEngNotifyHandler2 - */ - virtual void CancelActiveSettingsNotificationsL(); - - /** - * From MProEngNotifyHandler2 - */ - virtual void CancelMasterSettingsNotificationsL(); - - /** * From MProEngNotifyHandler */ void CancelAll(); - private: @@ -150,12 +125,6 @@ // Own: Array of profile change observers RPointerArray< CProEngProfileEventDelegate > iProfileEventDelegates; - - // Own: Delegate for active settings modification events - CProEngActiveSettingsEventDelegate *iActiveSettingEventDelegate; - - // Own: Delegate for master settings modification events - CProEngMasterSettingsEventDelegate *iMasterSettingEventDelegate; }; diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/CProEngToneHandlerDrmFull.cpp --- a/profilesservices/ProfileEngine/WrapperSrc/CProEngToneHandlerDrmFull.cpp Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/WrapperSrc/CProEngToneHandlerDrmFull.cpp Thu Jul 22 16:35:53 2010 +0100 @@ -24,8 +24,6 @@ #include #include -#include - // ============================ LOCAL FUNCTIONS ================================ diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/WrapperSrc/ProEngFactory2.cpp --- a/profilesservices/ProfileEngine/WrapperSrc/ProEngFactory2.cpp Fri Jun 11 16:24:54 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -/* -* 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: Implementation of the ProEngFactory2. -* -*/ - - - -// INCLUDE FILES -#include -#include "CProEngNotifyHandlerImpl.h" - -// ============================ MEMBER FUNCTIONS =============================== - - -// ----------------------------------------------------------------------------- -// ProEngFactory::NewNotifyHandlerL -// ----------------------------------------------------------------------------- -// -EXPORT_C MProEngNotifyHandler2* ProEngFactory2::NewNotifyHandler2L() - { - return CProEngNotifyHandlerImpl::NewL(); - } - -// End of File - diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/conf/profilesengine_101F8798.crml Binary file profilesservices/ProfileEngine/conf/profilesengine_101F8798.crml has changed diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/group/ProfileEng.rss --- a/profilesservices/ProfileEngine/group/ProfileEng.rss Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/group/ProfileEng.rss Thu Jul 22 16:35:53 2010 +0100 @@ -27,7 +27,7 @@ #include "Profile.hrh" #include "ProfileEng.rh" #include "ProfileEng.hrh" -#include +#include // CONSTANTS // MACROS diff -r 572294aa6075 -r f48d04161a92 profilesservices/ProfileEngine/group/ProfileEngine.mmp --- a/profilesservices/ProfileEngine/group/ProfileEngine.mmp Fri Jun 11 16:24:54 2010 +0100 +++ b/profilesservices/ProfileEngine/group/ProfileEngine.mmp Thu Jul 22 16:35:53 2010 +0100 @@ -51,9 +51,6 @@ SOURCE CProEngPostFilter.cpp SOURCE ProEngFactory.cpp SOURCE ProEngMmfInfoUtility.cpp -SOURCE CProEngActiveSettingsEventDelegate.cpp -SOURCE CProEngMasterSettingsEventDelegate.cpp -SOURCE ProEngFactory2.cpp START RESOURCE ProEngWrapper.rss HEADER @@ -66,6 +63,7 @@ USERINCLUDE ../EngInc MW_LAYER_SYSTEMINCLUDE +APP_LAYER_SYSTEMINCLUDE LIBRARY bafl.lib LIBRARY euser.lib