File indexing completed on 2025-02-09 05:17:56

0001 /*
0002  * SPDX-FileCopyrightText: 2019 David Redondo <kde@david-redondo.de>
0003  *
0004  * SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #include "ShortcutsOptionsPage.h"
0008 
0009 #include "ShortcutActions.h"
0010 
0011 #include <KShortcutsEditor>
0012 
0013 #include <QVBoxLayout>
0014 
0015 ShortcutsOptionsPage::ShortcutsOptionsPage(QWidget *parent)
0016     : QWidget(parent)
0017 {
0018     auto mainLayout = new QVBoxLayout(this);
0019     mEditor = new KShortcutsEditor(ShortcutActions::self()->shortcutActions(), this, KShortcutsEditor::ActionType::GlobalAction);
0020     mainLayout->addWidget(mEditor);
0021     connect(mEditor, &KShortcutsEditor::keyChange, this, &ShortcutsOptionsPage::shortCutsChanged);
0022 }
0023 
0024 ShortcutsOptionsPage::~ShortcutsOptionsPage()
0025 {
0026     mEditor->undo();
0027 }
0028 
0029 void ShortcutsOptionsPage::resetChanges()
0030 {
0031     mEditor->undo();
0032 }
0033 
0034 void ShortcutsOptionsPage::saveChanges()
0035 {
0036     mEditor->save();
0037 }
0038 
0039 bool ShortcutsOptionsPage::isModified() const
0040 {
0041     return mEditor->isModified();
0042 }
0043 
0044 void ShortcutsOptionsPage::defaults() const
0045 {
0046     mEditor->allDefault();
0047 }
0048 
0049 #include "moc_ShortcutsOptionsPage.cpp"