Minor improvements

Internationalization for shortcuts
App setting for light/dark theme
Rewriting "about" section
master
Julien Rosset 5 years ago
parent 81f1ae46f1
commit 33dfcdcc2f

@ -6,14 +6,46 @@
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow) {
setupUi();
}
MainWindow::~MainWindow() {
delete ui;
}
void MainWindow::setupUi() {
ui->setupUi(this);
connect(ui->actionHelpAboutQt, &QAction::triggered, qApp, &QApplication::aboutQt);
}
//region Shortcuts
ui->actionFileNew->setShortcut(QKeySequence::New);
ui->actionFileOpen->setShortcut(QKeySequence::Open);
ui->actionFileSave->setShortcut(QKeySequence::Save);
ui->actionFileSaveAs->setShortcut(QKeySequence::SaveAs);
ui->actionFileReload->setShortcut(QKeySequence::Refresh);
ui->actionFileClose->setShortcut(QKeySequence::Close);
ui->actionFileSettings->setShortcut(QKeySequence::Preferences);
ui->actionFileQuit->setShortcut(QKeySequence::Quit);
MainWindow::~MainWindow() {
delete ui;
ui->actionEditUndo->setShortcut(QKeySequence::Undo);
ui->actionEditRedo->setShortcut(QKeySequence::Redo);
ui->actionEditCopy->setShortcut(QKeySequence::Copy);
ui->actionEditCut->setShortcut(QKeySequence::Cut);
ui->actionEditPaste->setShortcut(QKeySequence::Paste);
ui->actionEditModify->setShortcut(QKeySequence(tr("F2")));
ui->actionEditDelete->setShortcut(QKeySequence::Delete);
ui->actionEditMoveUp->setShortcut(QKeySequence(tr("Ctrl+Up")));
ui->actionEditMoveDown->setShortcut(QKeySequence(tr("Ctrl+Down")));
ui->actionSearchFind->setShortcut(QKeySequence::Find);
ui->actionSearchFindNext->setShortcut(QKeySequence::FindNext);
ui->actionSearchFindPrevious->setShortcut(QKeySequence::FindPrevious);
ui->actionSearchReplace->setShortcut(QKeySequence::Replace);
ui->actionHelpAboutNBTModifier->setShortcut(QKeySequence::HelpContents);
//endregion
//region Signals
connect(ui->actionHelpAboutQt, &QAction::triggered, qApp, &QApplication::aboutQt);
//endregion
}
void MainWindow::on_actionHelpAboutNBTModifier_triggered() {
@ -25,15 +57,19 @@ void MainWindow::on_actionHelpAboutNBTModifier_triggered() {
info.setStandardButtons(QMessageBox::Ok);
info.setTextFormat(Qt::RichText);
info.setText(tr(
info.setText(
tr(
// language=HTML
"NBTModifier 1.0.0<br>"
"Copyright © 2020 Julien Rosset<br>"
"<br>"
"Use Qt 5.10.0 and FontAwesone icon pack<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\">Page du projet</a>"
));
"<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();
}

@ -17,6 +17,8 @@ public:
private:
Ui::MainWindow *ui;
void setupUi();
private slots:
void on_actionHelpAboutNBTModifier_triggered();
};

@ -73,7 +73,7 @@
</property>
<widget class="QMenu" name="menuFile">
<property name="title">
<string>File</string>
<string>&amp;File</string>
</property>
<addaction name="actionFileNew"/>
<addaction name="actionFileOpen"/>
@ -81,16 +81,16 @@
<addaction name="actionFileSave"/>
<addaction name="actionFileSaveAs"/>
<addaction name="separator"/>
<addaction name="actionEditReload"/>
<addaction name="actionClose"/>
<addaction name="actionFileReload"/>
<addaction name="actionFileClose"/>
<addaction name="separator"/>
<addaction name="actionSettings"/>
<addaction name="actionFileSettings"/>
<addaction name="separator"/>
<addaction name="actionFileQuit"/>
</widget>
<widget class="QMenu" name="menuEdit">
<property name="title">
<string>Edit</string>
<string>&amp;Edit</string>
</property>
<widget class="QMenu" name="menuEditInsert">
<property name="title">
@ -167,10 +167,7 @@
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>New</string>
</property>
<property name="shortcut">
<string>Ctrl+N</string>
<string>&amp;New</string>
</property>
</action>
<action name="actionFileOpen">
@ -179,10 +176,7 @@
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Open</string>
</property>
<property name="shortcut">
<string>Ctrl+O</string>
<string>&amp;Open</string>
</property>
</action>
<action name="actionFileSave">
@ -191,10 +185,7 @@
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Save</string>
</property>
<property name="shortcut">
<string>Ctrl+S</string>
<string>&amp;Save</string>
</property>
</action>
<action name="actionFileSaveAs">
@ -205,9 +196,6 @@
<property name="text">
<string>Save as</string>
</property>
<property name="shortcut">
<string>Ctrl+Shift+S</string>
</property>
</action>
<action name="actionFileQuit">
<property name="icon">
@ -215,7 +203,7 @@
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Quit</string>
<string>&amp;Quit</string>
</property>
<property name="shortcut">
<string>Ctrl+Q</string>
@ -223,58 +211,48 @@
</action>
<action name="actionEditUndo">
<property name="icon">
<iconset theme="edit-undo"/>
<iconset theme="edit-undo">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Undo</string>
</property>
<property name="shortcut">
<string>Ctrl+Z</string>
</property>
</action>
<action name="actionEditRedo">
<property name="icon">
<iconset theme="edit-redo"/>
<iconset theme="edit-redo">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Redo</string>
</property>
<property name="shortcut">
<string>Ctrl+Y, Ctrl+Shift+Z</string>
</property>
</action>
<action name="actionEditCopy">
<property name="icon">
<iconset theme="edit-copy"/>
<iconset theme="edit-copy">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Copy</string>
</property>
<property name="shortcut">
<string>Ctrl+C</string>
</property>
</action>
<action name="actionEditCut">
<property name="icon">
<iconset theme="edit-cut"/>
<iconset theme="edit-cut">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Cut</string>
</property>
<property name="shortcut">
<string>Ctrl+X</string>
</property>
</action>
<action name="actionEditPaste">
<property name="icon">
<iconset theme="edit-paste"/>
<iconset theme="edit-paste">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Paste</string>
</property>
<property name="shortcut">
<string>Ctrl+V</string>
</property>
</action>
<action name="actionEditInsertByte">
<property name="text">
@ -338,100 +316,80 @@
</action>
<action name="actionEditModify">
<property name="icon">
<iconset theme="document-edit"/>
<iconset theme="document-edit">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Modify name/value</string>
</property>
<property name="shortcut">
<string>F2</string>
</property>
</action>
<action name="actionEditDelete">
<property name="icon">
<iconset theme="edit-delete"/>
<iconset theme="edit-delete">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Delete</string>
</property>
<property name="shortcut">
<string>Del</string>
</property>
</action>
<action name="actionEditMoveUp">
<property name="icon">
<iconset theme="arrow-up"/>
<iconset theme="arrow-up">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Move Up</string>
</property>
<property name="shortcut">
<string>Ctrl+Up</string>
</property>
</action>
<action name="actionEditMoveDown">
<property name="icon">
<iconset theme="arrow-down"/>
<iconset theme="arrow-down">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Move Down</string>
</property>
<property name="shortcut">
<string>Ctrl+Down</string>
</property>
</action>
<action name="actionEditReload">
<action name="actionFileReload">
<property name="text">
<string>Reload</string>
</property>
<property name="shortcut">
<string>Ctrl+F5</string>
</property>
</action>
<action name="actionSearchFind">
<property name="icon">
<iconset theme="edit-find"/>
<iconset theme="edit-find">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Find</string>
</property>
<property name="shortcut">
<string>Ctrl+F</string>
<string>&amp;Find</string>
</property>
</action>
<action name="actionSearchFindNext">
<property name="text">
<string>Find next</string>
</property>
<property name="shortcut">
<string>F3</string>
</property>
</action>
<action name="actionSearchFindPrevious">
<property name="text">
<string>Find Previous</string>
</property>
<property name="shortcut">
<string>Shift+F3</string>
</property>
</action>
<action name="actionSearchReplace">
<property name="icon">
<iconset theme="edit-find-replace"/>
<iconset theme="edit-find-replace">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>Replace</string>
</property>
<property name="shortcut">
<string>Ctrl+H</string>
<string>&amp;Replace</string>
</property>
</action>
<action name="actionHelpAboutNBTModifier">
<property name="icon">
<iconset theme="help-about"/>
<iconset theme="help-about">
<normaloff>.</normaloff>.</iconset>
</property>
<property name="text">
<string>About NBTModifier</string>
<string>&amp;About NBTModifier</string>
</property>
</action>
<action name="actionHelpAboutQt">
@ -439,7 +397,7 @@
<string>About Qt</string>
</property>
</action>
<action name="actionClose">
<action name="actionFileClose">
<property name="icon">
<iconset theme="document-close">
<normaloff>.</normaloff>.</iconset>
@ -447,11 +405,8 @@
<property name="text">
<string>Close</string>
</property>
<property name="shortcut">
<string>Ctrl+W</string>
</property>
</action>
<action name="actionSettings">
<action name="actionFileSettings">
<property name="icon">
<iconset theme="settings-configure">
<normaloff>.</normaloff>.</iconset>

@ -1,3 +1,4 @@
#include <QtCore/QSettings>
#include <QtWidgets/QApplication>
#include "MainWindow/MainWindow.h"
@ -5,10 +6,15 @@
int main (int argc, char* argv[]) {
QApplication app(argc, argv);
QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QIcon::setThemeName("breeze-dark");
QApplication::setOrganizationName("JRosset");
QApplication::setOrganizationDomain("jrosset.fr");
QApplication::setApplicationName("NBTModifier");
app.setQuitOnLastWindowClosed(true);
QSettings settings;
const bool dark = (settings.value("application/theme", "dark").toString() == "dark");
QIcon::setThemeName(QString("breeze") + (dark ? QString("-dark") : QString()));
MainWindow main;
main.show();

Loading…
Cancel
Save