From cc6fec2bf8d3de8c6f49e4406235b9a28e65e795 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lindeijer?= <thorbjorn.lindeijer@nokia.com> Date: Mon, 20 Jul 2009 16:58:53 +0200 Subject: [PATCH] Made it possible to choose a name when copying a color scheme Based on a window-modal input dialog, so that it appears as a sheet on the Mac. Reviewed-by: Norwegian Rock Cat --- src/plugins/texteditor/fontsettingspage.cpp | 16 +++++++++++++++- src/plugins/texteditor/fontsettingspage.h | 1 + src/plugins/texteditor/fontsettingspage.ui | 2 +- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/plugins/texteditor/fontsettingspage.cpp b/src/plugins/texteditor/fontsettingspage.cpp index bbadbfacf38..a7370094f93 100644 --- a/src/plugins/texteditor/fontsettingspage.cpp +++ b/src/plugins/texteditor/fontsettingspage.cpp @@ -44,6 +44,7 @@ #include <QtGui/QComboBox> #include <QtGui/QFileDialog> #include <QtGui/QFontDatabase> +#include <QtGui/QInputDialog> #include <QtGui/QListWidget> #include <QtGui/QMessageBox> #include <QtGui/QPalette> @@ -425,6 +426,19 @@ void FontSettingsPage::colorSchemeSelected(int index) } void FontSettingsPage::copyColorScheme() +{ + QInputDialog *dialog = new QInputDialog(d_ptr->ui.copyButton->window()); + dialog->setAttribute(Qt::WA_DeleteOnClose); + dialog->setInputMode(QInputDialog::TextInput); + dialog->setWindowTitle(tr("Copy Color Scheme")); + dialog->setLabelText(tr("Color Scheme name:")); + dialog->setTextValue(tr("%1 (copy)").arg(d_ptr->m_value.colorScheme().name())); + + connect(dialog, SIGNAL(textValueSelected(QString)), this, SLOT(copyColorScheme(QString))); + dialog->open(); +} + +void FontSettingsPage::copyColorScheme(const QString &name) { int index = d_ptr->ui.schemeComboBox->currentIndex(); if (index == -1) @@ -444,7 +458,7 @@ void FontSettingsPage::copyColorScheme() d_ptr->m_value.setColorScheme(d_ptr->ui.schemeEdit->colorScheme()); ColorScheme scheme = d_ptr->m_value.colorScheme(); - scheme.setName(tr("%1 (copy)").arg(scheme.name())); + scheme.setName(name); scheme.save(fileName); d_ptr->m_value.setColorSchemeFileName(fileName); diff --git a/src/plugins/texteditor/fontsettingspage.h b/src/plugins/texteditor/fontsettingspage.h index 1d71c88b169..33f7257be7c 100644 --- a/src/plugins/texteditor/fontsettingspage.h +++ b/src/plugins/texteditor/fontsettingspage.h @@ -113,6 +113,7 @@ private slots: void fontSizeSelected(const QString &sizeString); void colorSchemeSelected(int index); void copyColorScheme(); + void copyColorScheme(const QString &name); void deleteColorScheme(); private: diff --git a/src/plugins/texteditor/fontsettingspage.ui b/src/plugins/texteditor/fontsettingspage.ui index 3bf055ccfc9..1cd02f47a8d 100644 --- a/src/plugins/texteditor/fontsettingspage.ui +++ b/src/plugins/texteditor/fontsettingspage.ui @@ -123,7 +123,7 @@ <item> <widget class="QPushButton" name="copyButton"> <property name="text"> - <string>Copy</string> + <string>Copy...</string> </property> </widget> </item> -- GitLab