A custom contral generally overrides the CCoeControl::Draw() method to implement its own drawing stuff. However, when stepping into the code with the debugger, the result of each command is not displayed immediatly on screen because of the cache mechanism implemented by the window server.
Happily enough, you can get rid of this behaviour, and have each drawing function being rendered immediatly on screen. Add the following code in your AppUi::ConstructL():
#ifdef _DEBUG
iEikonEnv->WsSession().SetAutoFlush(ETrue);
#endif
This force each Graphic Context draw commands to
show up immediately, rather than
when the window server client buffer is next flushed.
This means you can step through the draw code and
see the effect each line is having. However, you
must ensure this line does not make it into released
software as it has efficiency implications.
Note that you can also achieve this by using the ctrl-alt-shift F hotkey in the emulator.
For other available hotkeys, check http://www3.symbian.com/faq.nsf/0/0D849BDCF87A3B8F80256A570051B96E?OpenDocument
Cool!! I was fustrated because of this
Thanks Ashfaq Ghori