Move graphics/nxtk to libnx/nxtk

This commit is contained in:
Gregory Nutt
2013-12-28 11:33:21 -06:00
parent e88922bce1
commit af40e36466
55 changed files with 531 additions and 326 deletions
+1
View File
@@ -6329,4 +6329,5 @@
* Move libc/nx, nxmu, and nxglib to a new library, libnx. The NX * Move libc/nx, nxmu, and nxglib to a new library, libnx. The NX
graphics is not properly a part of libc (2013-12-28). graphics is not properly a part of libc (2013-12-28).
* Move graphics/nxfonts to libnx/nxfonts (2013-12-28). * Move graphics/nxfonts to libnx/nxfonts (2013-12-28).
* Move graphics/nxtk to libnx/nxtk (2013-12-28).
+3 -4
View File
@@ -3196,19 +3196,18 @@ int nxf_convert_32bpp(FAR uint32_t *dest, uint16_t height,
The multi-user front-end is selected when <code>CONFIG_NX_MULTIUSER</code> is defined The multi-user front-end is selected when <code>CONFIG_NX_MULTIUSER</code> is defined
in the NuttX configuration file. in the NuttX configuration file.
<dt><code>graphics/nxfonts</code> <dt><code>libnx/nxfonts</code>
<dd>This is where the NXFONTS implementation resides. <dd>This is where the NXFONTS implementation resides.
This is a relatively low-level set of charset set/glyph management APIs. This is a relatively low-level set of charset set/glyph management APIs.
See <code>include/nuttx/nx/nxfonts.h</code>. See <code>include/nuttx/nx/nxfonts.h</code>.
<dt><code>graphics/nxtk</code> <dt><code>libnx/nxtk</code>
<dd>This is where the NXTOOLKIT implementation resides. <dd>This is where the NXTOOLKIT implementation resides.
This toolkit is built on top of NX and works with either the single-user or multi-user NX version. This toolkit is built on top of NX and works with either the single-user or multi-user NX version.
See <code>include/nuttx/nx/nxtk.h</code>. See <code>include/nuttx/nx/nxtk.h</code>.
<dt><code>nuttx/../nxwidgets</code> <dt><code>nuttx/../nxwidgets</code>
<dd>The <a href="NxWidgets.html">NxWidgets</a> code is provided as a separate package located outside of the <dd>The <a href="NxWidgets.html">NxWidgets</a> code is provided as a separate package located outside of the NuttX source tree (probably at this location).
NuttX source tree (probably at this location).
<dt><code>graphics/nxconsole</code> <dt><code>graphics/nxconsole</code>
<dd>The NxConsole driver is built on top of NX and works with either the single-user or multi-user NX version. <dd>The NxConsole driver is built on top of NX and works with either the single-user or multi-user NX version.
+2 -6
View File
@@ -59,10 +59,6 @@ DEPPATH += --dep-path nxsu
CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxsu} CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxsu}
endif endif
include nxtk/Make.defs
DEPPATH += --dep-path nxtk
CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxtk}
ifeq ($(CONFIG_NXCONSOLE),y) ifeq ($(CONFIG_NXCONSOLE),y)
include nxconsole/Make.defs include nxconsole/Make.defs
DEPPATH += --dep-path nxconsole DEPPATH += --dep-path nxconsole
@@ -81,9 +77,9 @@ OBJS = $(AOBJS) $(COBJS)
BIN = libgraphics$(LIBEXT) BIN = libgraphics$(LIBEXT)
ifeq ($(CONFIG_NX_MULTIUSER),y) ifeq ($(CONFIG_NX_MULTIUSER),y)
VPATH = nxglib:nxbe:nxmu:nxtk:nxconsole VPATH = nxglib:nxbe:nxmu:nxconsole
else else
VPATH = nxglib:nxbe:nxsu:nxtk:nxconsole VPATH = nxglib:nxbe:nxsu:nxconsole
endif endif
all: mklibgraphics all: mklibgraphics
+2 -2
View File
@@ -99,11 +99,11 @@ libnx/nxmu
queue to serialize window operations from many threads. The multi-user front-end queue to serialize window operations from many threads. The multi-user front-end
is selected when CONFIG_NX_MULTIUSER is defined in the NuttX configuration file. is selected when CONFIG_NX_MULTIUSER is defined in the NuttX configuration file.
graphics/nxfonts libnx/nxfonts
This is where the NXFONTS implementation resides. This is a relatively low- This is where the NXFONTS implementation resides. This is a relatively low-
level set of charset set/glyph management APIs. See include/nuttx/nx/nxfonts.h level set of charset set/glyph management APIs. See include/nuttx/nx/nxfonts.h
graphics/nxtk libnx/nxtk
This is where the NXTOOLKIT implementation resides. This toolkit is built on This is where the NXTOOLKIT implementation resides. This toolkit is built on
top of NX and works with either the single-user or multi-user NX version. See top of NX and works with either the single-user or multi-user NX version. See
include/nuttx/nx/nxtk.h include/nuttx/nx/nxtk.h
-33
View File
@@ -95,39 +95,6 @@ extern "C"
* Public Functions * Public Functions
****************************************************************************/ ****************************************************************************/
/****************************************************************************
* Name: nxfe_constructwindow
*
* Description:
* This function is the same a nx_openwindow EXCEPT that the client provides
* the window structure instance. nx_constructwindow will initialize the
* the pre-allocated window structure for use by NX. This function is
* provided in addition to nx_open window in order to support a kind of
* inheritance: The caller's window structure may include extensions that
* are not visible to NX.
*
* NOTE: wnd must have been allocated using kmalloc() (or related allocators)
* Once provided to nxfe_constructwindow() that memory is owned and managed
* by NX. On certain error conditions or when the window is closed, NX will
* free the window.
*
* Input Parameters:
* handle - The handle returned by nx_connect
* wnd - The pre-allocated window structure.
* cb - Callbacks used to process window events
* arg - User provided value that will be returned with NX callbacks.
*
* Return:
* OK on success; ERROR on failure with errno set appropriately. In the
* case of ERROR, NX will have deallocated the pre-allocated window.
*
****************************************************************************/
int nxfe_constructwindow(NXHANDLE handle,
FAR struct nxbe_window_s *wnd,
FAR const struct nx_callback_s *cb,
FAR void *arg);
/**************************************************************************** /****************************************************************************
* Name: nxmu_sendclient * Name: nxmu_sendclient
* *
-1
View File
@@ -90,4 +90,3 @@ void nxfe_redrawreq(FAR struct nxbe_window_s *wnd, FAR const struct nxgl_rect_s
(void)nxmu_sendclientwindow(wnd, &outmsg, sizeof(struct nxclimsg_redraw_s)); (void)nxmu_sendclientwindow(wnd, &outmsg, sizeof(struct nxclimsg_redraw_s));
} }
+8 -1
View File
@@ -509,7 +509,14 @@ int nx_runinstance(FAR const char *mqname, FAR NX_DRIVERTYPE *dev)
break; break;
#endif #endif
/* Messages sent to the backgound window ***************************/ case NX_SVRMSG_REDRAWREQ: /* Request re-drawing of rectangular region */
{
FAR struct nxsvrmsg_redrawreq_s *redrawmsg = (FAR struct nxsvrmsg_redrawreq_s *)buffer;
nxfe_redrawreq(redrawmsg->wnd, &redrawmsg->rect);
}
break;
/* Messages sent to the background window **************************/
case NX_CLIMSG_REDRAW: /* Re-draw the background window */ case NX_CLIMSG_REDRAW: /* Re-draw the background window */
{ {
+4 -3
View File
@@ -38,6 +38,7 @@ NX_ASRCS =
NX_CSRCS = nx_bitmap.c nx_close.c nx_closewindow.c nx_fill.c NX_CSRCS = nx_bitmap.c nx_close.c nx_closewindow.c nx_fill.c
NX_CSRCS += nx_filltrapezoid.c nx_getposition.c nx_getrectangle.c nx_kbdchin.c NX_CSRCS += nx_filltrapezoid.c nx_getposition.c nx_getrectangle.c nx_kbdchin.c
NX_CSRCS += nx_kbdin.c nx_lower.c nx_mousein.c nx_move.c nx_open.c NX_CSRCS += nx_kbdin.c nx_lower.c nx_mousein.c nx_move.c nx_open.c
NX_CSRCS += nx_openwindow.c nx_raise.c nx_releasebkgd.c nx_requestbkgd.c NX_CSRCS += nx_openwindow.c nx_raise.c nx_redrawreq.c nx_releasebkgd.c
NX_CSRCS += nx_setpixel.c nx_setsize.c nx_setbgcolor.c nx_setposition.c NX_CSRCS += nx_requestbkgd.c nx_setpixel.c nx_setsize.c nx_setbgcolor.c
NX_CSRCS += nxsu_constructwindow.c nxsu_redrawreq.c nxsu_reportposition.c NX_CSRCS += nx_setposition.c nxsu_constructwindow.c nxsu_redrawreq.c
NX_CSRCS += nxsu_reportposition.c
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxsu/nx_openwindow.c * graphics/nxsu/nx_constructwindow.c
* *
* Copyright (C) 2008-2009, 2012-2013 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2012-2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -73,7 +73,7 @@
****************************************************************************/ ****************************************************************************/
/**************************************************************************** /****************************************************************************
* Name: nxfe_constructwindow * Name: nx_constructwindow
* *
* Description: * Description:
* This function is the same a nx_openwindow EXCEPT that the client provides * This function is the same a nx_openwindow EXCEPT that the client provides
@@ -84,7 +84,7 @@
* are not visible to NX. * are not visible to NX.
* *
* NOTE: wnd must have been allocated using kmalloc() (or related allocators) * NOTE: wnd must have been allocated using kmalloc() (or related allocators)
* Once provided to nxfe_constructwindow() that memory is owned and managed * Once provided to nx_constructwindow() that memory is owned and managed
* by NX. On certain error conditions or when the window is closed, NX will * by NX. On certain error conditions or when the window is closed, NX will
* free the window. * free the window.
* *
@@ -100,7 +100,7 @@
* *
****************************************************************************/ ****************************************************************************/
int nxfe_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd, int nx_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd,
FAR const struct nx_callback_s *cb, FAR void *arg) FAR const struct nx_callback_s *cb, FAR void *arg)
{ {
FAR struct nxfe_state_s *fe = (FAR struct nxfe_state_s *)handle; FAR struct nxfe_state_s *fe = (FAR struct nxfe_state_s *)handle;
+2 -2
View File
@@ -112,9 +112,9 @@ NXWINDOW nx_openwindow(NXHANDLE handle, FAR const struct nx_callback_s *cb,
return NULL; return NULL;
} }
/* Then let nxfe_constructwindow do the rest */ /* Then let nx_constructwindow do the rest */
ret = nxfe_constructwindow(handle, wnd, cb, arg); ret = nx_constructwindow(handle, wnd, cb, arg);
if (ret < 0) if (ret < 0)
{ {
/* An error occurred, the window has been freed */ /* An error occurred, the window has been freed */
+93
View File
@@ -0,0 +1,93 @@
/****************************************************************************
* graphics/nxsu/nx_redrawreq.c
*
* Copyright (C) 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
* 3. Neither the name NuttX nor the names of its contributors may be
* used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
****************************************************************************/
/****************************************************************************
* Included Files
****************************************************************************/
#include <nuttx/config.h>
#include <errno.h>
#include <debug.h>
#include <nuttx/nx/nx.h>
#include "nxfe.h"
/****************************************************************************
* Pre-Processor Definitions
****************************************************************************/
/****************************************************************************
* Private Types
****************************************************************************/
/****************************************************************************
* Private Data
****************************************************************************/
/****************************************************************************
* Public Data
****************************************************************************/
/****************************************************************************
* Private Functions
****************************************************************************/
/****************************************************************************
* Public Functions
****************************************************************************/
/****************************************************************************
* Name: nx_redrawreq
*
* Descripton:
* This will cause a NX re-draw callback to the client that owns the
* window. This is not normally called from user code, but may be
* used within middle-ware layers when redrawing is needed.
*
* Input Parameters:
* hwnd - Window handle
* rect - The rectangle that needs to be re-drawn (in window relative
* coordinates)
*
* Returned Value:
* None
*
****************************************************************************/
void nx_redrawreq(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect)
{
nxfe_redrawreq((FAR struct nxbe_window_s *)hwnd, rect);
}
-31
View File
@@ -93,37 +93,6 @@ EXTERN const struct nx_callback_s g_bkgdcb;
* Public Functions * Public Functions
****************************************************************************/ ****************************************************************************/
/****************************************************************************
* Name: nxfe_constructwindow
*
* Description:
* This function is the same a nx_openwindow EXCEPT that the client provides
* the window structure instance. nx_constructwindow will initialize the
* the pre-allocated window structure for use by NX. This function is
* provided in addition to nx_open window in order to support a kind of
* inheritance: The caller's window structure may include extensions that
* are not visible to NX.
*
* NOTE: wnd must have been allocated using kmalloc() (or related allocators)
* Once provided to nxfe_constructwindow() that memory is owned and managed
* by NX. On certain error conditions or when the window is closed, NX will
* free the window.
*
* Input Parameters:
* handle - The handle returned by nx_connect
* wnd - The pre-allocated window structure.
* cb - Callbacks used to process window events
* arg - User provided value that will be returned with NX callbacks.
*
* Return:
* OK on success; ERROR on failure with errno set appropriately. In the
* case of ERROR, NX will have deallocated the pre-allocated window.
*
****************************************************************************/
int nxfe_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd,
FAR const struct nx_callback_s *cb, FAR void *arg);
/**************************************************************************** /****************************************************************************
* Name: nxfe_redrawreq * Name: nxfe_redrawreq
* *
+2 -4
View File
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxsu/nxsu_redrawreq.c * graphics/nxsu/nxsu_redrawreq.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009,2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -73,7 +73,7 @@
/**************************************************************************** /****************************************************************************
* Name: nxfe_redrawreq * Name: nxfe_redrawreq
* *
* Descripton: * Description:
* Request the client that has this window to redraw the rectangular region. * Request the client that has this window to redraw the rectangular region.
* *
****************************************************************************/ ****************************************************************************/
@@ -100,5 +100,3 @@ void nxfe_redrawreq(FAR struct nxbe_window_s *wnd, FAR const struct nxgl_rect_s
wnd->cb->redraw((NXWINDOW)wnd, &relrect, false, wnd->arg); wnd->cb->redraw((NXWINDOW)wnd, &relrect, false, wnd->arg);
} }
} }
+92 -36
View File
@@ -230,7 +230,8 @@ struct nx_callback_s
#undef EXTERN #undef EXTERN
#if defined(__cplusplus) #if defined(__cplusplus)
#define EXTERN extern "C" #define EXTERN extern "C"
extern "C" { extern "C"
{
#else #else
#define EXTERN extern #define EXTERN extern
#endif #endif
@@ -264,7 +265,7 @@ extern "C" {
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_MULTIUSER #ifdef CONFIG_NX_MULTIUSER
EXTERN int nx_runinstance(FAR const char *mqname, FAR NX_DRIVERTYPE *dev); int nx_runinstance(FAR const char *mqname, FAR NX_DRIVERTYPE *dev);
# define nx_run(dev) nx_runinstance(NX_DEFAULT_SERVER_MQNAME, dev) # define nx_run(dev) nx_runinstance(NX_DEFAULT_SERVER_MQNAME, dev)
#endif #endif
@@ -298,7 +299,7 @@ EXTERN int nx_runinstance(FAR const char *mqname, FAR NX_DRIVERTYPE *dev);
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_MULTIUSER #ifdef CONFIG_NX_MULTIUSER
EXTERN NXHANDLE nx_connectinstance(FAR const char *svrmqname); NXHANDLE nx_connectinstance(FAR const char *svrmqname);
# define nx_connect(cb) nx_connectinstance(NX_DEFAULT_SERVER_MQNAME) # define nx_connect(cb) nx_connectinstance(NX_DEFAULT_SERVER_MQNAME)
#endif #endif
@@ -323,7 +324,7 @@ EXTERN NXHANDLE nx_connectinstance(FAR const char *svrmqname);
****************************************************************************/ ****************************************************************************/
#ifndef CONFIG_NX_MULTIUSER #ifndef CONFIG_NX_MULTIUSER
EXTERN NXHANDLE nx_open(FAR NX_DRIVERTYPE *dev); NXHANDLE nx_open(FAR NX_DRIVERTYPE *dev);
#endif #endif
/**************************************************************************** /****************************************************************************
@@ -345,7 +346,7 @@ EXTERN NXHANDLE nx_open(FAR NX_DRIVERTYPE *dev);
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_MULTIUSER #ifdef CONFIG_NX_MULTIUSER
EXTERN void nx_disconnect(NXHANDLE handle); void nx_disconnect(NXHANDLE handle);
#endif #endif
/**************************************************************************** /****************************************************************************
@@ -366,7 +367,7 @@ EXTERN void nx_disconnect(NXHANDLE handle);
****************************************************************************/ ****************************************************************************/
#ifndef CONFIG_NX_MULTIUSER #ifndef CONFIG_NX_MULTIUSER
EXTERN void nx_close(NXHANDLE handle); void nx_close(NXHANDLE handle);
#endif #endif
/**************************************************************************** /****************************************************************************
@@ -397,7 +398,7 @@ EXTERN void nx_close(NXHANDLE handle);
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_MULTIUSER #ifdef CONFIG_NX_MULTIUSER
EXTERN int nx_eventhandler(NXHANDLE handle); int nx_eventhandler(NXHANDLE handle);
#else #else
# define nx_eventhandler(handle) (OK) # define nx_eventhandler(handle) (OK)
#endif #endif
@@ -423,7 +424,7 @@ EXTERN int nx_eventhandler(NXHANDLE handle);
****************************************************************************/ ****************************************************************************/
#if defined(CONFIG_NX_MULTIUSER) && !defined(CONFIG_DISABLE_SIGNALS) #if defined(CONFIG_NX_MULTIUSER) && !defined(CONFIG_DISABLE_SIGNALS)
EXTERN int nx_eventnotify(NXHANDLE handle, int signo); int nx_eventnotify(NXHANDLE handle, int signo);
#else #else
# define nx_eventnotify(handle, signo) (OK) # define nx_eventnotify(handle, signo) (OK)
#endif #endif
@@ -445,8 +446,7 @@ EXTERN int nx_eventnotify(NXHANDLE handle, int signo);
* *
****************************************************************************/ ****************************************************************************/
EXTERN NXWINDOW nx_openwindow(NXHANDLE handle, NXWINDOW nx_openwindow(NXHANDLE handle, FAR const struct nx_callback_s *cb,
FAR const struct nx_callback_s *cb,
FAR void *arg); FAR void *arg);
/**************************************************************************** /****************************************************************************
@@ -463,7 +463,7 @@ EXTERN NXWINDOW nx_openwindow(NXHANDLE handle,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_closewindow(NXWINDOW hwnd); int nx_closewindow(NXWINDOW hwnd);
/**************************************************************************** /****************************************************************************
* Name: nx_block * Name: nx_block
@@ -497,7 +497,7 @@ EXTERN int nx_closewindow(NXWINDOW hwnd);
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_MULTIUSER #ifdef CONFIG_NX_MULTIUSER
EXTERN int nx_block(NXWINDOW hwnd, FAR void *arg); int nx_block(NXWINDOW hwnd, FAR void *arg);
#endif #endif
/**************************************************************************** /****************************************************************************
@@ -540,8 +540,7 @@ EXTERN int nx_block(NXWINDOW hwnd, FAR void *arg);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_requestbkgd(NXHANDLE handle, int nx_requestbkgd(NXHANDLE handle, FAR const struct nx_callback_s *cb,
FAR const struct nx_callback_s *cb,
FAR void *arg); FAR void *arg);
/**************************************************************************** /****************************************************************************
@@ -559,7 +558,7 @@ EXTERN int nx_requestbkgd(NXHANDLE handle,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_releasebkgd(NXWINDOW hwnd); int nx_releasebkgd(NXWINDOW hwnd);
/**************************************************************************** /****************************************************************************
* Name: nx_getposition * Name: nx_getposition
@@ -577,7 +576,7 @@ EXTERN int nx_releasebkgd(NXWINDOW hwnd);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_getposition(NXWINDOW hwnd); int nx_getposition(NXWINDOW hwnd);
/**************************************************************************** /****************************************************************************
* Name: nx_setposition * Name: nx_setposition
@@ -594,7 +593,7 @@ EXTERN int nx_getposition(NXWINDOW hwnd);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_setposition(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos); int nx_setposition(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos);
/**************************************************************************** /****************************************************************************
* Name: nx_setsize * Name: nx_setsize
@@ -611,7 +610,7 @@ EXTERN int nx_setposition(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_setsize(NXWINDOW hwnd, FAR const struct nxgl_size_s *size); int nx_setsize(NXWINDOW hwnd, FAR const struct nxgl_size_s *size);
/**************************************************************************** /****************************************************************************
* Name: nx_raise * Name: nx_raise
@@ -627,7 +626,7 @@ EXTERN int nx_setsize(NXWINDOW hwnd, FAR const struct nxgl_size_s *size);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_raise(NXWINDOW hwnd); int nx_raise(NXWINDOW hwnd);
/**************************************************************************** /****************************************************************************
* Name: nx_lower * Name: nx_lower
@@ -643,7 +642,7 @@ EXTERN int nx_raise(NXWINDOW hwnd);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_lower(NXWINDOW hwnd); int nx_lower(NXWINDOW hwnd);
/**************************************************************************** /****************************************************************************
* Name: nx_setpixel * Name: nx_setpixel
@@ -662,7 +661,7 @@ EXTERN int nx_lower(NXWINDOW hwnd);
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_setpixel(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos, int nx_setpixel(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]); nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
/**************************************************************************** /****************************************************************************
@@ -681,7 +680,7 @@ EXTERN int nx_setpixel(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_fill(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect, int nx_fill(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]); nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
/**************************************************************************** /****************************************************************************
@@ -710,7 +709,7 @@ EXTERN int nx_fill(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_getrectangle(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect, int nx_getrectangle(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect,
unsigned int plane, FAR uint8_t *dest, unsigned int plane, FAR uint8_t *dest,
unsigned int deststride); unsigned int deststride);
@@ -731,7 +730,7 @@ EXTERN int nx_getrectangle(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_filltrapezoid(NXWINDOW hwnd, FAR const struct nxgl_rect_s *clip, int nx_filltrapezoid(NXWINDOW hwnd, FAR const struct nxgl_rect_s *clip,
FAR const struct nxgl_trapezoid_s *trap, FAR const struct nxgl_trapezoid_s *trap,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]); nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
@@ -754,7 +753,7 @@ EXTERN int nx_filltrapezoid(NXWINDOW hwnd, FAR const struct nxgl_rect_s *clip,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector, int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector,
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]); nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
/**************************************************************************** /****************************************************************************
@@ -775,7 +774,7 @@ EXTERN int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_drawcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center, int nx_drawcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center,
nxgl_coord_t radius, nxgl_coord_t width, nxgl_coord_t radius, nxgl_coord_t width,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]); nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
@@ -796,7 +795,7 @@ EXTERN int nx_drawcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_fillcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center, int nx_fillcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center,
nxgl_coord_t radius, nxgl_coord_t radius,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]); nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
@@ -815,8 +814,7 @@ EXTERN int nx_fillcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center,
* *
****************************************************************************/ ****************************************************************************/
int nx_setbgcolor(NXHANDLE handle, int nx_setbgcolor(NXHANDLE handle, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
/**************************************************************************** /****************************************************************************
* Name: nx_move * Name: nx_move
@@ -835,7 +833,7 @@ int nx_setbgcolor(NXHANDLE handle,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_move(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect, int nx_move(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect,
FAR const struct nxgl_point_s *offset); FAR const struct nxgl_point_s *offset);
/**************************************************************************** /****************************************************************************
@@ -861,10 +859,9 @@ EXTERN int nx_move(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nx_bitmap(NXWINDOW hwnd, FAR const struct nxgl_rect_s *dest, int nx_bitmap(NXWINDOW hwnd, FAR const struct nxgl_rect_s *dest,
FAR const void *src[CONFIG_NX_NPLANES], FAR const void *src[CONFIG_NX_NPLANES],
FAR const struct nxgl_point_s *origin, FAR const struct nxgl_point_s *origin, unsigned int stride);
unsigned int stride);
/**************************************************************************** /****************************************************************************
* Name: nx_kbdin * Name: nx_kbdin
@@ -877,8 +874,8 @@ EXTERN int nx_bitmap(NXWINDOW hwnd, FAR const struct nxgl_rect_s *dest,
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_KBD #ifdef CONFIG_NX_KBD
EXTERN int nx_kbdchin(NXHANDLE handle, uint8_t ch); int nx_kbdchin(NXHANDLE handle, uint8_t ch);
EXTERN int nx_kbdin(NXHANDLE handle, uint8_t nch, FAR const uint8_t *ch); int nx_kbdin(NXHANDLE handle, uint8_t nch, FAR const uint8_t *ch);
#endif #endif
/**************************************************************************** /****************************************************************************
@@ -892,9 +889,68 @@ EXTERN int nx_kbdin(NXHANDLE handle, uint8_t nch, FAR const uint8_t *ch);
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_NX_MOUSE #ifdef CONFIG_NX_MOUSE
EXTERN int nx_mousein(NXHANDLE handle, nxgl_coord_t x, nxgl_coord_t y, uint8_t buttons); int nx_mousein(NXHANDLE handle, nxgl_coord_t x, nxgl_coord_t y, uint8_t buttons);
#endif #endif
/****************************************************************************
* NX-Internal Functions
****************************************************************************/
/****************************************************************************
* Name: nx_redrawreq
*
* Description:
* This will cause a NX re-draw callback to the client that owns the
* window. This is not normally called from user code, but may be
* used within middle-ware layers when redrawing is needed.
*
* NXTK uses this function, for example, when a change in the main window
* necessitates redrawing of the toolbar window.
*
* Input Parameters:
* hwnd - Window handle
* rect - The rectangle that needs to be re-drawn (in window relative
* coordinates)
*
* Returned Value:
* None
*
****************************************************************************/
void nx_redrawreq(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect);
/****************************************************************************
* Name: nx_constructwindow
*
* Description:
* This function is the same a nx_openwindow EXCEPT that the client provides
* the window structure instance. nx_constructwindow will initialize the
* the pre-allocated window structure for use by NX. This function is
* provided in addition to nx_open window in order to support a kind of
* inheritance: The caller's window structure may include extensions that
* are not visible to NX.
*
* NOTE: wnd must have been allocated using kmalloc() (or related allocators)
* Once provided to nx_constructwindow() that memory is owned and managed
* by NX. On certain error conditions or when the window is closed, NX will
* free the window.
*
* Input Parameters:
* handle - The handle returned by nx_connect
* wnd - The pre-allocated window structure.
* cb - Callbacks used to process window events
* arg - User provided value that will be returned with NX callbacks.
*
* Return:
* OK on success; ERROR on failure with errno set appropriately. In the
* case of ERROR, NX will have deallocated the pre-allocated window.
*
****************************************************************************/
struct nxbe_window_s; /* Forward reference */
int nx_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd,
FAR const struct nx_callback_s *cb, FAR void *arg);
#undef EXTERN #undef EXTERN
#if defined(__cplusplus) #if defined(__cplusplus)
} }
+10
View File
@@ -158,6 +158,7 @@ enum nxmsg_e
NX_SVRMSG_SETBGCOLOR, /* Set the color of the background */ NX_SVRMSG_SETBGCOLOR, /* Set the color of the background */
NX_SVRMSG_MOUSEIN, /* New mouse report from mouse client */ NX_SVRMSG_MOUSEIN, /* New mouse report from mouse client */
NX_SVRMSG_KBDIN, /* New keyboard report from keyboard client */ NX_SVRMSG_KBDIN, /* New keyboard report from keyboard client */
NX_SVRMSG_REDRAWREQ /* Request re-drawing of rectangular region */
}; };
/* Server-to-Client Message Structures **************************************/ /* Server-to-Client Message Structures **************************************/
@@ -445,6 +446,15 @@ struct nxsvrmsg_kbdin_s
}; };
#endif #endif
/* Request re-drawing of rectangular region */
struct nxsvrmsg_redrawreq_s
{
uint32_t msgid; /* NX_SVRMSG_REDRAWREQ */
FAR struct nxbe_window_s *wnd; /* The window to be redrawn */
struct nxgl_rect_s rect; /* Describes the rectangular region to be redrawn */
};
/**************************************************************************** /****************************************************************************
* Public Data * Public Data
****************************************************************************/ ****************************************************************************/
+1
View File
@@ -57,6 +57,7 @@ include nxglib/Make.defs
include nx/Make.defs include nx/Make.defs
include nxmu/Make.defs include nxmu/Make.defs
include nxfonts/Make.defs include nxfonts/Make.defs
include nxtk/Make.defs
BINDIR ?= bin BINDIR ?= bin
+3 -2
View File
@@ -45,10 +45,11 @@ CSRCS += nxmu_semtake.c nx_block.c
CSRCS += nx_kbdchin.c nx_kbdin.c nx_mousein.c CSRCS += nx_kbdchin.c nx_kbdin.c nx_mousein.c
CSRCS += nx_releasebkgd.c nx_requestbkgd.c nx_setbgcolor.c CSRCS += nx_releasebkgd.c nx_requestbkgd.c nx_setbgcolor.c
CSRCS += nxmu_sendwindow.c nx_closewindow.c nxmu_constructwindow.c CSRCS += nxmu_sendwindow.c nx_closewindow.c nx_constructwindow.c
CSRCS += nx_bitmap.c nx_fill.c nx_filltrapezoid.c nx_getposition.c CSRCS += nx_bitmap.c nx_fill.c nx_filltrapezoid.c nx_getposition.c
CSRCS += nx_getrectangle.c nx_lower.c nx_move.c nx_openwindow.c CSRCS += nx_getrectangle.c nx_lower.c nx_move.c nx_openwindow.c
CSRCS += nx_raise.c nx_setpixel.c nx_setposition.c nx_setsize.c CSRCS += nx_raise.c nx_redrawreq.c nx_setpixel.c nx_setposition.c
CSRCS += nx_setsize.c
# Add the nxmu/ directory to the build # Add the nxmu/ directory to the build
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* libnx/nxmu/nx_openwindow.c * libnx/nxmu/nx_constsructwindow.c
* *
* Copyright (C) 2008, 2011-2013 Gregory Nutt. All rights reserved. * Copyright (C) 2008, 2011-2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -74,7 +74,7 @@
****************************************************************************/ ****************************************************************************/
/**************************************************************************** /****************************************************************************
* Name: nxfe_constructwindow * Name: nx_constructwindow
* *
* Description: * Description:
* This function is the same a nx_openwindow EXCEPT that the client provides * This function is the same a nx_openwindow EXCEPT that the client provides
@@ -85,7 +85,7 @@
* are not visible to NX. * are not visible to NX.
* *
* NOTE: wnd must have been allocated using kmalloc() (or related allocators) * NOTE: wnd must have been allocated using kmalloc() (or related allocators)
* Once provided to nxfe_constructwindow() that memory is owned and managed * Once provided to nx_constructwindow() that memory is owned and managed
* by NX. On certain error conditions or when the window is closed, NX will * by NX. On certain error conditions or when the window is closed, NX will
* free the window. * free the window.
* *
@@ -101,7 +101,7 @@
* *
****************************************************************************/ ****************************************************************************/
int nxfe_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd, int nx_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd,
FAR const struct nx_callback_s *cb, FAR void *arg) FAR const struct nx_callback_s *cb, FAR void *arg)
{ {
FAR struct nxfe_conn_s *conn = (FAR struct nxfe_conn_s *)handle; FAR struct nxfe_conn_s *conn = (FAR struct nxfe_conn_s *)handle;
+2 -2
View File
@@ -112,9 +112,9 @@ NXWINDOW nx_openwindow(NXHANDLE handle, FAR const struct nx_callback_s *cb,
return NULL; return NULL;
} }
/* Then let nxfe_constructwindow do the rest */ /* Then let nx_constructwindow do the rest */
ret = nxfe_constructwindow(handle, wnd, cb, arg); ret = nx_constructwindow(handle, wnd, cb, arg);
if (ret < 0) if (ret < 0)
{ {
/* An error occurred, the window has been freed */ /* An error occurred, the window has been freed */
+111
View File
@@ -0,0 +1,111 @@
/****************************************************************************
* libnx/nxmu/nx_redrawreq.c
*
* Copyright (C) 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
* 3. Neither the name NuttX nor the names of its contributors may be
* used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
****************************************************************************/
/****************************************************************************
* Included Files
****************************************************************************/
#include <nuttx/config.h>
#include <errno.h>
#include <debug.h>
#include <nuttx/nx/nx.h>
#include <nuttx/nx/nxbe.h>
#include <nuttx/nx/nxmu.h>
/****************************************************************************
* Pre-Processor Definitions
****************************************************************************/
/****************************************************************************
* Private Types
****************************************************************************/
/****************************************************************************
* Private Data
****************************************************************************/
/****************************************************************************
* Public Data
****************************************************************************/
/****************************************************************************
* Private Functions
****************************************************************************/
/****************************************************************************
* Public Functions
****************************************************************************/
/****************************************************************************
* Name: nx_redrawreq
*
* Descripton:
* This will cause a NX re-draw callback to the client that owns the
* window. This is not normally called from user code, but may be
* used within middle-ware layers when redrawing is needed.
*
* Input Parameters:
* hwnd - Window handle
* rect - The rectangle that needs to be re-drawn (in window relative
* coordinates)
*
* Returned Value:
* None
*
****************************************************************************/
void nx_redrawreq(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect)
{
FAR struct nxbe_window_s *wnd = (FAR struct nxbe_window_s *)hwnd;
struct nxsvrmsg_redrawreq_s outmsg;
#ifdef CONFIG_DEBUG
if (!wnd || !rect)
{
set_errno(EINVAL);
return ERROR;
}
#endif
/* Inform the server of the changed position */
outmsg.msgid = NX_SVRMSG_REDRAWREQ;
outmsg.wnd = wnd;
nxgl_rectcopy(&outmsg.rect, rect);
return nxmu_sendwindow(wnd, &outmsg, sizeof(struct nxsvrmsg_redrawreq_s));
}
@@ -1,7 +1,7 @@
############################################################################ ############################################################################
# graphics/nxtk/Make.defs # libnx/nxtk/Make.defs
# #
# Copyright (C) 2008, 2011 Gregory Nutt. All rights reserved. # Copyright (C) 2008, 2011, 2013 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org> # Author: Gregory Nutt <gnutt@nuttx.org>
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@@ -33,16 +33,28 @@
# #
############################################################################ ############################################################################
NXTK_ASRCS = # Expose NXTK interfaces to applications
NXTKWIN_CSRCS = nxtk_openwindow.c nxtk_closewindow.c nxtk_getposition.c \
nxtk_setposition.c nxtk_setsize.c nxtk_raise.c nxtk_lower.c \ ifeq ($(CONFIG_NX),y)
nxtk_fillwindow.c nxtk_getwindow.c nxtk_filltrapwindow.c \
nxtk_movewindow.c nxtk_bitmapwindow.c nxtk_events.c \ CSRCS += nxtk_openwindow.c nxtk_closewindow.c nxtk_getposition.c
nxtk_setsubwindows.c nxtk_drawcirclewindow.c nxtk_drawlinewindow.c \ CSRCS += nxtk_setposition.c nxtk_setsize.c nxtk_raise.c nxtk_lower.c
nxtk_fillcirclewindow.c nxtk_block.c CSRCS += nxtk_fillwindow.c nxtk_getwindow.c nxtk_filltrapwindow.c
NXTKTB_CSRCS = nxtk_opentoolbar.c nxtk_closetoolbar.c nxtk_filltoolbar.c \ CSRCS += nxtk_movewindow.c nxtk_bitmapwindow.c nxtk_events.c
nxtk_gettoolbar.c nxtk_filltraptoolbar.c nxtk_movetoolbar.c \ CSRCS += nxtk_setsubwindows.c nxtk_drawcirclewindow.c nxtk_drawlinewindow.c
nxtk_bitmaptoolbar.c nxtk_drawcircletoolbar.c nxtk_drawlinetoolbar.c \ CSRCS += nxtk_fillcirclewindow.c nxtk_block.c
nxtk_fillcircletoolbar.c nxtk_toolbarbounds.c
NXTK_CSRCS = $(NXTKWIN_CSRCS) $(NXTKTB_CSRCS) nxtk_subwindowclip.c \ CSRCS += nxtk_opentoolbar.c nxtk_closetoolbar.c nxtk_filltoolbar.c
nxtk_containerclip.c nxtk_subwindowmove.c nxtk_drawframe.c CSRCS += nxtk_gettoolbar.c nxtk_filltraptoolbar.c nxtk_movetoolbar.c
CSRCS += nxtk_bitmaptoolbar.c nxtk_drawcircletoolbar.c nxtk_drawlinetoolbar.c
CSRCS += nxtk_fillcircletoolbar.c nxtk_toolbarbounds.c
CSRCS += nxtk_subwindowclip.c nxtk_containerclip.c nxtk_subwindowmove.c
CSRCS += nxtk_drawframe.c
# Add the nxtk/ directory to the build
DEPPATH += --dep-path nxtk
VPATH += :nxtk
endif
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_bitmaptoolbar.c * libnx/nxtk/nxtk_bitmaptoolbar.c
* *
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -104,7 +104,7 @@ int nxtk_bitmaptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *dest,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !dest || !src || !origin) if (!hfwnd || !dest || !src || !origin)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_bitmapwindow.c * libnx/nxtk/nxtk_bitmapwindow.c
* *
* Copyright (C) 2008-2009, 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -104,7 +104,7 @@ int nxtk_bitmapwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *dest,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !dest || !src || !origin) if (!hfwnd || !dest || !src || !origin)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_block.c * libnx/nxtk/nxtk_block.c
* *
* Copyright (C) 2012 Gregory Nutt. All rights reserved. * Copyright (C) 2012, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -41,8 +41,7 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include <nuttx/nx/nxmu.h>
#include "nxfe.h"
#ifdef CONFIG_NX_MULTIUSER #ifdef CONFIG_NX_MULTIUSER
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_closetoolbar.c * libnx/nxtk/nxtk_closetoolbar.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -102,10 +101,9 @@ int nxtk_closetoolbar(NXTKWINDOW hfwnd)
nxtk_setsubwindows(fwnd); nxtk_setsubwindows(fwnd);
/* Then redraw the entire window, even the client window must be /* Then redraw the entire window, even the client window must be
* redraw because it has changed its vertical position and size. * redrawn because it has changed its vertical position and size.
*/ */
nxfe_redrawreq(&fwnd->wnd, &fwnd->wnd.bounds); nx_redrawreq(&fwnd->wnd, &fwnd->wnd.bounds);
return OK; return OK;
} }
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_closewindow.c * libnx/nxtk/nxtk_closewindow.c
* *
* Copyright (C) 2008 Gregory Nutt. All rights reserved. * Copyright (C) 2008, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,7 +47,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -92,4 +91,3 @@ int nxtk_closewindow(NXTKWINDOW hfwnd)
{ {
return nx_closewindow((NXWINDOW)hfwnd); return nx_closewindow((NXWINDOW)hfwnd);
} }
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_containerclip.c * libnx/nxtk/nxtk_containerclip.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_drawcircletoolbar.c * libnx/nxtk/nxtk_drawcircletoolbar.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_drawcirclewindow.c * libnx/nxtk/nxtk_drawcirclewindow.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_drawframe.c * libnx/nxtk/nxtk_drawframe.c
* *
* Copyright (C) 2008-2009, 2011-2012 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2011-2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,7 +47,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_drawlinetoolbar.c * libnx/nxtk/nxtk_drawlinetoolbar.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_drawlinewindow.c * libnx/nxtk/nxtk_drawlinewindow.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_events.c * libnx/nxtk/nxtk_events.c
* *
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_fillcircletoolbar.c * libnx/nxtk/nxtk_fillcircletoolbar.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,5 +1,5 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_fillcirclewindow.c * libnx/nxtk/nxtk_fillcirclewindow.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_filltoolbar.c * libnx/nxtk/nxtk_filltoolbar.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -98,7 +97,7 @@ int nxtk_filltoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *rect,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !rect || !color) if (!hfwnd || !rect || !color)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_filltraptoolbar.c * libnx/nxtk/nxtk_filltraptoolbar.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -89,7 +88,8 @@
* *
****************************************************************************/ ****************************************************************************/
int nxtk_filltraptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoid_s *trap, int nxtk_filltraptoolbar(NXTKWINDOW hfwnd,
FAR const struct nxgl_trapezoid_s *trap,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]) nxgl_mxpixel_t color[CONFIG_NX_NPLANES])
{ {
FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hfwnd; FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hfwnd;
@@ -98,13 +98,14 @@ int nxtk_filltraptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoid_s *tr
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !trap || !color) if (!hfwnd || !trap || !color)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
/* Perform the fill, clipping to the client window */ /* Perform the fill, clipping to the client window */
nxgl_rectoffset(&relclip, &fwnd->tbrect, -fwnd->wnd.bounds.pt1.x, -fwnd->wnd.bounds.pt1.y); nxgl_rectoffset(&relclip, &fwnd->tbrect, -fwnd->wnd.bounds.pt1.x,
-fwnd->wnd.bounds.pt1.y);
return nx_filltrapezoid((NXWINDOW)hfwnd, &relclip, trap, color); return nx_filltrapezoid((NXWINDOW)hfwnd, &relclip, trap, color);
} }
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_filltrapwindow.c * libnx/nxtk/nxtk_filltrapwindow.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -89,7 +88,8 @@
* *
****************************************************************************/ ****************************************************************************/
int nxtk_filltrapwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoid_s *trap, int nxtk_filltrapwindow(NXTKWINDOW hfwnd,
FAR const struct nxgl_trapezoid_s *trap,
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]) nxgl_mxpixel_t color[CONFIG_NX_NPLANES])
{ {
FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hfwnd; FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hfwnd;
@@ -99,7 +99,7 @@ int nxtk_filltrapwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoid_s *tra
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !trap || !color) if (!hfwnd || !trap || !color)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -111,7 +111,9 @@ int nxtk_filltrapwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoid_s *tra
fwnd->fwrect.pt1.y - fwnd->wnd.bounds.pt1.y); fwnd->fwrect.pt1.y - fwnd->wnd.bounds.pt1.y);
/* Perform the fill, clipping to the client window */ /* Perform the fill, clipping to the client window */
nxgl_rectoffset(&relclip, &fwnd->fwrect, -fwnd->wnd.bounds.pt1.x, -fwnd->wnd.bounds.pt1.y);
nxgl_rectoffset(&relclip, &fwnd->fwrect, -fwnd->wnd.bounds.pt1.x,
-fwnd->wnd.bounds.pt1.y);
return nx_filltrapezoid((NXWINDOW)hfwnd, &relclip, &reltrap, color); return nx_filltrapezoid((NXWINDOW)hfwnd, &relclip, &reltrap, color);
} }
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_fillwindow.c * libnx/nxtk/nxtk_fillwindow.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -98,7 +97,7 @@ int nxtk_fillwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *rect,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !rect || !color) if (!hfwnd || !rect || !color)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_getposition.c * libnx/nxtk/nxtk_getposition.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_gettoolbar.c * libnx/nxtk/nxtk_gettoolbar.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_getwindow.c * libnx/nxtk/nxtk_getwindow.c
* *
* Copyright (C) 2011 Gregory Nutt. All rights reserved. * Copyright (C) 2011, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_internal.h * libnx/nxtk/nxtk_internal.h
* *
* Copyright (C) 2008-2009, 2011-1021 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2011-2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -33,8 +33,8 @@
* *
****************************************************************************/ ****************************************************************************/
#ifndef __GRAPHICS_NXTK_NXTK_INTERNAL_H #ifndef __LIBNX_NXTK_NXTK_INTERNAL_H
#define __GRAPHICS_NXTK_NXTK_INTERNAL_H #define __LIBNX_NXTK_NXTK_INTERNAL_H
/**************************************************************************** /****************************************************************************
* Included Files * Included Files
@@ -42,9 +42,8 @@
#include <nuttx/config.h> #include <nuttx/config.h>
#include <nuttx/nx/nxbe.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxbe.h"
#include "nxfe.h"
/**************************************************************************** /****************************************************************************
* Pre-processor definitions * Pre-processor definitions
@@ -86,20 +85,21 @@ struct nxtk_framedwindow_s
#undef EXTERN #undef EXTERN
#if defined(__cplusplus) #if defined(__cplusplus)
# define EXTERN extern "C" # define EXTERN extern "C"
extern "C" { extern "C"
{
#else #else
# define EXTERN extern # define EXTERN extern
#endif #endif
/* That is the callback for the framed window */ /* That is the callback for the framed window */
extern FAR const struct nx_callback_s g_nxtkcb; EXTERN FAR const struct nx_callback_s g_nxtkcb;
/* Frame border colors */ /* Frame border colors */
extern nxgl_mxpixel_t g_bordercolor1[CONFIG_NX_NPLANES]; EXTERN nxgl_mxpixel_t g_bordercolor1[CONFIG_NX_NPLANES];
extern nxgl_mxpixel_t g_bordercolor2[CONFIG_NX_NPLANES]; EXTERN nxgl_mxpixel_t g_bordercolor2[CONFIG_NX_NPLANES];
extern nxgl_mxpixel_t g_bordercolor3[CONFIG_NX_NPLANES]; EXTERN nxgl_mxpixel_t g_bordercolor3[CONFIG_NX_NPLANES];
/**************************************************************************** /****************************************************************************
* Public Function Prototypes * Public Function Prototypes
@@ -115,7 +115,7 @@ extern nxgl_mxpixel_t g_bordercolor3[CONFIG_NX_NPLANES];
* *
****************************************************************************/ ****************************************************************************/
EXTERN void nxtk_setsubwindows(FAR struct nxtk_framedwindow_s *fwnd); void nxtk_setsubwindows(FAR struct nxtk_framedwindow_s *fwnd);
/**************************************************************************** /****************************************************************************
* Name: nxtk_subwindowclip * Name: nxtk_subwindowclip
@@ -136,7 +136,7 @@ EXTERN void nxtk_setsubwindows(FAR struct nxtk_framedwindow_s *fwnd);
* *
****************************************************************************/ ****************************************************************************/
EXTERN void nxtk_subwindowclip(FAR struct nxtk_framedwindow_s *fwnd, void nxtk_subwindowclip(FAR struct nxtk_framedwindow_s *fwnd,
FAR struct nxgl_rect_s *dest, FAR struct nxgl_rect_s *dest,
FAR const struct nxgl_rect_s *src, FAR const struct nxgl_rect_s *src,
FAR const struct nxgl_rect_s *bounds); FAR const struct nxgl_rect_s *bounds);
@@ -154,7 +154,7 @@ EXTERN void nxtk_subwindowclip(FAR struct nxtk_framedwindow_s *fwnd,
* *
* Input parameters: * Input parameters:
* fwnd - The framed window to be used * fwnd - The framed window to be used
* dest - The locaton to put the result * dest - The location to put the result
* src - The src rectangle in relative container-window coordinates * src - The src rectangle in relative container-window coordinates
* bounds - The subwindow bounds in absolute screen coordinates. * bounds - The subwindow bounds in absolute screen coordinates.
* *
@@ -163,7 +163,7 @@ EXTERN void nxtk_subwindowclip(FAR struct nxtk_framedwindow_s *fwnd,
* *
****************************************************************************/ ****************************************************************************/
EXTERN void nxtk_containerclip(FAR struct nxtk_framedwindow_s *fwnd, void nxtk_containerclip(FAR struct nxtk_framedwindow_s *fwnd,
FAR struct nxgl_rect_s *dest, FAR struct nxgl_rect_s *dest,
FAR const struct nxgl_rect_s *src, FAR const struct nxgl_rect_s *src,
FAR const struct nxgl_rect_s *bounds); FAR const struct nxgl_rect_s *bounds);
@@ -172,12 +172,12 @@ EXTERN void nxtk_containerclip(FAR struct nxtk_framedwindow_s *fwnd,
* Name: nxtk_subwindowmove * Name: nxtk_subwindowmove
* *
* Description: * Description:
* Perform common clipping operations in preparatons for calling nx_move() * Perform common clipping operations in preparation for calling nx_move()
* *
* Input Parameters: * Input Parameters:
* fwnd - The framed window within which the move is to be done. * fwnd - The framed window within which the move is to be done.
* This must have been previously created by nxtk_openwindow(). * This must have been previously created by nxtk_openwindow().
* destrect - The loccation to receive the clipped rectangle relative * destrect - The location to receive the clipped rectangle relative
* to containing window * to containing window
* destoffset - The location to received the clipped offset. * destoffset - The location to received the clipped offset.
* srcrect - Describes the rectangular region relative to the client * srcrect - Describes the rectangular region relative to the client
@@ -190,7 +190,7 @@ EXTERN void nxtk_containerclip(FAR struct nxtk_framedwindow_s *fwnd,
* *
****************************************************************************/ ****************************************************************************/
EXTERN void nxtk_subwindowmove(FAR struct nxtk_framedwindow_s *fwnd, void nxtk_subwindowmove(FAR struct nxtk_framedwindow_s *fwnd,
FAR struct nxgl_rect_s *destrect, FAR struct nxgl_rect_s *destrect,
FAR struct nxgl_point_s *destoffset, FAR struct nxgl_point_s *destoffset,
FAR const struct nxgl_rect_s *srcrect, FAR const struct nxgl_rect_s *srcrect,
@@ -214,7 +214,7 @@ EXTERN void nxtk_subwindowmove(FAR struct nxtk_framedwindow_s *fwnd,
* *
****************************************************************************/ ****************************************************************************/
EXTERN int nxtk_drawframe(FAR struct nxtk_framedwindow_s *fwnd, int nxtk_drawframe(FAR struct nxtk_framedwindow_s *fwnd,
FAR const struct nxgl_rect_s *bounds); FAR const struct nxgl_rect_s *bounds);
#undef EXTERN #undef EXTERN
@@ -222,4 +222,4 @@ EXTERN int nxtk_drawframe(FAR struct nxtk_framedwindow_s *fwnd,
} }
#endif #endif
#endif /* __GRAPHICS_NXTK_NXTK_INTERNAL_H */ #endif /* __LIBNX_NXTK_NXTK_INTERNAL_H */
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_lower.c * libnx/nxtk/nxtk_lower.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -81,8 +80,8 @@
* bottom of the display. * bottom of the display.
* *
* Input parameters: * Input parameters:
* hfwnd - the window to be lowered. This must have been previously created * hfwnd - the window to be lowered. This must have been previously
* by nxtk_openwindow(). * created by nxtk_openwindow().
* *
* Returned value: * Returned value:
* OK on success; ERROR on failure with errno set appropriately * OK on success; ERROR on failure with errno set appropriately
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_movetoolbar.c * libnx/nxtk/nxtk_movetoolbar.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -77,7 +76,8 @@
* Name: nxtk_movetoolbar * Name: nxtk_movetoolbar
* *
* Description: * Description:
* Move a rectangular region within the toolbar sub-window of a framed window * Move a rectangular region within the toolbar sub-window of a framed
* window
* *
* Input Parameters: * Input Parameters:
* hfwnd - The sub-window containing the toolbar within which the move is * hfwnd - The sub-window containing the toolbar within which the move is
@@ -102,7 +102,7 @@ int nxtk_movetoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *rect,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !rect || !offset) if (!hfwnd || !rect || !offset)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_movewindow.c * libnx/nxtk/nxtk_movewindow.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -77,7 +76,8 @@
* Name: nxtk_movewindow * Name: nxtk_movewindow
* *
* Description: * Description:
* Move a rectangular region within the client sub-window of a framed window * Move a rectangular region within the client sub-window of a framed
* window
* *
* Input Parameters: * Input Parameters:
* hfwnd - The client sub-window within which the move is to be done. * hfwnd - The client sub-window within which the move is to be done.
@@ -101,7 +101,7 @@ int nxtk_movewindow(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *rect,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !rect || !offset) if (!hfwnd || !rect || !offset)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_opentoolbar.c * libnx/nxtk/nxtk_opentoolbar.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -83,7 +82,8 @@
* hfwnd - The handle returned by nxtk_openwindow * hfwnd - The handle returned by nxtk_openwindow
* height - The request height of the toolbar in pixels * height - The request height of the toolbar in pixels
* cb - Callbacks used to process toolbar events * cb - Callbacks used to process toolbar events
* arg - User provided value that will be returned with toolbar callbacks. * arg - User provided value that will be returned with toolbar
* callbacks.
* *
* Return: * Return:
* OK on success; ERROR on failure with errno set appropriately * OK on success; ERROR on failure with errno set appropriately
@@ -99,7 +99,7 @@ int nxtk_opentoolbar(NXTKWINDOW hfwnd, nxgl_coord_t height,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!hfwnd || !cb) if (!hfwnd || !cb)
{ {
errno = EINVAL; set_errno(EINVAL);
return ERROR; return ERROR;
} }
#endif #endif
@@ -118,10 +118,9 @@ int nxtk_opentoolbar(NXTKWINDOW hfwnd, nxgl_coord_t height,
* redrawn because it has changed its vertical position and size. * redrawn because it has changed its vertical position and size.
*/ */
nxfe_redrawreq(&fwnd->wnd, &fwnd->wnd.bounds); nx_redrawreq(&fwnd->wnd, &fwnd->wnd.bounds);
/* Return the initialized toolbar reference */ /* Return the initialized toolbar reference */
return OK; return OK;
} }
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_openwindow.c * libnx/nxtk/nxtk_openwindow.c
* *
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2012-2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -44,9 +44,8 @@
#include <debug.h> #include <debug.h>
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/kmalloc.h>
#include "nxfe.h" #include "nxcontext.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -124,17 +123,19 @@ NXTKWINDOW nxtk_openwindow(NXHANDLE handle,
#ifdef CONFIG_DEBUG #ifdef CONFIG_DEBUG
if (!handle || !cb) if (!handle || !cb)
{ {
errno = EINVAL; set_errno(EINVAL);
return NULL; return NULL;
} }
#endif #endif
/* Pre-allocate the window structure */ /* Pre-allocate the window structure */
fwnd = (FAR struct nxtk_framedwindow_s *)kzalloc(sizeof(struct nxtk_framedwindow_s)); fwnd = (FAR struct nxtk_framedwindow_s *)
lib_zalloc(sizeof(struct nxtk_framedwindow_s));
if (!fwnd) if (!fwnd)
{ {
errno = ENOMEM; set_errno(ENOMEM);
return NULL; return NULL;
} }
@@ -143,9 +144,9 @@ NXTKWINDOW nxtk_openwindow(NXHANDLE handle,
fwnd->fwcb = cb; fwnd->fwcb = cb;
fwnd->fwarg = arg; fwnd->fwarg = arg;
/* Then let nxfe_constructwindow do the rest */ /* Then let nx_constructwindow do the rest */
ret = nxfe_constructwindow(handle, &fwnd->wnd, &g_nxtkcb, NULL); ret = nx_constructwindow(handle, &fwnd->wnd, &g_nxtkcb, NULL);
if (ret < 0) if (ret < 0)
{ {
/* An error occurred, the window has been freed */ /* An error occurred, the window has been freed */
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_raise.c * libnx/nxtk/nxtk_raise.c
* *
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************
@@ -81,8 +80,8 @@
* of the display. * of the display.
* *
* Input parameters: * Input parameters:
* hfwnd - the window to be raised. This must have been previously created * hfwnd - the window to be raised. This must have been previously
* by nxtk_openwindow(). * created by nxtk_openwindow().
* *
* Returned value: * Returned value:
* OK on success; ERROR on failure with errno set appropriately * OK on success; ERROR on failure with errno set appropriately
@@ -1,7 +1,7 @@
/**************************************************************************** /****************************************************************************
* graphics/nxtk/nxtk_setposition.c * libnx/nxtk/nxtk_setposition.c
* *
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved. * Copyright (C) 2008-2009, 2012-2013 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org> * Author: Gregory Nutt <gnutt@nuttx.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,6 @@
#include <nuttx/nx/nx.h> #include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h> #include <nuttx/nx/nxtk.h>
#include "nxfe.h"
#include "nxtk_internal.h" #include "nxtk_internal.h"
/**************************************************************************** /****************************************************************************

Some files were not shown because too many files have changed in this diff Show More