nuttx-apps/graphics/nxwidgets
Gregory Nutt 05f2253a33 Remove CONFIG_CAN_PASS_STRUCT
This is the companion to PR #766.  It removes the CONFIG_CAN_PASS_STRUCT option as recommended by Issue #620

NuttX PR #766 depends on PR being in place but not vice versa.  This PR should be merge-able without #766 and then PR #766 should also pass its checks.
2020-04-11 20:32:53 +01:00
..
doc Run codespell -w with the latest dictonary again 2020-02-23 07:10:14 -06:00
Doxygen Run codespell -w with the latest dictonary again 2020-02-23 07:10:14 -06:00
src Run codespell -w with the latest dictonary again 2020-02-23 07:10:14 -06:00
UnitTests Remove CONFIG_CAN_PASS_STRUCT 2020-04-11 20:32:53 +01:00
.gitignore Revert "Don't generate .depend anymore" 2020-03-22 23:09:40 -05:00
ChangeLog.txt Run codespell -w with the latest dictonary again 2020-02-23 07:10:14 -06:00
COPYING Remove extra whitespace from files (#43) 2020-01-31 08:29:24 -06:00
Kconfig Change the defaults of stack size configs to DEFAULT_TASK_STACKSIZE 2020-03-27 02:43:11 -05:00
Make.defs Remove extra whitespace from files (#43) 2020-01-31 08:29:24 -06:00
Makefile Makefiles: This reverts part of commit cf0365ea9. It restores 'conditional' inclusion of TOPDIR/Make.defs. Otherwise all make targets fail if the board has not been configured. That is okay most of the time, but not for things like clean and distclean which should not depend on being configured. 2019-10-15 09:25:48 +08:00
README.txt Remove extra whitespace from files (#43) 2020-01-31 08:29:24 -06:00
ReleaseNotes.txt Run codespell -w with the latest dictonary again 2020-02-23 07:10:14 -06:00
TODO.txt Remove extra whitespace from files (#43) 2020-01-31 08:29:24 -06:00

NXWidgets
=========

In order to better support NuttX based platforms, a special graphical user
interface has been created called NXWidgets. NXWidgets is written in C++
and integrates seamlessly with the NuttX NX graphics subsystem in order
to provide graphic objects, or "widgets," in the NX Graphics Subsystem

Some of the features of NXWidgets include:

o Conservative C++

  NXWidgets is written entirely in C++ but using only selected “embedded
  friendly” C++ constructs that are fully supported under NuttX. No
  additional C++ support libraries are required.

o NX Integration

  NXWidgets integrate seamlessly with the NX graphics system. Think of the
  X server under Linux … the NX graphics system is like a tiny X server
  that provides windowing under NuttX. By adding NXWidgets, you can support
  graphics objects like buttons and text boxes in the NX windows and toolbars.

o Small Footprint

  NXWidgets is tailored for use MCUs in embedded applications. It is ideally
  suited for mid- and upper-range of most MCU families. A complete NXWidgets
  is possible in as little as 40Kb of FLASH and maybe 4Kb of SRAM.

o Output Devices

  NXWidgets will work on the high-end frame buffer devices as well as on LCDs
  connected via serial or parallel ports to a small MCU.

o Input Devices

  NXWidgets will accept position and selection inputs from a mouse or a
  touchscreen. It will also support character input from a keyboard such as a
  USB keyboard. NXWidgets supports on very special widget called CKeypad that
  will provide keyboard input via an on-screen keypad that can be operated
  via mouse or touchscreen inputs.

o Many Graphic Objects

  Some of the graphic objects supported by NXWidgets include labels, buttons,
  text boxes, button arrays, check boxes, cycle buttons, images, sliders,
  scrollable list boxes, progress bars, and more.

Note:  Many of the fundamental classed in NxWidgets derive from the Antony
Dzeryn's "Woopsi" project: http://woopsi.org/ which also has a BSD style
license.  See the COPYING file for details.

Directory Structure
===================

Kconfig

  This is a Kconfig file that should be provided at apps/NxWidgets/Kconfig.
  When copied to that location, it will be used by the NuttX configuration
  systems to configure settings for NxWidgets and NxWM

nxwidgets

  The source code, header files, and build environment for NxWidgets is
  provided in this directory.

UnitTests

  Provides a collection of unit-level tests for many of the individual
  widgets provided by nxwidgets.