homescreenapp/serviceproviders/hsmenuserviceprovider/src/hsmenuservice.cpp
changeset 36 cdae8c6c3876
parent 35 f9ce957a272c
child 39 4e8ebe173323
equal deleted inserted replaced
35:f9ce957a272c 36:cdae8c6c3876
    15  *
    15  *
    16  */
    16  */
    17 
    17 
    18 #include <QDebug>
    18 #include <QDebug>
    19 #include <QStandardItem>
    19 #include <QStandardItem>
       
    20 #include <qvaluespacepublisher.h>
    20 
    21 
    21 #include "hsapp_defs.h"
    22 #include "hsapp_defs.h"
    22 #include "hsmenuservice.h"
    23 #include "hsmenuservice.h"
    23 #include "hsmenuserviceutils.h"
    24 #include "hsmenuserviceutils.h"
    24 #include "caquery.h"
    25 #include "caquery.h"
    25 #include "caitemmodel.h"
    26 #include "caitemmodel.h"
    26 #include "hsmenuitemmodel.h"
    27 #include "hsmenuitemmodel.h"
    27 #include "hsmenucollectionsitemmodel.h"
    28 #include "hsmenucollectionsitemmodel.h"
       
    29 
       
    30 QTM_USE_NAMESPACE
    28 
    31 
    29 // ======== MEMBER FUNCTIONS ========
    32 // ======== MEMBER FUNCTIONS ========
    30 
    33 
    31 // Initialization of a static member variable.
    34 // Initialization of a static member variable.
    32 int HsMenuService::mAllCollectionsId = 0;
    35 int HsMenuService::mAllCollectionsId = 0;
    45     CaQuery query;
    48     CaQuery query;
    46     query.setEntryRoles(ItemEntryRole);
    49     query.setEntryRoles(ItemEntryRole);
    47     query.addEntryTypeName(applicationTypeName());
    50     query.addEntryTypeName(applicationTypeName());
    48     query.addEntryTypeName(urlTypeName());
    51     query.addEntryTypeName(urlTypeName());
    49     query.addEntryTypeName(widgetTypeName());
    52     query.addEntryTypeName(widgetTypeName());
       
    53     query.addEntryTypeName(templatedApplicationTypeName());
    50     query.setFlagsOn(VisibleEntryFlag);
    54     query.setFlagsOn(VisibleEntryFlag);
    51     query.setFlagsOff(MissingEntryFlag);
    55     query.setFlagsOff(MissingEntryFlag);
    52     query.setSort(HsMenuServiceUtils::sortBy(sortAttribute),
    56     query.setSort(HsMenuServiceUtils::sortBy(sortAttribute),
    53                   HsMenuServiceUtils::sortOrder(sortAttribute));
    57                   HsMenuServiceUtils::sortOrder(sortAttribute));
    54     HsMenuItemModel *model = new HsMenuItemModel(query);
    58     HsMenuItemModel *model = new HsMenuItemModel(query);
   163 {
   167 {
   164     qDebug() << "HsMenuService::executeAction entryId:" << entryId
   168     qDebug() << "HsMenuService::executeAction entryId:" << entryId
   165              << "actionName:" << actionName;
   169              << "actionName:" << actionName;
   166 
   170 
   167     return CaService::instance()->executeCommand(entryId, actionName);
   171     return CaService::instance()->executeCommand(entryId, actionName);
       
   172 }
       
   173 
       
   174 /*!
       
   175  Launch task switcher
       
   176  \retval boolean launching status
       
   177  */
       
   178 bool HsMenuService::launchTaskSwitcher()
       
   179 {
       
   180     qDebug() << "HsMenuService::launchTS";
       
   181     QScopedPointer<CaEntry> tsEntry(new CaEntry);
       
   182     tsEntry->setEntryTypeName(applicationTypeName());
       
   183     tsEntry->setAttribute(
       
   184     		applicationUidEntryKey(), QString::number(taskSwitcherUid)); 
       
   185     int retval = CaService::instance()->executeCommand(*tsEntry, 
       
   186             openActionIdentifier());
       
   187     if(retval) {
       
   188         QValueSpacePublisher publisher("/TaskSwitcher");
       
   189         publisher.setValue("Activation", taskSwitcherPropertyValue);
       
   190     }
       
   191     return retval;
   168 }
   192 }
   169 
   193 
   170 /*!
   194 /*!
   171  Adds new collection
   195  Adds new collection
   172  \param name of the collection
   196  \param name of the collection