aboutsummaryrefslogtreecommitdiff
path: root/qtmips_gui/coreview/latch.h
diff options
context:
space:
mode:
Diffstat (limited to 'qtmips_gui/coreview/latch.h')
-rw-r--r--qtmips_gui/coreview/latch.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/qtmips_gui/coreview/latch.h b/qtmips_gui/coreview/latch.h
index ff1ff6e..951f16a 100644
--- a/qtmips_gui/coreview/latch.h
+++ b/qtmips_gui/coreview/latch.h
@@ -3,6 +3,7 @@
#include <QGraphicsObject>
#include <QList>
+#include <QPropertyAnimation>
#include "qtmipsexception.h"
#include "qtmipsmachine.h"
#include "../coreview.h"
@@ -12,18 +13,25 @@ namespace coreview {
class Latch : public QGraphicsObject {
Q_OBJECT
+ Q_PROPERTY(QColor wedge_clr READ wedge_color WRITE set_wedge_color)
public:
Latch(machine::QtMipsMachine *machine, qreal height);
QRectF boundingRect() const;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
+ QColor wedge_color();
+ void set_wedge_color(QColor &c);
+
void setPos(qreal x, qreal y);
struct ConnectorPair { Connector *in, *out; };
struct ConnectorPair new_connector(qreal y); // Create new connectors pair that is given y from top of latch
+protected:
+ void updateCurrentValue(const QColor &color);
+
private slots:
void tick();
@@ -32,6 +40,8 @@ private:
QList<ConnectorPair> connectors;
QList<qreal> connectors_off;
+ QPropertyAnimation *wedge_animation;
+ QColor wedge_clr;
};
}