Evnt_multi behaviour

Evnt_multi behaviour

Post by Jeroen Fokk » Wed, 17 Mar 1993 01:04:35



While using the evnt_multi call, I encountered
a weird behaviuor of the mouse. I wonder if
this is a known bug (I'm using TOS 1.0), or
that I am missing some thing. (I hope for
the latter...)

Here is what happens:
Using evnt_multi, in a loop I sollicit for keyboard-input
and mouse-clicks:

     while(1)
     {
         evnt_multi( MU_KEYBD | MU_BUTTON , ....  );
         process_input;
     }

This works fine for a while, but when the mouse is moved
to the menu-bar (that is still enabled when this code
is executed), afterwards mouse-clicks are not detected
anymore. The same thing happens when the mouse is moved
to the 400th line of the display.

I considered that maybe I should call

    menu_bar( menu, 0 )

first. This helps a little, in that mere moving the
mouse to the menu-line is harmless now. Clicking on the
menu-line however is as fatal as it was before: instead of
reporting a mousclick for this click, all future mouseclicks
are ignored.

The keyboard-events are still being reported. If, in the
process_input part of code, a form-alert is called, afterwards
everything is normal again.

What magical clean-up call is it, that re-enables the
mouseclicks? I am willing to call it before every evnt_multi,
if I must... desperate as I am...

But of course, if I am doing something fundamentally wrong,
I should like to know what that is, too. All help is welcome!

--

dept.of Computer Science, Utrecht University  |  tel.+31-30-534129
PObox 80089, 3508TB Utrecht, the Netherlands  |  fax.+31-30-513791

 
 
 

Evnt_multi behaviour

Post by Brian Gri » Wed, 17 Mar 1993 03:02:28



>     while(1)
>     {
>         evnt_multi( MU_KEYBD | MU_BUTTON , ....  );
>         process_input;
>     }

Make sure that you accept and process MU_MESAG events. I have had
problems in the past trying to ignore them.

If you are accepting and processing MU_MESAG events I probably can
not help.

Brian, WS1S (ST/TT User/Developer)
Bell Northern Research
Research Triangle Park, NC

 
 
 

Evnt_multi behaviour

Post by Michael Hohmu » Wed, 17 Mar 1993 17:43:15



> Here is what happens:
> Using evnt_multi, in a loop I sollicit for keyboard-input
> and mouse-clicks:

>      while(1)
>      {
>          evnt_multi( MU_KEYBD | MU_BUTTON , ....  );
>          process_input;
>      }

> This works fine for a while, but when the mouse is moved
> to the menu-bar (that is still enabled when this code
> is executed), afterwards mouse-clicks are not detected
> anymore. The same thing happens when the mouse is moved
> to the 400th line of the display.

If you touch the menu bar, does the menu drop down?

If not, you've probably set the wind_update(BEG_UPDATE) semaphore.  If you
do this, the screen manager blocks when trying to paint the menu, which
sometimes results in locking the mouse.

Hope that helps..
Michael
--

 
 
 

Evnt_multi behaviour

Post by Chris Ri » Fri, 19 Mar 1993 19:09:32





>> Here is what happens:
>> Using evnt_multi, in a loop I sollicit for keyboard-input
>> and mouse-clicks:

>>      while(1)
>>      {
>>          evnt_multi( MU_KEYBD | MU_BUTTON , ....  );
>>          process_input;
>>      }

>> This works fine for a while, but when the mouse is moved
>> to the menu-bar (that is still enabled when this code
>> is executed), afterwards mouse-clicks are not detected
>> anymore. The same thing happens when the mouse is moved
>> to the 400th line of the display.

>If you touch the menu bar, does the menu drop down?

>If not, you've probably set the wind_update(BEG_UPDATE) semaphore.  If you
>do this, the screen manager blocks when trying to paint the menu, which
>sometimes results in locking the mouse.

Also, try doing wind_update(BEG_MCTRL) which stops the AES (or the
screen manager), watching for mouse clicks - so you lose the menus
whilst this is on. Remember to do wind_update(END_MTRL) after!

-- Chris Ridd -- /g=Chris/s=Ridd/o=nhs imc/ou1=cosit/p=nhs imc/a=attmail/c=gb

"'It's going to look pretty good, then, isn't it,' said War testily, 'the One
Horseman and Three Pedestrians of the Apocralypse.'" - Sourcery

 
 
 

1. evnt_multi() mouse button event behavior?

This keeps getting in my way, and I keep working around it.  When exactly
does a properly set-up evnt_multi() get mouse button events?  The latest
situation is that I'm waiting for (among other things) single button clicks
over the part of the screen my application owns.  When I open the control
panel over my window, I can move the color selector buttons around to my
heart's content without getting spurious messages.  But when I try to drag
the control panel window around on the screen, I get a mouse button event
exactly as the mouse pointer leaves the original outline of the c.p.w.
This doesn't match the documentation (as I read it).  So what's really
happening here?  Is it TOS version dependent?  And to what extent does
someone care to explain the rest of the REAL behavior of this type of event?
                                      Steve J.

2. Something2Swap just launched

3. AES evnt_multi with MiNT: Busy

4. Epson 3000 sharing

5. Fighting evnt_multi()

6. WTB: SAS folders

7. evnt_multi

8. PocketPC simple HTML editor?

9. Mouse Buttons: how do you receive both using evnt_multi() ??

10. evnt_multi, uh oh...

11. Double click & evnt_multi

12. AES evnt_multi with MiNT: Busy waiting?

13. detecting double clicks with evnt_multi().. HOW?!