nanogui: PeekMessage and other questions
Subject:
PeekMessage and other questions
From:
Julian Smart ####@####.####
Date:
25 May 2001 14:22:34 -0000
Message-Id: <4.2.0.58.20010525144758.01d03db0@pop>
Hi,
I'm looking at the MicroWindows APIs and have one general and two specific
questions/comments.
1. Is the Nano-X API in some sense the preferred API, since more people on
this list seem to be using that than the WIN32 one? Plus of course the
multiple-app benefit of Nano-X. I wonder, is there functionality that
Nano-X is capable of, and which the WIN32 API will never be able to do?
2. I take it that menu/menubar functionality in the WIN32 API must be
provided by the application since this part of the API seems to be missing
in MicroWindows.
3. PeekMessage appears to do the wrong thing, because if the message queue
is empty, it'll still call MwSelect and (as I understand) wait for input.
This means that a message loop that makes use of PeekMessage won't work. I
think the fix is quite simple, e.g. copy PeekMessage to a function called
PeekMessageHelper with an extra bool argument returnIfEmptyQueue, which can
be called by PeekMessage with returnIfEmptyQueue = TRUE and by GetMessage
with returnIfEmptyQueue = FALSE. If returnIfEmptyQueue is TRUE and the
queue is empty, PeekMessageHelper returns before MwSelect is called (it has
to avoid the MwSelect in chkPaintMsg too). If that makes sense!
Julian
--
Red Hat UK Ltd, Unit 200 Rustat House, 62 Clifton Road, Cambridge, UK. CB1
7EG Tel: +44 (1223) 271063