From 3a246308dcd76f70a1b6c3e6b08f0d597b255dba Mon Sep 17 00:00:00 2001 From: Thales Lima Oliveira Date: Sat, 30 Jul 2016 00:29:03 -0300 Subject: Adding the basics graphics elements The base is done, bus under contruction --- Project/WorkspaceBase.cpp | 56 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Project/WorkspaceBase.cpp (limited to 'Project/WorkspaceBase.cpp') diff --git a/Project/WorkspaceBase.cpp b/Project/WorkspaceBase.cpp new file mode 100644 index 0000000..9e34efc --- /dev/null +++ b/Project/WorkspaceBase.cpp @@ -0,0 +1,56 @@ +////////////////////////////////////////////////////////////////////// +// 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)); + + 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); + +} + +WorkspaceBase::~WorkspaceBase() +{ + m_glCanvas->Disconnect(wxEVT_PAINT, wxPaintEventHandler(WorkspaceBase::OnPaint), NULL, this); + m_glCanvas->Disconnect(wxEVT_LEFT_DOWN, wxMouseEventHandler(WorkspaceBase::OnLeftClickDown), NULL, this); + +} -- cgit From 5e0be3d0a505781c31b3d23450fd92d4cc7b7ce7 Mon Sep 17 00:00:00 2001 From: Thales1330 Date: Mon, 1 Aug 2016 18:05:11 -0300 Subject: Attempt to implement Event Handler in Workspace fail --- Project/WorkspaceBase.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Project/WorkspaceBase.cpp') diff --git a/Project/WorkspaceBase.cpp b/Project/WorkspaceBase.cpp index 9e34efc..f43e6f4 100644 --- a/Project/WorkspaceBase.cpp +++ b/Project/WorkspaceBase.cpp @@ -45,6 +45,8 @@ WorkspaceBase::WorkspaceBase(wxWindow* parent, wxWindowID id, const wxPoint& pos // 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); } @@ -52,5 +54,7 @@ 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); } -- cgit From 78aac544e1e77f5405260797cee4b94d7a0dfe32 Mon Sep 17 00:00:00 2001 From: Thales1330 Date: Tue, 2 Aug 2016 17:34:42 -0300 Subject: Bus controllers under implementation Events handler removed --- Project/WorkspaceBase.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'Project/WorkspaceBase.cpp') diff --git a/Project/WorkspaceBase.cpp b/Project/WorkspaceBase.cpp index f43e6f4..7a63758 100644 --- a/Project/WorkspaceBase.cpp +++ b/Project/WorkspaceBase.cpp @@ -47,6 +47,10 @@ WorkspaceBase::WorkspaceBase(wxWindow* parent, wxWindowID id, const wxPoint& pos 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); } @@ -56,5 +60,9 @@ WorkspaceBase::~WorkspaceBase() 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); } -- cgit From 05525745c0b0d189484da3c45f95356d7558e2cf Mon Sep 17 00:00:00 2001 From: Thales1330 Date: Thu, 18 Aug 2016 19:10:04 -0300 Subject: Line improvements, context menu implemented Line still under construction, contex menu base implemented --- Project/WorkspaceBase.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'Project/WorkspaceBase.cpp') diff --git a/Project/WorkspaceBase.cpp b/Project/WorkspaceBase.cpp index 7a63758..65a1071 100644 --- a/Project/WorkspaceBase.cpp +++ b/Project/WorkspaceBase.cpp @@ -51,6 +51,7 @@ WorkspaceBase::WorkspaceBase(wxWindow* parent, wxWindowID id, const wxPoint& pos 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); } @@ -64,5 +65,6 @@ WorkspaceBase::~WorkspaceBase() 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); } -- cgit