aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@qt.io>2020-07-02 19:19:52 +0200
committerMarco Bubke <marco.bubke@qt.io>2020-07-08 09:17:41 +0000
commitb73ce9eccfc5f3e06fa92efb53bd8c341c13f3e7 (patch)
tree97a669c36de59d330faefb7840c0ccd79b875978 /src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp
parent7504c966bf64a4b38b8e9ff200c93b2e8470acad (diff)
QmlDesigner: Add row move up and move down buttons
Task-number: QDS-2294 Change-Id: Ia1e64d0811f55151dfe529db4868821840a8fba9 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp')
-rw-r--r--src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp b/src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp
index 968c719af08..0cf73976a84 100644
--- a/src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp
+++ b/src/plugins/qmldesigner/components/listmodeleditor/listmodeleditordialog.cpp
@@ -27,6 +27,7 @@
#include "listmodeleditormodel.h"
#include <theme.h>
+#include <qmldesignericons.h>
#include <coreplugin/icore.h>
#include <utils/algorithm.h>
@@ -71,6 +72,10 @@ ListModelEditorDialog::ListModelEditorDialog(QWidget *parent)
m_addColumnAction = toolBar->addAction(getIcon(Theme::Icon::addColumnAfter), tr("Add Column"));
m_removeColumnsAction = toolBar->addAction(getIcon(Theme::Icon::deleteColumn),
tr("Remove Columns"));
+ m_moveDownAction = toolBar->addAction(Icons::ARROW_DOWN.icon(), tr("Move down (CTRL + Down)."));
+ m_moveDownAction->setShortcut(QKeySequence(Qt::Key_Down | Qt::CTRL));
+ m_moveUpAction = toolBar->addAction(Icons::ARROW_UP.icon(), tr("Move up (CTRL + Up)."));
+ m_moveDownAction->setShortcut(QKeySequence(Qt::Key_Up | Qt::CTRL));
}
ListModelEditorDialog::~ListModelEditorDialog() = default;
@@ -83,6 +88,8 @@ void ListModelEditorDialog::setModel(ListModelEditorModel *model)
connect(m_addColumnAction, &QAction::triggered, this, &ListModelEditorDialog::openColumnDialog);
connect(m_removeRowsAction, &QAction::triggered, this, &ListModelEditorDialog::removeRows);
connect(m_removeColumnsAction, &QAction::triggered, this, &ListModelEditorDialog::removeColumns);
+ connect(m_moveDownAction, &QAction::triggered, this, &ListModelEditorDialog::moveRowsDown);
+ connect(m_moveUpAction, &QAction::triggered, this, &ListModelEditorDialog::moveRowsUp);
connect(m_tableView->horizontalHeader(),
&QHeaderView::sectionDoubleClicked,
this,
@@ -134,4 +141,16 @@ void ListModelEditorDialog::changeHeader(int column)
m_model->renameColumn(column, newPropertyName);
}
+void ListModelEditorDialog::moveRowsDown()
+{
+ QItemSelection selection = m_model->moveRowsDown(m_tableView->selectionModel()->selectedRows());
+ m_tableView->selectionModel()->select(selection, QItemSelectionModel::Select);
+}
+
+void ListModelEditorDialog::moveRowsUp()
+{
+ QItemSelection selection = m_model->moveRowsUp(m_tableView->selectionModel()->selectedRows());
+ m_tableView->selectionModel()->select(selection, QItemSelectionModel::Select);
+}
+
} // namespace QmlDesigner