diff --git a/effects/effect.h b/effects/effect.h index 00aacb01d..ec1ebca23 100644 --- a/effects/effect.h +++ b/effects/effect.h @@ -180,8 +180,6 @@ public: int getIterations(); void setIterations(int i); - const char* ffmpeg_filter; - virtual void process_image(double timecode, uint8_t* input, uint8_t* output, int size); virtual void process_shader(double timecode, GLTextureCoords&, int iteration); virtual void process_coords(double timecode, GLTextureCoords& coords, int data); diff --git a/nodes/nodegraph.cpp b/nodes/nodegraph.cpp new file mode 100644 index 000000000..8f7a00e03 --- /dev/null +++ b/nodes/nodegraph.cpp @@ -0,0 +1,8 @@ +#include "nodegraph.h" + +#include + +NodeGraph::NodeGraph() +{ + +} diff --git a/nodes/nodegraph.h b/nodes/nodegraph.h new file mode 100644 index 000000000..9bf6cafe2 --- /dev/null +++ b/nodes/nodegraph.h @@ -0,0 +1,15 @@ +#ifndef NODEGRAPH_H +#define NODEGRAPH_H + +#include "effects/effect.h" + +class NodeGraph +{ +public: + NodeGraph(); + +private: + Effect* end_node_; +}; + +#endif // NODEGRAPH_H diff --git a/olive.pro b/olive.pro index 2c7cb1043..16f17add3 100644 --- a/olive.pro +++ b/olive.pro @@ -202,7 +202,8 @@ SOURCES += \ nodes/inputs/vecinput.cpp \ nodes/widgets/labelwidget.cpp \ nodes/inputs/fileinput.cpp \ - nodes/widgets/buttonwidget.cpp + nodes/widgets/buttonwidget.cpp \ + nodes/nodegraph.cpp HEADERS += \ ui/mainwindow.h \ @@ -360,7 +361,8 @@ HEADERS += \ nodes/inputs/vecinput.h \ nodes/widgets/labelwidget.h \ nodes/inputs/fileinput.h \ - nodes/widgets/buttonwidget.h + nodes/widgets/buttonwidget.h \ + nodes/nodegraph.h FORMS += diff --git a/panels/nodeeditor.cpp b/panels/nodeeditor.cpp index 55e67157b..c6310638c 100644 --- a/panels/nodeeditor.cpp +++ b/panels/nodeeditor.cpp @@ -17,6 +17,9 @@ NodeEditor::NodeEditor(QWidget *parent) : setWidget(central_widget); QVBoxLayout* layout = new QVBoxLayout(central_widget); + layout->setSpacing(0); + layout->setMargin(0); + layout->addWidget(&view_); view_.setInteractive(true); diff --git a/ui/effectui.cpp b/ui/effectui.cpp index b3d03053d..5e31dd025 100644 --- a/ui/effectui.cpp +++ b/ui/effectui.cpp @@ -90,6 +90,7 @@ EffectUI::EffectUI(Effect* e) : ui->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum); SetContents(ui); + title_bar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum); setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum); SetExpanded(e->IsExpanded()); @@ -103,9 +104,8 @@ EffectUI::EffectUI(Effect* e) : this, SLOT(show_context_menu(const QPoint&))); - int maximum_column = 0; - widgets_.resize(e->row_count()); + keyframe_navigators_.resize(e->row_count()); for (int i=0;irow_count();i++) { EffectRow* row = e->row(i); @@ -119,7 +119,7 @@ EffectUI::EffectUI(Effect* e) : widgets_[i].resize(row->FieldCount()); - int column = 1; + QGridLayout* field_layout = new QGridLayout(); for (int j=0;jFieldCount();j++) { EffectField* field = row->Field(j); @@ -127,22 +127,9 @@ EffectUI::EffectUI(Effect* e) : widgets_[i][j] = widget; - layout_->addWidget(widget, i, column, 1, 1); - - column++; + field_layout->addWidget(widget, 0, j); } - - // Find maximum column to place keyframe controls - maximum_column = qMax(row->FieldCount(), maximum_column); - } - - // Create keyframe controls - maximum_column++; - - keyframe_navigators_.resize(e->row_count()); - - for (int i=0;irow_count();i++) { - EffectRow* row = e->row(i); + layout_->addLayout(field_layout, i, 1); KeyframeNavigator* nav; @@ -154,7 +141,7 @@ EffectUI::EffectUI(Effect* e) : AttachKeyframeNavigationToRow(row, nav); - layout_->addWidget(nav, i, maximum_column); + layout_->addWidget(nav, i, 2); } else { @@ -163,7 +150,6 @@ EffectUI::EffectUI(Effect* e) : } keyframe_navigators_[i] = nav; - } enabled_check->setChecked(e->IsEnabled()); diff --git a/ui/texteditex.cpp b/ui/texteditex.cpp index bc4a047e3..bdf9a756d 100644 --- a/ui/texteditex.cpp +++ b/ui/texteditex.cpp @@ -33,6 +33,9 @@ TextEditEx::TextEditEx(QWidget *parent, bool enable_rich_text) : { QVBoxLayout* layout = new QVBoxLayout(this); + layout->setSpacing(0); + layout->setMargin(0); + text_editor_ = new QTextEdit(); connect(text_editor_, SIGNAL(textChanged()), this, SLOT(queue_text_modified())); layout->addWidget(text_editor_);