From 3935a7072e44cb1c8e279e4a8c4d62a5239885df Mon Sep 17 00:00:00 2001 From: Vulpovile Date: Mon, 8 Mar 2021 23:52:10 -0800 Subject: [PATCH] Made listeners use heap --- G3DTest.aps | Bin 33204 -> 0 bytes G3DTest.opt | Bin 53760 -> 0 bytes G3DTest.plg | 32 ---------- src/include/DataModel/BaseButtonInstance.h | 2 +- src/include/DataModelV2/BaseButtonInstance.h | 2 +- src/source/DataModel/BaseButtonInstance.cpp | 2 +- src/source/DataModelV2/BaseButtonInstance.cpp | 9 +-- src/source/DataModelV2/GuiRootInstance.cpp | 57 +++++++++--------- .../DataModelV2/ImageButtonInstance.cpp | 1 - .../DataModelV2/ToggleImageButtonInstance.cpp | 1 - src/source/main.cpp | 20 ------ 11 files changed, 35 insertions(+), 91 deletions(-) delete mode 100644 G3DTest.aps delete mode 100644 G3DTest.opt delete mode 100644 G3DTest.plg diff --git a/G3DTest.aps b/G3DTest.aps deleted file mode 100644 index c8dcb2340ab737581c4bde1afdc9d622f82e381d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33204 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 diff --git a/G3DTest.opt b/G3DTest.opt deleted file mode 100644 index 4a8ac1e034c63490f6369e553b8e4851979688ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53760 zcmeI5O>-Pa8OKK!tDSw7ZIr}>0Gkl71H@ph2*v~xTaq1{ydgOjF9y4JrZqeEyrpMm zrM&^4AZI8JkSgxnI8&UsI8}TBxaP!_qQLy0+1awnC7xN?2S`=lZqxA6Ug2ed!k(mpu2J|NM7W6js4)g

zt+B>PdG_!$TFf+$$0`o{hxO09ckcgnj>XH-F6E=jp1v>gNsSfZGE$GN9i*?ZckpoBIyN_t!{(q_({EEUW%}!=bsuFV3Xc=I zNT2#ErA=X$IG!e>GW|K!ALYI7_1#RT*_qV~x8B`c-`Ko$>8-Vm_3M{zUG1-tZs5!5 z_N<#GbdUrgAOwVf5D)@FKnMr{As_^VfDjM@Lf}vl_}!fK!7qPZxBiS-wb!28sG7<- zRArOQ3IQRoKY{s&|Iv{dz5Nl%r$Rso2mv7=1cZPP5CTF#2nYcoAOwyK0h#|hGF2%B z5dt$4uyN<_n{QmFTU#Xv0U;m+gn$qb0zyCt2mv7=1cZPP5CTV>fXx3L@d}pW34whG z?6>}U3oDW%tV^bK(N*CEtUsn_1x!{S&$j;fd5W}Le|!zA=&xC~vEIIq_4hZh3OmJW z=-I<5tmdAkJ?r}CuTu2%Z~=sA`jfv7{=4}Y>3@%sDa*fV1z78z;^!u)YY^|@*#QUQ zf8g?8+mrr0)_>Q_<=u_dK&9zTU+>gjU4MJy;@;njrA^Nv8=X$R+y7JhiXZ5Q(LBEu zn|o=Z9Njxz#&Y^X?_4i2@m=j?XVRBC)5y1RU>Wr!f&IRzj&EX@oF4p%8#@ulWy&Xp&w<&kIoL~@KD`7rj*~( zsxbh?EOj}X7R{aJnIEK_mHl3>va@~^{O`nCsTPet@tczu2+XW9U*+$toIGg4yovoJM8*`D=y#UY3 zic1&-o-;-sUkRCcsx=q`t`s{=0U&9Zs29-^BL6}sUl4)T!g z6s;6pdq-ss+mO4|Rqw{*H1nN%T;>{+j6in=xQUy`n}G;kCYkvQIfN1*=bTmvr+m4E<42_mW>n5RvcMX*Gji+c5t-kUf~iw zl?{F4CKz<$2;R?6@<73nvxmSgSLox!7hX6saS-rMv*Be!gSN{>+sac77gWKz1wU4d zGHh>e!b%&%m!s$@%E|l@+YxF;vA%T)?kDhR%yxAK=U6d#cYrta9aK!8bqXD7QmOVr z^kfcO*>6@jo1$f<<8+5TUuX}s=SR04_**VAj3pQ>Ig1*aDEEC69bMt%iA|=9D)i9A z^2p~sS;NB!k@Jz+)njqn3F1^&mcFx%vo4&(Y{L<8Wi0(Z>&{xPpE@y4_}KPUG*g^# z>S#1Wf^0kJ8q_cb`Y{djTx6|~EJDL}KdXRkbwx`@-KJyKPc`VWMFnixCS$3O5sE9` z&UQpdxy2)^y`c7Kef5&&W<@YP6IFl z#l=!Igpu!Rwjp#Ae^&=HOhYV^BOZ)1je&sgj-@k>^Q__|uuVLx&00zg(j+sQh1$w+ z-KBBX%UUfIlTgfjR}=FB8Fh_Hv|*0yvsM!)(&wGXB2F9-(F`@vpbPSVpJZ#mJy*@% z*q$F^dW6e*dEL>kyzZ!@ZurJrG(!h7J1kM#-L0Bzn9L7U&@3)vLrimWrL$=gfp5c; zdD*?cXTG)vfpOJbco5>o3PhR`TI7>wS8wr34{x_z8Sa zvwr`J-%Q^7@W(&hr+>Li5CTF#2nYcoAOwy$f$9B!`@g+y)q+>KM*Jd(-%f5q~{0*2iGSFn)#{|^8Ce{*>LAFZ{0@Ss>% zyBefd0(Ucr2h)cF9vKfO1rY*5KnMr{As_^VfDjM@LO=)z0U;m+Wd0A&7L)bAdmcI_ z>woF_W&9Gx!$1GGhIft(tlaYOqb+k_M|kov-hXm~QYqhmvWBJi@jk{&Pz zOL+f`jbm!itnYvM8KqICPrFYV4*LF?Cr$6s<{9 diff --git a/G3DTest.plg b/G3DTest.plg deleted file mode 100644 index 7ea12a6..0000000 --- a/G3DTest.plg +++ /dev/null @@ -1,32 +0,0 @@ - - -

-

Build Log

-

---------------------Configuration: G3DTest - Win32 Debug-------------------- -

-

Command Lines

-Creating temporary file "C:\Users\Andreja\AppData\Local\Temp\RSPFD70.tmp" with contents -[ -/nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /Fp"Debug/G3DTest.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c -"C:\USERS\ANDREJA\G3D\G3DTest\main.cpp" -] -Creating command line "cl.exe @C:\Users\Andreja\AppData\Local\Temp\RSPFD70.tmp" -Creating temporary file "C:\Users\Andreja\AppData\Local\Temp\RSPFD71.tmp" with contents -[ -kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /incremental:yes /pdb:"Debug/G3DTest.pdb" /debug /machine:I386 /out:"Debug/G3DTest.exe" /pdbtype:sept -.\Debug\main.obj -] -Creating command line "link.exe @C:\Users\Andreja\AppData\Local\Temp\RSPFD71.tmp" -

Output Window

-Compiling... -main.cpp -Linking... - - - -

Results

-G3DTest.exe - 0 error(s), 0 warning(s) -
- - diff --git a/src/include/DataModel/BaseButtonInstance.h b/src/include/DataModel/BaseButtonInstance.h index cd24eb8..1e48e6d 100644 --- a/src/include/DataModel/BaseButtonInstance.h +++ b/src/include/DataModel/BaseButtonInstance.h @@ -14,7 +14,7 @@ public: virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown); virtual bool mouseInButton(float, float, RenderDevice* rd); virtual void onMouseClick(); - void setButtonListener(ButtonListener*); + void setButtonListener(ButtonListener&); bool floatBottom; bool floatRight; bool floatCenter; diff --git a/src/include/DataModelV2/BaseButtonInstance.h b/src/include/DataModelV2/BaseButtonInstance.h index cd24eb8..1e48e6d 100644 --- a/src/include/DataModelV2/BaseButtonInstance.h +++ b/src/include/DataModelV2/BaseButtonInstance.h @@ -14,7 +14,7 @@ public: virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown); virtual bool mouseInButton(float, float, RenderDevice* rd); virtual void onMouseClick(); - void setButtonListener(ButtonListener*); + void setButtonListener(ButtonListener&); bool floatBottom; bool floatRight; bool floatCenter; diff --git a/src/source/DataModel/BaseButtonInstance.cpp b/src/source/DataModel/BaseButtonInstance.cpp index 0ccd0c8..4a31eb2 100644 --- a/src/source/DataModel/BaseButtonInstance.cpp +++ b/src/source/DataModel/BaseButtonInstance.cpp @@ -28,7 +28,7 @@ BaseButtonInstance::~BaseButtonInstance(void) } } -void BaseButtonInstance::setButtonListener(ButtonListener* buttonListener) +void BaseButtonInstance::setButtonListener(ButtonListener& buttonListener) { listener = buttonListener; } diff --git a/src/source/DataModelV2/BaseButtonInstance.cpp b/src/source/DataModelV2/BaseButtonInstance.cpp index e8e00e9..42f82fa 100644 --- a/src/source/DataModelV2/BaseButtonInstance.cpp +++ b/src/source/DataModelV2/BaseButtonInstance.cpp @@ -21,16 +21,11 @@ void BaseButtonInstance::render(RenderDevice* rd) BaseButtonInstance::~BaseButtonInstance(void) { - if(listener != NULL && listener->doDelete) - { - delete listener; - listener = NULL; - } } -void BaseButtonInstance::setButtonListener(ButtonListener* buttonListener) +void BaseButtonInstance::setButtonListener(ButtonListener& buttonListener) { - listener = buttonListener; + listener = &buttonListener; } void BaseButtonInstance::drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown){} diff --git a/src/source/DataModelV2/GuiRootInstance.cpp b/src/source/DataModelV2/GuiRootInstance.cpp index 61756b8..63c3d48 100644 --- a/src/source/DataModelV2/GuiRootInstance.cpp +++ b/src/source/DataModelV2/GuiRootInstance.cpp @@ -18,6 +18,13 @@ #include "Listener/DeleteListener.h" #include "Listener/ToolbarListener.h" +MenuButtonListener menuListener = MenuButtonListener(); +ToolbarListener toolbar = ToolbarListener(); +GUDButtonListener gud = GUDButtonListener(); +ModeSelectionListener msl = ModeSelectionListener(); +RotateButtonListener rbl = RotateButtonListener(); +DeleteListener delet = DeleteListener(); +CameraButtonListener cam = CameraButtonListener(); ImageButtonInstance* GuiRootInstance::makeImageButton(G3D::TextureRef newImage = NULL, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL) { @@ -32,11 +39,8 @@ TextButtonInstance* GuiRootInstance::makeTextButton() TextButtonInstance* part = new TextButtonInstance(); return part; } -ToolbarListener * toolbar; GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) { - toolbar = new ToolbarListener(); - toolbar->doDelete = false; g_fntdominant = GFont::fromFile(GetFileInPath("/content/font/dominant.fnt")); g_fntlighttrek = GFont::fromFile(GetFileInPath("/content/font/lighttrek.fnt")); @@ -55,7 +59,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->boxOutlineColorOvr = Color3(0,255,255); button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F); button->setButtonListener(toolbar); - toolbar->addButtonRef(button); + toolbar.addButtonRef(button); button = makeTextButton(); @@ -72,7 +76,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->boxOutlineColorOvr = Color3(0,255,255); button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F); button->setButtonListener(toolbar); - toolbar->addButtonRef(button); + toolbar.addButtonRef(button); button = makeTextButton(); button->boxBegin = Vector2(0, -72); @@ -88,7 +92,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->boxOutlineColorOvr = Color3(0,255,255); button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F); button->setButtonListener(toolbar); - toolbar->addButtonRef(button); + toolbar.addButtonRef(button); button = makeTextButton(); button->boxBegin = Vector2(0, -96); @@ -104,7 +108,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->boxOutlineColorOvr = Color3(0,255,255); button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F); button->setButtonListener(toolbar); - toolbar->addButtonRef(button); + toolbar.addButtonRef(button); button = makeTextButton(); button->boxBegin = Vector2(0, -120); @@ -120,7 +124,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->boxOutlineColorOvr = Color3(0,255,255); button->boxColorDn = Color4(button->boxColor.r,button->boxColor.g,button->boxColor.b, 0.2F); button->setButtonListener(toolbar); - toolbar->addButtonRef(button); + toolbar.addButtonRef(button); //Top bar button = makeTextButton(); @@ -137,7 +141,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->setAllColorsSame(); button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F); button->name = "file"; - button->setButtonListener(new MenuButtonListener()); + button->setButtonListener(menuListener); button = makeTextButton(); button->boxBegin = Vector2(125, 0); @@ -211,7 +215,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->font = g_fntlighttrek; button->fontLocationRelativeTo = Vector2(10, 0); button->setParent(this); - button->setButtonListener(new GUDButtonListener()); + button->setButtonListener(menuListener); button = makeTextButton(); button->boxBegin = Vector2(0,240); @@ -227,7 +231,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->font = g_fntlighttrek; button->fontLocationRelativeTo = Vector2(10, 0); button->setParent(this); - button->setButtonListener(new GUDButtonListener()); + button->setButtonListener(gud); button = makeTextButton(); button->boxBegin = Vector2(0,265); @@ -243,7 +247,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) button->fontLocationRelativeTo = Vector2(10, 0); button->setParent(this); button->name = "Duplicate"; - button->setButtonListener(new GUDButtonListener()); + button->setButtonListener(gud); ImageButtonInstance* instance = new ToggleImageButtonInstance( Texture::fromFile(GetFileInPath("/content/images/Run.png")), @@ -254,7 +258,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) Texture::fromFile(GetFileInPath("/content/images/Stop_ovr.png")), Texture::fromFile(GetFileInPath("/content/images/Stop_dn.png")) ); - instance->setButtonListener(new MenuButtonListener()); + instance->setButtonListener(menuListener); instance->name = "go"; instance->size = Vector2(65,65); instance->position = Vector2(6.5, 25); @@ -270,14 +274,14 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(15, 90); instance->setParent(this); instance->name = "Cursor"; - instance->setButtonListener(new ModeSelectionListener()); + instance->setButtonListener(msl); instance = makeImageButton(Texture::fromFile(GetFileInPath("/content/images/ScaleTool.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_ovr.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_dn.png")),Texture::fromFile(GetFileInPath("/content/images/ScaleTool_ds.png"))); instance->size = Vector2(40,40); instance->position = Vector2(0, 140); instance->setParent(this); instance->name = "Resize"; - instance->setButtonListener(new ModeSelectionListener()); + instance->setButtonListener(msl); instance = makeImageButton( @@ -289,7 +293,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(40, 140); instance->setParent(this); instance->name = "Arrows"; - instance->setButtonListener(new ModeSelectionListener()); + instance->setButtonListener(msl); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/SelectionRotate.png")), @@ -300,7 +304,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(10, 175); instance->setParent(this); instance->name = "Rotate"; - instance->setButtonListener(new RotateButtonListener()); + instance->setButtonListener(rbl); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/SelectionTilt.png")), @@ -311,7 +315,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(40, 175); instance->setParent(this); instance->name = "Tilt"; - instance->setButtonListener(new RotateButtonListener()); + instance->setButtonListener(rbl); instance = makeImageButton( @@ -323,7 +327,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(20, 284); instance->setParent(this); instance->name = "Delete"; - instance->setButtonListener(new DeleteListener()); + instance->setButtonListener(delet); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraZoomIn.png")), @@ -335,7 +339,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-77, -90); instance->setParent(this); instance->name = "ZoomIn"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraZoomOut.png")), @@ -347,7 +351,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-77, -31); instance->setParent(this); instance->name = "ZoomOut"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraPanLeft.png")), @@ -359,7 +363,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-110, -50); instance->setParent(this); instance->name = "PanLeft"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraPanRight.png")), @@ -371,7 +375,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-45, -50); instance->setParent(this); instance->name = "PanRight"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraCenter.png")), @@ -383,7 +387,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-77, -60); instance->setParent(this); instance->name = "CenterCam"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraTiltUp.png")), @@ -395,7 +399,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-105, -75); instance->setParent(this); instance->name = "TiltUp"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); instance = makeImageButton( Texture::fromFile(GetFileInPath("/content/images/CameraTiltDown.png")), @@ -407,7 +411,7 @@ GuiRootInstance::GuiRootInstance() : _message(""), _messageTime(0) instance->position = Vector2(-40, -75); instance->setParent(this); instance->name = "TiltDown"; - instance->setButtonListener(new CameraButtonListener()); + instance->setButtonListener(cam); } @@ -519,7 +523,6 @@ void GuiRootInstance::update() GuiRootInstance::~GuiRootInstance() { - delete toolbar; } void GuiRootInstance::onMouseLeftUp(G3D::RenderDevice* renderDevice, int x,int y) diff --git a/src/source/DataModelV2/ImageButtonInstance.cpp b/src/source/DataModelV2/ImageButtonInstance.cpp index bcf8218..7e3c65d 100644 --- a/src/source/DataModelV2/ImageButtonInstance.cpp +++ b/src/source/DataModelV2/ImageButtonInstance.cpp @@ -38,7 +38,6 @@ ImageButtonInstance::~ImageButtonInstance(void) image_ovr = NULL; image_ds = NULL; image_dn = NULL; - delete listener; listener = NULL; selected = false; } diff --git a/src/source/DataModelV2/ToggleImageButtonInstance.cpp b/src/source/DataModelV2/ToggleImageButtonInstance.cpp index 34267c4..7027d8a 100644 --- a/src/source/DataModelV2/ToggleImageButtonInstance.cpp +++ b/src/source/DataModelV2/ToggleImageButtonInstance.cpp @@ -39,7 +39,6 @@ ToggleImageButtonInstance::~ToggleImageButtonInstance(void) image_ovr = NULL; image_ds = NULL; image_dn = NULL; - delete listener; listener = NULL; selected = false; } diff --git a/src/source/main.cpp b/src/source/main.cpp index b0913c3..9af942d 100644 --- a/src/source/main.cpp +++ b/src/source/main.cpp @@ -146,24 +146,6 @@ LRESULT CALLBACK G3DProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) } -LRESULT CALLBACK MenuProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) -{ - Application *app = (Application *)GetWindowLongPtr(hwnd, GWL_USERDATA); - if (app==NULL) - { - return DefWindowProc(hwnd, msg, wParam, lParam); - } - switch(msg) - { - default: - { - return DefWindowProc(hwnd, msg, wParam, lParam); - } - } - - return 0; -} - int main(int argc, char** argv) { try{ hresult = OleInitialize(NULL); @@ -206,8 +188,6 @@ int main(int argc, char** argv) { return false; if (!createWindowClass("G3DWindow",G3DProc,hThisInstance)) return false; - if (!createWindowClass("MenuWindow",MenuProc,hThisInstance)) - return false; HWND hwndMain = CreateWindowEx( WS_EX_APPWINDOW,