33 lines
1.2 KiB
C++
33 lines
1.2 KiB
C++
#include "dialogutils.h"
|
|
|
|
#include <QCoreApplication>
|
|
#include <QFileInfo>
|
|
#include <QDir>
|
|
|
|
namespace Dialogs {
|
|
|
|
QString generateWindowTitle(DocumentStatus documentStatus, const QString &documentPath)
|
|
{
|
|
switch(documentStatus) {
|
|
case DocumentStatus::Saved:
|
|
if(documentPath.isEmpty()) {
|
|
return QCoreApplication::translate("Utilities::windowTitle", "Unsaved - %1").arg(QCoreApplication::applicationName());
|
|
} else {
|
|
QFileInfo file(documentPath);
|
|
return QCoreApplication::translate("Utilities::windowTitle", "%1 - %2 - %3").arg(file.fileName(), file.dir().path(), QCoreApplication::applicationName());
|
|
}
|
|
case DocumentStatus::Unsaved:
|
|
if(documentPath.isEmpty()) {
|
|
return QCoreApplication::translate("Utilities::windowTitle", "*Unsaved - %1").arg(QCoreApplication::applicationName());
|
|
} else {
|
|
QFileInfo file(documentPath);
|
|
return QCoreApplication::translate("Utilities::windowTitle", "*%1 - %2 - %3").arg(file.fileName(), file.dir().path(), QCoreApplication::applicationName());
|
|
}
|
|
case DocumentStatus::NoDocument:
|
|
return QCoreApplication::applicationName();
|
|
}
|
|
}
|
|
|
|
} // namespace Dialogs
|
|
|