diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-05-19 01:01:00 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-05-19 01:01:00 +0000 |
commit | a591b9ca86b86684f2804cedf5d0c17a3614e913 (patch) | |
tree | b60235b0a038088298aa0f5497411fcb453c424d /NxWidgets/nxwm/include | |
parent | 6cf694d2da5a661373a58c70e3d8e07cc8223eed (diff) | |
download | px4-nuttx-a591b9ca86b86684f2804cedf5d0c17a3614e913.tar.gz px4-nuttx-a591b9ca86b86684f2804cedf5d0c17a3614e913.tar.bz2 px4-nuttx-a591b9ca86b86684f2804cedf5d0c17a3614e913.zip |
NxWM: Add a missing part of the message blocking logic
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4748 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'NxWidgets/nxwm/include')
-rw-r--r-- | NxWidgets/nxwm/include/capplicationwindow.hxx | 4 | ||||
-rw-r--r-- | NxWidgets/nxwm/include/cfullscreenwindow.hxx | 4 | ||||
-rw-r--r-- | NxWidgets/nxwm/include/cwindowmessenger.hxx | 18 | ||||
-rw-r--r-- | NxWidgets/nxwm/include/iapplication.hxx | 8 | ||||
-rw-r--r-- | NxWidgets/nxwm/include/iapplicationwindow.hxx | 12 |
5 files changed, 31 insertions, 15 deletions
diff --git a/NxWidgets/nxwm/include/capplicationwindow.hxx b/NxWidgets/nxwm/include/capplicationwindow.hxx index 686150d14..46e4e90d2 100644 --- a/NxWidgets/nxwm/include/capplicationwindow.hxx +++ b/NxWidgets/nxwm/include/capplicationwindow.hxx @@ -162,9 +162,11 @@ namespace NxWM /** * Block further activity on this window in preparation for window * shutdown. + * + * @param app. The application to be blocked */ - void block(void); + void block(IApplication *app); /** * Set the window label diff --git a/NxWidgets/nxwm/include/cfullscreenwindow.hxx b/NxWidgets/nxwm/include/cfullscreenwindow.hxx index 1bab37543..70da9fee5 100644 --- a/NxWidgets/nxwm/include/cfullscreenwindow.hxx +++ b/NxWidgets/nxwm/include/cfullscreenwindow.hxx @@ -126,9 +126,11 @@ namespace NxWM /** * Block further activity on this window in preparation for window * shutdown. + * + * @param app. The application to be blocked */ - void block(void); + void block(IApplication *app); /** * Set the window label diff --git a/NxWidgets/nxwm/include/cwindowmessenger.hxx b/NxWidgets/nxwm/include/cwindowmessenger.hxx index 645e750cb..0aa8961bb 100644 --- a/NxWidgets/nxwm/include/cwindowmessenger.hxx +++ b/NxWidgets/nxwm/include/cwindowmessenger.hxx @@ -98,6 +98,14 @@ namespace NxWM void handleKeyboardEvent(void); #endif + /** + * Handle a NX window blocked event + * + * @param arg - User provided argument (see nx_block or nxtk_block) + */ + + void handleBlockedEvent(FAR void *arg); + public: /** @@ -111,16 +119,6 @@ namespace NxWM */ ~CWindowMessenger(void); - - /** - * Destroy the application window and everything in it. This is - * handled by CWindowMessenger (vs just calling the destructors) because - * in the case where an application destroys itself (because of pressing - * the stop button), then we need to unwind and get out of the application - * logic before destroying all of its objects. - */ - - void destroy(IApplication *app); }; } #endif // __cplusplus diff --git a/NxWidgets/nxwm/include/iapplication.hxx b/NxWidgets/nxwm/include/iapplication.hxx index 28e50e013..456202c6d 100644 --- a/NxWidgets/nxwm/include/iapplication.hxx +++ b/NxWidgets/nxwm/include/iapplication.hxx @@ -45,8 +45,6 @@ #include "cnxstring.hxx" #include "ibitmap.hxx" -#include "iapplicationwindow.hxx" - /**************************************************************************** * Pre-Processor Definitions ****************************************************************************/ @@ -60,6 +58,12 @@ namespace NxWM { /** + * Foward references + */ + + class IApplicationWindow; + + /** * IApplication provides the abstract base class for each NxWM application. */ diff --git a/NxWidgets/nxwm/include/iapplicationwindow.hxx b/NxWidgets/nxwm/include/iapplicationwindow.hxx index ed221797d..60f1b332c 100644 --- a/NxWidgets/nxwm/include/iapplicationwindow.hxx +++ b/NxWidgets/nxwm/include/iapplicationwindow.hxx @@ -46,6 +46,8 @@ #include "cnxstring.hxx" #include "cwidgetcontrol.hxx" +#include "iapplication.hxx" + /**************************************************************************** * Pre-Processor Definitions ****************************************************************************/ @@ -59,6 +61,12 @@ namespace NxWM { /** + * Foward references + */ + + class IApplication; + + /** * This callback class is used by the application to get notification of toolbar * related events. */ @@ -137,9 +145,11 @@ namespace NxWM /** * Block further activity on this window in preparation for window * shutdown. + * + * @param app. The application to be blocked */ - virtual void block(void) = 0; + virtual void block(IApplication *app) = 0; /** * Set the window label |