PreFilterMessage

0
0

Hi guys.  Our WinForms app has a strange feature and I’m curious if there’s any way to implement it with WiseJ…

For dialogs, instead of opening a modal Form, it displays a Panel with the dialog text and buttons and uses PreFilterMessage in the top-level form to catch mouse clicks and ignore them unless they occurred inside of the dialog Panel.

It sounds odd, but it makes sense in the context of our app.

As far as I know, WiseJ doesn’t support the IMessageFilter interface.  So, aside from adding click handlers to every single control in the app and code to ignore the click if the dialog Panel is shown, is there a way to implement this behavior with WiseJ?

  • You must to post comments
0
0

Hi David,

Thinking about this, the IEventFilter interface does replace the IMessageFilter but… Since Wisej has the client (browser) and the server totally decoupled , unlike a WinForms desktop, filtering the client events will only affect the server and will do nothing to the client.  To emulate the modal state on the client you need to “mask” everything below the z-index of the modal panel. Wisej/qooxdoo have a block feature that works on any widget but it’s not directly exposed to Wisej.Web.Control since we use it for modal dialogs and messageboxes.

I’ll try to send you an example of a “modal panel”.

Best,

Luca

  • You must to post comments
0
0
Wisej support the message filtering feature trough the IEventFilter interface.
Application.AddEventFilter.
All events for any component coming from the client go through that filter.
HTH
Best,
Luca
  • You must to post comments
Showing 2 results
Your Answer

Please first to submit.