mirror of
https://github.com/fergalmoran/flameshot.git
synced 2026-03-27 10:29:46 +00:00
Capture GUI refactor (#1939)
* Merge CTB::ButtonType into CaptureTool::Type Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Remove configshortcuts.cpp which I forgot to do earlier Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Add activeButtonTool & activeButtonToolType in CaptureWidget Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Rename slots in CaptureTool for better mnemonics Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Fix move tool bug Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Refactor ShortcutsWidget::initButtons Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Move code from CaptureWidget to SelectionWidget: part 1 Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Move code from CaptureWidget to SelectionWidget: part 2 Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Move code from CaptureWidget to SelectionWidget: part 3 Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Move code from CaptureWidget to SelectionWidget: part 4 Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Add SelectionWidget::updateCursor Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Move code from CaptureWidget to SelectionWidget: part 5 Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Refactor mouse events in CaptureWidget Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Overlay message update Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Replace connect/disconnect with blockSignals Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * updateIcon on button animation finished Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Remove CaptureWidget::selectAll Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Move moveLeft and similar to SelectionWidget Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Mark update calls for removal Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Specialize CaptureWidget update to affected rects Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Tune update of tool objects Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Remove redundant CaptureTool requests Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Improve performance of update in CaptureWidget Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Fix failing builds Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Fix failing builds again Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Fix undo/redo update Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Undo/redo update workaround Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Extend capture tool update rects Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Fix circle count tool update bug Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Add 'Left Double-Click' tooltip to copy button Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com> * Improve ColorPicker performance Signed-off-by: Haris Gušić <harisgusic.dev@gmail.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
#include "valuehandler.h"
|
||||
#include "capturetool.h"
|
||||
#include "confighandler.h"
|
||||
#include <QColor>
|
||||
#include <QFileInfo>
|
||||
@@ -267,15 +268,16 @@ QString FilenamePattern::expected()
|
||||
|
||||
// BUTTON LIST
|
||||
|
||||
using BType = CaptureToolButton::ButtonType;
|
||||
using BList = QList<BType>;
|
||||
using BType = CaptureTool::Type;
|
||||
using BList = QList<CaptureTool::Type>;
|
||||
|
||||
bool ButtonList::check(const QVariant& val)
|
||||
{
|
||||
// TODO stop using CTB
|
||||
using CTB = CaptureToolButton;
|
||||
auto allButtons = CTB::getIterableButtonTypes();
|
||||
for (int btn : val.value<QList<int>>()) {
|
||||
if (!allButtons.contains(static_cast<CTB::ButtonType>(btn))) {
|
||||
if (!allButtons.contains(static_cast<BType>(btn))) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -302,8 +304,8 @@ QVariant ButtonList::process(const QVariant& val)
|
||||
QVariant ButtonList::fallback()
|
||||
{
|
||||
auto buttons = CaptureToolButton::getIterableButtonTypes();
|
||||
buttons.removeOne(CaptureToolButton::TYPE_SIZEDECREASE);
|
||||
buttons.removeOne(CaptureToolButton::TYPE_SIZEINCREASE);
|
||||
buttons.removeOne(CaptureTool::TYPE_SIZEDECREASE);
|
||||
buttons.removeOne(CaptureTool::TYPE_SIZEINCREASE);
|
||||
sortButtons(buttons);
|
||||
return QVariant::fromValue(buttons);
|
||||
}
|
||||
@@ -320,17 +322,16 @@ QString ButtonList::expected()
|
||||
return QStringLiteral("please don't edit by hand");
|
||||
}
|
||||
|
||||
QList<CaptureToolButton::ButtonType> ButtonList::fromIntList(
|
||||
const QList<int>& l)
|
||||
QList<CaptureTool::Type> ButtonList::fromIntList(const QList<int>& l)
|
||||
{
|
||||
QList<CaptureToolButton::ButtonType> buttons;
|
||||
QList<CaptureTool::Type> buttons;
|
||||
buttons.reserve(l.size());
|
||||
for (auto const i : l)
|
||||
buttons << static_cast<CaptureToolButton::ButtonType>(i);
|
||||
buttons << static_cast<CaptureTool::Type>(i);
|
||||
return buttons;
|
||||
}
|
||||
|
||||
QList<int> ButtonList::toIntList(const QList<CaptureToolButton::ButtonType>& l)
|
||||
QList<int> ButtonList::toIntList(const QList<CaptureTool::Type>& l)
|
||||
{
|
||||
QList<int> buttons;
|
||||
buttons.reserve(l.size());
|
||||
|
||||
Reference in New Issue
Block a user