MCPcopy Create free account
hub / github.com/dail8859/NotepadNext / PreferencesDialog

Method PreferencesDialog

src/dialogs/PreferencesDialog.cpp:31–145  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

29
30
31PreferencesDialog::PreferencesDialog(ApplicationSettings *settings, QWidget *parent) :
32 QDialog(parent, Qt::Tool),
33 ui(new Ui::PreferencesDialog),
34 settings(settings)
35{
36 ui->setupUi(this);
37
38 QIcon icon = style()->standardIcon(QStyle::SP_MessageBoxInformation);
39 QPixmap pixmap = icon.pixmap(QSize(16, 16));
40 ui->labelAppRestartIcon->setPixmap(pixmap);
41 ui->labelAppRestartIcon->hide();
42 ui->labelAppRestart->hide();
43
44 MapSettingToCheckBox(ui->checkBoxMenuBar, &ApplicationSettings::showMenuBar, &ApplicationSettings::setShowMenuBar, &ApplicationSettings::showMenuBarChanged);
45 MapSettingToCheckBox(ui->checkBoxToolBar, &ApplicationSettings::showToolBar, &ApplicationSettings::setShowToolBar, &ApplicationSettings::showToolBarChanged);
46 MapSettingToCheckBox(ui->checkBoxStatusBar, &ApplicationSettings::showStatusBar, &ApplicationSettings::setShowStatusBar, &ApplicationSettings::showStatusBarChanged);
47 MapSettingToCheckBox(ui->checkBoxRecenterSearchDialog, &ApplicationSettings::centerSearchDialog, &ApplicationSettings::setCenterSearchDialog, &ApplicationSettings::centerSearchDialogChanged);
48
49 MapSettingToGroupBox(ui->gbxRestorePreviousSession, &ApplicationSettings::restorePreviousSession, &ApplicationSettings::setRestorePreviousSession, &ApplicationSettings::restorePreviousSessionChanged);
50 connect(ui->gbxRestorePreviousSession, &QGroupBox::toggled, this, [=](bool checked) {
51 if (!checked) {
52 ui->checkBoxUnsavedFiles->setChecked(false);
53 ui->checkBoxRestoreTempFiles->setChecked(false);
54 }
55 else {
56 QMessageBox::warning(this, tr("Warning"), tr("This feature is experimental and it should not be considered safe for critically important work. It may lead to possible data loss. Use at your own risk."));
57 }
58 });
59
60 MapSettingToCheckBox(ui->checkBoxUnsavedFiles, &ApplicationSettings::restoreUnsavedFiles, &ApplicationSettings::setRestoreUnsavedFiles, &ApplicationSettings::restoreUnsavedFilesChanged);
61 MapSettingToCheckBox(ui->checkBoxRestoreTempFiles, &ApplicationSettings::restoreTempFiles, &ApplicationSettings::setRestoreTempFiles, &ApplicationSettings::restoreTempFilesChanged);
62
63 MapSettingToCheckBox(ui->checkBoxCombineSearchResults, &ApplicationSettings::combineSearchResults, &ApplicationSettings::setCombineSearchResults, &ApplicationSettings::combineSearchResultsChanged);
64
65 populateTranslationComboBox();
66 connect(ui->comboBoxTranslation, QOverload<int>::of(&QComboBox::currentIndexChanged), this, [=](int index) {
67 settings->setTranslation(ui->comboBoxTranslation->itemData(index).toString());
68 showApplicationRestartRequired();
69 });
70
71 MapSettingToCheckBox(ui->checkBoxExitOnLastTabClosed, &ApplicationSettings::exitOnLastTabClosed, &ApplicationSettings::setExitOnLastTabClosed, &ApplicationSettings::exitOnLastTabClosedChanged);
72
73 ui->fcbDefaultFont->setCurrentFont(QFont(settings->fontName()));
74 connect(ui->fcbDefaultFont, &QFontComboBox::currentFontChanged, this, [=](const QFont &f) {
75 settings->setFontName(f.family());
76 });
77 connect(settings, &ApplicationSettings::fontNameChanged, this, [=](QString fontName){
78 ui->fcbDefaultFont->setCurrentFont(QFont(fontName));
79 });
80
81 ui->spbDefaultFontSize->setValue(settings->fontSize());
82 connect(ui->spbDefaultFontSize, QOverload<int>::of(&QSpinBox::valueChanged), settings, &ApplicationSettings::setFontSize);
83 connect(settings, &ApplicationSettings::fontSizeChanged, ui->spbDefaultFontSize, &QSpinBox::setValue);
84
85 ui->comboBoxLineEndings->addItem(tr("System Default"), QString(""));
86 ui->comboBoxLineEndings->addItem(tr("Windows (CR LF)"), ScintillaNext::eolModeToString(SC_EOL_CRLF));
87 ui->comboBoxLineEndings->addItem(tr("Linux (LF)"), ScintillaNext::eolModeToString(SC_EOL_LF));
88 ui->comboBoxLineEndings->addItem(tr("Macintosh (CR)"), ScintillaNext::eolModeToString(SC_EOL_CR));

Callers

nothing calls this directly

Calls 5

setPixmapMethod · 0.80
toStringMethod · 0.80
isEmptyMethod · 0.80
setTextMethod · 0.80
setEnabledMethod · 0.45

Tested by

no test coverage detected