Added ability to rename resources/directories in the resource table view

This commit is contained in:
Aruki
2017-07-16 03:24:14 -06:00
parent 932e2bff7a
commit db277d7a15
22 changed files with 503 additions and 111 deletions

View File

@@ -1,9 +1,17 @@
#include "CResourceTableView.h"
#include <QAction>
#include <QDragEnterEvent>
CResourceTableView::CResourceTableView(QWidget *pParent /*= 0*/)
: QTableView(pParent)
{}
{
// Create "rename" key shortcut
// todo - there's no QKeySequence::Rename. Is there another standard "rename" shortcut on other platforms?
mpRenameAction = new QAction(this);
mpRenameAction->setShortcut( QKeySequence(Qt::Key_F2) );
connect(mpRenameAction, SIGNAL(triggered(bool)), this, SLOT(RenameSelected()));
addAction(mpRenameAction);
}
void CResourceTableView::dragEnterEvent(QDragEnterEvent *pEvent)
{
@@ -18,3 +26,24 @@ void CResourceTableView::dragEnterEvent(QDragEnterEvent *pEvent)
setState(QAbstractItemView::DraggingState);
}
}
void CResourceTableView::focusInEvent(QFocusEvent*)
{
mpRenameAction->setEnabled(true);
}
void CResourceTableView::focusOutEvent(QFocusEvent*)
{
mpRenameAction->setEnabled(false);
}
// ************ SLOTS ************
void CResourceTableView::RenameSelected()
{
QModelIndexList List = selectionModel()->selectedIndexes();
if (List.size() == 1)
{
edit(List.front());
}
}