aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gfx.h12
-rw-r--r--src/gfx.c3
-rw-r--r--src/gos/gos_freertos.c2
3 files changed, 12 insertions, 5 deletions
diff --git a/gfx.h b/gfx.h
index afaf7b87..2e25db88 100644
--- a/gfx.h
+++ b/gfx.h
@@ -229,6 +229,7 @@ extern "C" {
* @note If you define GFX_OS_EXTRA_DEINIT_FUNCTION in your gfxconf.h file the macro is the
* name of a void function with no parameters that is called immediately before
* operating system de-initialisation (as ugfx is exiting).
+ * @note If GFX_OS_CALL_UGFXMAIN is set uGFXMain() is called after all initialisation is complete.
*
* @api
*/
@@ -243,6 +244,17 @@ extern "C" {
*/
void gfxDeinit(void);
+ #if GFX_OS_CALL_UGFXMAIN || defined(__DOXYGEN__)
+ /**
+ * @brief The function containing all the user uGFX application code.
+ *
+ * @note This is called by gfxInit() and is expected to never return.
+ * It is defined by the user.
+ *
+ * @pre GFX_OS_CALL_UGFXMAIN is GFXON
+ */
+ void uGFXMain(void);
+ #endif
#ifdef __cplusplus
}
#endif
diff --git a/src/gfx.c b/src/gfx.c
index e35bcd3d..dac9e470 100644
--- a/src/gfx.c
+++ b/src/gfx.c
@@ -78,9 +78,6 @@ extern void _gosDeinit(void);
extern void _gtransInit(void);
extern void _gtransDeinit(void);
#endif
-#if GFX_OS_CALL_UGFXMAIN
- extern void uGFXMain(void);
-#endif
void gfxInit(void)
{
diff --git a/src/gos/gos_freertos.c b/src/gos/gos_freertos.c
index 93696581..414b0bab 100644
--- a/src/gos/gos_freertos.c
+++ b/src/gos/gos_freertos.c
@@ -38,8 +38,6 @@ void _gosInit(void)
}
#if !GFX_OS_NO_INIT && GFX_OS_CALL_UGFXMAIN
- extern void uGFXMain(void);
-
static DECLARE_THREAD_FUNCTION(startUGFX_FreeRTOS, p) {
(void) p;
uGFXMain();