equal
deleted
inserted
replaced
167 } |
167 } |
168 |
168 |
169 void CCoeEnvExtra::AddObserverL(RArray<TAny*>& aArrayOfObservers, TAny* aObserver) |
169 void CCoeEnvExtra::AddObserverL(RArray<TAny*>& aArrayOfObservers, TAny* aObserver) |
170 { |
170 { |
171 __ASSERT_ALWAYS(aObserver!=NULL, Panic(ECoePanicIllegalNullParameter3)); |
171 __ASSERT_ALWAYS(aObserver!=NULL, Panic(ECoePanicIllegalNullParameter3)); |
|
172 CleanupClosePushL(aArrayOfObservers); |
172 for (TInt i=aArrayOfObservers.Count()-1; i>=0; --i) |
173 for (TInt i=aArrayOfObservers.Count()-1; i>=0; --i) |
173 { |
174 { |
174 __ASSERT_ALWAYS(aArrayOfObservers[i]!=aObserver, Panic(ECoePanicFocusObserverHasAlreadyBeenAdded)); |
175 __ASSERT_ALWAYS(aArrayOfObservers[i]!=aObserver, Panic(ECoePanicFocusObserverHasAlreadyBeenAdded)); |
175 } |
176 } |
176 User::LeaveIfError(aArrayOfObservers.Append(aObserver)); |
177 User::LeaveIfError(aArrayOfObservers.Append(aObserver)); |
|
178 CleanupStack::Pop(&aArrayOfObservers); |
177 } |
179 } |
178 |
180 |
179 void CCoeEnvExtra::RemoveObserver(RArray<TAny*>& aArrayOfObservers, const TAny* aObserver) |
181 void CCoeEnvExtra::RemoveObserver(RArray<TAny*>& aArrayOfObservers, const TAny* aObserver) |
180 { |
182 { |
181 __ASSERT_ALWAYS(aObserver!=NULL, Panic(ECoePanicIllegalNullParameter4)); |
183 __ASSERT_ALWAYS(aObserver!=NULL, Panic(ECoePanicIllegalNullParameter4)); |