Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
This page was last modified 13:20, 9 October 2008.

CS001138 - Assign contact images with AIW

From Forum Nokia Wiki



ID CS001138 Creation date October 9, 2008
Platform S60 3rd Edition Tested on devices Nokia N95
Category Symbian C++ Subcategory AIW


Keywords (APIs, classes, methods, functions):


Overview

This code snipped shows how to assign images to contacts using the AIW handler.

This snippet can be self-signed.

Preconditions

Note!
This API is not part of the public SDK. It can be found in the SDK API Plug-in.


MMP file

The following library is required:

LIBRARY servicehandler.lib

In the resource file

Add the following headers:

#include <AiwCommon.hrh>
 #include <AiwCommon.rh>

Then define a submenu item as follows in the MENU_PANE resource:

MENU_ITEM
  {
   command=EAssignSub;
   cascade=r_Assign_menu;	
   txt = "Assign";
  }

Then define the actual submenu item as follows:

RESOURCE MENU_PANE r_Assign_menu
  {
   items =
    { 
 	MENU_ITEM
            {
             command=EAIWPlaceHolder2;	
             txt = "";
             }
     };
   }

After which you can define the AIW menu interest item as follows:

RESOURCE AIW_INTEREST r_aiwmenutst_ASSIGN
  {     
   items =
    {
     AIW_CRITERIA_ITEM
      {
        id = EAIWPlaceHolder2;
        serviceCmd = KAiwCmdAssign;
        contentType = "*";
        serviceClass = KAiwClassMenu; 
      }
    };
 }


Source file

Add the following header:

#include <AiwServiceHandler.h>

Construct the CAiwServiceHandler and attach the menu:

iServiceHandler = CAiwServiceHandler::NewL();
 iServiceHandler->AttachMenuL(R_ASSIGN_MENU, R_AIWMENUTST_ASSIGN);

Because the menu items for rotating were defined as submenus, you can handle adding the menu with the following code inside DynInitMenuPaneL:

if ( iServiceHandler->HandleSubmenuL( *aMenuPane ) )
  {
   return;
  }
 
 if(iImageFileName.Length()
 && BaflUtils::Parse(iImageFileName) == KErrNone)
  {
         CAiwGenericParamList& paramList = iServiceHandler->InParamListL();
         
          TAiwVariant varFile(iImageFileName);
         TAiwGenericParam paramFile( EGenericParamFile, varFile );
         paramList.AppendL( paramFile );
 
         TAiwVariant varMime(_L("image/jpeg"));
         TAiwGenericParam paramMime( EGenericParamMIMEType, varMime );
         paramList.AppendL( paramMime );
 
          iServiceHandler->InitializeMenuPaneL(
     	    *aMenuPane, 
         	aResourceId, 
         	EAIWExampleCmdLast1, 
         	paramList);    
         	
 }
 else if(aResourceId == your Menu id goes here)
 {
 // Use aMenuPane->SetItemDimmed to dim out the menu item.
 }

When the user selects the menu item, you just need to forward the command to CAiwServiceHandler in your command handler’s default block as follows:

CAiwGenericParamList* paramList = CAiwGenericParamList::NewLC();
 
 TAiwGenericParam filePath( EGenericParamFile, iImageFileName );
 paramList->AppendL( filePath );
 
 TAiwVariant varMime(_L("image/jpeg"));
 TAiwGenericParam paramMime( EGenericParamMIMEType, varMime );
 paramList->AppendL( paramMime );
 
 iServiceHandler->ExecuteMenuCmdL(
 	aCommand,
     *paramList,     
 	NULL,   
 	0,                                 
 	this);                                
 
 CleanupStack::PopAndDestroy(paramList);
Related Discussions
Thread Thread Starter Forum Replies Last Post
How to assign a value to a form field? bandz_fab Python 2 2006-11-11 00:05
Exception while adding a contact in the contact database ashbhatia General Symbian C++ 3 2007-12-06 13:55
contact program miikkis General Symbian C++ 0 2008-04-11 21:01
display images from photo album in my application kaumudi General Symbian C++ 2 2003-04-17 12:03
images in netbeans jselvakumar26071988 Mobile Java General 5 2008-09-28 10:09
 
Powered by MediaWiki
RDF Facets: qfnZtypeQUqfnTypeZCommunityContentQ qfnZtypeQUqfnTypeZWebpageQ qfnZtypeQUqfnTypeZWikiContentQ qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX