#include "gua64widget.h"

#define INITIAL_Y_LOCATION 27
#define OFFSET 12

Gua64Widget::Gua64Widget(int hexKey, QString stringKey, QWidget *parent) : QWidget(parent)
{
    hex = hexKey;
    string = stringKey;
    setFixedWidth(121);
    setFixedHeight(110);
}

void Gua64Widget::paintEvent(QPaintEvent *){
    QPainter painter(this);
    int y = INITIAL_Y_LOCATION;
    for (int i = 5; i >= 0; i--) {
        if (!((hex >> i) & 1)) {
            painter.setPen(QPen(Qt::black,1));
            painter.setBrush(QBrush(Qt::black,Qt::SolidPattern));
            painter.drawRect(20,y,35,8);
            painter.drawRect(65,y,35,8);
        } else {
            painter.setPen(QPen(Qt::red,1));
            painter.setBrush(QBrush(Qt::red,Qt::SolidPattern));
            painter.drawRect(20,y,80,8);
        }
        y += OFFSET;
    }
}

void Gua64Widget::mouseReleaseEvent(QMouseEvent *){
    SubWidget::getInstance()->showGua(hex,string);
    emit clicked();
}