mirror of
https://github.com/OpenFOAM/ThirdParty-6.git
synced 2025-12-08 06:57:43 +00:00
102 lines
3.8 KiB
C++
102 lines
3.8 KiB
C++
|
|
#include "pqFlatTreeView.h"
|
|
|
|
#include <QTimer>
|
|
#include <QStandardItemModel>
|
|
#include <QItemSelectionModel>
|
|
|
|
#include "QTestApp.h"
|
|
|
|
#define STRINGIFY(x) #x
|
|
#define TOSTRING(x) STRINGIFY(x)
|
|
#define VERIFY(a) if(!(a)) \
|
|
{ qWarning("case failed at line " TOSTRING(__LINE__) " :\n\t" TOSTRING(a)); }
|
|
|
|
void FlatTreeViewTests(pqFlatTreeView* w)
|
|
{
|
|
QTestApp::keyClick(w, Qt::Key_Down, 0, 20);
|
|
VERIFY(w->getSelectionModel()->currentIndex() == w->getModel()->index(0, 0));
|
|
QTestApp::keyClick(w, Qt::Key_PageDown, 0, 20);
|
|
QTestApp::keyClick(w, Qt::Key_PageUp, 0, 20);
|
|
VERIFY(w->getSelectionModel()->currentIndex() == w->getModel()->index(0, 0));
|
|
QTestApp::keyClick(w, Qt::Key_End, 0, 20);
|
|
QTestApp::keyClick(w, Qt::Key_Home, 0, 20);
|
|
VERIFY(w->getSelectionModel()->currentIndex() == w->getModel()->index(0, 0));
|
|
|
|
QTestApp::delay(20);
|
|
w->collapse(w->getModel()->index(1,0));
|
|
QTestApp::delay(20);
|
|
w->expand(w->getModel()->index(1,0));
|
|
QTestApp::delay(20);
|
|
w->setCurrentIndex(w->getModel()->index(1,0));
|
|
VERIFY(w->getSelectionModel()->currentIndex() == w->getModel()->index(1, 0));
|
|
|
|
QTestApp::mouseDown(w->viewport(), QPoint(31, 38), Qt::LeftButton, 0, 20);
|
|
VERIFY(w->getSelectionModel()->currentIndex() == w->getModel()->index(0, 0));
|
|
VERIFY(w->getIndexVisibleAt(QPoint(31,38)) == w->getModel()->index(0, 0));
|
|
|
|
QTestApp::mouseDown(w->viewport(), QPoint(31, 38), Qt::LeftButton, 0, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_A, 0, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_B, Qt::ShiftModifier, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_C, 0, 20);
|
|
QTestApp::keyDown(QApplication::focusWidget(), Qt::Key_Enter, 0, 20);
|
|
QTestApp::mouseDown(w->viewport(), QPoint(31, 59), Qt::LeftButton, 0, 20);
|
|
|
|
QTestApp::mouseDown(w->viewport(), QPoint(31, 38), Qt::LeftButton, 0, 20);
|
|
QTestApp::mouseDown(w->viewport(), QPoint(31, 38), Qt::LeftButton, 0, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_C, 0, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_B, Qt::ShiftModifier, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_A, 0, 20);
|
|
QTestApp::keyDown(QApplication::focusWidget(), Qt::Key_Escape, 0, 20);
|
|
|
|
|
|
w->setSelectionMode(pqFlatTreeView::ExtendedSelection);
|
|
w->setSelectionBehavior(pqFlatTreeView::SelectItems);
|
|
w->setIconSize(24);
|
|
|
|
int searchDelay = 2 * QApplication::keyboardInputInterval();
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_A, Qt::ControlModifier, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_B, 0, 20);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_C, 0, searchDelay);
|
|
QTestApp::keyClick(QApplication::focusWidget(), Qt::Key_C, 0, searchDelay);
|
|
QTestApp::keyClick(w, Qt::Key_Up, 0, 20);
|
|
QTestApp::keyClick(w, Qt::Key_Up, 0, 20);
|
|
QTestApp::keyClick(w, Qt::Key_Up, 0, 20);
|
|
//VERIFY(w->getSelectionModel()->currentIndex() == w->getModel()->index(1, 0));
|
|
|
|
QTestApp::keyClick(w, Qt::Key_Left, 0, 20);
|
|
QTestApp::keyClick(w, Qt::Key_Right, 0, 20);
|
|
|
|
QTestApp::mouseDClick(w->viewport(), QPoint(31, 62), Qt::LeftButton, 0, 20);
|
|
QTestApp::mouseDClick(w->viewport(), QPoint(31, 62), Qt::LeftButton, 0, 20);
|
|
|
|
}
|
|
|
|
int FlatTreeView(int argc, char* argv[])
|
|
{
|
|
QTestApp app(argc, argv);
|
|
|
|
pqFlatTreeView treeView;
|
|
QStandardItemModel* model = new QStandardItemModel(0, 1, &treeView);
|
|
treeView.setModel(model);
|
|
|
|
model->setHorizontalHeaderLabels(QStringList("header"));
|
|
model->appendRow(new QStandardItem("aaa"));
|
|
QStandardItem* item = new QStandardItem("bbb");
|
|
item->appendRow(new QStandardItem("bbba"));
|
|
item->appendRow(new QStandardItem("bbbb"));
|
|
model->appendRow(item);
|
|
|
|
model->appendRow(new QStandardItem("ccc"));
|
|
|
|
treeView.expandAll();
|
|
treeView.show();
|
|
|
|
FlatTreeViewTests(&treeView);
|
|
|
|
int status = QTestApp::exec();
|
|
|
|
return status;
|
|
}
|
|
|