aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:42 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:42 -0400
commit5d9314f134ddd3dc4c853e398ac90ba247fb2e4f (patch)
tree5c457fc188036988d7abd29a3eb09931e406510f /SQLiteStudio3/guiSQLiteStudio/mainwindow.cpp
parent8e640722c62692818ab840d50b3758f89a41a54e (diff)
Imported Upstream version 3.1.0upstream/3.1.0
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();
}