src/widgets/colorselectdialog.h

Tue, 28 Jun 2022 11:51:17 +0300

author
Teemu Piippo <teemu.s.piippo@gmail.com>
date
Tue, 28 Jun 2022 11:51:17 +0300
changeset 281
afed72b544f0
parent 264
76a025db4948
permissions
-rw-r--r--

- Add CMake build type to about page and window title
- Use locale-dependant short date format in window title and long format in about page
- Move version definition into project() call
- Renamed the c++ macros to match CMake variable names

#pragma once
#include "src/basics.h"
#include "src/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;
};

mercurial