Re: Chicken or Egg?

From: Charles Melice <mail_at_forthcad.com>
Date: Wed, 28 Jun 2000 15:22:16 +0200

Bob,

I don't know the real name of SFMESSAGES.

> And this leads me to my next question... Those WM_CREATE and other
> constants in the switch structures are values that can not be computed
> at run time right? That is to say, those values that are tested in the
> switch have to be put in the structure at compile time, it looks like.
> So, just what is the best way to reserve a message number for use in my
> apps without any danger of conflict. I thought maybe that the Windows
> RegisterWindowMessage function would offer hope, but the message number
> is captured at run time, and so it can't go into the switch, which is
> created at load time. Uh, does this make any sense? The question is, how
> can I really be sure I am using a unique message number if I make one up
> within the range of values above WM_USER?

Nice trap.

Try (not checked) to replace the 'sfdefault' part in the original SFMESSAGES
switch header:

    0 VALUE WM_MYREGMSG \ resolved at run-time

    : MyDefault ( msg -- )
        DUP WM_MYREGMSG <> IF
            [ ' SFMESSAGES >BODY CELL+ @ ]
            LITERAL EXECUTE EXIT
        THEN
        DROP ...in your WM_MYREGMSG msg... ;

    ' MyDefault ' SFMESSAGES >BODY CELL+ !

>
> Aside: I've been pleased with how easy Windows programming is, but also
> amazed at how similar to Amiga 'Intuition' programming it is, even down
> to the names of functions and stuff. Anybody else notice this?
>
> Bob

I don't know the Amiga.

Regards,
Charles

> *****************************************************
> **** Bob Dickow (dickow_at_uidaho.edu) ******
> *** Hampton School of Music, Univ of Idaho *
> ** USDA Zone 5 *********************************
>
>
> _______________________________________________
> Sftalk mailing list Sftalk_at_forth.com
> Visit Sftalk on the web at http://www.forthinc.com/mailman/listinfo/sftalk
>
Received on Wed Jun 28 2000 - 06:26:22 PDT


Subscribe to our e-mail list service. It's free for all SwiftForth and SwiftX users!

This archive was generated 06-Feb-2012. Archive updated nightly.