Spellforce-Spell-framework
Loading...
Searching...
No Matches
sf_ui_functions.h File Reference

Header file for defining User Interface. More...

Include dependency graph for sf_ui_functions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  UiFunctions
 Group of functions related to UI manipulation. More...

Typedefs

typedef CMnuContainer *(__thiscall * createContainer_ptr) (uint16_t x, uint16_t y, uint16_t width, uint16_t height, const char *background_msb, const char *border_msb, float alpha)
typedef CMnuLabel *(__thiscall * attachMeshedLabel_ptr) (CMnuLabel *new_label, CMnuContainer *parent, char *mesh_char, char *label_char, uint8_t font_index, uint16_t x_pos, uint16_t y_pos, uint16_t width, uint16_t height)
typedef CMnuLabel *(__thiscall * attachLabel_ptr) (CMnuLabel *label_ptr, CMnuContainer *parent, char *label_chars, uint8_t font_index, uint16_t x_pos, uint16_t y_pos, uint16_t width, uint16_t height)
typedef void(__thiscall * updateLabelText_ptr) (CMnuLabel *label, const char *text)
typedef void(__thiscall * destroyLabel_ptr) (CMnuLabel *label)
typedef CMnuSmpButton *(__thiscall * attachNewButton_ptr) (CMnuContainer *parent, char *button_mesh_default, char *button_mesh_pressed, char *button_initial_load_mesh, char *button_mesh_disabled, char *label_char, uint8_t font_index, uint16_t x_pos, uint16_t y_pos, uint16_t width, uint16_t height, int button_index, uint32_t callback_func_ptr)
typedef void(__thiscall * destroyButton_ptr) (CMnuSmpButton *button)
typedef void(__thiscall * destroyContainer_ptr) (CMnuContainer *container)
typedef void(__thiscall * setElementAlpha_ptr) (void *_this, float alpha)
typedef uint32_t(__thiscall * getVisualControl_ptr) (CMnuContainer *_this)
typedef void(__thiscall * setFont_ptr) (void *_this, void *input)
typedef void(__thiscall * setBaseAlpha_ptr) (void *_this, float alpha)
typedef void(__thiscall * initializeMenuContainer_ptr) (CMnuContainer *_this)
typedef void(__thiscall * setupMenuContainerData_ptr) (CMnuContainer *_this, float x, float y, float width, float height, SF_String *background, SF_String *border)
typedef CMnuSmpButton *(__thiscall * initializeSmpButton_ptr) (CMnuSmpButton *btn)
typedef void(__thiscall * createButton_ptr) (CMnuSmpButton *smpButton, float x_pos, float y_pos, float width, float height, SF_String *default_mesh, SF_String *unkn_mesh_string, SF_String *pressed_mesh, SF_String *disable_mesh)
typedef void(__thiscall * setButtonIndex_ptr) (void *, int index)
typedef void(__thiscall * setMenuButtonFlag_ptr) (void *container, char flag)
typedef void(__thiscall * attachCallback_ptr) (void *, void *, void *, void *)
typedef void(__thiscall * vfunction16AttachCallback_ptr) (void *_this, char p1)
typedef void(__thiscall * vfunction176_ptr) (void *_this, char p1)
typedef void(__thiscall * vfunction25_ptr) (void *_this, char p1)
typedef void(__thiscall * CMnuBaseSetName_ptr) (CMnuBase *_this, SF_String *name)
typedef void(__thiscall * setButtonName_ptr) (void *button, SF_String *string)
typedef void(__thiscall * setMenuID_ptr) (void *container, uint32_t id)
typedef void(__thiscall * setContainerVisible_ptr) (void *container, uint32_t visible, uint8_t _unknown)
typedef void(__thiscall * setLabelColour_ptr) (CMnuLabel *_this, float r, float g, float b, char flag)
typedef void(__thiscall * containerAddControl_ptr) (CMnuContainer *_this, CMnuBase *CMnubase, char c1, char c2, uint32_t p4)
typedef void(__thiscall * menuLabelConstructor_ptr) (CMnuLabel *_this)
typedef void(__thiscall * initMenuElement_ptr) (void *_this, float xpos, float ypos, float width, float height, SF_String *string)
typedef SF_FontStruct *(__thiscall * getFonts_ptr) (void)
typedef void(__thiscall * menuLabelSetFont_ptr) (void *_this, SF_Font *font)
typedef void(__thiscall * menuLabelSetString_ptr) (CMnuLabel *_this, SF_String *string)
typedef SF_Font *(__thiscall * getFont_ptr) (SF_FontStruct *_this, uint32_t font_id)
typedef uint32_t(__thiscall * setScreenName_ptr) (void *_this, SF_String *name)
typedef void(__thiscall * vfunction175_ptr) (CMnuLabel *_this, uint8_t param_1)
typedef void(__thiscall * setCanFocus_ptr) (CMnuBase *_this, uint8_t value)
typedef void(__thiscall * attachControlToScreen_ptr) (void *_this, CMnuBase *param_1, uint8_t param_2)
typedef void(__thiscall * vfunction12_ptr) (CMnuBase *_this, float param_1, uint8_t param_2)
typedef void(__thiscall * bringToFront_ptr) (CMnuContainer *_this, void *param_1)
typedef void(__thiscall * vfunction163_ptr) (CMnuContainer *_this, void *param_1)
typedef void *(__cdecl * newOperator_ptr) (uint32_t size)
 operator new (global allocator). Declared manually (not via DECLARE_FUNCTION) because the real symbol is __cdecl - DECLARE_FUNCTION always generates __thiscall, which would pass the size argument in ECX instead of on the stack and corrupt every allocation.
typedef uint32_t(__cdecl * SFprintf_ptr) (SF_String *_this, const wchar_t *format,...)
 printf-style formatting into an SF_String. Declared manually (not via DECLARE_FUNCTION) because the real symbol is variadic and therefore __cdecl - DECLARE_FUNCTION always generates __thiscall and would corrupt the stack.
typedef SF_String *(__thiscall * SFStringConcat_ptr) (SF_String *destination, SF_String *source)
 Appends source to destination.
typedef SF_String *(__thiscall * SFStringConcatMulti_ptr) (SF_String *_this, SF_String *destination, SF_String *source)
typedef void(__thiscall * SFStringSetLength_ptr) (SF_String *_this, uint32_t length)
 (Re)allocates the string buffer to hold the given length.
typedef SF_String *(__thiscall * SFStringFromWchar_ptr) (SF_String *_this, wchar_t value, uint32_t length)
 Fills the string with length repetitions of the given wide char.
typedef void(__thiscall * SFStringDestructor_ptr) (SF_String *_this)
 Frees the string's buffers. Call on every SF_String you constructed.
typedef SF_String *(__thiscall * SFStringCopy_ptr) (SF_String *destination, SF_String *source)
 Shallow copy of source into destination.
typedef SF_String *(__thiscall * SFStringDeepCopy_ptr) (SF_String *destination, SF_String *source)
 Deep copy of source into destination (duplicates the buffer).
typedef char *(__thiscall * SFStringCMbStr_ptr) (SF_String *source)
 Returns the multibyte (char) representation of the string.
typedef void(__thiscall * SFStringConstructor_ptr) (SF_String *_this)
 zero-initializes an SF_String (no allocation).
typedef SF_String *(__thiscall * SFStringConstructor_char_ptr) (SF_String *_this, const char *char_string)
 constructs an SF_String from a null-terminated char string.
typedef SF_String *(__thiscall * SFStringConstructor_wchar_ptr) (SF_String *_this, const wchar_t *value)
typedef uint32_t(__thiscall * vfunction187_ptr) (void *_this, SF_String *name)
typedef void(__thiscall * vfunction207_ptr) (void *_this, CMnuBase *param_1, uint8_t param_2)

Detailed Description

Header file for defining User Interface.

This file provides the necessary data structures and function declarations used to interact with the game's graphical user interface.

Definition in file sf_ui_functions.h.

Typedef Documentation

◆ attachCallback_ptr

typedef void(__thiscall * attachCallback_ptr) (void *, void *, void *, void *)

Definition at line 77 of file sf_ui_functions.h.

◆ attachControlToScreen_ptr

typedef void(__thiscall * attachControlToScreen_ptr) (void *_this, CMnuBase *param_1, uint8_t param_2)

Definition at line 105 of file sf_ui_functions.h.

◆ attachLabel_ptr

typedef CMnuLabel *(__thiscall * attachLabel_ptr) (CMnuLabel *label_ptr, CMnuContainer *parent, char *label_chars, uint8_t font_index, uint16_t x_pos, uint16_t y_pos, uint16_t width, uint16_t height)

Definition at line 24 of file sf_ui_functions.h.

◆ attachMeshedLabel_ptr

typedef CMnuLabel *(__thiscall * attachMeshedLabel_ptr) (CMnuLabel *new_label, CMnuContainer *parent, char *mesh_char, char *label_char, uint8_t font_index, uint16_t x_pos, uint16_t y_pos, uint16_t width, uint16_t height)

Definition at line 19 of file sf_ui_functions.h.

◆ attachNewButton_ptr

typedef CMnuSmpButton *(__thiscall * attachNewButton_ptr) (CMnuContainer *parent, char *button_mesh_default, char *button_mesh_pressed, char *button_initial_load_mesh, char *button_mesh_disabled, char *label_char, uint8_t font_index, uint16_t x_pos, uint16_t y_pos, uint16_t width, uint16_t height, int button_index, uint32_t callback_func_ptr)

Definition at line 38 of file sf_ui_functions.h.

◆ bringToFront_ptr

typedef void(__thiscall * bringToFront_ptr) (CMnuContainer *_this, void *param_1)

Definition at line 107 of file sf_ui_functions.h.

◆ CMnuBaseSetName_ptr

typedef void(__thiscall * CMnuBaseSetName_ptr) (CMnuBase *_this, SF_String *name)

Definition at line 85 of file sf_ui_functions.h.

◆ containerAddControl_ptr

typedef void(__thiscall * containerAddControl_ptr) (CMnuContainer *_this, CMnuBase *CMnubase, char c1, char c2, uint32_t p4)

Definition at line 94 of file sf_ui_functions.h.

◆ createButton_ptr

typedef void(__thiscall * createButton_ptr) (CMnuSmpButton *smpButton, float x_pos, float y_pos, float width, float height, SF_String *default_mesh, SF_String *unkn_mesh_string, SF_String *pressed_mesh, SF_String *disable_mesh)

Definition at line 71 of file sf_ui_functions.h.

◆ createContainer_ptr

typedef CMnuContainer *(__thiscall * createContainer_ptr) (uint16_t x, uint16_t y, uint16_t width, uint16_t height, const char *background_msb, const char *border_msb, float alpha)

Definition at line 14 of file sf_ui_functions.h.

◆ destroyButton_ptr

typedef void(__thiscall * destroyButton_ptr) (CMnuSmpButton *button)

Definition at line 41 of file sf_ui_functions.h.

◆ destroyContainer_ptr

typedef void(__thiscall * destroyContainer_ptr) (CMnuContainer *container)

Definition at line 44 of file sf_ui_functions.h.

◆ destroyLabel_ptr

typedef void(__thiscall * destroyLabel_ptr) (CMnuLabel *label)

Definition at line 30 of file sf_ui_functions.h.

◆ getFont_ptr

typedef SF_Font *(__thiscall * getFont_ptr) (SF_FontStruct *_this, uint32_t font_id)

Definition at line 101 of file sf_ui_functions.h.

◆ getFonts_ptr

typedef SF_FontStruct *(__thiscall * getFonts_ptr) (void)

Definition at line 98 of file sf_ui_functions.h.

◆ getVisualControl_ptr

typedef uint32_t(__thiscall * getVisualControl_ptr) (CMnuContainer *_this)

Definition at line 50 of file sf_ui_functions.h.

◆ initializeMenuContainer_ptr

typedef void(__thiscall * initializeMenuContainer_ptr) (CMnuContainer *_this)

Definition at line 56 of file sf_ui_functions.h.

◆ initializeSmpButton_ptr

typedef CMnuSmpButton *(__thiscall * initializeSmpButton_ptr) (CMnuSmpButton *btn)

Definition at line 63 of file sf_ui_functions.h.

◆ initMenuElement_ptr

typedef void(__thiscall * initMenuElement_ptr) (void *_this, float xpos, float ypos, float width, float height, SF_String *string)

Definition at line 97 of file sf_ui_functions.h.

◆ menuLabelConstructor_ptr

typedef void(__thiscall * menuLabelConstructor_ptr) (CMnuLabel *_this)

Definition at line 95 of file sf_ui_functions.h.

◆ menuLabelSetFont_ptr

typedef void(__thiscall * menuLabelSetFont_ptr) (void *_this, SF_Font *font)

Definition at line 99 of file sf_ui_functions.h.

◆ menuLabelSetString_ptr

typedef void(__thiscall * menuLabelSetString_ptr) (CMnuLabel *_this, SF_String *string)

Definition at line 100 of file sf_ui_functions.h.

◆ newOperator_ptr

typedef void *(__cdecl * newOperator_ptr) (uint32_t size)

operator new (global allocator). Declared manually (not via DECLARE_FUNCTION) because the real symbol is __cdecl - DECLARE_FUNCTION always generates __thiscall, which would pass the size argument in ECX instead of on the stack and corrupt every allocation.

Definition at line 116 of file sf_ui_functions.h.

◆ setBaseAlpha_ptr

typedef void(__thiscall * setBaseAlpha_ptr) (void *_this, float alpha)

Definition at line 55 of file sf_ui_functions.h.

◆ setButtonIndex_ptr

typedef void(__thiscall * setButtonIndex_ptr) (void *, int index)

Definition at line 73 of file sf_ui_functions.h.

◆ setButtonName_ptr

typedef void(__thiscall * setButtonName_ptr) (void *button, SF_String *string)

Definition at line 87 of file sf_ui_functions.h.

◆ setCanFocus_ptr

typedef void(__thiscall * setCanFocus_ptr) (CMnuBase *_this, uint8_t value)

Definition at line 104 of file sf_ui_functions.h.

◆ setContainerVisible_ptr

typedef void(__thiscall * setContainerVisible_ptr) (void *container, uint32_t visible, uint8_t _unknown)

Definition at line 91 of file sf_ui_functions.h.

◆ setElementAlpha_ptr

typedef void(__thiscall * setElementAlpha_ptr) (void *_this, float alpha)

Definition at line 47 of file sf_ui_functions.h.

◆ setFont_ptr

typedef void(__thiscall * setFont_ptr) (void *_this, void *input)

Definition at line 53 of file sf_ui_functions.h.

◆ setLabelColour_ptr

typedef void(__thiscall * setLabelColour_ptr) (CMnuLabel *_this, float r, float g, float b, char flag)

Definition at line 92 of file sf_ui_functions.h.

◆ setMenuButtonFlag_ptr

typedef void(__thiscall * setMenuButtonFlag_ptr) (void *container, char flag)

Definition at line 75 of file sf_ui_functions.h.

◆ setMenuID_ptr

typedef void(__thiscall * setMenuID_ptr) (void *container, uint32_t id)

Definition at line 89 of file sf_ui_functions.h.

◆ setScreenName_ptr

typedef uint32_t(__thiscall * setScreenName_ptr) (void *_this, SF_String *name)

Definition at line 102 of file sf_ui_functions.h.

◆ setupMenuContainerData_ptr

typedef void(__thiscall * setupMenuContainerData_ptr) (CMnuContainer *_this, float x, float y, float width, float height, SF_String *background, SF_String *border)

Definition at line 61 of file sf_ui_functions.h.

◆ SFprintf_ptr

typedef uint32_t(__cdecl * SFprintf_ptr) (SF_String *_this, const wchar_t *format,...)

printf-style formatting into an SF_String. Declared manually (not via DECLARE_FUNCTION) because the real symbol is variadic and therefore __cdecl - DECLARE_FUNCTION always generates __thiscall and would corrupt the stack.

Note
Format string is wide (L"..."). s expects wchar_t data (raw_data).

Definition at line 125 of file sf_ui_functions.h.

◆ SFStringCMbStr_ptr

typedef char *(__thiscall * SFStringCMbStr_ptr) (SF_String *source)

Returns the multibyte (char) representation of the string.

Definition at line 142 of file sf_ui_functions.h.

◆ SFStringConcat_ptr

typedef SF_String *(__thiscall * SFStringConcat_ptr) (SF_String *destination, SF_String *source)

Appends source to destination.

Definition at line 129 of file sf_ui_functions.h.

◆ SFStringConcatMulti_ptr

typedef SF_String *(__thiscall * SFStringConcatMulti_ptr) (SF_String *_this, SF_String *destination, SF_String *source)

Definition at line 130 of file sf_ui_functions.h.

◆ SFStringConstructor_char_ptr

typedef SF_String *(__thiscall * SFStringConstructor_char_ptr) (SF_String *_this, const char *char_string)

constructs an SF_String from a null-terminated char string.

Definition at line 146 of file sf_ui_functions.h.

◆ SFStringConstructor_ptr

typedef void(__thiscall * SFStringConstructor_ptr) (SF_String *_this)

zero-initializes an SF_String (no allocation).

Definition at line 144 of file sf_ui_functions.h.

◆ SFStringConstructor_wchar_ptr

typedef SF_String *(__thiscall * SFStringConstructor_wchar_ptr) (SF_String *_this, const wchar_t *value)

Definition at line 147 of file sf_ui_functions.h.

◆ SFStringCopy_ptr

typedef SF_String *(__thiscall * SFStringCopy_ptr) (SF_String *destination, SF_String *source)

Shallow copy of source into destination.

Definition at line 138 of file sf_ui_functions.h.

◆ SFStringDeepCopy_ptr

typedef SF_String *(__thiscall * SFStringDeepCopy_ptr) (SF_String *destination, SF_String *source)

Deep copy of source into destination (duplicates the buffer).

Definition at line 140 of file sf_ui_functions.h.

◆ SFStringDestructor_ptr

typedef void(__thiscall * SFStringDestructor_ptr) (SF_String *_this)

Frees the string's buffers. Call on every SF_String you constructed.

Definition at line 136 of file sf_ui_functions.h.

◆ SFStringFromWchar_ptr

typedef SF_String *(__thiscall * SFStringFromWchar_ptr) (SF_String *_this, wchar_t value, uint32_t length)

Fills the string with length repetitions of the given wide char.

Definition at line 134 of file sf_ui_functions.h.

◆ SFStringSetLength_ptr

typedef void(__thiscall * SFStringSetLength_ptr) (SF_String *_this, uint32_t length)

(Re)allocates the string buffer to hold the given length.

Definition at line 132 of file sf_ui_functions.h.

◆ updateLabelText_ptr

typedef void(__thiscall * updateLabelText_ptr) (CMnuLabel *label, const char *text)

Definition at line 27 of file sf_ui_functions.h.

◆ vfunction12_ptr

typedef void(__thiscall * vfunction12_ptr) (CMnuBase *_this, float param_1, uint8_t param_2)

Definition at line 106 of file sf_ui_functions.h.

◆ vfunction163_ptr

typedef void(__thiscall * vfunction163_ptr) (CMnuContainer *_this, void *param_1)

Definition at line 108 of file sf_ui_functions.h.

◆ vfunction16AttachCallback_ptr

typedef void(__thiscall * vfunction16AttachCallback_ptr) (void *_this, char p1)

Definition at line 79 of file sf_ui_functions.h.

◆ vfunction175_ptr

typedef void(__thiscall * vfunction175_ptr) (CMnuLabel *_this, uint8_t param_1)

Definition at line 103 of file sf_ui_functions.h.

◆ vfunction176_ptr

typedef void(__thiscall * vfunction176_ptr) (void *_this, char p1)

Definition at line 81 of file sf_ui_functions.h.

◆ vfunction187_ptr

typedef uint32_t(__thiscall * vfunction187_ptr) (void *_this, SF_String *name)

Definition at line 149 of file sf_ui_functions.h.

◆ vfunction207_ptr

typedef void(__thiscall * vfunction207_ptr) (void *_this, CMnuBase *param_1, uint8_t param_2)

Definition at line 151 of file sf_ui_functions.h.

◆ vfunction25_ptr

typedef void(__thiscall * vfunction25_ptr) (void *_this, char p1)

Definition at line 83 of file sf_ui_functions.h.