aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/dialogs/cssdebugdialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/dialogs/cssdebugdialog.cpp')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/dialogs/cssdebugdialog.cpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/dialogs/cssdebugdialog.cpp b/SQLiteStudio3/guiSQLiteStudio/dialogs/cssdebugdialog.cpp
new file mode 100644
index 0000000..99439e8
--- /dev/null
+++ b/SQLiteStudio3/guiSQLiteStudio/dialogs/cssdebugdialog.cpp
@@ -0,0 +1,50 @@
+#include "cssdebugdialog.h"
+#include "ui_cssdebugdialog.h"
+#include "mainwindow.h"
+#include "themetuner.h"
+#include <QApplication>
+#include <QPushButton>
+
+CssDebugDialog::CssDebugDialog(QWidget *parent) :
+ QDialog(parent),
+ ui(new Ui::CssDebugDialog)
+{
+ ui->setupUi(this);
+ connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*)));
+
+ appliedCss = MAINWINDOW->styleSheet();
+ ui->cssEdit->setPlainText(appliedCss);
+ updateState();
+
+ connect(ui->cssEdit, SIGNAL(textChanged()), this, SLOT(updateState()));
+}
+
+CssDebugDialog::~CssDebugDialog()
+{
+ delete ui;
+}
+
+void CssDebugDialog::buttonClicked(QAbstractButton* button)
+{
+ if (ui->buttonBox->standardButton(button) == QDialogButtonBox::RestoreDefaults)
+ {
+ ui->cssEdit->setPlainText(THEME_TUNER->getDefaultCss());
+ }
+ else if (ui->buttonBox->buttonRole(button) == QDialogButtonBox::ApplyRole)
+ {
+ appliedCss = ui->cssEdit->toPlainText();
+ MAINWINDOW->setStyleSheet(appliedCss);
+ }
+
+ updateState();
+}
+
+void CssDebugDialog::updateState()
+{
+ ui->buttonBox->button(QDialogButtonBox::Apply)->setEnabled(ui->cssEdit->toPlainText() != appliedCss);
+}
+
+void CssDebugDialog::closeEvent(QCloseEvent*)
+{
+ deleteLater();
+}