start implementation of multicam panel

This commit is contained in:
itsmattkc
2022-09-21 13:16:19 -07:00
parent 2dc2edf3e0
commit 487cd166d7
21 changed files with 347 additions and 25 deletions
+22
View File
@@ -0,0 +1,22 @@
# Olive - Non-Linear Video Editor
# Copyright (C) 2022 Olive Team
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
set(OLIVE_SOURCES
${OLIVE_SOURCES}
panel/multicam/multicampanel.h
panel/multicam/multicampanel.cpp
PARENT_SCOPE
)
+26
View File
@@ -0,0 +1,26 @@
#include "multicampanel.h"
namespace olive {
#define super PanelWidget
MulticamPanel::MulticamPanel(ViewerPanelBase *sibling, QWidget *parent) :
super(QStringLiteral("MultiCamPanel"), parent)
{
widget_ = new MulticamWidget();
SetWidgetWithPadding(widget_);
connect(sibling, &ViewerPanelBase::ColorManagerChanged, widget_, &MulticamWidget::ConnectColorManager);
widget_->ConnectCacher(static_cast<ViewerWidget*>(sibling->GetTimeBasedWidget())->GetCacher());
Retranslate();
}
void MulticamPanel::Retranslate()
{
super::Retranslate();
SetTitle(tr("Multi-Cam"));
}
}
+37
View File
@@ -0,0 +1,37 @@
#ifndef MULTICAMPANEL_H
#define MULTICAMPANEL_H
#include "panel/viewer/viewerbase.h"
#include "widget/multicam/multicamwidget.h"
#include "widget/panel/panel.h"
namespace olive {
class MulticamPanel : public PanelWidget
{
Q_OBJECT
public:
MulticamPanel(ViewerPanelBase *sibling, QWidget* parent = nullptr);
void SetNode(MultiCamNode *n)
{
widget_->SetNode(n);
}
public slots:
void SetTime(const rational &t)
{
widget_->SetTime(t);
}
protected:
virtual void Retranslate() override;
private:
MulticamWidget *widget_;
};
}
#endif // MULTICAMPANEL_H