From 91e38a73cd93af894ecaf44476ae8e6313670cb5 Mon Sep 17 00:00:00 2001 From: patacongo Date: Tue, 15 May 2012 16:40:43 +0000 Subject: NxWidgets: New pre-release event. Action now raised on pre-release. NxWM: Use action event to process icon touches; Fix initialization of image highlighted state. git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4740 42af7a65-404d-4744-a932-0658087f49c3 --- NxWidgets/libnxwidgets/include/cbutton.hxx | 11 ++++++++++- NxWidgets/libnxwidgets/include/cbuttonarray.hxx | 11 ++++++++++- NxWidgets/libnxwidgets/include/cimage.hxx | 15 ++++++++++++--- NxWidgets/libnxwidgets/include/cnxwidget.hxx | 17 ++++++++++++++--- NxWidgets/libnxwidgets/include/crlepalettebitmap.hxx | 2 +- NxWidgets/libnxwidgets/include/cwidgeteventhandler.hxx | 2 +- 6 files changed, 48 insertions(+), 10 deletions(-) (limited to 'NxWidgets/libnxwidgets/include') diff --git a/NxWidgets/libnxwidgets/include/cbutton.hxx b/NxWidgets/libnxwidgets/include/cbutton.hxx index 4af39f0ef..45481387f 100644 --- a/NxWidgets/libnxwidgets/include/cbutton.hxx +++ b/NxWidgets/libnxwidgets/include/cbutton.hxx @@ -179,7 +179,16 @@ namespace NXWidgets virtual void onClick(nxgl_coord_t x, nxgl_coord_t y); /** - * Raises an action event and redraws the button. + * Raises an action. + * + * @param x The x coordinate of the mouse. + * @param y The y coordinate of the mouse. + */ + + virtual void onPreRelease(nxgl_coord_t x, nxgl_coord_t y); + + /** + * Redraws the button. * * @param x The x coordinate of the mouse. * @param y The y coordinate of the mouse. diff --git a/NxWidgets/libnxwidgets/include/cbuttonarray.hxx b/NxWidgets/libnxwidgets/include/cbuttonarray.hxx index 487a6cb9f..435fa1080 100644 --- a/NxWidgets/libnxwidgets/include/cbuttonarray.hxx +++ b/NxWidgets/libnxwidgets/include/cbuttonarray.hxx @@ -133,7 +133,16 @@ namespace NXWidgets virtual void onClick(nxgl_coord_t x, nxgl_coord_t y); /** - * Raises an action event and redraws the button. + * Raises an action. + * + * @param x The x coordinate of the mouse. + * @param y The y coordinate of the mouse. + */ + + virtual void onPreRelease(nxgl_coord_t x, nxgl_coord_t y); + + /** + * Redraws the button. * * @param x The x coordinate of the mouse. * @param y The y coordinate of the mouse. diff --git a/NxWidgets/libnxwidgets/include/cimage.hxx b/NxWidgets/libnxwidgets/include/cimage.hxx index 0b7be14f2..0fe275624 100644 --- a/NxWidgets/libnxwidgets/include/cimage.hxx +++ b/NxWidgets/libnxwidgets/include/cimage.hxx @@ -143,16 +143,25 @@ namespace NXWidgets virtual void onClick(nxgl_coord_t x, nxgl_coord_t y); /** - * Raises an action event and redraws the button. + * Raises an action. * * @param x The x coordinate of the mouse. * @param y The y coordinate of the mouse. */ - virtual void onRelease(nxgl_coord_t x, nxgl_coord_t y); + virtual void onPreRelease(nxgl_coord_t x, nxgl_coord_t y); /** - * Redraws the button. + * Redraws the image. + * + * @param x The x coordinate of the mouse. + * @param y The y coordinate of the mouse. + */ + + virtual void onRelease(nxgl_coord_t x, nxgl_coord_t y); + + /** + * Redraws the image. * * @param x The x coordinate of the mouse. * @param y The y coordinate of the mouse. diff --git a/NxWidgets/libnxwidgets/include/cnxwidget.hxx b/NxWidgets/libnxwidgets/include/cnxwidget.hxx index 38a66d155..2ca055c1c 100644 --- a/NxWidgets/libnxwidgets/include/cnxwidget.hxx +++ b/NxWidgets/libnxwidgets/include/cnxwidget.hxx @@ -296,9 +296,20 @@ namespace NXWidgets virtual inline void onDoubleClick(nxgl_coord_t x, nxgl_coord_t y) { } /** - * Called when the widget is released. Override this when - * creating new widgets if the widget should exhibit additional - * behaviour when it is released. + * Called just before the widget is released; the widget will be in the + * clicked stated. Override this when creating new widgets if the + * widget should exhibit additional behaviour when it is released. + * + * @param x The x coordinate of the mouse when released. + * @param y The y coordinate of the mouse when released. + */ + + virtual inline void onPreRelease(nxgl_coord_t x, nxgl_coord_t y) { } + + /** + * Called just after the widget is released; the widget will be in the + * released stated. Override this when creating new widgets if the + * widget should exhibit additional behaviour when it is released. * * @param x The x coordinate of the mouse when released. * @param y The y coordinate of the mouse when released. diff --git a/NxWidgets/libnxwidgets/include/crlepalettebitmap.hxx b/NxWidgets/libnxwidgets/include/crlepalettebitmap.hxx index 451b472f4..dd869c476 100644 --- a/NxWidgets/libnxwidgets/include/crlepalettebitmap.hxx +++ b/NxWidgets/libnxwidgets/include/crlepalettebitmap.hxx @@ -40,7 +40,7 @@ /**************************************************************************** * Included Files ****************************************************************************/ - + #include #include diff --git a/NxWidgets/libnxwidgets/include/cwidgeteventhandler.hxx b/NxWidgets/libnxwidgets/include/cwidgeteventhandler.hxx index d176d8822..8883fa12d 100644 --- a/NxWidgets/libnxwidgets/include/cwidgeteventhandler.hxx +++ b/NxWidgets/libnxwidgets/include/cwidgeteventhandler.hxx @@ -270,7 +270,7 @@ namespace NXWidgets virtual void handleDoubleClickEvent(const CWidgetEventArgs &e) { } /** - * Handle a widget action event. + * Handle a widget action event. For CImage, this is a mouse button pre-release event. * * @param e The event data. */ -- cgit v1.2.3