refactor CaptureButton and use CSS for side panel button
This commit is contained in:
@@ -26,10 +26,10 @@ ConfigHandler::ConfigHandler()
|
||||
m_settings.setDefaultFormat(QSettings::IniFormat);
|
||||
}
|
||||
|
||||
QVector<CaptureButton::ButtonType>
|
||||
QVector<CaptureToolButton::ButtonType>
|
||||
ConfigHandler::getButtons()
|
||||
{
|
||||
QVector<CaptureButton::ButtonType> buttons;
|
||||
QVector<CaptureToolButton::ButtonType> buttons;
|
||||
if (m_settings.contains(QStringLiteral("buttons"))) {
|
||||
// TODO: remove toList in v1.0
|
||||
QVector<int> buttonsInt = m_settings.value(QStringLiteral("buttons"))
|
||||
@@ -43,29 +43,33 @@ ConfigHandler::getButtons()
|
||||
buttons = fromIntToButton(buttonsInt);
|
||||
} else {
|
||||
// Default tools
|
||||
buttons << CaptureButton::TYPE_PENCIL << CaptureButton::TYPE_DRAWER
|
||||
<< CaptureButton::TYPE_ARROW << CaptureButton::TYPE_SELECTION
|
||||
<< CaptureButton::TYPE_RECTANGLE << CaptureButton::TYPE_CIRCLE
|
||||
<< CaptureButton::TYPE_MARKER << CaptureButton::TYPE_PIXELATE
|
||||
<< CaptureButton::TYPE_SELECTIONINDICATOR
|
||||
<< CaptureButton::TYPE_MOVESELECTION << CaptureButton::TYPE_UNDO
|
||||
<< CaptureButton::TYPE_REDO << CaptureButton::TYPE_COPY
|
||||
<< CaptureButton::TYPE_SAVE << CaptureButton::TYPE_EXIT
|
||||
<< CaptureButton::TYPE_IMAGEUPLOADER << CaptureButton::TYPE_OPEN_APP
|
||||
<< CaptureButton::TYPE_PIN << CaptureButton::TYPE_TEXT
|
||||
<< CaptureButton::TYPE_CIRCLECOUNT;
|
||||
buttons << CaptureToolButton::TYPE_PENCIL << CaptureToolButton::TYPE_DRAWER
|
||||
<< CaptureToolButton::TYPE_ARROW
|
||||
<< CaptureToolButton::TYPE_SELECTION
|
||||
<< CaptureToolButton::TYPE_RECTANGLE
|
||||
<< CaptureToolButton::TYPE_CIRCLE << CaptureToolButton::TYPE_MARKER
|
||||
<< CaptureToolButton::TYPE_PIXELATE
|
||||
<< CaptureToolButton::TYPE_SELECTIONINDICATOR
|
||||
<< CaptureToolButton::TYPE_MOVESELECTION
|
||||
<< CaptureToolButton::TYPE_UNDO << CaptureToolButton::TYPE_REDO
|
||||
<< CaptureToolButton::TYPE_COPY << CaptureToolButton::TYPE_SAVE
|
||||
<< CaptureToolButton::TYPE_EXIT
|
||||
<< CaptureToolButton::TYPE_IMAGEUPLOADER
|
||||
<< CaptureToolButton::TYPE_OPEN_APP << CaptureToolButton::TYPE_PIN
|
||||
<< CaptureToolButton::TYPE_TEXT
|
||||
<< CaptureToolButton::TYPE_CIRCLECOUNT;
|
||||
}
|
||||
|
||||
using bt = CaptureButton::ButtonType;
|
||||
using bt = CaptureToolButton::ButtonType;
|
||||
std::sort(buttons.begin(), buttons.end(), [](bt a, bt b) {
|
||||
return CaptureButton::getPriorityByButton(a) <
|
||||
CaptureButton::getPriorityByButton(b);
|
||||
return CaptureToolButton::getPriorityByButton(a) <
|
||||
CaptureToolButton::getPriorityByButton(b);
|
||||
});
|
||||
return buttons;
|
||||
}
|
||||
|
||||
void
|
||||
ConfigHandler::setButtons(const QVector<CaptureButton::ButtonType>& buttons)
|
||||
ConfigHandler::setButtons(const QVector<CaptureToolButton::ButtonType>& buttons)
|
||||
{
|
||||
QVector<int> l = fromButtonToInt(buttons);
|
||||
normalizeButtons(l);
|
||||
@@ -438,8 +442,8 @@ void
|
||||
ConfigHandler::setAllTheButtons()
|
||||
{
|
||||
QVector<int> buttons;
|
||||
auto listTypes = CaptureButton::getIterableButtonTypes();
|
||||
for (const CaptureButton::ButtonType t : listTypes) {
|
||||
auto listTypes = CaptureToolButton::getIterableButtonTypes();
|
||||
for (const CaptureToolButton::ButtonType t : listTypes) {
|
||||
buttons << static_cast<int>(t);
|
||||
}
|
||||
// TODO: remove toList in v1.0
|
||||
@@ -456,7 +460,7 @@ ConfigHandler::configFilePath() const
|
||||
bool
|
||||
ConfigHandler::normalizeButtons(QVector<int>& buttons)
|
||||
{
|
||||
auto listTypes = CaptureButton::getIterableButtonTypes();
|
||||
auto listTypes = CaptureToolButton::getIterableButtonTypes();
|
||||
QVector<int> listTypesInt;
|
||||
for (auto i : listTypes)
|
||||
listTypesInt << static_cast<int>(i);
|
||||
@@ -471,17 +475,17 @@ ConfigHandler::normalizeButtons(QVector<int>& buttons)
|
||||
return hasChanged;
|
||||
}
|
||||
|
||||
QVector<CaptureButton::ButtonType>
|
||||
QVector<CaptureToolButton::ButtonType>
|
||||
ConfigHandler::fromIntToButton(const QVector<int>& l)
|
||||
{
|
||||
QVector<CaptureButton::ButtonType> buttons;
|
||||
QVector<CaptureToolButton::ButtonType> buttons;
|
||||
for (auto const i : l)
|
||||
buttons << static_cast<CaptureButton::ButtonType>(i);
|
||||
buttons << static_cast<CaptureToolButton::ButtonType>(i);
|
||||
return buttons;
|
||||
}
|
||||
|
||||
QVector<int>
|
||||
ConfigHandler::fromButtonToInt(const QVector<CaptureButton::ButtonType>& l)
|
||||
ConfigHandler::fromButtonToInt(const QVector<CaptureToolButton::ButtonType>& l)
|
||||
{
|
||||
QVector<int> buttons;
|
||||
for (auto const i : l)
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "src/widgets/capture/capturebutton.h"
|
||||
#include "src/widgets/capture/capturetoolbutton.h"
|
||||
#include <QSettings>
|
||||
#include <QVector>
|
||||
|
||||
@@ -26,8 +26,8 @@ class ConfigHandler
|
||||
public:
|
||||
explicit ConfigHandler();
|
||||
|
||||
QVector<CaptureButton::ButtonType> getButtons();
|
||||
void setButtons(const QVector<CaptureButton::ButtonType>&);
|
||||
QVector<CaptureToolButton::ButtonType> getButtons();
|
||||
void setButtons(const QVector<CaptureToolButton::ButtonType>&);
|
||||
|
||||
QVector<QColor> getUserColors();
|
||||
void setUserColors(const QVector<QColor>&);
|
||||
@@ -93,6 +93,6 @@ private:
|
||||
|
||||
bool normalizeButtons(QVector<int>&);
|
||||
|
||||
QVector<CaptureButton::ButtonType> fromIntToButton(const QVector<int>& l);
|
||||
QVector<int> fromButtonToInt(const QVector<CaptureButton::ButtonType>& l);
|
||||
QVector<CaptureToolButton::ButtonType> fromIntToButton(const QVector<int>& l);
|
||||
QVector<int> fromButtonToInt(const QVector<CaptureToolButton::ButtonType>& l);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user