multicam: finished UI implementation
This commit is contained in:
@@ -2,9 +2,12 @@
|
||||
#define MULTICAMNODE_H
|
||||
|
||||
#include "node/node.h"
|
||||
#include "node/output/track/tracklist.h"
|
||||
|
||||
namespace olive {
|
||||
|
||||
class Sequence;
|
||||
|
||||
class MultiCamNode : public Node
|
||||
{
|
||||
Q_OBJECT
|
||||
@@ -26,16 +29,15 @@ public:
|
||||
|
||||
static const QString kCurrentInput;
|
||||
static const QString kSourcesInput;
|
||||
static const QString kSequenceInput;
|
||||
static const QString kSequenceTypeInput;
|
||||
|
||||
int GetCurrentSource() const
|
||||
{
|
||||
return GetStandardValue(kCurrentInput).toInt();
|
||||
}
|
||||
|
||||
int GetSourceCount() const
|
||||
{
|
||||
return InputArraySize(kSourcesInput);
|
||||
}
|
||||
int GetSourceCount() const;
|
||||
|
||||
static void GetRowsAndColumns(int sources, int *rows, int *cols);
|
||||
void GetRowsAndColumns(int *rows, int *cols) const
|
||||
@@ -43,6 +45,11 @@ public:
|
||||
return GetRowsAndColumns(GetSourceCount(), rows, cols);
|
||||
}
|
||||
|
||||
void SetSequenceType(Track::Type t)
|
||||
{
|
||||
SetStandardValue(kSequenceTypeInput, t);
|
||||
}
|
||||
|
||||
static void IndexToRowCols(int index, int total_rows, int total_cols, int *row, int *col);
|
||||
|
||||
static int RowsColsToIndex(int row, int col, int total_rows, int total_cols)
|
||||
@@ -50,6 +57,18 @@ public:
|
||||
return col + row * total_cols;
|
||||
}
|
||||
|
||||
virtual Node *GetConnectedRenderOutput(const QString& input, int element = -1) const override;
|
||||
virtual bool IsInputConnectedForRender(const QString& input, int element = -1) const override;
|
||||
|
||||
protected:
|
||||
virtual void InputConnectedEvent(const QString &input, int element, Node *output) override;
|
||||
virtual void InputDisconnectedEvent(const QString &input, int element, Node *output) override;
|
||||
|
||||
private:
|
||||
TrackList *GetTrackList() const;
|
||||
|
||||
Sequence *sequence_;
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user