libui-ng
A portable GUI library for C
uiMultilineEntry Struct Reference

A control with a multi line text entry field. More...

#include <ui.h>

Inheritance diagram for uiMultilineEntry:
uiControl

Public Member Functions

char * uiMultilineEntryText (uiMultilineEntry *e)
 Returns the multi line entry's text. More...
 
void uiMultilineEntrySetText (uiMultilineEntry *e, const char *text)
 Sets the multi line entry's text. More...
 
void uiMultilineEntryAppend (uiMultilineEntry *e, const char *text)
 Appends text to the multi line entry's text. More...
 
void uiMultilineEntryOnChanged (uiMultilineEntry *e, void(*f)(uiMultilineEntry *sender, void *senderData), void *data)
 Registers a callback for when the user changes the multi line entry's text. More...
 
int uiMultilineEntryReadOnly (uiMultilineEntry *e)
 Returns whether or not the multi line entry's text can be changed. More...
 
void uiMultilineEntrySetReadOnly (uiMultilineEntry *e, int readonly)
 Sets whether or not the multi line entry's text is read only. More...
 
uiMultilineEntryuiNewMultilineEntry (void)
 Creates a new multi line entry that visually wraps text when lines overflow. More...
 
uiMultilineEntryuiNewNonWrappingMultilineEntry (void)
 Creates a new multi line entry that scrolls horizontally when lines overflow. More...
 
- Public Member Functions inherited from uiControl
void uiControlDestroy (uiControl *c)
 Dispose and free all allocated resources. More...
 
uintptr_t uiControlHandle (uiControl *c)
 Returns the control's OS-level handle. More...
 
uiControluiControlParent (uiControl *c)
 Returns the parent control. More...
 
void uiControlSetParent (uiControl *c, uiControl *parent)
 Sets the control's parent. More...
 
int uiControlToplevel (uiControl *c)
 Returns whether or not the control is a top level control. More...
 
int uiControlVisible (uiControl *c)
 Returns whether or not the control is visible. More...
 
void uiControlShow (uiControl *c)
 Shows the control. More...
 
void uiControlHide (uiControl *c)
 Hides the control. More...
 
int uiControlEnabled (uiControl *c)
 Returns whether or not the control is enabled. More...
 
void uiControlEnable (uiControl *c)
 Enables the control. More...
 
void uiControlDisable (uiControl *c)
 Disables the control. More...
 
uiControluiAllocControl (size_t n, uint32_t OSsig, uint32_t typesig, const char *typenamestr)
 Allocates a uiControl. More...
 
void uiFreeControl (uiControl *c)
 Frees the memory associated with the control reference. More...
 
void uiControlVerifySetParent (uiControl *c, uiControl *parent)
 Makes sure the control's parent can be set to parent. More...
 
int uiControlEnabledToUser (uiControl *c)
 Returns whether or not the control can be interacted with by the user. More...
 

Additional Inherited Members

- Public Attributes inherited from uiControl
uint32_t Signature
 
uint32_t OSSignature
 
uint32_t TypeSignature
 
void(* Destroy )(uiControl *)
 
uintptr_t(* Handle )(uiControl *)
 
uiControl *(* Parent )(uiControl *)
 
void(* SetParent )(uiControl *, uiControl *)
 
int(* Toplevel )(uiControl *)
 
int(* Visible )(uiControl *)
 
void(* Show )(uiControl *)
 
void(* Hide )(uiControl *)
 
int(* Enabled )(uiControl *)
 
void(* Enable )(uiControl *)
 
void(* Disable )(uiControl *)
 

Detailed Description

A control with a multi line text entry field.

Todo:
provide a facility for entering tab stops?

Member Function Documentation

◆ uiMultilineEntryAppend()

void uiMultilineEntryAppend ( uiMultilineEntry e,
const char *  text 
)

Appends text to the multi line entry's text.

Parameters
euiMultilineEntry instance.
textText to append.
A valid, NUL terminated UTF-8 string.
Data is copied internally. Ownership is not transferred.

◆ uiMultilineEntryOnChanged()

void uiMultilineEntryOnChanged ( uiMultilineEntry e,
void(*)(uiMultilineEntry *sender, void *senderData)  f,
void *  data 
)

Registers a callback for when the user changes the multi line entry's text.

Parameters
euiMultilineEntry instance.
fCallback function.
sender Back reference to the instance that initiated the callback.
senderData User data registered with the sender instance.
dataUser data to be passed to the callback.
Note
The callback is not triggered when calling uiMultilineEntrySetText() or uiMultilineEntryAppend().
Only one callback can be registered at a time.

◆ uiMultilineEntryReadOnly()

int uiMultilineEntryReadOnly ( uiMultilineEntry e)

Returns whether or not the multi line entry's text can be changed.

Parameters
euiMultilineEntry instance.
Returns
TRUE if read only, FALSE otherwise. [Default: FALSE]

◆ uiMultilineEntrySetReadOnly()

void uiMultilineEntrySetReadOnly ( uiMultilineEntry e,
int  readonly 
)

Sets whether or not the multi line entry's text is read only.

Parameters
euiMultilineEntry instance.
readonlyTRUE to make read only, FALSE otherwise.

◆ uiMultilineEntrySetText()

void uiMultilineEntrySetText ( uiMultilineEntry e,
const char *  text 
)

Sets the multi line entry's text.

Parameters
euiMultilineEntry instance.
textSingle/multi line text.
A valid, NUL terminated UTF-8 string.
Data is copied internally. Ownership is not transferred.

◆ uiMultilineEntryText()

char * uiMultilineEntryText ( uiMultilineEntry e)

Returns the multi line entry's text.

Parameters
euiMultilineEntry instance.
Returns
The containing text.
A NUL terminated UTF-8 string.
Caller is responsible for freeing the data with uiFreeText().

◆ uiNewMultilineEntry()

uiMultilineEntry * uiNewMultilineEntry ( void  )

Creates a new multi line entry that visually wraps text when lines overflow.

Returns
A new uiMultilineEntry instance.

◆ uiNewNonWrappingMultilineEntry()

uiMultilineEntry * uiNewNonWrappingMultilineEntry ( void  )

Creates a new multi line entry that scrolls horizontally when lines overflow.

Remarks
Windows does not allow for this style to be changed after creation, hence the two constructors.
Returns
A new uiMultilineEntry instance.

The documentation for this struct was generated from the following file: