Skip to content

Commit

Permalink
Ui fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
rodlie committed Jun 27, 2024
1 parent 4f5c709 commit 6e401e0
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 45 deletions.
15 changes: 9 additions & 6 deletions src/app/GUI/canvaswindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -537,11 +537,14 @@ bool CanvasWindow::handleSelectAllKeyPress(QKeyEvent* event)
{
if (event->key() == Qt::Key_A && !isMouseGrabber()) {
bool altPressed = event->modifiers() & Qt::AltModifier;
bool shiftPressed = event->modifiers() & Qt::ShiftModifier;
auto currentMode = mDocument.fCanvasMode;
if (currentMode == CanvasMode::boxTransform) {
if (shiftPressed) {
mCurrentCanvas->invertSelectionAction();
} else if (currentMode == CanvasMode::boxTransform) {
if (altPressed) {
mCurrentCanvas->deselectAllBoxesAction();
} else {
} else {
mCurrentCanvas->selectAllBoxesAction();
}
} else if (currentMode == CanvasMode::pointTransform) {
Expand Down Expand Up @@ -625,17 +628,17 @@ bool CanvasWindow::KFT_keyPressEvent(QKeyEvent *event)
//if(handleShiftKeysKeyPress(event)) return true; // does nothing, see func

const auto canvasMode = mDocument.fCanvasMode;
if (e.fKey == Qt::Key_I && !isMouseGrabber()) {
mActions.invertSelectionAction();
} /*else if(e.fKey == Qt::Key_W) {
/*if (e.fKey == Qt::Key_I && !isMouseGrabber()) {
//mActions.invertSelectionAction();
} else if(e.fKey == Qt::Key_W) {
if(canvasMode == CanvasMode::paint) mDocument.incBrushRadius();
} else if(e.fKey == Qt::Key_Q) {
if(canvasMode == CanvasMode::paint) mDocument.decBrushRadius();
} else if(e.fKey == Qt::Key_E) {
if(canvasMode == CanvasMode::paint) mDocument.setPaintMode(PaintMode::erase);
} else if(e.fKey == Qt::Key_B) {
if(canvasMode == CanvasMode::paint) mDocument.setPaintMode(PaintMode::normal);
}*/ else if ((e.fKey == Qt::Key_Enter || e.fKey == Qt::Key_Return) &&
} else*/ if ((e.fKey == Qt::Key_Enter || e.fKey == Qt::Key_Return) &&
canvasMode == CanvasMode::drawPath) {
const bool manual = mDocument.fDrawPathManual;
if (manual) { mCurrentCanvas->drawPathFinish(1/e.fScale); }
Expand Down
2 changes: 1 addition & 1 deletion src/app/GUI/mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -619,7 +619,7 @@ void MainWindow::setupMenuBar()
mEditMenu->addAction(new NoShortcutAction(
tr("Invert Selection", "MenuBar_Edit"),
&mActions, &Actions::invertSelectionAction,
Qt::Key_I, mEditMenu));
Qt::SHIFT + Qt::Key_A, mEditMenu));
mEditMenu->addAction(new NoShortcutAction(
tr("Clear Selection", "MenuBar_Edit"),
&mActions, &Actions::clearSelectionAction,
Expand Down
66 changes: 30 additions & 36 deletions src/app/GUI/timelinedockwidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,6 @@ TimelineDockWidget::TimelineDockWidget(Document& document,
, mCurrentFrameSpin(nullptr)
, mRenderProgressAct(nullptr)
, mRenderProgress(nullptr)
, mFrameInAct(nullptr)
, mFrameOutAct(nullptr)
{
connect(RenderHandler::sInstance, &RenderHandler::previewFinished,
this, &TimelineDockWidget::previewFinished);
Expand Down Expand Up @@ -98,38 +96,6 @@ TimelineDockWidget::TimelineDockWidget(Document& document,
scene->setMarker(tr("Marker"), frame);
});

mFrameInAct = new QAction(tr("In"), this);
mFrameInAct->setShortcut(QKeySequence(AppSupport::getSettings("shortcuts",
"frameIn",
"i").toString())); // 'i' already in use
connect(mFrameInAct, &QAction::triggered,
this, [this]() {
const auto scene = *mDocument.fActiveScene;
if (!scene) { return; }
const auto frame = scene->getCurrentFrame();
if (scene->getFrameOut().first) {
if (frame >= scene->getFrameOut().second) { return; }
}
bool apply = (scene->getFrameIn().second != frame);
scene->setFrameIn(apply, frame);
});

mFrameOutAct = new QAction(tr("Out"), this);
mFrameOutAct->setShortcut(QKeySequence(AppSupport::getSettings("shortcuts",
"frameOut",
"o").toString()));
connect(mFrameOutAct, &QAction::triggered,
this, [this]() {
const auto scene = *mDocument.fActiveScene;
if (!scene) { return; }
const auto frame = scene->getCurrentFrame();
if (scene->getFrameIn().first) {
if (frame <= scene->getFrameIn().second) { return; }
}
bool apply = (scene->getFrameOut().second != frame);
scene->setFrameOut(apply, frame);
});

mFrameRewindAct = new QAction(QIcon::fromTheme("rewind"),
tr("Rewind"),
this);
Expand Down Expand Up @@ -284,7 +250,6 @@ TimelineDockWidget::TimelineDockWidget(Document& document,
mRenderProgress->setFormat(tr("Cache %p%"));

mToolBar->addWidget(mFrameStartSpin);
mToolBar->addAction(mFrameInAct);

QWidget *spacerWidget1 = new QWidget(this);
spacerWidget1->setSizePolicy(QSizePolicy::Expanding,
Expand All @@ -310,7 +275,6 @@ TimelineDockWidget::TimelineDockWidget(Document& document,
QSizePolicy::Minimum);
mToolBar->addWidget(spacerWidget2);

mToolBar->addAction(mFrameOutAct);
mToolBar->addWidget(mFrameEndSpin);

mMainLayout->addWidget(mToolBar);
Expand Down Expand Up @@ -391,6 +355,12 @@ bool TimelineDockWidget::processKeyPress(QKeyEvent *event)
case PreviewState::playing: pausePreview(); break;
case PreviewState::paused: resumePreview(); break;
}
} else if(key == Qt::Key_I || key == Qt::Key_O) { // set frame in/out
switch(key) {
case Qt::Key_I: setIn(); break;
case Qt::Key_O: setOut(); break;
default:;
}
} else if (key == Qt::Key_Right && !(mods & Qt::ControlModifier)) { // next frame
mDocument.incActiveSceneFrame();
} else if (key == Qt::Key_Left && !(mods & Qt::ControlModifier)) { // previous frame
Expand Down Expand Up @@ -597,3 +567,27 @@ void TimelineDockWidget::stopPreview()
default:;
}
}

void TimelineDockWidget::setIn()
{
const auto scene = *mDocument.fActiveScene;
if (!scene) { return; }
const auto frame = scene->getCurrentFrame();
if (scene->getFrameOut().first) {
if (frame >= scene->getFrameOut().second) { return; }
}
bool apply = (scene->getFrameIn().second != frame);
scene->setFrameIn(apply, frame);
}

void TimelineDockWidget::setOut()
{
const auto scene = *mDocument.fActiveScene;
if (!scene) { return; }
const auto frame = scene->getCurrentFrame();
if (scene->getFrameIn().first) {
if (frame <= scene->getFrameIn().second) { return; }
}
bool apply = (scene->getFrameOut().second != frame);
scene->setFrameOut(apply, frame);
}
5 changes: 3 additions & 2 deletions src/app/GUI/timelinedockwidget.h
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,9 @@ class TimelineDockWidget : public QWidget

void stopPreview();

void setIn();
void setOut();

private:
void setLoop(const bool loop);
void interruptPreview();
Expand Down Expand Up @@ -123,8 +126,6 @@ class TimelineDockWidget : public QWidget
QAction *mRenderProgressAct;
QProgressBar *mRenderProgress;

QAction *mFrameInAct;
QAction *mFrameOutAct;
QAction *mFrameMarkersAct;

QList<TimelineWidget*> mTimelineWidgets;
Expand Down

0 comments on commit 6e401e0

Please sign in to comment.