aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:57 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:57 -0400
commit65d5f68cc6dc81799c5a5d90400a2c1f0dd02547 (patch)
tree6f245ba901b87ef42fed69965aea22f5eea6b590 /SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
parentaeb6bad01630d325a4e768e798a7a6d44e18fdaf (diff)
parent5d9314f134ddd3dc4c853e398ac90ba247fb2e4f (diff)
Merge tag 'upstream/3.1.0'
Upstream version 3.1.0 # gpg: Signature made Mon 13 Jun 2016 06:42:54 PM EDT using RSA key ID EBE9BD91 # gpg: Good signature from "Unit 193 <unit193@gmail.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.org>" # gpg: aka "Unit 193 <unit193@ubuntu.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.com>"
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp29
1 files changed, 27 insertions, 2 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp b/SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
index fb5c7b5..8d80277 100644
--- a/SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
+++ b/SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
@@ -39,6 +39,7 @@
#include "common/widgetcover.h"
#include "dialogs/cssdebugdialog.h"
#include "themetuner.h"
+#include "services/codeformatter.h"
#include <QMdiSubWindow>
#include <QDebug>
#include <QStyleFactory>
@@ -580,6 +581,20 @@ QString MainWindow::currentStyle() const
return QApplication::style()->objectName();
}
+EditorWindow* MainWindow::openSqlEditor(Db* dbToSet, const QString& sql)
+{
+ EditorWindow* win = openSqlEditor();
+ if (!win->setCurrentDb(dbToSet))
+ {
+ qCritical() << "Created EditorWindow had not got requested database:" << dbToSet->getName();
+ win->close();
+ return nullptr;
+ }
+
+ win->setContents(FORMATTER->format("sql", sql, dbToSet));
+ return win;
+}
+
void MainWindow::closeNonSessionWindows()
{
foreach (MdiWindow* window, ui->mdiArea->getWindows())
@@ -605,8 +620,18 @@ void MainWindow::refreshMdiWindows()
{
mdiMenu->clear();
- foreach (QAction* action, getMdiArea()->getTaskBar()->getTasks())
- mdiMenu->addAction(action);
+ QStringList actionNames;
+ QHash<QString, QAction*> nameToAction;
+ for (QAction* action : getMdiArea()->getTaskBar()->getTasks())
+ {
+ actionNames << action->text();
+ nameToAction[action->text()] = action;
+ }
+
+ qSort(actionNames);
+
+ for (const QString& name : actionNames)
+ mdiMenu->addAction(nameToAction[name]);
updateWindowActions();
}