completed zoom tool

This commit is contained in:
itsmattkc
2019-09-19 01:39:09 +10:00
parent 088b0543eb
commit 9b312abf46
4 changed files with 8 additions and 4 deletions
+1
View File
@@ -40,6 +40,7 @@ TimelinePanel::TimelinePanel(QWidget *parent) :
layout->addWidget(view_);
connect(view_->horizontalScrollBar(), SIGNAL(valueChanged(int)), ruler_, SLOT(SetScroll(int)));
connect(view_, SIGNAL(UserSetScale(double)), this, SLOT(SetScale(double)));
connect(ruler_, SIGNAL(TimeChanged(const int64_t&)), view_, SLOT(SetTime(const int64_t&)));
// FIXME: Magic number
+3 -2
View File
@@ -49,13 +49,14 @@ signals:
private:
void Retranslate();
void SetScale(double scale);
TimelineView* view_;
TimeRuler* ruler_;
double scale_;
private slots:
void SetScale(double scale);
};
#endif // TIMELINE_PANEL_H
+2
View File
@@ -63,6 +63,8 @@ signals:
void RequestReplaceBlock(Block* old, Block* replace, int track);
void RequestSplitAtTime(rational time, int track);
void UserSetScale(double scale);
protected:
virtual void mousePressEvent(QMouseEvent *event) override;
virtual void mouseMoveEvent(QMouseEvent *event) override;
+2 -2
View File
@@ -39,9 +39,9 @@ void TimelineView::ZoomTool::MouseRelease(QMouseEvent *event)
{
if (event->modifiers() & Qt::AltModifier) {
// Zoom out if the user clicks while holding Alt
parent()->SetScale(parent()->scale_ * 0.5);
emit parent()->UserSetScale(parent()->scale_ * 0.5);
} else {
// Otherwise zoom in
parent()->SetScale(parent()->scale_ * 2);
emit parent()->UserSetScale(parent()->scale_ * 2);
}
}