diff options
author | Thales Lima Oliveira <thaleslima.ufu@gmail.com> | 2017-04-06 17:12:09 -0300 |
---|---|---|
committer | Thales Lima Oliveira <thaleslima.ufu@gmail.com> | 2017-04-06 17:12:09 -0300 |
commit | ed36957d2d06ce9484e39be699bc41b521bdb090 (patch) | |
tree | b2e8edcd03acc660a6f504391703cfcdd70add40 /Project/IOControl.h | |
parent | 38b3e2decff95f5e29ffb6025ee899d108d22f04 (diff) | |
download | PSP.git-ed36957d2d06ce9484e39be699bc41b521bdb090.tar.gz PSP.git-ed36957d2d06ce9484e39be699bc41b521bdb090.tar.xz PSP.git-ed36957d2d06ce9484e39be699bc41b521bdb090.zip |
Io form under implementation
Diffstat (limited to 'Project/IOControl.h')
-rw-r--r-- | Project/IOControl.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/Project/IOControl.h b/Project/IOControl.h new file mode 100644 index 0000000..e736ac1 --- /dev/null +++ b/Project/IOControl.h @@ -0,0 +1,49 @@ +#ifndef IOCONTROL_H +#define IOCONTROL_H + +#include "ControlElement.h" + +#include <wx/dcscreen.h> +#include "wxGLString.h" + +class IOControlForm; + +class IOControl : public ControlElement +{ + public: + enum IOFlags { + IN_TERMINAL_VOLTAGE = 1 << 0, + IN_VELOCITY = 1 << 1, + IN_ACTIVE_POWER = 1 << 2, + IN_REACTIVE_POWER = 1 << 3, + OUT_FIELD_VOLTAGE = 1 << 4, + OUT_MEC_POWER = 1 << 5 + }; + + IOControl(int ioFlags); + ~IOControl(); + + virtual void Draw(wxPoint2DDouble translation, double scale) const; + virtual bool Contains(wxPoint2DDouble position) const { return m_rect.Contains(position); } + virtual bool Intersects(wxRect2DDouble rect) const { return m_rect.Intersects(rect); } + virtual bool ShowForm(wxWindow* parent, Element* element); + virtual void Rotate(bool clockwise = true); + + virtual wxString GenerateText(); + virtual void UpdatePoints(); + + virtual IOFlags GetValue() const { return m_value; } + virtual void SetValue(IOFlags value); + virtual int GetIOFlags() const { return m_ioFlags; } + + protected: + IOFlags m_value; + int m_ioFlags; + + Node::NodeType m_ioNodeType = Node::NODE_IN; + + wxGLString* m_glStringValue = NULL; + int m_fontSize = 10; +}; + +#endif // IOCONTROL_H |