summaryrefslogtreecommitdiffstats
path: root/Project/WorkspaceBase.cpp
diff options
context:
space:
mode:
authorThales Lima Oliveira <thaleslima.ufu@gmail.com>2018-04-10 22:09:52 -0300
committerThales Lima Oliveira <thaleslima.ufu@gmail.com>2018-04-10 22:09:52 -0300
commit8824eb42aed594822b1a46e0d1492535efacda0e (patch)
treeacbd68cab14f22316268d53ed037363b54908193 /Project/WorkspaceBase.cpp
parent586ff94d4bffcaf256e4ca7150b926c1babecada (diff)
downloadPSP.git-8824eb42aed594822b1a46e0d1492535efacda0e.tar.gz
PSP.git-8824eb42aed594822b1a46e0d1492535efacda0e.tar.xz
PSP.git-8824eb42aed594822b1a46e0d1492535efacda0e.zip
Base folder strategy abandoned due compatibility with wxCrafter
Diffstat (limited to 'Project/WorkspaceBase.cpp')
-rw-r--r--Project/WorkspaceBase.cpp84
1 files changed, 84 insertions, 0 deletions
diff --git a/Project/WorkspaceBase.cpp b/Project/WorkspaceBase.cpp
new file mode 100644
index 0000000..6fc2b79
--- /dev/null
+++ b/Project/WorkspaceBase.cpp
@@ -0,0 +1,84 @@
+//////////////////////////////////////////////////////////////////////
+// This file was auto-generated by codelite's wxCrafter Plugin
+// wxCrafter project file: Workspace.wxcp
+// Do not modify this file by hand!
+//////////////////////////////////////////////////////////////////////
+
+#include "WorkspaceBase.h"
+
+
+// Declare the bitmap loading function
+extern void wxC52C4InitBitmapResources();
+
+static bool bBitmapLoaded = false;
+
+
+WorkspaceBase::WorkspaceBase(wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style)
+ : wxPanel(parent, id, pos, size, style)
+{
+ if ( !bBitmapLoaded ) {
+ // We need to initialise the default bitmap handler
+ wxXmlResource::Get()->AddHandler(new wxBitmapXmlHandler);
+ wxC52C4InitBitmapResources();
+ bBitmapLoaded = true;
+ }
+
+ wxBoxSizer* boxSizer_lvl_1_1 = new wxBoxSizer(wxVERTICAL);
+ this->SetSizer(boxSizer_lvl_1_1);
+
+ int *m_glCanvasAttr = new int[ 5 ];
+ m_glCanvasAttr[0] = WX_GL_SAMPLE_BUFFERS;
+ m_glCanvasAttr[1] = 1;
+ m_glCanvasAttr[2] = WX_GL_SAMPLES;
+ m_glCanvasAttr[3] = 4;
+ m_glCanvasAttr[4] = 0;
+ m_glCanvas = new wxGLCanvas(this, wxID_ANY, m_glCanvasAttr, wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1,-1)), 0);
+ wxDELETEA( m_glCanvasAttr );
+
+ boxSizer_lvl_1_1->Add(m_glCanvas, 1, wxEXPAND, WXC_FROM_DIP(5));
+
+ m_timer = new wxTimer;
+ m_timer->Start(1500, false);
+
+ SetName(wxT("WorkspaceBase"));
+ SetSize(500,300);
+ if (GetSizer()) {
+ GetSizer()->Fit(this);
+ }
+ // Connect events
+ m_glCanvas->Connect(wxEVT_PAINT, wxPaintEventHandler(WorkspaceBase::OnPaint), NULL, this);
+ m_glCanvas->Connect(wxEVT_LEFT_DOWN, wxMouseEventHandler(WorkspaceBase::OnLeftClickDown), NULL, this);
+ m_glCanvas->Connect(wxEVT_KEY_DOWN, wxKeyEventHandler(WorkspaceBase::OnKeyDown), NULL, this);
+ m_glCanvas->Connect(wxEVT_MOTION, wxMouseEventHandler(WorkspaceBase::OnMouseMotion), NULL, this);
+ m_glCanvas->Connect(wxEVT_MIDDLE_DOWN, wxMouseEventHandler(WorkspaceBase::OnMiddleDown), NULL, this);
+ m_glCanvas->Connect(wxEVT_MIDDLE_UP, wxMouseEventHandler(WorkspaceBase::OnMiddleUp), NULL, this);
+ m_glCanvas->Connect(wxEVT_LEFT_UP, wxMouseEventHandler(WorkspaceBase::OnLeftClickUp), NULL, this);
+ m_glCanvas->Connect(wxEVT_MOUSEWHEEL, wxMouseEventHandler(WorkspaceBase::OnScroll), NULL, this);
+ m_glCanvas->Connect(wxEVT_RIGHT_DOWN, wxMouseEventHandler(WorkspaceBase::OnRightClickDown), NULL, this);
+ m_glCanvas->Connect(wxEVT_LEFT_DCLICK, wxMouseEventHandler(WorkspaceBase::OnLeftDoubleClick), NULL, this);
+ m_glCanvas->Connect(wxEVT_IDLE, wxIdleEventHandler(WorkspaceBase::OnIdle), NULL, this);
+ m_glCanvas->Connect(wxEVT_MIDDLE_DCLICK, wxMouseEventHandler(WorkspaceBase::OnMiddleDoubleClick), NULL, this);
+ m_timer->Connect(wxEVT_TIMER, wxTimerEventHandler(WorkspaceBase::OnTimer), NULL, this);
+
+}
+
+WorkspaceBase::~WorkspaceBase()
+{
+ m_glCanvas->Disconnect(wxEVT_PAINT, wxPaintEventHandler(WorkspaceBase::OnPaint), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_LEFT_DOWN, wxMouseEventHandler(WorkspaceBase::OnLeftClickDown), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(WorkspaceBase::OnKeyDown), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_MOTION, wxMouseEventHandler(WorkspaceBase::OnMouseMotion), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_MIDDLE_DOWN, wxMouseEventHandler(WorkspaceBase::OnMiddleDown), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_MIDDLE_UP, wxMouseEventHandler(WorkspaceBase::OnMiddleUp), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_LEFT_UP, wxMouseEventHandler(WorkspaceBase::OnLeftClickUp), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_MOUSEWHEEL, wxMouseEventHandler(WorkspaceBase::OnScroll), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_RIGHT_DOWN, wxMouseEventHandler(WorkspaceBase::OnRightClickDown), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_LEFT_DCLICK, wxMouseEventHandler(WorkspaceBase::OnLeftDoubleClick), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_IDLE, wxIdleEventHandler(WorkspaceBase::OnIdle), NULL, this);
+ m_glCanvas->Disconnect(wxEVT_MIDDLE_DCLICK, wxMouseEventHandler(WorkspaceBase::OnMiddleDoubleClick), NULL, this);
+ m_timer->Disconnect(wxEVT_TIMER, wxTimerEventHandler(WorkspaceBase::OnTimer), NULL, this);
+
+ m_timer->Stop();
+ wxDELETE( m_timer );
+
+}