ui/viewmanagement/statehandler/src/glxactionhandler.cpp
changeset 24 99ad1390cd33
parent 23 74c9f037fd5d
child 26 c499df2dbb33
equal deleted inserted replaced
23:74c9f037fd5d 24:99ad1390cd33
    18 #include <QDebug>
    18 #include <QDebug>
    19 #include <glxcommandhandlers.hrh>
    19 #include <glxcommandhandlers.hrh>
    20 #include <glxcommandhandler.h>
    20 #include <glxcommandhandler.h>
    21 #include<glxcommandhandlerfactory.h>
    21 #include<glxcommandhandlerfactory.h>
    22 #include "glxmediaid.h"
    22 #include "glxmediaid.h"
       
    23 #include <QModelIndexList>
    23 
    24 
    24 GlxActionHandler::GlxActionHandler()
    25 GlxActionHandler::GlxActionHandler()
    25 {
    26 {
    26 }
    27 }
    27 
    28 
    30     foreach( GlxCommandHandler *cmdhandler, mCommandHandlerList)
    31     foreach( GlxCommandHandler *cmdhandler, mCommandHandlerList)
    31         delete cmdhandler;
    32         delete cmdhandler;
    32     mCommandHandlerList.clear();
    33     mCommandHandlerList.clear();
    33 }
    34 }
    34 
    35 
    35 void GlxActionHandler::handleAction(qint32 commandId,int collectionId)
    36 void GlxActionHandler::handleAction(qint32 commandId,int collectionId,QModelIndexList indexList)
    36 {
    37 {
    37     GlxCommandHandler* cmdHandler = NULL;
    38     GlxCommandHandler* cmdHandler = NULL;
    38 	switch ( commandId ) {
    39 	switch ( commandId ) {
    39 	    case EGlxCmdContextAddToAlbum:
    40 	    case EGlxCmdContextAddToAlbum:
    40 	        commandId = EGlxCmdAddToAlbum;
    41 	        commandId = EGlxCmdAddToAlbum;
    41 	        break;
    42 	        break;
       
    43 	        
    42 	    case EGlxCmdContextDelete:
    44 	    case EGlxCmdContextDelete:
    43 	        commandId = EGlxCmdDelete;
    45 	        commandId = EGlxCmdDelete;
    44 	        break;
    46 	        break;
       
    47 	        
    45 	    case EGlxCmdContextAlbumDelete:
    48 	    case EGlxCmdContextAlbumDelete:
    46 	        commandId = EGlxCmdDelete;
    49 	        commandId = EGlxCmdDelete;
    47 			collectionId = KGlxAlbumsMediaId;
       
    48 	        break;
    50 	        break;
       
    51 	        
       
    52 	    case EGlxCmdContextSend:
       
    53 	         commandId = EGlxCmdSend;
       
    54 	         break;
       
    55 	         
    49 		default : break;	
    56 		default : break;	
    50 		}
    57 		}
    51 		
    58 		
    52     if(mCommandHandlerList.contains(commandId)){
    59     if(mCommandHandlerList.contains(commandId)){
    53         cmdHandler = mCommandHandlerList.value(commandId);
    60         cmdHandler = mCommandHandlerList.value(commandId);
    55     else{
    62     else{
    56         cmdHandler = GlxCommandHandlerFactory::CreateCommandHandler(commandId);
    63         cmdHandler = GlxCommandHandlerFactory::CreateCommandHandler(commandId);
    57         addCommandHandler(commandId,cmdHandler);
    64         addCommandHandler(commandId,cmdHandler);
    58     }
    65     }
    59     if ( cmdHandler ) {
    66     if ( cmdHandler ) {
    60         cmdHandler->executeCommand(commandId,collectionId);
    67         cmdHandler->executeCommand(commandId,collectionId,indexList);
    61     }
    68     }
    62 }
    69 }
    63 
    70 
    64 void GlxActionHandler::addCommandHandler(int commandId,GlxCommandHandler* commandHandler)
    71 void GlxActionHandler::addCommandHandler(int commandId,GlxCommandHandler* commandHandler)
    65 {
    72 {