diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-05-18 23:08:34 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-05-18 23:08:34 +0000 |
commit | 6cf694d2da5a661373a58c70e3d8e07cc8223eed (patch) | |
tree | 8c305f903a5334c3b7b2a48830c6f63199dedfda /NxWidgets/nxwm/include/iapplication.hxx | |
parent | f2307dd23f254c58cbc85bcf553ec583509a7082 (diff) | |
download | nuttx-6cf694d2da5a661373a58c70e3d8e07cc8223eed.tar.gz nuttx-6cf694d2da5a661373a58c70e3d8e07cc8223eed.tar.bz2 nuttx-6cf694d2da5a661373a58c70e3d8e07cc8223eed.zip |
Final refactoring and implementation of delayed window deletion logic. Works worse now, but the changes are important and need to be checked in now
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4747 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'NxWidgets/nxwm/include/iapplication.hxx')
-rw-r--r-- | NxWidgets/nxwm/include/iapplication.hxx | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/NxWidgets/nxwm/include/iapplication.hxx b/NxWidgets/nxwm/include/iapplication.hxx index 45067d900..28e50e013 100644 --- a/NxWidgets/nxwm/include/iapplication.hxx +++ b/NxWidgets/nxwm/include/iapplication.hxx @@ -45,8 +45,7 @@ #include "cnxstring.hxx" #include "ibitmap.hxx" -#include "cwindowcontrol.hxx" -#include "capplicationwindow.hxx" +#include "iapplicationwindow.hxx" /**************************************************************************** * Pre-Processor Definitions @@ -94,18 +93,6 @@ namespace NxWM virtual IApplicationWindow *getWindow(void) const = 0; /** - * Get the window widget control. - * - * @return The widget control of the underlying window instance. - */ - - virtual inline CWindowControl *getWindowControl(void) const - { - IApplicationWindow *window = getWindow(); - return window->getWindowControl(); - } - - /** * Get the icon associated with the application * * @return An instance if IBitmap that may be used to rend the @@ -132,12 +119,24 @@ namespace NxWM virtual bool run(void) = 0; /** - * Stop the application. + * Stop the application, put all widgets in a deactivated/disabled state + * and wait to see what happens next. */ virtual void stop(void) = 0; /** + * Destroy the application and free all of its resources. This method + * will initiate blocking of messages from the NX server. The server + * will flush the window message queue and reply with the blocked + * message. When the block message is received by CWindowMessenger, + * it will send the destroy message to the start window task which + * will, finally, safely delete the application. + */ + + virtual void destroy(void) = 0; + + /** * The application window is hidden (either it is minimized or it is * maximized, but not at the top of the hierarchy */ |