Started the header file for attributed strings, drawing text layouts, and the new text system in general.
This commit is contained in:
parent
e9fdbf33f3
commit
3f48bddce0
|
@ -0,0 +1,30 @@
|
|||
typedef struct uiAttributedString uiAttributedString;
|
||||
|
||||
_UI_ENUM(uiAttribute) {
|
||||
// TODO
|
||||
};
|
||||
|
||||
// @role uiAttributedString constructor
|
||||
// uiNewAttributedString() creates a new uiAttributedString from
|
||||
// initialString. The string will be entirely unattributed.
|
||||
_UI_EXTERN uiAttributedString *uiNewAttributedString(const char *initialString);
|
||||
|
||||
// @role uiAttributedString destructor
|
||||
// uiFreeAttributedString() destroys the uiAttributedString s.
|
||||
_UI_EXTERN void uiFreeAttributedString(uiAttributedString *s);
|
||||
|
||||
// uiAttributedStringString() returns the textual content of s as a
|
||||
// '\0'-terminated UTF-8 string. The returned pointer is valid until
|
||||
// the next change to the textual content of s.
|
||||
_UI_EXTERN const char *uiAttributedStringString(uiAttributedString *s);
|
||||
|
||||
// uiAttributedStringLength() returns the number of UTF-8 bytes in
|
||||
// the textual content of s, excluding the terminating '\0'.
|
||||
_UI_EXTERN size_t uiAttributedStringLen(uiAttributedString *s);
|
||||
|
||||
_UI_EXTERN void uiAttributedStringAppendUnattributed(uiAttributedString *s, const char *str);
|
||||
_UI_EXTERN void uiAttributedStringInsertAtUnattributed(uiAttributedString *s, const char *str, size_t at);
|
||||
_UI_EXTERN void uiAttributedStringDelete(uiAttributedString *s, size_t start, size_t end);
|
||||
_UI_EXTERN size_t uiAttributedStringNumGraphemes(uiAttributedString *s);
|
||||
_UI_EXTERN size_t uiAttributedStringByteIndexToGrapheme(uiAttributedString *s, size_t pos);
|
||||
_UI_EXTERN size_t uiAttributedStringGraphemeToByteIndex(uiAttributedString *s, size_t pos);
|
Loading…
Reference in New Issue