diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 1a0460e873..624b307044 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -34,8 +34,8 @@ set(dolphinprivate_LIB_SRCS kitemviews/kitemmodelbase.cpp kitemviews/kstandarditem.cpp kitemviews/kstandarditemlistgroupheader.cpp - kitemviews/kstandarditemlistview.cpp kitemviews/kstandarditemlistwidget.cpp + kitemviews/kstandarditemlistview.cpp kitemviews/kstandarditemmodel.cpp kitemviews/private/kfileitemclipboard.cpp kitemviews/private/kfileitemmodeldirlister.cpp diff --git a/src/kitemviews/kitemlistview.cpp b/src/kitemviews/kitemlistview.cpp index 48dab4b049..07150a0d3d 100644 --- a/src/kitemviews/kitemlistview.cpp +++ b/src/kitemviews/kitemlistview.cpp @@ -659,6 +659,11 @@ void KItemListView::paint(QPainter* painter, const QStyleOptionGraphicsItem* opt } } +KItemListViewLayouter* layouter() const +{ + return m_layouter; +} + void KItemListView::setItemSize(const QSizeF& size) { const QSizeF previousSize = m_itemSize; diff --git a/src/kitemviews/kitemlistview.h b/src/kitemviews/kitemlistview.h index d4602d7297..4460a36a52 100644 --- a/src/kitemviews/kitemlistview.h +++ b/src/kitemviews/kitemlistview.h @@ -278,10 +278,7 @@ public: /** * @return The Layouter for the view */ - inline KItemListViewLayouter *layouter() const - { - return m_layouter; - } + inline KItemListViewLayouter* layouter() const; signals: void scrollOrientationChanged(Qt::Orientation current, Qt::Orientation previous); diff --git a/src/kitemviews/kitemlistviewaccessible.cpp b/src/kitemviews/kitemlistviewaccessible.cpp index 529506cb95..c0b64fcdcb 100644 --- a/src/kitemviews/kitemlistviewaccessible.cpp +++ b/src/kitemviews/kitemlistviewaccessible.cpp @@ -3,7 +3,6 @@ #include "kitemlistselectionmanager.h" #include "private/kitemlistviewlayouter.h" -#include #include #include #include @@ -13,13 +12,13 @@ #ifndef QT_NO_ACCESSIBILITY -KItemListView *KItemListViewAccessible::view() const +KItemListView* KItemListViewAccessible::view() const { return qobject_cast(object()); } -KItemListViewAccessible::KItemListViewAccessible(KItemListView *view_) - : QAccessibleObjectEx(view_) +KItemListViewAccessible::KItemListViewAccessible(KItemListView* view_) : + QAccessibleObjectEx(view_) { Q_ASSERT(view()); } @@ -27,7 +26,12 @@ KItemListViewAccessible::KItemListViewAccessible(KItemListView *view_) void KItemListViewAccessible::modelReset() {} -QAccessibleTable2CellInterface *KItemListViewAccessible::cell(int index) const +QAccessible::Role KItemListViewAccessible::cellRole() const +{ + return QAccessible::Cell; +} + +QAccessibleTable2CellInterface* KItemListViewAccessible::cell(int index) const { if (index > 0) { return new KItemListAccessibleCell(view(), index); @@ -35,12 +39,17 @@ QAccessibleTable2CellInterface *KItemListViewAccessible::cell(int index) const return 0; } -QAccessibleTable2CellInterface *KItemListViewAccessible::cellAt(int row, int column) const +QVariant KItemListViewAccessible::invokeMethodEx(Method, int, const QVariantList &) { - return cell(column * (row - 1) + column) ; + return QVariant(); } -QAccessibleInterface *KItemListViewAccessible::caption() const +QAccessibleTable2CellInterface* KItemListViewAccessible::cellAt(int row, int column) const +{ + return cell(column* (row - 1) + column) ; +} + +QAccessibleInterface* KItemListViewAccessible::caption() const { return 0; } @@ -104,7 +113,7 @@ QList KItemListViewAccessible::selectedRows() const return QList(); } -QAccessibleInterface *KItemListViewAccessible::summary() const +QAccessibleInterface* KItemListViewAccessible::summary() const { return 0; } @@ -142,7 +151,6 @@ bool KItemListViewAccessible::unselectColumn(int) QAccessible2::TableModelChange KItemListViewAccessible::modelChange() const { QAccessible2::TableModelChange change; - // FIXME return change; } @@ -158,7 +166,7 @@ QAccessible::Role KItemListViewAccessible::role(int child) const QAccessible::State KItemListViewAccessible::state(int child) const { if (child) { - QAccessibleInterface *iface; + QAccessibleInterface* iface; navigate(Child,child,&iface); if (iface) { return iface->state(0); @@ -175,16 +183,16 @@ int KItemListViewAccessible::childAt(int x, int y) const int KItemListViewAccessible::childCount() const { - return rowCount() * columnCount(); + return view()->model()->count(); } -int KItemListViewAccessible::indexOfChild(const QAccessibleInterface *iface) const +int KItemListViewAccessible::indexOfChild(const QAccessibleInterface* iface) const { - const KItemListAccessibleCell *widget = static_cast(iface); + const KItemListAccessibleCell* widget = static_cast(iface); return widget->index(); } -QString KItemListViewAccessible::text(Text t, int child) const +QString KItemListViewAccessible::text(Text , int child) const { Q_ASSERT(child == 0); return QString(); @@ -201,7 +209,7 @@ QRect KItemListViewAccessible::rect(int child) const return viewRect.translated(origin); } -int KItemListViewAccessible::navigate(RelationFlag relation, int index, QAccessibleInterface **iface) const +int KItemListViewAccessible::navigate(RelationFlag relation, int index, QAccessibleInterface* *iface) const { *iface = 0; switch (relation) { @@ -219,31 +227,35 @@ int KItemListViewAccessible::navigate(RelationFlag relation, int index, QAccessi return -1; } -QAccessible::Relation KItemListViewAccessible::relationTo(int, const QAccessibleInterface *, int) const +QAccessible::Relation KItemListViewAccessible::relationTo(int, const QAccessibleInterface* , int) const { return QAccessible::Unrelated; } #ifndef QT_NO_ACTION + int KItemListViewAccessible::userActionCount(int) const { return 0; } + QString KItemListViewAccessible::actionText(int, Text, int) const { return QString(); } + bool KItemListViewAccessible::doAction(int, int, const QVariantList &) { return false; } + #endif // Table Cell -KItemListAccessibleCell::KItemListAccessibleCell(KItemListView *view, int index) - : m_view(view) - , m_index(index) +KItemListAccessibleCell::KItemListAccessibleCell(KItemListView* view, int index) : + m_view(view), + m_index(index) { Q_ASSERT(index > 0); } @@ -283,7 +295,7 @@ bool KItemListAccessibleCell::isSelected() const return m_view->controller()->selectionManager()->isSelected(m_index-1); } -void KItemListAccessibleCell::rowColumnExtents(int *row, int *column, int *rowExtents, int *columnExtents, bool *selected) const +void KItemListAccessibleCell::rowColumnExtents(int* row, int* column, int* rowExtents, int* columnExtents, bool* selected) const { KItemListViewLayouter* layouter = m_view->layouter(); *row = layouter->itemRow(m_index); @@ -307,23 +319,23 @@ QAccessible::Role KItemListAccessibleCell::role(int child) const QAccessible::State KItemListAccessibleCell::state(int child) const { Q_ASSERT(child == 0); - QAccessible::State st = Normal; + QAccessible::State state = Normal; if (isSelected()) { - st |= Selected; + state |= Selected; } if (m_view->controller()->selectionManager()->currentItem() == m_index) { - st |= Focused; + state |= Focused; } - st |= Selectable; - st |= Focusable; + state |= Selectable; + state |= Focusable; if (m_view->controller()->selectionBehavior() == KItemListController::MultiSelection){ - st |= MultiSelectable; + state |= MultiSelectable; } - return st; + return state; } bool KItemListAccessibleCell::isExpandable() const @@ -333,13 +345,13 @@ bool KItemListAccessibleCell::isExpandable() const QRect KItemListAccessibleCell::rect(int) const { - QRect r = m_view->itemRect(m_index-1).toRect(); - if (r.isNull()) { + QRect rect = m_view->itemRect(m_index-1).toRect(); + if (rect.isNull()) { return QRect(); } - r.translate(m_view->mapToScene(QPointF(0.0, 0.0)).toPoint()); - r.translate(m_view->scene()->views()[0]->mapToGlobal(QPoint(0, 0))); - return r; + rect.translate(m_view->mapToScene(QPointF(0.0, 0.0)).toPoint()); + rect.translate(m_view->scene()->views()[0]->mapToGlobal(QPoint(0, 0))); + return rect; } QString KItemListAccessibleCell::text(QAccessible::Text t, int child) const @@ -360,7 +372,6 @@ QString KItemListAccessibleCell::text(QAccessible::Text t, int child) const void KItemListAccessibleCell::setText(QAccessible::Text /*t*/, int child, const QString &/*text*/) { Q_ASSERT(child == 0); - // FIXME - is this even allowed on the KItemListWidget? } bool KItemListAccessibleCell::isValid() const @@ -368,7 +379,22 @@ bool KItemListAccessibleCell::isValid() const return m_view && (m_index > 0); } -int KItemListAccessibleCell::navigate(RelationFlag relation, int index, QAccessibleInterface **iface) const +int KItemListAccessibleCell::childAt(int, int) const +{ + return 0; +} + +int KItemListAccessibleCell::childCount() const +{ + return 0; +} + +int KItemListAccessibleCell::indexOfChild(const QAccessibleInterface* child) const +{ + return -1; +} + +int KItemListAccessibleCell::navigate(RelationFlag relation, int index, QAccessibleInterface* *iface) const { if (relation == Ancestor && index == 1) { *iface = new KItemListViewAccessible(m_view); @@ -387,7 +413,7 @@ int KItemListAccessibleCell::navigate(RelationFlag relation, int index, QAccessi } case Sibling: if (index > 0) { - QAccessibleInterface *parent = queryAccessibleInterface(m_view); + QAccessibleInterface* parent = queryAccessibleInterface(m_view); int ret = parent->navigate(QAccessible::Child, index, iface); delete parent; if (*iface) { @@ -402,7 +428,7 @@ int KItemListAccessibleCell::navigate(RelationFlag relation, int index, QAccessi return -1; } -QAccessible::Relation KItemListAccessibleCell::relationTo(int child, const QAccessibleInterface *, int otherChild) const +QAccessible::Relation KItemListAccessibleCell::relationTo(int child, const QAccessibleInterface* , int otherChild) const { Q_ASSERT(child == 0); Q_ASSERT(otherChild == 0); @@ -410,6 +436,7 @@ QAccessible::Relation KItemListAccessibleCell::relationTo(int child, const QAcce } #ifndef QT_NO_ACTION + int KItemListAccessibleCell::userActionCount(int) const { return 0; @@ -427,8 +454,18 @@ bool KItemListAccessibleCell::doAction(int, int, const QVariantList &) #endif -KItemListContainerAccessible::KItemListContainerAccessible(KItemListContainer *container) - : QAccessibleWidgetEx(container) +int KItemListAccessibleCell::index() const +{ + return m_index; +} + +QObject* KItemListAccessibleCell::object() const +{ + return 0; +} + +KItemListContainerAccessible::KItemListContainerAccessible(KItemListContainer* container) : + QAccessibleWidgetEx(container) {} KItemListContainerAccessible::~KItemListContainerAccessible () @@ -439,7 +476,7 @@ int KItemListContainerAccessible::childCount () const return 1; } -int KItemListContainerAccessible::indexOfChild ( const QAccessibleInterface * child ) const +int KItemListContainerAccessible::indexOfChild ( const QAccessibleInterface* child ) const { if (child->object() == container()->controller()->view()) { return 1; @@ -447,7 +484,7 @@ int KItemListContainerAccessible::indexOfChild ( const QAccessibleInterface * ch return -1; } -int KItemListContainerAccessible::navigate ( QAccessible::RelationFlag relation, int index, QAccessibleInterface ** target ) const +int KItemListContainerAccessible::navigate ( QAccessible::RelationFlag relation, int index, QAccessibleInterface** target ) const { if (relation == QAccessible::Child) { *target = new KItemListViewAccessible(container()->controller()->view()); diff --git a/src/kitemviews/kitemlistviewaccessible.h b/src/kitemviews/kitemlistviewaccessible.h index afc04797f9..bd1ca254d1 100644 --- a/src/kitemviews/kitemlistviewaccessible.h +++ b/src/kitemviews/kitemlistviewaccessible.h @@ -5,6 +5,7 @@ #include #include #include +#include #include "kitemlistview.h" #include "kitemlistcontainer.h" @@ -17,7 +18,7 @@ class KItemListViewAccessible: public QAccessibleTable2Interface, public QAccess { Q_ACCESSIBLE_OBJECT public: - explicit KItemListViewAccessible(KItemListView *view); + explicit KItemListViewAccessible(KItemListView* view); virtual ~KItemListViewAccessible(); @@ -28,22 +29,22 @@ public: int childAt(int x, int y) const; int childCount() const; - int indexOfChild(const QAccessibleInterface *) const; + int indexOfChild(const QAccessibleInterface* ) const; - int navigate(RelationFlag relation, int index, QAccessibleInterface **iface) const; - Relation relationTo(int child, const QAccessibleInterface *other, int otherChild) const; + int navigate(RelationFlag relation, int index, QAccessibleInterface** iface) const; + Relation relationTo(int child, const QAccessibleInterface* other, int otherChild) const; #ifndef QT_NO_ACTION int userActionCount(int child) const; QString actionText(int action, Text t, int child) const; bool doAction(int action, int child, const QVariantList ¶ms); #endif - QVariant invokeMethodEx(Method, int, const QVariantList &) { return QVariant(); } + QVariant invokeMethodEx(Method, int, const QVariantList &); // Table2 interface - virtual QAccessibleTable2CellInterface *cellAt(int row, int column) const; - virtual QAccessibleInterface *caption() const; - virtual QAccessibleInterface *summary() const; + virtual QAccessibleTable2CellInterface* cellAt(int row, int column) const; + virtual QAccessibleInterface* caption() const; + virtual QAccessibleInterface* summary() const; virtual QString columnDescription(int column) const; virtual QString rowDescription(int row) const; virtual int columnCount() const; @@ -70,46 +71,31 @@ public: virtual bool unselectRow(int row); virtual bool unselectColumn(int column); - KItemListView *view() const; + KItemListView* view() const; protected: virtual void modelReset(); - inline QAccessibleTable2CellInterface *cell(int index) const; - inline QAccessible::Role cellRole() const { - return QAccessible::Cell; - } + inline QAccessibleTable2CellInterface* cell(int index) const; + inline QAccessible::Role cellRole() const; }; class KItemListAccessibleCell: public QAccessibleTable2CellInterface { public: - KItemListAccessibleCell(KItemListView *view, int m_index); + KItemListAccessibleCell(KItemListView* view, int m_index); - QObject *object() const - { - return 0; - } + QObject* object() const; Role role(int) const; State state(int) const; QRect rect(int) const; bool isValid() const; - - inline int childAt(int, int) const { - return 0; - } - inline int childCount() const { - return 0; - } - inline int indexOfChild(const QAccessibleInterface *) const { - return -1; - } - + int childAt(int, int) const; + int childCount() const; + int indexOfChild(const QAccessibleInterface*) const; QString text(Text t, int child) const; - void setText(Text t, int child, const QString &text); - - int navigate(RelationFlag relation, int m_index, QAccessibleInterface **iface) const; - Relation relationTo(int child, const QAccessibleInterface *other, int otherChild) const; - + void setText(Text t, int child, const QString& text); + int navigate(RelationFlag relation, int m_index, QAccessibleInterface** iface) const; + Relation relationTo(int child, const QAccessibleInterface* other, int otherChild) const; bool isExpandable() const; #ifndef QT_NO_ACTION @@ -120,18 +106,16 @@ public: // Cell Interface virtual int columnExtent() const; - virtual QList columnHeaderCells() const; + virtual QList columnHeaderCells() const; virtual int columnIndex() const; virtual int rowExtent() const; - virtual QList rowHeaderCells() const; + virtual QList rowHeaderCells() const; virtual int rowIndex() const; virtual bool isSelected() const; - virtual void rowColumnExtents(int *row, int *column, int *rowExtents, int *columnExtents, bool *selected) const; + virtual void rowColumnExtents(int* row, int* column, int* rowExtents, int* columnExtents, bool* selected) const; virtual QAccessibleTable2Interface* table() const; - inline int index() const { - return m_index; - } + inline int index() const; private: QPointer m_view; @@ -147,13 +131,13 @@ public: explicit KItemListContainerAccessible(KItemListContainer*); virtual ~KItemListContainerAccessible(); int childCount () const; - int indexOfChild ( const QAccessibleInterface * child ) const; - int navigate ( RelationFlag relation, int entry, QAccessibleInterface ** target ) const; + int indexOfChild ( const QAccessibleInterface* child ) const; + int navigate ( RelationFlag relation, int entry, QAccessibleInterface** target ) const; private: - inline KItemListContainer *container() const + inline KItemListContainer* container() const { - return static_cast(object()); + return static_cast(object()); } };