You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

91 lines
3.0 KiB
C++

#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QtWidgets/QFileDialog>
#include <QtWidgets/QMessageBox>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
m_ui(new Ui::MainWindow) {
setupUi();
}
MainWindow::~MainWindow() {
delete m_ui;
}
void MainWindow::setupUi() {
m_ui->setupUi(this);
//region Shortcuts
m_ui->actionFileNew->setShortcut(QKeySequence::New);
m_ui->actionFileOpenFile->setShortcut(QKeySequence::Open);
m_ui->actionFileSave->setShortcut(QKeySequence::Save);
m_ui->actionFileSaveAs->setShortcut(QKeySequence::SaveAs);
m_ui->actionFileReload->setShortcut(QKeySequence::Refresh);
m_ui->actionFileClose->setShortcut(QKeySequence::Close);
m_ui->actionFileSettings->setShortcut(QKeySequence::Preferences);
m_ui->actionFileQuit->setShortcut(QKeySequence::Quit);
m_ui->actionEditUndo->setShortcut(QKeySequence::Undo);
m_ui->actionEditRedo->setShortcut(QKeySequence::Redo);
m_ui->actionEditCopy->setShortcut(QKeySequence::Copy);
m_ui->actionEditCut->setShortcut(QKeySequence::Cut);
m_ui->actionEditPaste->setShortcut(QKeySequence::Paste);
m_ui->actionEditModify->setShortcut(QKeySequence(tr("F2")));
m_ui->actionEditDelete->setShortcut(QKeySequence::Delete);
m_ui->actionEditMoveUp->setShortcut(QKeySequence(tr("Ctrl+Up")));
m_ui->actionEditMoveDown->setShortcut(QKeySequence(tr("Ctrl+Down")));
m_ui->actionSearchFind->setShortcut(QKeySequence::Find);
m_ui->actionSearchFindNext->setShortcut(QKeySequence::FindNext);
m_ui->actionSearchFindPrevious->setShortcut(QKeySequence::FindPrevious);
m_ui->actionSearchReplace->setShortcut(QKeySequence::Replace);
m_ui->actionHelpAboutNBTModifier->setShortcut(QKeySequence::HelpContents);
//endregion
//region Signals
connect(m_ui->actionHelpAboutQt, &QAction::triggered, qApp, &QApplication::aboutQt);
//endregion
}
void MainWindow::on_actionFileOpenFile_triggered() {
/* const QString path = QFileDialog::getOpenFileName(
this,
tr("Choose a file to open"),
qApp->applicationDirPath(),
QString(tr("Data files (*.dat);;All files (*.*)"))
);
if (path.isEmpty()) {
return;
}
const QFile file(path, this);
*/
}
void MainWindow::on_actionHelpAboutNBTModifier_triggered() {
QMessageBox info(this);
info.setIcon(QMessageBox::Information);
info.setWindowTitle(tr("About NBTModifier"));
info.setStandardButtons(QMessageBox::Ok);
info.setTextFormat(Qt::RichText);
info.setText(
tr(
// language=HTML
"NBTModifier 1.0.0<br>"
"Copyright © 2020 Julien Rosset<br>"
"<br>"
"<a href='https://www.qt.io/'>Qt %1</a> and <a href='https://github.com/KDE/breeze-icons'>KDE Breeze icons</a><br>"
"<br>"
"<a href='mailto:jul.rosset@gmail.com'>jul.rosset@gmail.com</a><br>"
"<a href='https://git.jrosset.ovh/darkelfe14728/NBTModifier'>Project page</a>"
)
.arg(QT_VERSION_STR)
);
info.exec();
}