Merge pull request #3278 from aws-lumberyard-dev/Atom/guthadam/atomtools_wrapping_status_message_functions
AtomTools: added status message helper functions
This commit is contained in:
+4
-1
@@ -52,8 +52,11 @@ namespace AtomToolsFramework
|
||||
virtual void SelectPreviousTab();
|
||||
virtual void SelectNextTab();
|
||||
|
||||
void SetStatusMessage(const QString& message);
|
||||
void SetStatusWarning(const QString& message);
|
||||
void SetStatusError(const QString& message);
|
||||
|
||||
AzQtComponents::FancyDocking* m_advancedDockManager = nullptr;
|
||||
QMenuBar* m_menuBar = nullptr;
|
||||
AzQtComponents::TabWidget* m_tabWidget = nullptr;
|
||||
QLabel* m_statusMessage = nullptr;
|
||||
|
||||
|
||||
@@ -110,9 +110,9 @@ namespace AtomToolsFramework
|
||||
|
||||
void AtomToolsMainWindow::CreateMenu()
|
||||
{
|
||||
m_menuBar = new QMenuBar(this);
|
||||
m_menuBar->setObjectName("MenuBar");
|
||||
setMenuBar(m_menuBar);
|
||||
auto menuBar = new QMenuBar(this);
|
||||
menuBar->setObjectName("MenuBar");
|
||||
setMenuBar(menuBar);
|
||||
}
|
||||
|
||||
void AtomToolsMainWindow::CreateTabBar()
|
||||
@@ -246,4 +246,19 @@ namespace AtomToolsFramework
|
||||
m_tabWidget->setCurrentIndex((m_tabWidget->currentIndex() + 1) % m_tabWidget->count());
|
||||
}
|
||||
}
|
||||
|
||||
void AtomToolsMainWindow::SetStatusMessage(const QString& message)
|
||||
{
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(message));
|
||||
}
|
||||
|
||||
void AtomToolsMainWindow::SetStatusWarning(const QString& message)
|
||||
{
|
||||
m_statusMessage->setText(QString("<font color=\"Yellow\">%1</font>").arg(message));
|
||||
}
|
||||
|
||||
void AtomToolsMainWindow::SetStatusError(const QString& message)
|
||||
{
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(message));
|
||||
}
|
||||
} // namespace AtomToolsFramework
|
||||
|
||||
@@ -237,18 +237,14 @@ namespace MaterialEditor
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
if (!documentPath.isEmpty())
|
||||
{
|
||||
const QString status = QString("Document opened: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(status));
|
||||
SetStatusMessage(tr("Document opened: %1").arg(documentPath));
|
||||
}
|
||||
}
|
||||
|
||||
void MaterialEditorWindow::OnDocumentClosed(const AZ::Uuid& documentId)
|
||||
{
|
||||
RemoveTabForDocumentId(documentId);
|
||||
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document closed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(status));
|
||||
SetStatusMessage(tr("Document closed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
|
||||
void MaterialEditorWindow::OnDocumentModified(const AZ::Uuid& documentId)
|
||||
@@ -284,10 +280,7 @@ namespace MaterialEditor
|
||||
AZStd::string filename;
|
||||
AzFramework::StringFunc::Path::GetFullFileName(absolutePath.c_str(), filename);
|
||||
UpdateTabForDocumentId(documentId, filename, absolutePath, isModified);
|
||||
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document saved: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(status));
|
||||
SetStatusMessage(tr("Document saved: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
|
||||
void MaterialEditorWindow::CreateMenu()
|
||||
@@ -295,7 +288,7 @@ namespace MaterialEditor
|
||||
Base::CreateMenu();
|
||||
|
||||
// Generating the main menu manually because it's easier and we will have some dynamic or data driven entries
|
||||
m_menuFile = m_menuBar->addMenu("&File");
|
||||
m_menuFile = menuBar()->addMenu("&File");
|
||||
|
||||
m_actionNew = m_menuFile->addAction("&New...", [this]() {
|
||||
CreateMaterialDialog createDialog(this);
|
||||
@@ -330,9 +323,7 @@ namespace MaterialEditor
|
||||
AtomToolsFramework::AtomToolsDocumentSystemRequestBus::BroadcastResult(result, &AtomToolsFramework::AtomToolsDocumentSystemRequestBus::Events::SaveDocument, documentId);
|
||||
if (!result)
|
||||
{
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document save failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::Save);
|
||||
|
||||
@@ -345,8 +336,7 @@ namespace MaterialEditor
|
||||
documentId, AtomToolsFramework::GetSaveFileInfo(documentPath).absoluteFilePath().toUtf8().constData());
|
||||
if (!result)
|
||||
{
|
||||
const QString status = QString("Document save failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::SaveAs);
|
||||
|
||||
@@ -359,8 +349,7 @@ namespace MaterialEditor
|
||||
documentId, AtomToolsFramework::GetSaveFileInfo(documentPath).absoluteFilePath().toUtf8().constData());
|
||||
if (!result)
|
||||
{
|
||||
const QString status = QString("Document save failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -369,8 +358,7 @@ namespace MaterialEditor
|
||||
AtomToolsFramework::AtomToolsDocumentSystemRequestBus::BroadcastResult(result, &AtomToolsFramework::AtomToolsDocumentSystemRequestBus::Events::SaveAllDocuments);
|
||||
if (!result)
|
||||
{
|
||||
const QString status = QString("Document save all failed.");
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save all failed"));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -406,7 +394,7 @@ namespace MaterialEditor
|
||||
close();
|
||||
}, QKeySequence::Quit);
|
||||
|
||||
m_menuEdit = m_menuBar->addMenu("&Edit");
|
||||
m_menuEdit = menuBar()->addMenu("&Edit");
|
||||
|
||||
m_actionUndo = m_menuEdit->addAction("&Undo", [this]() {
|
||||
const AZ::Uuid documentId = GetDocumentIdFromTab(m_tabWidget->currentIndex());
|
||||
@@ -414,9 +402,7 @@ namespace MaterialEditor
|
||||
AtomToolsFramework::AtomToolsDocumentRequestBus::EventResult(result, documentId, &AtomToolsFramework::AtomToolsDocumentRequestBus::Events::Undo);
|
||||
if (!result)
|
||||
{
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document undo failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document undo failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::Undo);
|
||||
|
||||
@@ -426,9 +412,7 @@ namespace MaterialEditor
|
||||
AtomToolsFramework::AtomToolsDocumentRequestBus::EventResult(result, documentId, &AtomToolsFramework::AtomToolsDocumentRequestBus::Events::Redo);
|
||||
if (!result)
|
||||
{
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document redo failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document redo failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::Redo);
|
||||
|
||||
@@ -440,7 +424,7 @@ namespace MaterialEditor
|
||||
}, QKeySequence::Preferences);
|
||||
m_actionSettings->setEnabled(true);
|
||||
|
||||
m_menuView = m_menuBar->addMenu("&View");
|
||||
m_menuView = menuBar()->addMenu("&View");
|
||||
|
||||
m_actionAssetBrowser = m_menuView->addAction("&Asset Browser", [this]() {
|
||||
const AZStd::string label = "Asset Browser";
|
||||
@@ -480,7 +464,7 @@ namespace MaterialEditor
|
||||
SelectNextTab();
|
||||
}, Qt::CTRL | Qt::Key_Tab); //QKeySequence::NextChild works as expected but mirroring Previous
|
||||
|
||||
m_menuHelp = m_menuBar->addMenu("&Help");
|
||||
m_menuHelp = menuBar()->addMenu("&Help");
|
||||
|
||||
m_actionHelp = m_menuHelp->addAction("&Help...", [this]() {
|
||||
HelpDialog dialog(this);
|
||||
|
||||
+13
-28
@@ -149,18 +149,14 @@ namespace ShaderManagementConsole
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
if (!documentPath.isEmpty())
|
||||
{
|
||||
const QString status = QString("Document opened: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(status));
|
||||
SetStatusMessage(tr("Document opened: %1").arg(documentPath));
|
||||
}
|
||||
}
|
||||
|
||||
void ShaderManagementConsoleWindow::OnDocumentClosed(const AZ::Uuid& documentId)
|
||||
{
|
||||
RemoveTabForDocumentId(documentId);
|
||||
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document closed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(status));
|
||||
SetStatusMessage(tr("Document closed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
|
||||
void ShaderManagementConsoleWindow::OnDocumentModified(const AZ::Uuid& documentId)
|
||||
@@ -196,10 +192,7 @@ namespace ShaderManagementConsole
|
||||
AZStd::string filename;
|
||||
AzFramework::StringFunc::Path::GetFullFileName(absolutePath.c_str(), filename);
|
||||
UpdateTabForDocumentId(documentId, filename, absolutePath, isModified);
|
||||
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document saved: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"White\">%1</font>").arg(status));
|
||||
SetStatusMessage(tr("Document saved: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
|
||||
void ShaderManagementConsoleWindow::CreateMenu()
|
||||
@@ -207,7 +200,7 @@ namespace ShaderManagementConsole
|
||||
Base::CreateMenu();
|
||||
|
||||
// Generating the main menu manually because it's easier and we will have some dynamic or data driven entries
|
||||
m_menuFile = m_menuBar->addMenu("&File");
|
||||
m_menuFile = menuBar()->addMenu("&File");
|
||||
|
||||
m_actionOpen = m_menuFile->addAction("&Open...", [this]() {
|
||||
const AZStd::vector<AZ::Data::AssetType> assetTypes = {
|
||||
@@ -230,9 +223,7 @@ namespace ShaderManagementConsole
|
||||
AtomToolsFramework::AtomToolsDocumentSystemRequestBus::BroadcastResult(result, &AtomToolsFramework::AtomToolsDocumentSystemRequestBus::Events::SaveDocument, documentId);
|
||||
if (!result)
|
||||
{
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document save failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::Save);
|
||||
|
||||
@@ -245,8 +236,7 @@ namespace ShaderManagementConsole
|
||||
documentId, AtomToolsFramework::GetSaveFileInfo(documentPath).absoluteFilePath().toUtf8().constData());
|
||||
if (!result)
|
||||
{
|
||||
const QString status = QString("Document save failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::SaveAs);
|
||||
|
||||
@@ -255,8 +245,7 @@ namespace ShaderManagementConsole
|
||||
AtomToolsFramework::AtomToolsDocumentSystemRequestBus::BroadcastResult(result, &AtomToolsFramework::AtomToolsDocumentSystemRequestBus::Events::SaveAllDocuments);
|
||||
if (!result)
|
||||
{
|
||||
const QString status = QString("Document save all failed.");
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document save all failed"));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -278,7 +267,7 @@ namespace ShaderManagementConsole
|
||||
|
||||
m_menuFile->addSeparator();
|
||||
|
||||
m_menuFile->addAction("Run Python...", [this]() {
|
||||
m_menuFile->addAction("Run &Python...", [this]() {
|
||||
const QString script = QFileDialog::getOpenFileName(this, "Run Script", QString(), QString("*.py"));
|
||||
if (!script.isEmpty())
|
||||
{
|
||||
@@ -292,7 +281,7 @@ namespace ShaderManagementConsole
|
||||
close();
|
||||
}, QKeySequence::Quit);
|
||||
|
||||
m_menuEdit = m_menuBar->addMenu("&Edit");
|
||||
m_menuEdit = menuBar()->addMenu("&Edit");
|
||||
|
||||
m_actionUndo = m_menuEdit->addAction("&Undo", [this]() {
|
||||
const AZ::Uuid documentId = GetDocumentIdFromTab(m_tabWidget->currentIndex());
|
||||
@@ -300,9 +289,7 @@ namespace ShaderManagementConsole
|
||||
AtomToolsFramework::AtomToolsDocumentRequestBus::EventResult(result, documentId, &AtomToolsFramework::AtomToolsDocumentRequestBus::Events::Undo);
|
||||
if (!result)
|
||||
{
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document undo failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document undo failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::Undo);
|
||||
|
||||
@@ -312,9 +299,7 @@ namespace ShaderManagementConsole
|
||||
AtomToolsFramework::AtomToolsDocumentRequestBus::EventResult(result, documentId, &AtomToolsFramework::AtomToolsDocumentRequestBus::Events::Redo);
|
||||
if (!result)
|
||||
{
|
||||
const QString documentPath = GetDocumentPath(documentId);
|
||||
const QString status = QString("Document redo failed: %1").arg(documentPath);
|
||||
m_statusMessage->setText(QString("<font color=\"Red\">%1</font>").arg(status));
|
||||
SetStatusError(tr("Document redo failed: %1").arg(GetDocumentPath(documentId)));
|
||||
}
|
||||
}, QKeySequence::Redo);
|
||||
|
||||
@@ -324,7 +309,7 @@ namespace ShaderManagementConsole
|
||||
}, QKeySequence::Preferences);
|
||||
m_actionSettings->setEnabled(false);
|
||||
|
||||
m_menuView = m_menuBar->addMenu("&View");
|
||||
m_menuView = menuBar()->addMenu("&View");
|
||||
|
||||
m_actionAssetBrowser = m_menuView->addAction("&Asset Browser", [this]() {
|
||||
const AZStd::string label = "Asset Browser";
|
||||
@@ -347,7 +332,7 @@ namespace ShaderManagementConsole
|
||||
SelectNextTab();
|
||||
}, Qt::CTRL | Qt::Key_Tab); //QKeySequence::NextChild works as expected but mirroring Previous
|
||||
|
||||
m_menuHelp = m_menuBar->addMenu("&Help");
|
||||
m_menuHelp = menuBar()->addMenu("&Help");
|
||||
|
||||
m_actionHelp = m_menuHelp->addAction("&Help...", [this]() {
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user