Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
window.h
Go to the documentation of this file.
1#ifndef NW4HBM_LYT_WINDOW_H
2#define NW4HBM_LYT_WINDOW_H
3
4#include "common.h"
5#include "pane.h"
6#include "resources.h"
7
8namespace nw4hbm {
9 namespace lyt {
10
11 class Window : public Pane {
12 private:
13 typedef struct Content {
14 /* 0x00 */ ut::Color vtxColors[4];
17
18 typedef struct Frame {
19 /* 0x00 */ u8 textureFlip;
20 /* 0x04 */ Material* pMaterial;
22
23 public:
24 Window(const res::Window* pBlock, const ResBlockSet& resBlockSet);
25
26 /* 0x08 */ virtual ~Window();
28 /* 0x18 */ virtual void DrawSelf(const DrawInfo& drawInfo);
29 /* 0x20 */ virtual void AnimateSelf(u32 option);
30 /* 0x24 */ virtual ut::Color GetVtxColor(u32 idx) const;
31 /* 0x28 */ virtual void SetVtxColor(u32 idx, ut::Color value);
32 /* 0x34 */ virtual u8 GetVtxColorElement(u32 idx) const;
33 /* 0x38 */ virtual void SetVtxColorElement(u32 idx, u8 value);
34 /* 0x40 */ virtual Material* FindMaterialByName(const char* findName, bool bRecursive);
35 /* 0x50 */ virtual void UnbindAnimationSelf(AnimTransform* animTrans);
36 /* 0x54 */ virtual AnimationLink* FindAnimationLink(AnimTransform* animTrans);
37 /* 0x58 */ virtual void SetAnimationEnable(AnimTransform* animTrans, bool bEnable,
38 bool bRecursive);
39 /* 0x64 */ virtual Material* GetContentMaterial() const;
40 /* 0x68 */ virtual Material* GetFrameMaterial(u32 frameIdx) const;
41 /* 0x6C */ virtual void DrawContent(const math::VEC2& basePt,
42 const WindowFrameSize& frameSize, u8 alpha);
43 /* 0x70 */ virtual void DrawFrame(const math::VEC2& basePt, const Frame& frame,
44 const WindowFrameSize& frameSize, u8 alpha);
45 /* 0x74 */ virtual void DrawFrame4(const math::VEC2& basePt, const Frame* frames,
46 const WindowFrameSize& frameSize, u8 alpha);
47 /* 0x78 */ virtual void DrawFrame8(const math::VEC2& basePt, const Frame* frames,
48 const WindowFrameSize& frameSize, u8 alpha);
49
50 WindowFrameSize GetFrameSize(u8 frameNum, const Frame* frames);
51
52 private:
53 /* 0x00 (base) */
55 /* 0x0E4 */ Content mContent;
56 /* 0x0FC */ Frame* mFrames;
57 /* 0x100 */ u8 mFrameNum;
58 }; // size = 0x104
59
60 } // namespace lyt
61} // namespace nw4hbm
62
63#endif
Definition animation.h:127
Definition drawInfo.h:13
Definition material.h:35
Definition pane.h:42
Definition window.h:11
virtual void SetAnimationEnable(AnimTransform *animTrans, bool bEnable, bool bRecursive)
Definition lyt_window.cpp:328
virtual AnimationLink * FindAnimationLink(AnimTransform *animTrans)
Definition lyt_window.cpp:314
virtual void DrawFrame(const math::VEC2 &basePt, const Frame &frame, const WindowFrameSize &frameSize, u8 alpha)
Definition lyt_window.cpp:418
virtual void DrawFrame4(const math::VEC2 &basePt, const Frame *frames, const WindowFrameSize &frameSize, u8 alpha)
Definition lyt_window.cpp:448
WindowFrameSize GetFrameSize(u8 frameNum, const Frame *frames)
Definition lyt_window.cpp:526
virtual void DrawSelf(const DrawInfo &drawInfo)
Definition lyt_window.cpp:354
Content mContent
Definition window.h:55
virtual ~Window()
Definition lyt_window.cpp:270
virtual void SetVtxColorElement(u32 idx, u8 value)
Definition lyt_window.cpp:350
Window(const res::Window *pBlock, const ResBlockSet &resBlockSet)
Definition lyt_window.cpp:208
virtual void SetVtxColor(u32 idx, ut::Color value)
Definition lyt_window.cpp:341
virtual u8 GetVtxColorElement(u32 idx) const
Definition lyt_window.cpp:346
virtual void UnbindAnimationSelf(AnimTransform *animTrans)
Definition lyt_window.cpp:387
InflationLRTB mContentInflation
Definition window.h:54
virtual Material * FindMaterialByName(const char *findName, bool bRecursive)
Definition lyt_window.cpp:289
virtual Material * GetContentMaterial() const
Definition lyt_window.cpp:563
virtual Material * GetFrameMaterial(u32 frameIdx) const
Definition lyt_window.cpp:554
virtual ut::Color GetVtxColor(u32 idx) const
Definition lyt_window.cpp:336
virtual void DrawContent(const math::VEC2 &basePt, const WindowFrameSize &frameSize, u8 alpha)
Definition lyt_window.cpp:395
struct nw4hbm::lyt::Window::Frame Frame
virtual void AnimateSelf(u32 option)
Definition lyt_window.cpp:377
NW4HBM_UT_RUNTIME_TYPEINFO
Definition window.h:27
struct nw4hbm::lyt::Window::Content Content
u8 mFrameNum
Definition window.h:57
Frame * mFrames
Definition window.h:56
virtual void DrawFrame8(const math::VEC2 &basePt, const Frame *frames, const WindowFrameSize &frameSize, u8 alpha)
Definition lyt_window.cpp:478
Definition common.h:20
unsigned long u32
Definition types.h:12
unsigned char u8
Definition types.h:8
Definition HBMAnmController.h:6
Definition resources.h:16
Definition resources.h:282
Definition resources.h:23
Definition window.h:13
detail::TexCoordAry texCoordAry
Definition window.h:15
ut::Color vtxColors[4]
Definition window.h:14
Definition window.h:18
Material * pMaterial
Definition window.h:20
u8 textureFlip
Definition window.h:19
Definition resources.h:232
Definition types.h:103
Definition Color.h:10