From 41e54bc5bded308687ad090afef9e5737edbe9b3 Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 6 Jun 2015 10:47:15 +0200 Subject: Navigate NewPicsDialog by keyboard MappingView: * Key_Right: add mapping * Ctrl-Key_Right: shift focus to ResultView * Delete: clear all mappings ResultView: * Key_Left: remove mapping * Ctrl-Key_Left: shift focus to MappingView --- mappingtreewidget.h | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'mappingtreewidget.h') diff --git a/mappingtreewidget.h b/mappingtreewidget.h index b1647b5..24e50ab 100644 --- a/mappingtreewidget.h +++ b/mappingtreewidget.h @@ -30,13 +30,13 @@ class MappingTreeWidget : public QWidget { public: explicit MappingTreeWidget(QWidget *parent = 0); MappingData selectedItem() const; + MappingTreeView *mappingTreeView() const { return mTree; } public slots: void addChild(); void addType(); void deleteChild(); void deleteType(); - void selectPath(const QList &data, bool reverse = true); protected: virtual void hideEvent(QHideEvent *event); @@ -73,14 +73,28 @@ class MappingTreeView : public SmTreeView { public: MappingTreeView(QWidget *parent = 0); + signals: + void addMapping(); + void removeMapping(); + void clearMappings(); + void shiftFocus(); + protected: virtual void contextMenuEvent(QContextMenuEvent *e); + virtual void keyPressEvent(QKeyEvent *e); }; class MappingTreeResultView : public SmTreeView { Q_OBJECT public: explicit MappingTreeResultView(QWidget *parent = 0); + + signals: + void shiftFocus(); + void removeMapping(); + + protected: + virtual void keyPressEvent(QKeyEvent *e); }; class MappingEditWidget : public QWidget { @@ -92,11 +106,11 @@ class MappingEditWidget : public QWidget { public slots: void addMapping(); void removeMapping(); + void clearMapping(); void setMappings(const QList &mappings); void expandAllResults(); - - private slots: - void resultMappingChanged(const QModelIndex &cur, const QModelIndex &prev); + void shiftFocusResult(); + void shiftFocusMappings(); private: MappingTreeWidget *mMappingTree; @@ -104,6 +118,7 @@ class MappingEditWidget : public QWidget { MappingTreeResultModel *mResultModel; QPushButton *mAddMapping; QPushButton *mRemoveMapping; + QPushButton *mClearMapping; }; class MappingInputDialog : public QDialog { -- cgit v1.2.3-70-g09d2