// Copyright 2014 Citra Emulator Project // Licensed under GPLv2 or any later version // Refer to the license.txt file included. #pragma once #include class RegisterView: public QFrame { Q_OBJECT public: RegisterView(QWidget* parent = NULL); protected: QSize sizeHint() const; QSize minimumSizeHint() const { return sizeHint(); } void paintEvent(QPaintEvent* event); void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); private slots: void previousRegister(); void nextRegister(); private: int maxNameLength() const; int yToRow(int y) const; int getNumRegisters() const; QString getRegisterName(int index) const; unsigned int getRegisterValue(int index) const; void refreshChangedRegs(); struct ChangedReg { unsigned int oldValue; bool changed; }; QFont font; int charWidth; int charHeight; int charDescent; int borderGap; int valueX; unsigned int lastPc; ChangedReg* changedRegs; int selectedRegister; };