viewsdialog:hide inlinemessages when change layout

work/spdx
Michail Vourlakos
parent 837842f1f1
commit 680174c389

@ -65,6 +65,20 @@ KMessageWidget *GenericDialog::initMessageWidget()
return messagewidget;
}
void GenericDialog::deleteInlineMessages()
{
//QVBoxLayout *vlayout = qobject_cast<QVBoxLayout *>(layout());
for (int i=0; i<children().count(); ++i) {
QObject *child = children()[i];
KMessageWidget *messagewidget = qobject_cast<KMessageWidget *>(child);
if(messagewidget) {
delete messagewidget;
}
}
}
KMessageBox::ButtonCode GenericDialog::saveChangesConfirmation(const QString &text)
{
QString dialogtext = text.isEmpty() ? i18n("The settings have changed.<br/>Do you want to apply the changes or discard them?") : text;

@ -46,7 +46,7 @@ public:
~GenericDialog();
void showInlineMessage(const QString &msg, const KMessageWidget::MessageType &type, const bool &isPersistent = false, QList<QAction *> actions = QList<QAction *>());
void hideInlineMessage();
void deleteInlineMessages();
KMessageBox::ButtonCode saveChangesConfirmation(const QString &text);

@ -297,6 +297,7 @@ void ViewsHandler::onCurrentLayoutIndexChanged(int row)
}
if (switchtonewlayout) {
m_dialog->deleteInlineMessages();
QString layoutId = m_layoutsProxyModel->data(m_layoutsProxyModel->index(row, Model::Layouts::IDCOLUMN), Qt::UserRole).toString();
m_dialog->layoutsController()->selectRow(layoutId);
reload();

Loading…
Cancel
Save