summaryrefslogtreecommitdiffstats
path: root/Project/Workspace.h
diff options
context:
space:
mode:
Diffstat (limited to 'Project/Workspace.h')
-rw-r--r--Project/Workspace.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/Project/Workspace.h b/Project/Workspace.h
index 21a1a56..4ac469c 100644
--- a/Project/Workspace.h
+++ b/Project/Workspace.h
@@ -7,6 +7,7 @@
#include <wx/msgdlg.h>
#include <wx/statusbr.h>
#include <wx/clipbrd.h>
+#include <wx/tipwin.h>
#include "WorkspaceBase.h"
#include "Bus.h"
@@ -76,11 +77,12 @@ public:
wxFileName GetSavedPath() const { return m_savedPath; }
void SetName(wxString name) { m_name = name; }
- void SetElementList(std::vector<Element*> elementList) { m_elementList = elementList; }
- void SetTextList(std::vector<Text*> textList) { m_textList = textList; }
+ void SetElementList(std::vector<Element*> elementList);
+ void SetTextList(std::vector<Text*> textList);
void SetStatusBarText(wxString text) { m_statusBar->SetStatusText(text); }
void SetWorkspaceMode(WorkspaceMode mode) { m_mode = mode; }
void SetSavedPath(wxFileName savedPath) { m_savedPath = savedPath; }
+ void SetJustOpened(bool justOpened) { m_justOpened = justOpened; }
void Redraw() { m_glCanvas->Refresh(); }
void RotateSelectedElements(bool clockwise = true);
@@ -91,7 +93,8 @@ public:
void ValidateBusesVoltages(Element* initialBus);
void ValidateElementsVoltages();
-
+
+ void UpdateElementsID();
void UpdateTextElements();
int GetElementNumber(ElementID elementID) { return m_elementNumber[elementID]; }
@@ -100,6 +103,8 @@ public:
bool RunPowerFlow();
protected:
+ virtual void OnIdle(wxIdleEvent& event);
+ virtual void OnTimer(wxTimerEvent& event);
virtual void OnLeftDoubleClick(wxMouseEvent& event);
virtual void OnRightClickDown(wxMouseEvent& event);
virtual void OnLeftClickUp(wxMouseEvent& event);
@@ -115,9 +120,10 @@ protected:
void SetViewport();
void UpdateStatusBar();
- wxGLContext* m_glContext;
- wxStatusBar* m_statusBar;
- Camera* m_camera;
+ wxGLContext* m_glContext = NULL;
+ wxStatusBar* m_statusBar = NULL;
+ Camera* m_camera = NULL;
+ wxTipWindow* m_tipWindow = NULL;
wxString m_name;
WorkspaceMode m_mode = MODE_EDIT;
@@ -128,10 +134,11 @@ protected:
std::vector<Text*> m_textList;
wxFileName m_savedPath;
-
-private:
+
wxRect2DDouble m_selectionRect;
wxPoint2DDouble m_startSelRect;
+
+ bool m_justOpened = false;
};
class Camera
@@ -159,7 +166,7 @@ protected:
wxPoint2DDouble m_mousePosition;
- double m_zoomMin = 0.05;
+ double m_zoomMin = 0.01;
double m_zoomMax = 3.0;
};