I don't know if it's related, but I saw something similar when using a
custom alert on OS < 3.5. Here are the comments from my code:
//On OS'es prior to 3.5, the alert's event handler erroneously handles the
update event intended for the form.
//Fix by adding an update event for the form in this case.
if (OS < 3.5)
{
FrmUpdateForm(FrmGetFormId(FrmGetFirstForm()), frmRedrawUpdateCode);
}
Hope that helps.
Martin Saxon wrote:
> No answers, but I have a similar problem with an app that has a main form
> that uses the whole of the screen (so the graffiti area and status bar are
> normally hidden). If I show a dialog that needs the graffiti area and I
> subsequently dismiss it, the bit of the main form under the status bar is
> not redrawn.
>
> Tedious.
>
> Martin.
> -----------------
> Logan Shaw wrote:
>> Hi everyone.
>>
>> I've got a funny problem on the T5. When I get a frmUpdateEvent,
>> I do a FrmDrawForm() and then a bunch of custom drawing on top of
>> the form. It seems like for whatever reason, when I do the custom
>> drawing, the clipping rectangle that the system has set is way off,
>> and some of my stuff doesn't get redrawn when it should. (If I
>> override the clipping rectangle and then draw, it looks fine.)
>>
>> For example, let's say I am sitting in my app and a system dialog
>> (such as a datebook reminder) pops up. The dialog is 160x160
>> standard pixels, but when I dismiss it, only about half the exposed
>> stuff in my form gets redrawn. That is, the top 80x160 of the
>> screen *is* redrawn, but the 80x160 below that isn't. And of course
>> the bottom third of the screen wasn't ever obscured, so it's fine.
>> So I end up with a giant white band in the middle the screen!
>>
>> Anyone seen anything like this? My frmUpdateEvent handler doesn't
>> do anything really weird -- just looks like this:
>>
>> case frmUpdateEvent:
>> FrmDrawForm (_formptr);
>> Draw ();
>>
>> handled = true;
>>
>> break;
>>
>> The Draw() function is what draws all the custom stuff on top of
>> the system form.
>>
>> As far as I know, this only happens on the T5 (and its simulator),
>> and not on any other devices. The size of the portion of the screen
>> that's not redrawn seems to be random. Sometimes it's apparently
>> exactly 80x160, and sometimes it's only what looks like about 60x160.
>> A similar problem happens if I push the button that changes from
>> landscape to portrait orientation, but in that case the problem
>> only occurs if have the graffiti area expanded so that my form
>> is 160x160 in size. (This makes sense because I never have the
>> refresh problem when the form size is changed, and obviously
>> going from tall to wide requires changing the form size.)
>>
>> - Logan
--
For information on using the Palm Developer Forums, or to unsubscribe, please
see http://www.palmos.com/dev/support/forums/