summaryrefslogtreecommitdiffstats
path: root/Project/Workspace.h
diff options
context:
space:
mode:
Diffstat (limited to 'Project/Workspace.h')
-rw-r--r--Project/Workspace.h31
1 files changed, 16 insertions, 15 deletions
diff --git a/Project/Workspace.h b/Project/Workspace.h
index 5a36106..09b94e5 100644
--- a/Project/Workspace.h
+++ b/Project/Workspace.h
@@ -53,9 +53,17 @@ enum ElementID {
NUM_ELEMENTS
};
+/**
+ * @class Workspace
+ * @author Thales Lima Oliveira <thales@ufu.br>
+ * @date 19/09/2017
+ * @file Workspace.h
+ * @brief This class manages the graphical and power elements. It is responsible for handling the user's interaction
+ * with the elements.
+ */
class Workspace : public WorkspaceBase
{
-public:
+ public:
enum WorkspaceMode {
MODE_EDIT = 0,
MODE_MOVE_ELEMENT,
@@ -81,12 +89,10 @@ public:
std::vector<Element*> GetAllElements() const;
WorkspaceMode GetWorkspaceMode() const { return m_mode; }
Camera* GetCamera() const { return m_camera; }
-
void CopySelection();
bool Paste();
wxFileName GetSavedPath() const { return m_savedPath; }
-
void SetName(wxString name) { m_name = name; }
void SetElementList(std::vector<Element*> elementList);
void SetTextList(std::vector<Text*> textList);
@@ -94,13 +100,12 @@ public:
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);
void DeleteSelectedElements();
bool GetElementsCorners(wxPoint2DDouble& leftUpCorner,
- wxPoint2DDouble& rightDownCorner,
- std::vector<Element*> elementList);
+ wxPoint2DDouble& rightDownCorner,
+ std::vector<Element*> elementList);
void Fit();
void UnselectAll();
@@ -112,21 +117,17 @@ public:
int GetElementNumber(ElementID elementID) { return m_elementNumber[elementID]; }
void IncrementElementNumber(ElementID elementID) { m_elementNumber[elementID]++; }
-
PropertiesData* GetProperties() const { return m_properties; }
-
std::vector<double> GetStabilityTimeVector() const { return m_stabilityTimeVector; }
-
bool IsContinuousCalculationActive() const { return m_continuousCalc; }
void SetContinuousCalculationActive(bool value = true) { m_continuousCalc = value; }
-
bool RunPowerFlow();
bool RunFault();
bool RunSCPower();
bool RunStaticStudies();
bool RunStability();
-protected:
+ protected:
virtual void OnMiddleDoubleClick(wxMouseEvent& event);
virtual void OnIdle(wxIdleEvent& event);
virtual void OnTimer(wxTimerEvent& event);
@@ -162,14 +163,14 @@ protected:
wxRect2DDouble m_selectionRect;
wxPoint2DDouble m_startSelRect;
-
+
PropertiesData* m_properties = NULL;
-
+
std::vector<double> m_stabilityTimeVector;
-
+
bool m_continuousCalc = false;
bool m_disconnectedElement = false;
bool m_justOpened = false;
};
-#endif // WORKSPACE_H
+#endif // WORKSPACE_H