diff options
Diffstat (limited to 'nuttx/graphics/nxmu/nxfe.h')
-rw-r--r-- | nuttx/graphics/nxmu/nxfe.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/nuttx/graphics/nxmu/nxfe.h b/nuttx/graphics/nxmu/nxfe.h index 2b87b2a40..a70e635f5 100644 --- a/nuttx/graphics/nxmu/nxfe.h +++ b/nuttx/graphics/nxmu/nxfe.h @@ -146,6 +146,7 @@ enum nxmsg_e NX_CLIMSG_NEWPOSITION, /* New window size/position */ NX_CLIMSG_MOUSEIN, /* New mouse positional data available for window */ NX_CLIMSG_KBDIN, /* New keypad input available for window */ + NX_CLIMSG_BLOCKED, /* The window is blocked */ /* Client-to-Server Messages **********************************************/ @@ -153,6 +154,7 @@ enum nxmsg_e NX_SVRMSG_DISCONNECT, /* Tear down connection with terminating client */ NX_SVRMSG_OPENWINDOW, /* Create a new window */ NX_SVRMSG_CLOSEWINDOW, /* Close an existing window */ + NX_SVRMSG_BLOCKED, /* The window is blocked */ NX_SVRMSG_REQUESTBKGD, /* Open the background window */ NX_SVRMSG_RELEASEBKGD, /* Release the background window */ NX_SVRMSG_SETPOSITION, /* Window position has changed */ @@ -248,6 +250,16 @@ struct nxclimsg_kbdin_s }; #endif +/* This messsage confirms that that all queued window messages have been + * flushed and that the all further window messages are blocked. + */ + +struct nxclimsg_blocked_s +{ + uint32_t msgid; /* NX_CLIMSG_BLOCKED */ + FAR struct nxbe_window_s *wnd; /* The window that is blocked */ +}; + /* Client-to-Server Message Structures **************************************/ /* The generic message structure. All server messages begin with this form. Also @@ -277,6 +289,18 @@ struct nxsvrmsg_closewindow_s FAR struct nxbe_window_s *wnd; /* The window to be closed */ }; +/* This messsage is just a marker that is queued and forwarded by the server + * (NX_CLIMSG_BLOCKED). Messages to the window were blocked just after this + * message was sent. Receipt of this message indicates both that the window + * blocked and that there are no further queued messages for the window. + */ + +struct nxsvrmsg_blocked_s +{ + uint32_t msgid; /* NX_SVRMSG_BLOCKED */ + FAR struct nxbe_window_s *wnd; /* The window that is blocked */ +}; + /* This message requests the server to create a new window */ struct nxsvrmsg_requestbkgd_s |