コード例 #1
0
void CRuleManager::AppendRule(const TDesC& aName,const TUid& aUid, const TInt& aType, const TInt& aCountDown, 
		const TTime& aTime, const TDesC& aRuleName)
	{
	CRule* rule = CRule::NewL();
	rule->SetName(aName);
	rule->SetUid(aUid);
	rule->SetType(aType);
	rule->SetCountDown(aCountDown);
	rule->SetClock(aTime);
	rule->SetRuleName(aRuleName);
	rule->SetLunchRun(0);
	
	iRules->Insert(rule,0);
	
	WriteToFile(rule);
	}
コード例 #2
0
void CRuleManager::ReadFromFile(const TDesC8& aFile,TInt aPos,CRule* aRule)
	{
	CDesC8Array *array = CCommonUtils::SplitText(aFile.Left(aPos),KCharRuleSymbolSplit);
	if (array->Count() == 6)
		{
		CRule* rule = aRule;
		
		HBufC* name = CCommonUtils::ConvertToUnicodeFromUTF8((*array)[0]);
		rule->SetName(name->Des());
		delete name;
		
		TInt uid = CCommonUtils::StrToInt((*array)[1]);
		rule->SetUid(TUid::Uid(uid));
		
		TInt type = CCommonUtils::StrToInt((*array)[2]);
		rule->SetType(type);
		
		if (type == 0)
			{
			TInt countdown = CCommonUtils::StrToInt((*array)[3]);
			rule->SetCountDown(countdown);
			}
		else
			{
			TTime time;
			TBuf<8> timetxt;
			timetxt.Copy((*array)[3]);
			TimeSet(timetxt,time);
			rule->SetClock(time);
			}
		
		HBufC* rulename = CCommonUtils::ConvertToUnicodeFromUTF8((*array)[4]);
		rule->SetRuleName(rulename->Des());
		delete rulename;
		
		TInt lunch = CCommonUtils::StrToInt((*array)[5]);
		rule->SetLunchRun(lunch);
		}
	delete array;
	}