16#include "config-xmlgui.h"
26#include <QTextDocument>
29#include <QTextTableFormat>
34#include <kconfiggroup.h>
35#include <ksharedconfig.h>
36#include <kmessagebox.h>
39#include <ktreewidgetsearchline.h>
52 d->initGUI(actionType, allowLetterShortcuts);
63 QTreeWidgetItemIterator it(
d->
ui.list, QTreeWidgetItemIterator::NoChildren);
84 d->
ui.searchFilter->searchLine()->clear();
97 setUpdatesEnabled(
false);
109 QString collectionTitle;
110 if (!title.isEmpty()) {
111 collectionTitle = title;
118 QTreeWidgetItem *hierarchy[3];
127 QSet<QAction *> actionsSeen;
135 if (category->
actions().isEmpty()) {
143 foreach (QAction *action, category->
actions()) {
144 actionsSeen.insert(action);
154 foreach (QAction *action, collection->
actions()) {
155 if (!actionsSeen.contains(action)) {
161 d->
ui.list->sortItems(
Name, Qt::AscendingOrder);
164 setUpdatesEnabled(
true);
187 const KConfigGroup schemeShortcuts(config, QStringLiteral(
"Shortcuts"));
188 for (QTreeWidgetItemIterator it(
d->
ui.list); (*it); ++it) {
190 if (!(*it)->parent()) {
194 const QString actionId = item->
data(
Id).toString();
195 if (!schemeShortcuts.hasKey(actionId))
198 QList<QKeySequence> sc = QKeySequence::listFromString(schemeShortcuts.readEntry(actionId, QString()));
212 KConfigGroup group(config,QStringLiteral(
"Shortcuts"));
226 cg = KConfigGroup(KSharedConfig::openConfig(
"kritashortcutsrc"),
227 QStringLiteral(
"Shortcuts"));
232 config->deleteGroup();
243 for (
int i = 0; i <
d->
ui.list->columnCount(); i++) {
244 d->
ui.list->resizeColumnToContents(i);
253 for (QTreeWidgetItemIterator it(
d->
ui.list); (*it); ++it) {
269 for (QTreeWidgetItemIterator it(
d->
ui.list); (*it); ++it) {
290 d->
ui.list->collapseAll();
291 d->
ui.list->expandToDepth(0);
293 d->
ui.list->expandAll();
308#include "moc_KisShortcutsEditor.cpp"
QKeySequence alternateSequence(const QList< QKeySequence > &sequences)
QKeySequence primarySequence(const QList< QKeySequence > &sequences)
void applyShortcutScheme(const KConfigBase *config=0)
static KisActionRegistry * instance()
void notifySettingsUpdated()
const QList< QAction * > actions() const
A container for a set of QAction objects.
QList< KisKActionCategory * > categories() const
QString componentDisplayName() const
void writeSettings(KConfigGroup *config=0, bool writeScheme=false, QAction *oneAction=0) const
QList< QAction * > actions() const
void setCheckActionCollections(const QList< KisKActionCollection * > checkActionCollections)
bool isModified(uint column) const
QVariant data(int column, int role=Qt::DisplayRole) const override
QList< KisKActionCollection * > actionCollections
void printShortcuts() const
KisShortcutsEditorDelegate * delegate
KisShortcutsEditor::ActionTypes actionTypes
Ui::KisShortcutsDialog ui
QTreeWidgetItem * findOrMakeItem(QTreeWidgetItem *parent, const QString &name)
void clearConfiguration()
bool addAction(QAction *action, QTreeWidgetItem *hier[], hierarchyLevel level)
void changeKeyShortcut(KisShortcutsEditorItem *item, uint column, const QKeySequence &capture)
void setActionTypes(KisShortcutsEditor::ActionTypes actionTypes)
Widget for configuration of KAccel and KGlobalAccel.
void saveShortcuts(KConfigGroup *config=0) const
void addCollection(KisKActionCollection *, const QString &title=QString())
void clearConfiguration()
~KisShortcutsEditor() override
Destructor.
void searchUpdated(QString s)
void setActionTypes(ActionTypes actionTypes)
void importConfiguration(KConfigBase *config, bool isScheme)
void exportConfiguration(KConfigBase *config) const
KisShortcutsEditorPrivate *const d
void printShortcuts() const
Q_DECLARE_METATYPE(KisPaintopLodLimitations)