qtmobileextensions/src/keycapture/targetwrapper.cpp
changeset 19 46686fb6258c
parent 15 1f895d8a5b2b
child 26 3d09643def13
equal deleted inserted replaced
15:1f895d8a5b2b 19:46686fb6258c
    49 TargetWrapper::~TargetWrapper()
    49 TargetWrapper::~TargetWrapper()
    50 {
    50 {
    51     delete selector;
    51     delete selector;
    52 }
    52 }
    53 
    53 
       
    54 void TargetWrapper::close(XQKeyCapture::CapturingFlags flags)
       
    55 {
       
    56     captureFlags &= ~flags;
       
    57     reset();
       
    58 }
       
    59 
    54 void TargetWrapper::init(XQKeyCapture::CapturingFlags flags)
    60 void TargetWrapper::init(XQKeyCapture::CapturingFlags flags)
    55 {
    61 {
    56     captureFlags = flags;
    62     captureFlags |= flags;
       
    63     reset();
       
    64 }
       
    65 
       
    66 void TargetWrapper::reset()
       
    67 {
    57     try {
    68     try {
    58         delete selector;
    69         delete selector;
    59     
    70     
    60         QT_TRAP_THROWING(selector = CRemConInterfaceSelector::NewL());
    71         QT_TRAP_THROWING(selector = CRemConInterfaceSelector::NewL());
    61         
    72         
    62         if (captureFlags & XQKeyCapture::CaptureBasic) {
    73         if (captureFlags & XQKeyCapture::CaptureBasic) {
    63             QT_TRAP_THROWING(target = CRemConCoreApiTarget::NewL(*selector, *this));
    74             QT_TRAP_THROWING(target = CRemConCoreApiTarget::NewL(*selector, *this));
    64             QT_TRAP_THROWING(handler = ResponseHandler::NewL(*target));
    75             QT_TRAP_THROWING(handler = CResponseHandler::NewL(*target));
    65         }
    76         }
    66          
    77          
    67         if (captureFlags & XQKeyCapture::CaptureCallHandlingExt) {
    78         if (captureFlags & XQKeyCapture::CaptureCallHandlingExt) {
    68             QT_TRAP_THROWING(targetEx = CRemConCallHandlingTarget::NewL(*selector, *this));
    79             QT_TRAP_THROWING(targetEx = CRemConCallHandlingTarget::NewL(*selector, *this));
    69             QT_TRAP_THROWING(handlerEx = ResponseHandlerEx::NewL(*targetEx));
    80             QT_TRAP_THROWING(handlerEx = CResponseHandlerEx::NewL(*targetEx));
    70         }
    81         }
    71         
    82         
    72         QT_TRAP_THROWING(selector->OpenTargetL());
    83         QT_TRAP_THROWING(selector->OpenTargetL());
    73     
    84     
    74     } catch (const std::exception &e) {
    85     } catch (const std::exception &e) {