featuremgmt/featuremgr/src/serverexe/featmgrfeatureregistry.cpp
branchRCL_3
changeset 24 cc28652e0254
parent 23 26645d81f48d
equal deleted inserted replaced
23:26645d81f48d 24:cc28652e0254
   161         aFeature = entry;
   161         aFeature = entry;
   162         err = KFeatureSupported;
   162         err = KFeatureSupported;
   163         }
   163         }
   164     else
   164     else
   165         {
   165         {
   166         TBitFlags32 flags = iFeatureList[index].FeatureFlags();
       
   167         flags.Assign( EFeatureSupported, KFeatureUnsupported );
       
   168         TUint32 data = iFeatureList[index].FeatureData();
       
   169         TFeatureServerEntry entry( aFeature.FeatureUid(), flags, data );
       
   170         aFeature = entry;
       
   171         err = KFeatureUnsupported;
   166         err = KFeatureUnsupported;
   172         }
   167         }
   173 
   168 
   174     return err;
   169     return err;
   175     }
   170     }
   279         TUint32 data = 0;
   274         TUint32 data = 0;
   280         if( aData )
   275         if( aData )
   281             {
   276             {
   282             data = *aData;
   277             data = *aData;
   283             }
   278             }
   284 
   279         TFeatureServerEntry entry( aFeature, flags, data );    
   285         TFeatureServerEntry entry( aFeature, flags, data );
   280         err = SWICacheCommand(ESWISetFeatAndData, entry);
   286 
       
   287         // If aData is not null, we want to change the user data too
       
   288         //  otherwise only change the feature status.
       
   289         if( aData )
       
   290             {
       
   291             err = SWICacheCommand(ESWISetFeatAndData, entry);
       
   292             }
       
   293         else
       
   294             {
       
   295             err = SWICacheCommand(ESWISetFeat, entry);
       
   296             }
       
   297     	}
   281     	}
   298     else 
   282     else 
   299     	{
   283     	{
   300 	    TInt index;
   284 	    TInt index;
   301 	
   285 	
  1456 				TUint32 data = iSWICachedOperations[i].iFeatEntry.FeatureData();
  1440 				TUint32 data = iSWICachedOperations[i].iFeatEntry.FeatureData();
  1457 				SetFeature(iSWICachedOperations[i].iFeatEntry.FeatureUid(),
  1441 				SetFeature(iSWICachedOperations[i].iFeatEntry.FeatureUid(),
  1458 							EFeatureSupportUntouch,&data);
  1442 							EFeatureSupportUntouch,&data);
  1459 				}
  1443 				}
  1460 				break;
  1444 				break;
  1461             case ESWISetFeat:
       
  1462                 {
       
  1463                 SetFeature( iSWICachedOperations[i].iFeatEntry.FeatureUid(),
       
  1464                             iSWICachedOperations[i].iFeatEntry.FeatureFlags().Value(),
       
  1465                             NULL);
       
  1466                 }
       
  1467                 break;
       
  1468 			default:
  1445 			default:
  1469 				break;
  1446 				break;
  1470 				};
  1447 				};
  1471 			}
  1448 			}
  1472 		
  1449