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) : MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent), QMainWindow(parent),
ui(new Ui::MainWindow) { ui(new Ui::MainWindow) {
setupUi();
}
MainWindow::~MainWindow() {
delete ui;
}
void MainWindow::setupUi() {
ui->setupUi(this); 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() { ui->actionEditUndo->setShortcut(QKeySequence::Undo);
delete ui; 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() { void MainWindow::on_actionHelpAboutNBTModifier_triggered() {
@ -25,15 +57,19 @@ void MainWindow::on_actionHelpAboutNBTModifier_triggered() {
info.setStandardButtons(QMessageBox::Ok); info.setStandardButtons(QMessageBox::Ok);
info.setTextFormat(Qt::RichText); info.setTextFormat(Qt::RichText);
info.setText(tr( info.setText(
"NBTModifier 1.0.0<br>" tr(
"Copyright © 2020 Julien Rosset<br>" // language=HTML
"<br>" "NBTModifier 1.0.0<br>"
"Use Qt 5.10.0 and FontAwesone icon pack<br>" "Copyright © 2020 Julien Rosset<br>"
"<br>" "<br>"
"<a href=\"mailto:jul.rosset@gmail.com\">jul.rosset@gmail.com</a><br>" "<a href='https://www.qt.io/'>Qt %1</a> and <a href='https://github.com/KDE/breeze-icons'>KDE Breeze icons</a><br>"
"<a href=\"https://git.jrosset.ovh/darkelfe14728/NBTModifier\">Page du projet</a>" "<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(); info.exec();
} }

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

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

@ -1,3 +1,4 @@
#include <QtCore/QSettings>
#include <QtWidgets/QApplication> #include <QtWidgets/QApplication>
#include "MainWindow/MainWindow.h" #include "MainWindow/MainWindow.h"
@ -5,10 +6,15 @@
int main (int argc, char* argv[]) { int main (int argc, char* argv[]) {
QApplication app(argc, argv); QApplication app(argc, argv);
QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QApplication::setOrganizationName("JRosset");
QIcon::setThemeName("breeze-dark"); QApplication::setOrganizationDomain("jrosset.fr");
QApplication::setApplicationName("NBTModifier");
app.setQuitOnLastWindowClosed(true); 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; MainWindow main;
main.show(); main.show();

Loading…
Cancel
Save