Mon, 20 Jun 2022 02:04:51 +0300
Add base code for circular primitives
#pragma once #include "../basics.h" #include "../colors.h" #include <QPushButton> #include <QAbstractTableModel> #include <QDialog> #include <QGridLayout> class ColorSelectDialog : public QDialog { Q_OBJECT public: explicit ColorSelectDialog(const ColorTable& colorTable, QWidget* parent = nullptr); ~ColorSelectDialog(); void setCurrentColor(ColorIndex color); ldraw::Color currentColor() const; private Q_SLOTS: void populateColors(); void updateSelectedColorTexts(); void handleButtonClick(); void spinboxEdited(); void chooseDirectColor(); private: void makeColorButtons(); bool filterColor(ldraw::Color color) const; class Ui_ColorSelectDialog& ui; const ColorTable& colorTable; std::vector<QPushButton*> buttons; ColorIndex selectedColor = MAIN_COLOR; };