diff options
| author | Tectu <joel@unormal.org> | 2013-04-05 04:57:11 -0700 | 
|---|---|---|
| committer | Tectu <joel@unormal.org> | 2013-04-05 04:57:11 -0700 | 
| commit | 4719e96bebb3c98ad746cecc370da35a44d11cbf (patch) | |
| tree | 1c2628cac2869e94ed6fe9246a0701a0784ca702 /demos/modules/gwin/basic | |
| parent | 55d41fe007e34d67737ca9abd11fb7ce2cc46bbc (diff) | |
| parent | ee19104dbb51b98a8753414854cc6c5cdee42a55 (diff) | |
| download | uGFX-4719e96bebb3c98ad746cecc370da35a44d11cbf.tar.gz uGFX-4719e96bebb3c98ad746cecc370da35a44d11cbf.tar.bz2 uGFX-4719e96bebb3c98ad746cecc370da35a44d11cbf.zip | |
Merge pull request #58 from inmarket/master
GWIN Slider plus other cleanups
Diffstat (limited to 'demos/modules/gwin/basic')
| -rw-r--r-- | demos/modules/gwin/basic/gfxconf.h | 33 | ||||
| -rw-r--r-- | demos/modules/gwin/basic/main.c | 67 | 
2 files changed, 100 insertions, 0 deletions
| diff --git a/demos/modules/gwin/basic/gfxconf.h b/demos/modules/gwin/basic/gfxconf.h new file mode 100644 index 00000000..e567e5a0 --- /dev/null +++ b/demos/modules/gwin/basic/gfxconf.h @@ -0,0 +1,33 @@ +/** + * This file has a different license to the rest of the GFX system. + * You can copy, modify and distribute this file as you see fit. + * You do not need to publish your source modifications to this file. + * The only thing you are not permitted to do is to relicense it + * under a different license. + */ + +#ifndef _GFXCONF_H +#define _GFXCONF_H + +/* GFX sub-systems to turn on */ +#define GFX_USE_GDISP			TRUE +#define GFX_USE_GWIN			TRUE +#define GFX_USE_GEVENT			FALSE +#define GFX_USE_GTIMER			FALSE +#define GFX_USE_GINPUT			FALSE + +/* Features for the GDISP sub-system. */ +#define GDISP_NEED_VALIDATION	TRUE +#define GDISP_NEED_CLIP			TRUE +#define GDISP_NEED_TEXT			FALSE +#define GDISP_NEED_CIRCLE		TRUE +#define GDISP_NEED_ELLIPSE		FALSE +#define GDISP_NEED_ARC			FALSE +#define GDISP_NEED_SCROLL		FALSE +#define GDISP_NEED_PIXELREAD	FALSE +#define GDISP_NEED_CONTROL		FALSE +#define GDISP_NEED_MULTITHREAD	FALSE +#define GDISP_NEED_ASYNC		FALSE +#define GDISP_NEED_MSGAPI		FALSE + +#endif /* _GFXCONF_H */ diff --git a/demos/modules/gwin/basic/main.c b/demos/modules/gwin/basic/main.c new file mode 100644 index 00000000..a0326fac --- /dev/null +++ b/demos/modules/gwin/basic/main.c @@ -0,0 +1,67 @@ +/* +    ChibiOS/GFX - Copyright (C) 2012, 2013 +                 Joel Bodenmann aka Tectu <joel@unormal.org> + +    This file is part of ChibiOS/GFX. + +    ChibiOS/GFX is free software; you can redistribute it and/or modify +    it under the terms of the GNU General Public License as published by +    the Free Software Foundation; either version 3 of the License, or +    (at your option) any later version. + +    ChibiOS/GFX is distributed in the hope that it will be useful, +    but WITHOUT ANY WARRANTY; without even the implied warranty of +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +    GNU General Public License for more details. + +    You should have received a copy of the GNU General Public License +    along with this program.  If not, see <http://www.gnu.org/licenses/>. +*/ + +#include "ch.h" +#include "hal.h" +#include "gfx.h" + +/* The handles for our two Windows */ +GHandle GW1, GW2; + +int main(void) { +    halInit(); +    chSysInit(); +   	coord_t		i, j; + +    /* Initialize and clear the display */ +    gdispInit(); +    gdispClear(Lime); + +    /* Create two windows */ +    GW1 = gwinCreateWindow(NULL, 20, 10, 200, 150); +    GW2 = gwinCreateWindow(NULL, 50, 190, 150, 100); + +    /* Set fore- and background colors for both windows */ +    gwinSetColor(GW1, Black); +    gwinSetBgColor(GW1, White); +    gwinSetColor(GW2, White); +    gwinSetBgColor(GW2, Blue); + +    /* Clear both windows - to set background color */ +    gwinClear(GW1); +    gwinClear(GW2); + +    gwinDrawLine (GW1, 5, 30, 150, 110); +    for(i=5, j=0; i < 200 && j < 150; i+=3, j+=i/20) +        	gwinDrawPixel (GW1, i, j); + +    /*   +     * Draw two filled circles at the same coordinate +     * of each window to demonstrate the relative coordinates +     * of windows +     */ +    gwinFillCircle(GW1, 20, 20, 15); +    gwinFillCircle(GW2, 20, 20, 15); + +    while(TRUE) { +        chThdSleepMilliseconds(500); +    }    +} + | 
