tactilefeedback/tactilefeedbackclient/src/touchfeedbackimpl.cpp
changeset 27 dabdd02a1ba9
parent 22 4838b44af342
child 30 fb04b611ffe7
equal deleted inserted replaced
22:4838b44af342 27:dabdd02a1ba9
  1144         iClient->ImmediateFeedback( aType, vibraEnabled, audioEnabled );   
  1144         iClient->ImmediateFeedback( aType, vibraEnabled, audioEnabled );   
  1145         }
  1145         }
  1146     }
  1146     }
  1147         
  1147         
  1148 // ---------------------------------------------------------------------------
  1148 // ---------------------------------------------------------------------------
       
  1149 // CTouchFeedbackImpl::InstantFeedback
       
  1150 // ---------------------------------------------------------------------------
       
  1151 //    
       
  1152 void CTouchFeedbackImpl::InstantFeedback( TTouchLogicalFeedback aType,
       
  1153                                           TTouchFeedbackType aFeedbackType )
       
  1154     {
       
  1155     if ( iClient && ( iAudioEnabledForThisApp || iVibraEnabledForThisApp ) )
       
  1156         {
       
  1157         // Initialize vibra and audio enablers as given in param.
       
  1158         TBool vibraEnabled = aFeedbackType & ETouchFeedbackVibra;
       
  1159         TBool audioEnabled = aFeedbackType & ETouchFeedbackAudio;
       
  1160 
       
  1161         // Check application level vibra and audio enablers
       
  1162         if ( !iVibraEnabledForThisApp )
       
  1163             {
       
  1164             vibraEnabled = EFalse;
       
  1165             }
       
  1166         if ( !iAudioEnabledForThisApp )
       
  1167             {
       
  1168             audioEnabled = EFalse;
       
  1169             }
       
  1170 
       
  1171         TRACE4( "CTouchFeedbackImpl::InstantFeedback, type:=%d Vibra:%d Audio:%d",
       
  1172                 aType, vibraEnabled, audioEnabled );
       
  1173         iClient->ImmediateFeedback( aType, vibraEnabled, audioEnabled );
       
  1174         }
       
  1175     }
       
  1176 
       
  1177 // ---------------------------------------------------------------------------
  1149 // Here we do the actual work for adding new area to the registry
  1178 // Here we do the actual work for adding new area to the registry
  1150 // (or updating an existing one).
  1179 // (or updating an existing one).
  1151 //
  1180 //
  1152 // #1 Check that control exist in the cache
  1181 // #1 Check that control exist in the cache
  1153 //    #2a If it does not exist, then add it
  1182 //    #2a If it does not exist, then add it
  1728         return KErrArgument;
  1757         return KErrArgument;
  1729         }
  1758         }
  1730     item.iEventType = aEventType;        
  1759     item.iEventType = aEventType;        
  1731     
  1760     
  1732 	// range check. update when logical feedback types are changed.
  1761 	// range check. update when logical feedback types are changed.
  1733     if (! ( aFeedback >= ETouchFeedbackNone || aFeedback <= ETouchFeedbackSensitive) 
  1762     if ( !(aFeedback >= ETouchFeedbackNone && aFeedback <= ETouchFeedbackSensitive) 
  1734      || ! ( aFeedback >= ETouchFeedbackBasicButton || 
  1763             && !(aFeedback >= ETouchFeedbackBasicButton && aFeedback <= ETouchFeedbackLongPress) )
  1735             aFeedback <= ETouchFeedbackOptionsMenuClosed ) )
       
  1736         {
  1764         {
  1737         return KErrArgument;
  1765         return KErrArgument;
  1738         }
  1766         }
  1739     item.iFeedback = aFeedback;        
  1767     item.iFeedback = aFeedback;        
  1740     item.iFeedbackType = aFeedbackType;
  1768     item.iFeedbackType = aFeedbackType;