Add base ScritchUI API to get the list of fonts.
[SquirrelJME.git] / nanocoat / include / lib / scritchui / scritchuiText.h
blobbf88ed534de4e49c9a96edaf69f759f6699af4f6
1 /* -*- Mode: C; indent-tabs-mode: t; tab-width: 4 -*-
2 // ---------------------------------------------------------------------------
3 // SquirrelJME
4 // Copyright (C) Stephanie Gawroriski <xer@multiphasicapps.net>
5 // ---------------------------------------------------------------------------
6 // SquirrelJME is under the Mozilla Public License Version 2.0.
7 // See license.mkd for licensing and copyright information.
8 // -------------------------------------------------------------------------*/
10 /**
11 * Text rendering support, equivalent to @c javax.microedition.lcdui.Text .
13 * @since 2024/06/25
16 #ifndef SQUIRRELJME_SCRITCHUITEXT_H
17 #define SQUIRRELJME_SCRITCHUITEXT_H
19 #include "lib/scritchui/scritchui.h"
21 /* Anti-C++. */
22 #ifdef __cplusplus
23 #ifndef SJME_CXX_IS_EXTERNED
24 #define SJME_CXX_IS_EXTERNED
25 #define SJME_CXX_SQUIRRELJME_SCRITCHUITEXT_H
26 extern "C" {
27 #endif /* #ifdef SJME_CXX_IS_EXTERNED */
28 #endif /* #ifdef __cplusplus */
30 /*--------------------------------------------------------------------------*/
32 /**
33 * Contains the state of the text renderer.
35 * @since 2024/06/26
37 typedef struct sjme_scritchui_textBase* sjme_scritchui_text;
39 /**
40 * Destroys a static text instance.
42 * @param inOutText The input and output text to destroy.
43 * @return Any resultant error, if any.
44 * @since 2024/06/26
46 sjme_errorCode sjme_scritchui_textDeleteStatic(
47 sjme_attrInOutNotNull sjme_scritchui_text inOutText);
49 /**
50 * Initializes a new static text instance.
52 * @param inOutText The input and output text to initialize.
53 * @return Any resultant error, if any.
54 * @since 2024/06/26
56 sjme_errorCode sjme_scritchui_textNewStatic(
57 sjme_attrInOutNotNull sjme_scritchui_text inOutText);
59 /*--------------------------------------------------------------------------*/
61 /* Anti-C++. */
62 #ifdef __cplusplus
63 #ifdef SJME_CXX_SQUIRRELJME_SCRITCHUITEXT_H
65 #undef SJME_CXX_SQUIRRELJME_SCRITCHUITEXT_H
66 #undef SJME_CXX_IS_EXTERNED
67 #endif /* #ifdef SJME_CXX_SQUIRRELJME_SCRITCHUITEXT_H */
68 #endif /* #ifdef __cplusplus */
70 #endif /* SQUIRRELJME_SCRITCHUITEXT_H */