summaryrefslogtreecommitdiffstats
path: root/Project/Capacitor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Project/Capacitor.cpp')
-rw-r--r--Project/Capacitor.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/Project/Capacitor.cpp b/Project/Capacitor.cpp
index 26e0854..46193f5 100644
--- a/Project/Capacitor.cpp
+++ b/Project/Capacitor.cpp
@@ -89,18 +89,22 @@ void Capacitor::Draw(wxPoint2DDouble translation, double scale) const
}
}
-void Capacitor::Rotate()
+void Capacitor::Rotate(bool clockwise)
{
- m_angle += m_rotationAngle;
- m_pointList[2] = RotateAtPosition(m_pointList[2], m_rotationAngle);
- m_pointList[3] = RotateAtPosition(m_pointList[3], m_rotationAngle);
+ double rotAngle = m_rotationAngle;
+ if(!clockwise) rotAngle = -m_rotationAngle;
+
+ m_angle += rotAngle;
+ m_pointList[2] = RotateAtPosition(m_pointList[2], rotAngle);
+ m_pointList[3] = RotateAtPosition(m_pointList[3], rotAngle);
UpdateSwitchesPosition();
}
bool Capacitor::GetContextMenu(wxMenu& menu)
{
menu.Append(ID_EDIT_CAPACITOR, _("Edit Capacitor"));
- menu.Append(ID_ROTATE, _("Rotate"));
+ menu.Append(ID_ROTATE_CLOCK, _("Rotate clockwise"));
+ menu.Append(ID_ROTATE_COUNTERCLOCK, _("Rotate counter-clockwise"));
menu.Append(ID_DELETE, _("Delete"));
return true;
}