Krita Source Code Documentation
Loading...
Searching...
No Matches
KisShortcutsDialog Class Reference

#include <KisShortcutsDialog.h>

+ Inheritance diagram for KisShortcutsDialog:

Classes

class  KisShortcutsDialogPrivate
 

Public Member Functions

QList< KisKActionCollection * > actionCollections () const
 
void addCollection (KisKActionCollection *, const QString &title=QString())
 
void allDefault ()
 
void exportConfiguration (const QString &path) const
 
void importConfiguration (const QString &path)
 
 KisShortcutsDialog (KisShortcutsEditor::ActionTypes types=defaultActionTypes, KisShortcutsEditor::LetterShortcuts allowLetterShortcuts=KisShortcutsEditor::LetterShortcutsAllowed, QWidget *parent=0)
 
void loadCustomShortcuts (const QString &path)
 
void save ()
 
void saveCustomShortcuts (const QString &path) const
 
QSize sizeHint () const override
 
void undo ()
 
 ~KisShortcutsDialog () override
 

Private Attributes

class KisShortcutsDialogPrivate *const d
 

Detailed Description

Definition at line 86 of file KisShortcutsDialog.h.

Constructor & Destructor Documentation

◆ KisShortcutsDialog()

KisShortcutsDialog::KisShortcutsDialog ( KisShortcutsEditor::ActionTypes types = defaultActionTypes,
KisShortcutsEditor::LetterShortcuts allowLetterShortcuts = KisShortcutsEditor::LetterShortcutsAllowed,
QWidget * parent = 0 )
explicit

Constructs a KisShortcutsDialog. Mostly UI boilerplate.

Parameters
typesthe action types
allowLetterShortcutsset to KisShortcutsEditor::LetterShortcutsDisallowed if unmodified alphanumeric keys ('A', '1', etc.) are not permissible shortcuts.
parentthe parent widget to attach to

There is some legacy support for global (i.e. desktop-wide) shortcuts that should probably be removed.

Definition at line 38 of file KisShortcutsDialog.cpp.

41 : QWidget(parent)
42 , d(new KisShortcutsDialogPrivate(this))
43{
44
45 d->m_shortcutsEditor = new KisShortcutsEditor(this, types, allowLetterShortcuts);
46
47 /* Construct & Connect UI */
48 QVBoxLayout *mainLayout = new QVBoxLayout(this);
49 mainLayout->setContentsMargins(0, 0, 0, 0);
50 mainLayout->addWidget(d->m_shortcutsEditor);
51 QHBoxLayout *bottomLayout = new QHBoxLayout;
53 connect(d->m_schemeEditor, SIGNAL(shortcutsSchemeChanged(QString)),
54 this, SLOT(changeShortcutScheme(QString)));
55 bottomLayout->addLayout(d->m_schemeEditor);
56 QPushButton *printButton = new QPushButton;
57 KGuiItem::assign(printButton, KStandardGuiItem::print());
58
59 QDialogButtonBox *buttonBox = new QDialogButtonBox(this);
60 buttonBox->addButton(printButton, QDialogButtonBox::ActionRole);
61 bottomLayout->addWidget(buttonBox);
62 mainLayout->addLayout(bottomLayout);
63 connect(printButton, SIGNAL(clicked()), d->m_shortcutsEditor, SLOT(printShortcuts()));
64
65 KConfigGroup group(KSharedConfig::openConfig(), "KisShortcutsDialog Settings");
66 resize(group.readEntry("Dialog Size", sizeHint()));
67}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
class KisShortcutsDialogPrivate *const d
QSize sizeHint() const override
Widget for configuration of KAccel and KGlobalAccel.

References connect(), d, KisShortcutsDialog::KisShortcutsDialogPrivate::m_schemeEditor, KisShortcutsDialog::KisShortcutsDialogPrivate::m_shortcutsEditor, and sizeHint().

◆ ~KisShortcutsDialog()

KisShortcutsDialog::~KisShortcutsDialog ( )
override

Definition at line 69 of file KisShortcutsDialog.cpp.

70{
71 KConfigGroup group(KSharedConfig::openConfig(), "KisShortcutsDialog Settings");
72 group.writeEntry("Dialog Size", size());
73 delete d;
74}
int size(const Forest< T > &forest)
Definition KisForest.h:1232

References d.

Member Function Documentation

◆ actionCollections()

QList< KisKActionCollection * > KisShortcutsDialog::actionCollections ( ) const
Returns
the list of action collections that are available for configuration in the dialog.

Definition at line 88 of file KisShortcutsDialog.cpp.

89{
90 return d->m_collections.values();
91}
QHash< QString, KisKActionCollection * > m_collections

References d, and KisShortcutsDialog::KisShortcutsDialogPrivate::m_collections.

◆ addCollection()

void KisShortcutsDialog::addCollection ( KisKActionCollection * collection,
const QString & title = QString() )

Add all actions of the collection to the ones displayed and configured by the dialog. This is where the business happens.

Parameters
collectionthe action collection.
titlethe title associated with the collection.

Definition at line 76 of file KisShortcutsDialog.cpp.

77{
78 d->m_shortcutsEditor->addCollection(collection, title);
79 d->m_collections.insert(title, collection);
80}
void addCollection(KisKActionCollection *, const QString &title=QString())

References KisShortcutsEditor::addCollection(), d, KisShortcutsDialog::KisShortcutsDialogPrivate::m_collections, and KisShortcutsDialog::KisShortcutsDialogPrivate::m_shortcutsEditor.

◆ allDefault()

◆ exportConfiguration()

void KisShortcutsDialog::exportConfiguration ( const QString & path) const

Exports shortcut scheme file to path

Definition at line 114 of file KisShortcutsDialog.cpp.

115{
116 auto config = KSharedConfig::openConfig(path);
117 d->m_shortcutsEditor->exportConfiguration(config.data());
118}
void exportConfiguration(KConfigBase *config) const

References d, KisShortcutsEditor::exportConfiguration(), and KisShortcutsDialog::KisShortcutsDialogPrivate::m_shortcutsEditor.

◆ importConfiguration()

void KisShortcutsDialog::importConfiguration ( const QString & path)

Import shortcut scheme file from path

Definition at line 108 of file KisShortcutsDialog.cpp.

109{
110 auto config = KSharedConfig::openConfig(path);
111 d->m_shortcutsEditor->importConfiguration(config.data(), true);
112}
void importConfiguration(KConfigBase *config, bool isScheme)

References d, KisShortcutsEditor::importConfiguration(), and KisShortcutsDialog::KisShortcutsDialogPrivate::m_shortcutsEditor.

◆ loadCustomShortcuts()

void KisShortcutsDialog::loadCustomShortcuts ( const QString & path)

Import custom shortcuts from path

Definition at line 127 of file KisShortcutsDialog.cpp.

128{
129 auto config = KSharedConfig::openConfig(path);
130 d->m_shortcutsEditor->importConfiguration(config.data(), false);
131}

References d, KisShortcutsEditor::importConfiguration(), and KisShortcutsDialog::KisShortcutsDialogPrivate::m_shortcutsEditor.

◆ save()

void KisShortcutsDialog::save ( )

Called when the "OK" button in the main configuration page is pressed.

Definition at line 83 of file KisShortcutsDialog.cpp.

References d, and KisShortcutsDialog::KisShortcutsDialogPrivate::save().

◆ saveCustomShortcuts()

void KisShortcutsDialog::saveCustomShortcuts ( const QString & path) const

Exports custom shortcuts to path

Definition at line 120 of file KisShortcutsDialog.cpp.

121{
122 auto cg = KSharedConfig::openConfig(path)->group(QStringLiteral("Shortcuts"));
125}
void saveShortcuts(KConfigGroup *config=0) const

References KisShortcutsEditor::commit(), d, KisShortcutsDialog::KisShortcutsDialogPrivate::m_shortcutsEditor, and KisShortcutsEditor::saveShortcuts().

◆ sizeHint()

QSize KisShortcutsDialog::sizeHint ( ) const
override
See also
QWidget::sizeHint()

Definition at line 93 of file KisShortcutsDialog.cpp.

94{
95 return QSize(600, 480);
96}

◆ undo()

void KisShortcutsDialog::undo ( )

Member Data Documentation

◆ d

class KisShortcutsDialogPrivate* const KisShortcutsDialog::d
private

Definition at line 160 of file KisShortcutsDialog.h.


The documentation for this class was generated from the following files: