mirror of
https://github.com/thunderbrewhq/binana.git
synced 2025-12-12 17:52:29 +00:00
feat(profile): added definitions for a handful of UI objects
This commit is contained in:
parent
ac20b7a227
commit
8ff5db67f2
39 changed files with 4484 additions and 183 deletions
37
profile/3.3.5a-windows/include/ui/backdropgenerator.h
Normal file
37
profile/3.3.5a-windows/include/ui/backdropgenerator.h
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
#ifndef UI_BACKDROP_GENERATOR_H
|
||||
#define UI_BACKDROP_GENERATOR_H
|
||||
|
||||
#include "tempest/vector.h"
|
||||
#include "ui/simpletexture.h"
|
||||
|
||||
struct CBackdropGenerator {
|
||||
CSimpleTexture* m_backgroundTexture;
|
||||
CSimpleTexture* m_leftTexture;
|
||||
CSimpleTexture* m_rightTexture;
|
||||
CSimpleTexture* m_topTexture;
|
||||
CSimpleTexture* m_bottomTexture;
|
||||
CSimpleTexture* m_topLeftTexture;
|
||||
CSimpleTexture* m_topRightTexture;
|
||||
CSimpleTexture* m_bottomLeftTexture;
|
||||
CSimpleTexture* m_bottomRightTexture;
|
||||
uint32_t dword24;
|
||||
uint32_t dword28;
|
||||
uint32_t dword2C;
|
||||
uint32_t dword30;
|
||||
uint32_t dword34;
|
||||
uint32_t dword38;
|
||||
uint32_t dword3C;
|
||||
uint32_t dword40;
|
||||
uint32_t dword44;
|
||||
uint32_t dword48;
|
||||
uint32_t dword4C;
|
||||
uint32_t dword50;
|
||||
uint32_t dword54;
|
||||
uint32_t dword58;
|
||||
uint32_t dword5C;
|
||||
uint32_t dword60;
|
||||
CImVector m_borderColor;
|
||||
uint32_t dword68;
|
||||
};
|
||||
|
||||
#endif
|
||||
59
profile/3.3.5a-windows/include/ui/layoutframe.h
Normal file
59
profile/3.3.5a-windows/include/ui/layoutframe.h
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
#ifndef UI_LAYOUT_FRAME_H
|
||||
#define UI_LAYOUT_FRAME_H
|
||||
|
||||
#include "tempest/rect.h"
|
||||
#include "storm/list.h"
|
||||
|
||||
DECLARE_STRUCT(CLayoutFrame__FRAMENODE);
|
||||
DECLARE_STRUCT(CLayoutFrame_vtable);
|
||||
DECLARE_STRUCT(CLayoutFrame);
|
||||
|
||||
STORM_TS_LIST(CLayoutFrame__FRAMENODE);
|
||||
|
||||
struct CLayoutFrame__FRAMENODE {
|
||||
TSLinkedNode_CLayoutFrame__FRAMENODE b_base;
|
||||
CLayoutFrame* frame;
|
||||
uint32_t dep;
|
||||
};
|
||||
|
||||
struct CLayoutFrame_vtable {
|
||||
void* v_fn_00;
|
||||
void* v_fn_01;
|
||||
void* v_fn_02;
|
||||
void* v_fn_03;
|
||||
void* v_fn_04;
|
||||
void* v_fn_05;
|
||||
void* v_fn_06;
|
||||
void* v_fn_07;
|
||||
void* v_fn_08;
|
||||
void* v_fn_09;
|
||||
void* v_fn_10;
|
||||
void* v_fn_11;
|
||||
void* v_fn_12;
|
||||
void* v_fn_13;
|
||||
void* v_fn_14;
|
||||
void* v_fn_15;
|
||||
void* v_fn_16;
|
||||
void* v_fn_17;
|
||||
void* v_fn_18;
|
||||
};
|
||||
|
||||
struct CLayoutFrame {
|
||||
CLayoutFrame_vtable* v_vtable;
|
||||
uint32_t resizeLink[2];
|
||||
void* m_points[9];
|
||||
TSList_CLayoutFrame__FRAMENODE m_resizeList;
|
||||
uint32_t m_guard;
|
||||
uint32_t m_flags;
|
||||
CRect m_rect;
|
||||
float m_width;
|
||||
float m_height;
|
||||
float m_layoutScale;
|
||||
float m_layoutDepth;
|
||||
float float64;
|
||||
float float68;
|
||||
float float6C;
|
||||
float float70;
|
||||
};
|
||||
|
||||
#endif
|
||||
28
profile/3.3.5a-windows/include/ui/renderbatch.h
Normal file
28
profile/3.3.5a-windows/include/ui/renderbatch.h
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
#ifndef UI_RENDER_BATCH_H
|
||||
#define UI_RENDER_BATCH_H
|
||||
|
||||
#include "system/types.h"
|
||||
#include "ui/simplebatchedmesh.h"
|
||||
#include "gx/stringbatch.h"
|
||||
|
||||
DECLARE_STRUCT(CRenderBatch);
|
||||
DECLARE_STRUCT(RENDERCALLBACKNODE);
|
||||
|
||||
STORM_TS_LIST(RENDERCALLBACKNODE);
|
||||
STORM_TS_LIST(CRenderBatch);
|
||||
|
||||
// struct RENDERCALLBACKNODE : TSLinkedNode<RENDERCALLBACKNODE>
|
||||
struct RENDERCALLBACKNODE {
|
||||
void* callback;
|
||||
void* param;
|
||||
};
|
||||
|
||||
struct CRenderBatch {
|
||||
uint32_t m_count;
|
||||
TSGrowableArray_CSimpleBatchedMesh m_texturelist;
|
||||
CGxStringBatch* m_stringbatch;
|
||||
TSList_RENDERCALLBACKNODE m_callbacks;
|
||||
TSLink_CRenderBatch renderLink;
|
||||
};
|
||||
|
||||
#endif
|
||||
15
profile/3.3.5a-windows/include/ui/scriptobject.h
Normal file
15
profile/3.3.5a-windows/include/ui/scriptobject.h
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
#ifndef UI_SCRIPT_OBJECT_H
|
||||
#define UI_SCRIPT_OBJECT_H
|
||||
|
||||
#include "common/rcstring.h"
|
||||
#include "framescript/object.h"
|
||||
|
||||
DECLARE_STRUCT(CScriptObject);
|
||||
|
||||
// struct CScriptObject : FrameScript_Object {
|
||||
struct CScriptObject {
|
||||
FrameScript_Object b_base;
|
||||
RCString m_name;
|
||||
};
|
||||
|
||||
#endif
|
||||
21
profile/3.3.5a-windows/include/ui/scriptregion.h
Normal file
21
profile/3.3.5a-windows/include/ui/scriptregion.h
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
#ifndef UI_SCRIPT_REGION_H
|
||||
#define UI_SCRIPT_REGION_H
|
||||
|
||||
#include "ui/simpleframe.h"
|
||||
#include "ui/scriptobject.h"
|
||||
#include "ui/layoutframe.h"
|
||||
|
||||
DECLARE_STRUCT(CScriptRegion);
|
||||
// forward declare to avoid problems
|
||||
DECLARE_STRUCT(CSimpleFrame);
|
||||
|
||||
// struct CScriptRegion : CScriptObject, CLayoutFrame {
|
||||
struct CScriptRegion {
|
||||
CScriptObject b_base_01;
|
||||
CLayoutFrame b_base_02;
|
||||
CSimpleFrame* m_parent;
|
||||
void* m_animGroups;
|
||||
uint32_t scriptregion_dword8;
|
||||
};
|
||||
|
||||
#endif
|
||||
29
profile/3.3.5a-windows/include/ui/simplebatchedmesh.h
Normal file
29
profile/3.3.5a-windows/include/ui/simplebatchedmesh.h
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
#ifndef UI_SIMPLE_BATCHED_MESH_H
|
||||
#define UI_SIMPLE_BATCHED_MESH_H
|
||||
|
||||
#include "texture/texture.h"
|
||||
#include "gx/texture.h"
|
||||
#include "gx/shader.h"
|
||||
#include "tempest/vector.h"
|
||||
|
||||
DECLARE_STRUCT(CSimpleBatchedMesh);
|
||||
|
||||
struct CSimpleBatchedMesh {
|
||||
CTexture* texture;
|
||||
CGxTex* textureID;
|
||||
EGxBlend alphaMode;
|
||||
CGxShader* shader;
|
||||
int32_t posCount;
|
||||
C3Vector* position;
|
||||
C2Vector* texCoord;
|
||||
CImVector* color;
|
||||
int32_t colorCount;
|
||||
uint16_t* indices;
|
||||
int32_t idxCount;
|
||||
int32_t onAtlas;
|
||||
float atlasScale;
|
||||
C2Vector atlasOffset;
|
||||
};
|
||||
STORM_TS_GROWABLE_ARRAY(CSimpleBatchedMesh);
|
||||
|
||||
#endif
|
||||
|
|
@ -1,9 +1,88 @@
|
|||
#ifndef UI_SIMPLE_FRAME_H
|
||||
#define UI_SIMPLE_FRAME_H
|
||||
|
||||
DECLARE_STRUCT(CSimpleFrame);
|
||||
#include "storm/list.h"
|
||||
#include "tempest/rect.h"
|
||||
#include "tempest/vector.h"
|
||||
|
||||
DECLARE_STRUCT(CSimpleFrame);
|
||||
DECLARE_STRUCT(SIMPLEFRAMENODE);
|
||||
|
||||
STORM_TS_LIST(SIMPLEFRAMENODE);
|
||||
|
||||
#include "ui/scriptregion.h"
|
||||
#include "ui/backdropgenerator.h"
|
||||
#include "ui/renderbatch.h"
|
||||
|
||||
DECLARE_STRUCT(CBackdropGenerator);
|
||||
|
||||
// struct CSimpleFrame : CScriptRegion {
|
||||
struct CSimpleFrame {
|
||||
CScriptRegion b_base;
|
||||
void* m_top;
|
||||
CSimpleFrame* m_tooltip;
|
||||
CScriptRegion* m_titleRegion;
|
||||
int32_t m_intAC;
|
||||
int32_t m_id;
|
||||
uint32_t m_flags;
|
||||
float m_frameScale;
|
||||
uint32_t dwordBC;
|
||||
uint32_t dwordC0;
|
||||
float m_floatC4;
|
||||
float m_floatC8;
|
||||
uint32_t dwordCC;
|
||||
int32_t m_strata;
|
||||
int32_t m_level;
|
||||
uint32_t m_eventmask;
|
||||
int32_t m_shown;
|
||||
int32_t m_visible;
|
||||
CRect m_hitRect;
|
||||
CRect m_hitOffset;
|
||||
uint32_t simpleframe_unk9[4];
|
||||
int32_t m_highlightLocked;
|
||||
uint32_t m_lookForDrag;
|
||||
int32_t m_mouseDown;
|
||||
int32_t m_dragging;
|
||||
int32_t m_dragButton;
|
||||
C2Vector m_clickPoint;
|
||||
int32_t m_loading;
|
||||
FrameScript_Object__ScriptIx m_onLoad;
|
||||
FrameScript_Object__ScriptIx m_onSizeChanged;
|
||||
FrameScript_Object__ScriptIx m_onUpdate;
|
||||
FrameScript_Object__ScriptIx m_onShow;
|
||||
FrameScript_Object__ScriptIx m_onHide;
|
||||
FrameScript_Object__ScriptIx m_onEnter;
|
||||
FrameScript_Object__ScriptIx m_onLeave;
|
||||
FrameScript_Object__ScriptIx m_onMouseDown;
|
||||
FrameScript_Object__ScriptIx m_onMouseUp;
|
||||
FrameScript_Object__ScriptIx m_onMouseWheel;
|
||||
FrameScript_Object__ScriptIx m_onDragStart;
|
||||
FrameScript_Object__ScriptIx m_onDragStop;
|
||||
FrameScript_Object__ScriptIx m_onReceiveDrag;
|
||||
FrameScript_Object__ScriptIx m_onChar;
|
||||
FrameScript_Object__ScriptIx m_onKeyDown;
|
||||
FrameScript_Object__ScriptIx m_onKeyUp;
|
||||
FrameScript_Object__ScriptIx m_onAttributeChange;
|
||||
FrameScript_Object__ScriptIx m_onEnable;
|
||||
FrameScript_Object__ScriptIx m_onDisable;
|
||||
uint32_t m_attributes[10];
|
||||
int32_t m_drawenabled[5];
|
||||
CBackdropGenerator* m_backdrop;
|
||||
uint32_t m_regions[3];
|
||||
uint32_t m_drawlayers[15];
|
||||
uint32_t m_batchDirty;
|
||||
void* m_batch[5];
|
||||
TSExplicitList_CRenderBatch m_renderList;
|
||||
uint32_t m_children[3];
|
||||
uint32_t m_framesLink[2];
|
||||
uint32_t m_destroyedLink[2];
|
||||
uint32_t m_strataLink[2];
|
||||
};
|
||||
|
||||
// struct SIMPLEFRAMENODE : TSLinkedNode<SIMPLEFRAMENODE>
|
||||
struct SIMPLEFRAMENODE {
|
||||
TSLinkedNode_SIMPLEFRAMENODE b_base;
|
||||
CSimpleFrame* frame;
|
||||
};
|
||||
|
||||
#endif
|
||||
21
profile/3.3.5a-windows/include/ui/simpleregion.h
Normal file
21
profile/3.3.5a-windows/include/ui/simpleregion.h
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
#ifndef UI_SIMPLE_REGION_H
|
||||
#define UI_SIMPLE_REGION_H
|
||||
|
||||
#include "ui/scriptregion.h"
|
||||
|
||||
DECLARE_STRUCT(CSimpleRegion);
|
||||
|
||||
// struct CSimpleRegion : CScriptRegion
|
||||
struct CSimpleRegion {
|
||||
CScriptRegion b_base;
|
||||
int32_t m_numAlpha;
|
||||
uint8_t m_alpha[4];
|
||||
int32_t m_numColor;
|
||||
CImVector m_color[4];
|
||||
uint32_t m_regionLink[2];
|
||||
uint32_t m_drawLink[2];
|
||||
uint16_t m_regionFlags;
|
||||
uint16_t padding;
|
||||
};
|
||||
|
||||
#endif
|
||||
22
profile/3.3.5a-windows/include/ui/simpletexture.h
Normal file
22
profile/3.3.5a-windows/include/ui/simpletexture.h
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
#ifndef UI_SIMPLE_TEXTURE_H
|
||||
#define UI_SIMPLE_TEXTURE_H
|
||||
|
||||
#include "ui/simpleregion.h"
|
||||
#include "texture/texture.h"
|
||||
|
||||
DECLARE_STRUCT(CSimpleTexture);
|
||||
|
||||
// struct CSimpleTexture : CSimpleRegion {
|
||||
struct CSimpleTexture {
|
||||
CSimpleRegion b_base;
|
||||
uint32_t dwordD0;
|
||||
CTexture* m_texture;
|
||||
uint32_t m_alphaMode;
|
||||
void* m_shader;
|
||||
C3Vector m_position[4];
|
||||
C3Vector m_position2[4];
|
||||
C2Vector m_texCoord[4];
|
||||
uint32_t dword160;
|
||||
};
|
||||
|
||||
#endif
|
||||
67
profile/3.3.5a-windows/include/ui/simpletop.h
Normal file
67
profile/3.3.5a-windows/include/ui/simpletop.h
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
#ifndef UI_SIMPLE_TOP_H
|
||||
#define UI_SIMPLE_TOP_H
|
||||
|
||||
#include "event/types.h"
|
||||
#include "ui/layoutframe.h"
|
||||
#include "ui/simpleframe.h"
|
||||
#include "tempest/vector.h"
|
||||
#include "common/array.h"
|
||||
|
||||
DECLARE_ENUM(FRAMEPOINT);
|
||||
|
||||
DECLARE_STRUCT(FRAMEPRIORITY);
|
||||
DECLARE_STRUCT(CSimpleTop);
|
||||
DECLARE_STRUCT(CSimpleTop__frame_layout);
|
||||
|
||||
enum FRAMEPOINT {
|
||||
FRAMEPOINT_TOPLEFT = 0x0,
|
||||
FRAMEPOINT_TOP = 0x1,
|
||||
FRAMEPOINT_TOPRIGHT = 0x2,
|
||||
FRAMEPOINT_LEFT = 0x3,
|
||||
FRAMEPOINT_CENTER = 0x4,
|
||||
FRAMEPOINT_RIGHT = 0x5,
|
||||
FRAMEPOINT_BOTTOMLEFT = 0x6,
|
||||
FRAMEPOINT_BOTTOM = 0x7,
|
||||
FRAMEPOINT_BOTTOMRIGHT = 0x8,
|
||||
FRAMEPOINT_NUMPOINTS = 0x9
|
||||
};
|
||||
|
||||
struct CSimpleTop__frame_layout {
|
||||
int32_t enabled;
|
||||
CSimpleFrame* frame;
|
||||
FRAMEPOINT anchor;
|
||||
C2Vector last;
|
||||
float float14;
|
||||
};
|
||||
|
||||
struct FRAMEPRIORITY {
|
||||
CSimpleFrame* frame;
|
||||
uint32_t priority;
|
||||
};
|
||||
COMMON_SIMPLE_SORTED_ARRAY_POINTER_TO(FRAMEPRIORITY);
|
||||
|
||||
struct CSimpleTop {
|
||||
CLayoutFrame b_base;
|
||||
void* m_screenLayer;
|
||||
CSimpleFrame* m_mouseFocus;
|
||||
CSimpleFrame* m_mouseCapture;
|
||||
uint32_t m_keydownCapture[787];
|
||||
TSList_SIMPLEFRAMENODE m_frames;
|
||||
uint32_t m_destroyed[3];
|
||||
void* m_strata[9];
|
||||
CSimpleTop__frame_layout m_layout;
|
||||
CSimpleSortedArray_pointer_to_FRAMEPRIORITY m_eventqueue[5][9];
|
||||
int32_t m_checkFocus;
|
||||
EVENT_DATA_MOUSE m_mousePosition;
|
||||
uint32_t dword1234;
|
||||
void* m_mouseButtonCallback;
|
||||
void* m_mouseMoveCallback;
|
||||
void* m_displaySizeCallback;
|
||||
uint32_t dword1244;
|
||||
void* m_keyEventCallback;
|
||||
uint32_t dword124C;
|
||||
uint32_t dword1250;
|
||||
uint32_t dword1254;
|
||||
};
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue