]> git.sesse.net Git - kdenlive/blobdiff - src/beziercurve/beziersplinewidget.cpp
Bezier Spline: Add checkable button show all handles: Whether to show handles for...
[kdenlive] / src / beziercurve / beziersplinewidget.cpp
index d22fc02f80aca3eccc0ab7006f04541f2ba7b226..04ec3b64ef72025f58a278e59167f0c7279de6aa 100644 (file)
 
 #include <KIcon>
 
+
 BezierSplineWidget::BezierSplineWidget(const QString& spline, QWidget* parent) :
         QWidget(parent),
-        m_mode(ModeRGB)
+        m_mode(ModeRGB),
+        m_showPixmap(true)
 {
     QVBoxLayout *layout = new QVBoxLayout(this);
     layout->addWidget(&m_edit);
@@ -40,6 +42,7 @@ BezierSplineWidget::BezierSplineWidget(const QString& spline, QWidget* parent) :
     m_ui.buttonGridChange->setIcon(KIcon("view-grid"));
     m_ui.buttonShowPixmap->setIcon(QIcon(QPixmap::fromImage(ColorTools::rgbCurvePlane(QSize(16, 16), ColorTools::COL_Luma, 0.8))));
     m_ui.buttonResetSpline->setIcon(KIcon("view-refresh"));
+    m_ui.buttonShowAllHandles->setIcon(KIcon("draw-bezier-curves"));
     m_ui.widgetPoint->setEnabled(false);
 
     CubicBezierSpline s;
@@ -62,9 +65,11 @@ BezierSplineWidget::BezierSplineWidget(const QString& spline, QWidget* parent) :
     connect(m_ui.buttonGridChange, SIGNAL(clicked()), this, SLOT(slotGridChange()));
     connect(m_ui.buttonShowPixmap, SIGNAL(toggled(bool)), this, SLOT(slotShowPixmap(bool)));
     connect(m_ui.buttonResetSpline, SIGNAL(clicked()), this, SLOT(slotResetSpline()));
+    connect(m_ui.buttonShowAllHandles, SIGNAL(toggled(bool)), this, SLOT(slotShowAllHandles(bool)));
 
     m_edit.setGridLines(KdenliveSettings::bezier_gridlines());
     m_ui.buttonShowPixmap->setChecked(KdenliveSettings::bezier_showpixmap());
+    m_ui.buttonShowAllHandles->setChecked(KdenliveSettings::bezier_showallhandles());
 }
 
 QString BezierSplineWidget::spline()
@@ -154,4 +159,10 @@ void BezierSplineWidget::slotResetSpline()
     m_edit.setSpline(CubicBezierSpline());
 }
 
+void BezierSplineWidget::slotShowAllHandles(bool show)
+{
+    m_edit.setShowAllHandles(show);
+    KdenliveSettings::setBezier_showallhandles(show);
+}
+
 #include "beziersplinewidget.moc"