From: Jean-Baptiste Mardelle Date: Sun, 10 Feb 2013 00:23:25 +0000 (+0100) Subject: Some cleanup in DVD wizard on menu button move X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=f2a1b764d19d4453ba4f71dbfa1adbfdabfea877;p=kdenlive Some cleanup in DVD wizard on menu button move --- diff --git a/src/dvdwizardmenu.cpp b/src/dvdwizardmenu.cpp index 167baa8c..abfc780a 100644 --- a/src/dvdwizardmenu.cpp +++ b/src/dvdwizardmenu.cpp @@ -46,14 +46,6 @@ DvdWizardMenu::DvdWizardMenu(DVDFORMAT format, QWidget *parent) : m_view.menu_preview->setMouseTracking(true); connect(m_view.create_menu, SIGNAL(toggled(bool)), m_view.menu_box, SLOT(setEnabled(bool))); connect(m_view.create_menu, SIGNAL(toggled(bool)), this, SIGNAL(completeChanged())); - -#if KDE_IS_VERSION(4,7,0) - m_menuMessage = new KMessageWidget; - QGridLayout *s = static_cast (layout()); - s->addWidget(m_menuMessage, 7, 0, 1, -1); - m_menuMessage->hide(); - m_view.error_message->hide(); -#endif m_view.add_button->setIcon(KIcon("document-new")); m_view.delete_button->setIcon(KIcon("trash-empty")); @@ -134,7 +126,7 @@ DvdWizardMenu::DvdWizardMenu(DVDFORMAT format, QWidget *parent) : connect(m_view.zoom_button, SIGNAL(pressed()), this, SLOT(slotZoom())); connect(m_view.unzoom_button, SIGNAL(pressed()), this, SLOT(slotUnZoom())); connect(m_scene, SIGNAL(selectionChanged()), this, SLOT(buttonChanged())); - connect(m_scene, SIGNAL(changed(const QList &)), this, SIGNAL(completeChanged())); + connect(m_scene, SIGNAL(sceneChanged()), this, SIGNAL(completeChanged())); // red background for error message KColorScheme scheme(palette().currentColorGroup(), KColorScheme::Window, KSharedConfig::openConfig(KdenliveSettings::colortheme())); @@ -142,9 +134,16 @@ DvdWizardMenu::DvdWizardMenu(DVDFORMAT format, QWidget *parent) : p.setColor(QPalette::Background, scheme.background(KColorScheme::NegativeBackground).color()); m_view.error_message->setAutoFillBackground(true); m_view.error_message->setPalette(p); - m_view.menu_box->setEnabled(false); +#if KDE_IS_VERSION(4,7,0) + m_menuMessage = new KMessageWidget; + QGridLayout *s = static_cast (layout()); + s->addWidget(m_menuMessage, 7, 0, 1, -1); + m_menuMessage->hide(); + m_view.error_message->hide(); +#endif + } DvdWizardMenu::~DvdWizardMenu() @@ -191,9 +190,9 @@ bool DvdWizardMenu::isComplete() const for (int j = 0; j < collisions.count(); j++) { if (collisions.at(j)->type() == button->type()) { #if KDE_IS_VERSION(4,7,0) - m_menuMessage->setText(i18n("Buttons overlapping")); - m_menuMessage->setMessageType(KMessageWidget::Warning); - m_menuMessage->animatedShow(); + m_menuMessage->setText(i18n("Buttons overlapping")); + m_menuMessage->setMessageType(KMessageWidget::Warning); + m_menuMessage->show(); #else m_view.error_message->setText(i18n("Buttons overlapping")); m_view.error_message->setHidden(false); @@ -210,7 +209,7 @@ bool DvdWizardMenu::isComplete() const #if KDE_IS_VERSION(4,7,0) m_menuMessage->setText(i18n("No button in menu")); m_menuMessage->setMessageType(KMessageWidget::Warning); - m_menuMessage->animatedShow(); + m_menuMessage->show(); #else m_view.error_message->setText(i18n("No button in menu")); m_view.error_message->setHidden(false); @@ -224,7 +223,7 @@ bool DvdWizardMenu::isComplete() const #if KDE_IS_VERSION(4,7,0) m_menuMessage->setText(i18n("Missing background image")); m_menuMessage->setMessageType(KMessageWidget::Warning); - m_menuMessage->animatedShow(); + m_menuMessage->show(); #else m_view.error_message->setText(i18n("Missing background image")); m_view.error_message->setHidden(false); @@ -234,7 +233,7 @@ bool DvdWizardMenu::isComplete() const } #if KDE_IS_VERSION(4,7,0) - m_menuMessage->animatedHide(); + m_menuMessage->hide(); #endif // check that we have a "Play all" entry @@ -246,7 +245,7 @@ bool DvdWizardMenu::isComplete() const #if KDE_IS_VERSION(4,7,0) m_menuMessage->setText(i18n("No menu entry for %1", m_view.target_list->itemText(i))); m_menuMessage->setMessageType(KMessageWidget::Warning); - m_menuMessage->animatedShow(); + m_menuMessage->show(); #else m_view.error_message->setText(i18n("No menu entry for %1", m_view.target_list->itemText(i))); m_view.error_message->setHidden(false); @@ -429,6 +428,7 @@ void DvdWizardMenu::checkBackgroundType(int ix) m_view.loop_movie->setVisible(true); } } + emit completeChanged(); } void DvdWizardMenu::buildColor() @@ -495,6 +495,8 @@ void DvdWizardMenu::buildButton() //font.setStyleStrategy(QFont::NoAntialias); button->setFont(font); button->setDefaultTextColor(m_view.text_color->color()); + // Check for button overlapping in case we changed text / size + emit completeChanged(); } void DvdWizardMenu::updateColor() diff --git a/src/dvdwizardmenu.h b/src/dvdwizardmenu.h index 85522e72..8c4dd999 100644 --- a/src/dvdwizardmenu.h +++ b/src/dvdwizardmenu.h @@ -40,7 +40,7 @@ class DvdScene : public QGraphicsScene { - +Q_OBJECT public: DvdScene(QObject * parent = 0): QGraphicsScene(parent) { m_width = 0; m_height = 0; @@ -59,6 +59,14 @@ public: private: int m_width; int m_height; + +protected: + void mouseReleaseEvent( QGraphicsSceneMouseEvent * mouseEvent ) { + QGraphicsScene::mouseReleaseEvent(mouseEvent); + emit sceneChanged(); + } +signals: + void sceneChanged(); }; class DvdButtonUnderline : public QGraphicsRectItem