diff options
author | inmarket <andrewh@inmarket.com.au> | 2014-02-16 17:22:24 +1000 |
---|---|---|
committer | inmarket <andrewh@inmarket.com.au> | 2014-02-16 17:22:24 +1000 |
commit | 200f7ecf6d1199136fc37591dc8275854b314429 (patch) | |
tree | e9bb73c9f8abb81eae30b7404adb41a22cc5b646 /demos | |
parent | 23bb9e659a5deaac9224fbec05966e8061c07da1 (diff) | |
download | uGFX-200f7ecf6d1199136fc37591dc8275854b314429.tar.gz uGFX-200f7ecf6d1199136fc37591dc8275854b314429.tar.bz2 uGFX-200f7ecf6d1199136fc37591dc8275854b314429.zip |
Updates to demo to work on ChibiOS and to test orientation.
Diffstat (limited to 'demos')
-rw-r--r-- | demos/modules/gwin/button/gfxconf.h | 1 | ||||
-rw-r--r-- | demos/modules/gwin/button/main.c | 16 |
2 files changed, 16 insertions, 1 deletions
diff --git a/demos/modules/gwin/button/gfxconf.h b/demos/modules/gwin/button/gfxconf.h index 5376bd52..eba3f4ef 100644 --- a/demos/modules/gwin/button/gfxconf.h +++ b/demos/modules/gwin/button/gfxconf.h @@ -48,6 +48,7 @@ #define GDISP_NEED_CLIP TRUE #define GDISP_NEED_CIRCLE TRUE #define GDISP_NEED_TEXT TRUE +#define GDISP_NEED_CONTROL TRUE /* GDISP fonts to include */ #define GDISP_INCLUDE_FONT_UI2 TRUE diff --git a/demos/modules/gwin/button/main.c b/demos/modules/gwin/button/main.c index 6ec8a287..6349ca09 100644 --- a/demos/modules/gwin/button/main.c +++ b/demos/modules/gwin/button/main.c @@ -54,10 +54,16 @@ static void createWidgets(void) { int main(void) { GEvent* pe; + static const orientation_t orients[] = { GDISP_ROTATE_0, GDISP_ROTATE_90, GDISP_ROTATE_180, GDISP_ROTATE_270 }; + unsigned which; // Initialize the display gfxInit(); + // We are currently at GDISP_ROTATE_0 + which = 0; + gdispSetOrientation(orients[which]); + // Set the widget defaults gwinSetDefaultFont(gdispOpenFont("UI2")); gwinSetDefaultStyle(&WhiteWidgetStyle, FALSE); @@ -81,7 +87,15 @@ int main(void) { case GEVENT_GWIN_BUTTON: if (((GEventGWinButton*)pe)->button == ghButton1) { // Our button has been pressed - printf("Button clicked\r\n"); + if (++which >= sizeof(orients)/sizeof(orients[0])) + which = 0; + + // Setting the orientation during run-time is a bit naughty particularly with + // GWIN windows. In this case however we know that the button is in the top-left + // corner which should translate safely into any orientation. + gdispSetOrientation(orients[which]); + gdispClear(White); + gwinRedrawDisplay(GDISP, FALSE); } break; |