summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJcw87 <Jcw87@users.noreply.github.com>2026-01-13 07:50:47 -0800
committerGitHub <noreply@github.com>2026-01-13 17:50:47 +0200
commit9a889bfcf8a3147477c3bf106bcfb1b007c2d9a7 (patch)
treede89ea13660db089ec3940b4b25d559ece0078b8 /include
parent335349693d604e254226dda339bbed87169dbb06 (diff)
JAWWindow (#3039)
Diffstat (limited to 'include')
-rw-r--r--include/JSystem/J2DGraph/J2DPane.h33
-rw-r--r--include/JSystem/J2DGraph/J2DWindow.h53
-rw-r--r--include/JSystem/JAWExtSystem/JAWWindow.h22
3 files changed, 69 insertions, 39 deletions
diff --git a/include/JSystem/J2DGraph/J2DPane.h b/include/JSystem/J2DGraph/J2DPane.h
index 409b2257e7..bde7118f37 100644
--- a/include/JSystem/J2DGraph/J2DPane.h
+++ b/include/JSystem/J2DGraph/J2DPane.h
@@ -84,20 +84,33 @@ public:
/* vt 0x10 */ virtual void move(f32 x, f32 y);
/* vt 0x14 */ virtual void add(f32 x, f32 y);
/* vt 0x18 */ virtual void resize(f32 x, f32 y);
- /* vt 0x1C */ virtual void setCullBack(bool cull);
+ /* vt 0x1C */ virtual void setCullBack(bool cull) {
+ GXCullMode mode;
+
+ if (cull) {
+ mode = GX_CULL_BACK;
+ } else {
+ mode = GX_CULL_NONE;
+ }
+
+ setCullBack(mode);
+ }
/* vt 0x20 */ virtual void setCullBack(_GXCullMode cmode);
/* vt 0x24 */ virtual void setAlpha(u8 alpha) {
mAlpha = alpha;
};
- /* vt 0x28 */ virtual bool setConnectParent(bool connected);
+ /* vt 0x28 */ virtual bool setConnectParent(bool connected) {
+ mConnected = false;
+ return false;
+ }
/* vt 0x2C */ virtual void calcMtx() {
if (mPaneTree.getParent() != NULL) {
makeMatrix(mTranslateX, mTranslateY);
}
}
- /* vt 0x30 */ virtual void update();
- /* vt 0x34 */ virtual void drawSelf(f32 arg1, f32 arg2);
- /* vt 0x38 */ virtual void drawSelf(f32 arg1, f32 arg2, Mtx* mtx);
+ /* vt 0x30 */ virtual void update() {}
+ /* vt 0x34 */ virtual void drawSelf(f32 arg1, f32 arg2) {}
+ /* vt 0x38 */ virtual void drawSelf(f32 arg1, f32 arg2, Mtx* mtx) {}
/* vt 0x3C */ virtual J2DPane* search(u64 tag);
/* vt 0x40 */ virtual J2DPane* searchUserInfo(u64 tag);
/* vt 0x44 */ virtual void makeMatrix(f32 a, f32 b) {
@@ -107,7 +120,7 @@ public:
/* vt 0x4C */ virtual bool isUsed(const ResTIMG* timg);
/* vt 0x50 */ virtual bool isUsed(const ResFONT* font);
/* vt 0x54 */ virtual void clearAnmTransform();
- /* vt 0x58 */ virtual void rewriteAlpha();
+ /* vt 0x58 */ virtual void rewriteAlpha() {}
/* vt 0x5C */ virtual void setAnimation(J2DAnmBase* anm);
/* vt 0x60 */ virtual void setAnimation(J2DAnmTransform* anm);
/* vt 0x64 */ virtual void setAnimation(J2DAnmColor* anm) {}
@@ -118,9 +131,13 @@ public:
/* vt 0x78 */ virtual void setAnimation(J2DAnmVtxColor* anm) {}
/* vt 0x7C */ virtual const J2DAnmTransform* animationTransform(const J2DAnmTransform* transform);
/* vt 0x80 */ virtual void setVisibileAnimation(J2DAnmVisibilityFull* visibility);
- /* vt 0x84 */ virtual void setAnimationVF(J2DAnmVisibilityFull* visibility);
+ /* vt 0x84 */ virtual void setAnimationVF(J2DAnmVisibilityFull* p_visibility) {
+ setAnimation(p_visibility);
+ }
/* vt 0x88 */ virtual void setVtxColorAnimation(J2DAnmVtxColor* vtx_color);
- /* vt 0x8C */ virtual void setAnimationVC(J2DAnmVtxColor* vtx_color);
+ /* vt 0x8C */ virtual void setAnimationVC(J2DAnmVtxColor* p_vtxColor) {
+ setAnimation(p_vtxColor);
+ }
/* vt 0x90 */ virtual const J2DAnmTransform* animationPane(const J2DAnmTransform* transform);
f32 getHeight() const { return mBounds.getHeight(); }
diff --git a/include/JSystem/J2DGraph/J2DWindow.h b/include/JSystem/J2DGraph/J2DWindow.h
index 0d194c4995..b688963f64 100644
--- a/include/JSystem/J2DGraph/J2DWindow.h
+++ b/include/JSystem/J2DGraph/J2DWindow.h
@@ -61,27 +61,38 @@ public:
void setTevMode(JUTTexture*, JUtility::TColor, JUtility::TColor);
virtual ~J2DWindow();
- virtual u16 getTypeID() const;
- virtual void resize(f32, f32);
- virtual void drawSelf(f32, f32);
- virtual void drawSelf(f32, f32, Mtx*);
- virtual bool isUsed(ResTIMG const*);
- virtual bool isUsed(ResFONT const*);
- virtual void rewriteAlpha();
- virtual void draw(JGeometry::TBox2<f32> const&);
- virtual void draw(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
- virtual void draw(f32, f32, f32, f32);
- virtual bool setBlack(JUtility::TColor);
- virtual bool setWhite(JUtility::TColor);
- virtual bool setBlackWhite(JUtility::TColor, JUtility::TColor);
- virtual JUtility::TColor getBlack() const;
- virtual JUtility::TColor getWhite() const;
- virtual JUTTexture* getFrameTexture(u8, u8) const;
- virtual JUTTexture* getContentsTexture(u8) const;
- virtual void getMaterial(J2DWindow::TMaterial&) const;
- virtual J2DMaterial* getFrameMaterial(u8) const;
- virtual J2DMaterial* getContentsMaterial() const;
- virtual void drawContents(JGeometry::TBox2<f32> const&);
+ /* vt 0x0C */ virtual u16 getTypeID() const { return 17; }
+ /* vt 0x18 */ virtual void resize(f32, f32);
+ /* vt 0x34 */ virtual void drawSelf(f32, f32);
+ /* vt 0x38 */ virtual void drawSelf(f32, f32, Mtx*);
+ /* vt 0x94 */ virtual void draw(JGeometry::TBox2<f32> const&);
+ /* vt 0x98 */ virtual void draw(JGeometry::TBox2<f32> const&, JGeometry::TBox2<f32> const&);
+ /* vt 0x9C */ virtual void draw(f32 left, f32 top, f32 width, f32 height) { draw(JGeometry::TBox2<f32>(left, top, left + width, top + height)); }
+ /* vt 0xA0 */ virtual bool setBlack(JUtility::TColor);
+ /* vt 0xA4 */ virtual bool setWhite(JUtility::TColor);
+ /* vt 0xA8 */ virtual bool setBlackWhite(JUtility::TColor, JUtility::TColor);
+ /* vt 0xAC */ virtual JUtility::TColor getBlack() const;
+ /* vt 0xB0 */ virtual JUtility::TColor getWhite() const;
+ /* vt 0xB4 */ virtual JUTTexture* getFrameTexture(u8, u8) const;
+ /* vt 0xB8 */ virtual JUTTexture* getContentsTexture(u8 param_1) const {
+ if (param_1 != 0) {
+ return NULL;
+ }
+ return field_0x110;
+ }
+ /* vt 0xBC */ virtual void getMaterial(J2DWindow::TMaterial& mat) const {
+ mat.field_0x0 = NULL;
+ mat.field_0x4 = NULL;
+ mat.field_0x8 = NULL;
+ mat.field_0xc = NULL;
+ mat.field_0x10 = NULL;
+ }
+ /* vt 0xC0 */ virtual J2DMaterial* getFrameMaterial(u8) const { return NULL; }
+ /* vt 0xC4 */ virtual J2DMaterial* getContentsMaterial() const { return NULL; }
+ /* vt 0xC8 */ virtual void drawContents(JGeometry::TBox2<f32> const&);
+ /* vt 0x4C */ virtual bool isUsed(const ResTIMG*);
+ /* vt 0x50 */ virtual bool isUsed(const ResFONT* font) { return J2DPane::isUsed(font); }
+ /* vt 0x58 */ virtual void rewriteAlpha() {}
bool isField0x145Set(u8 flag) { return field_0x145 & flag; }
diff --git a/include/JSystem/JAWExtSystem/JAWWindow.h b/include/JSystem/JAWExtSystem/JAWWindow.h
index 942a25a90c..6228c10376 100644
--- a/include/JSystem/JAWExtSystem/JAWWindow.h
+++ b/include/JSystem/JAWExtSystem/JAWWindow.h
@@ -22,19 +22,10 @@ public:
class JAWWindow {
public:
- class TJ2DWindowDraw : public J2DWindow {
- public:
- TJ2DWindowDraw(u32, const JGeometry::TBox2<f32>&, const char*);
-
- void drawPane(int x, int y, const J2DGrafContext* p_grafCtx) {
- J2DPane::draw(x, y, p_grafCtx, true, true);
- calcMtx();
- }
- };
-
class TWindowText : public J2DPane {
public:
TWindowText(JAWWindow*);
+ virtual ~TWindowText();
virtual void drawSelf(f32, f32);
virtual void drawSelf(f32, f32, Mtx*);
@@ -43,6 +34,17 @@ public:
/* 0x11C */ JUTPoint field_0x11c;
};
+ class TJ2DWindowDraw : public J2DWindow {
+ public:
+ TJ2DWindowDraw(u32 param_1, const JGeometry::TBox2<f32>& param_2, const char* param_3) : J2DWindow(param_1, param_2, param_3, TEXTUREBASE_0, NULL) {}
+ virtual ~TJ2DWindowDraw() {}
+
+ void drawPane(int x, int y, const J2DGrafContext* p_grafCtx) {
+ J2DPane::draw(x, y, p_grafCtx, true, true);
+ calcMtx();
+ }
+ };
+
JAWWindow(const char*, int, int);
virtual ~JAWWindow();
virtual void onDraw(JAWGraphContext*);