diff options
Diffstat (limited to 'src/gui/itemviews/qabstractitemview.h')
-rw-r--r-- | src/gui/itemviews/qabstractitemview.h | 380 |
1 files changed, 0 insertions, 380 deletions
diff --git a/src/gui/itemviews/qabstractitemview.h b/src/gui/itemviews/qabstractitemview.h deleted file mode 100644 index f11f209010..0000000000 --- a/src/gui/itemviews/qabstractitemview.h +++ /dev/null @@ -1,380 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QABSTRACTITEMVIEW_H -#define QABSTRACTITEMVIEW_H - -#include <QtGui/qabstractscrollarea.h> -#include <QtCore/qabstractitemmodel.h> -#include <QtGui/qitemselectionmodel.h> -#include <QtGui/qabstractitemdelegate.h> - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -#ifndef QT_NO_ITEMVIEWS - -class QMenu; -class QDrag; -class QEvent; -class QAbstractItemViewPrivate; - -class Q_GUI_EXPORT QAbstractItemView : public QAbstractScrollArea -{ - Q_OBJECT - Q_ENUMS(SelectionMode SelectionBehavior ScrollHint ScrollMode DragDropMode) - Q_FLAGS(EditTriggers) - Q_PROPERTY(bool autoScroll READ hasAutoScroll WRITE setAutoScroll) - Q_PROPERTY(int autoScrollMargin READ autoScrollMargin WRITE setAutoScrollMargin) - Q_PROPERTY(EditTriggers editTriggers READ editTriggers WRITE setEditTriggers) - Q_PROPERTY(bool tabKeyNavigation READ tabKeyNavigation WRITE setTabKeyNavigation) -#ifndef QT_NO_DRAGANDDROP - Q_PROPERTY(bool showDropIndicator READ showDropIndicator WRITE setDropIndicatorShown) - Q_PROPERTY(bool dragEnabled READ dragEnabled WRITE setDragEnabled) - Q_PROPERTY(bool dragDropOverwriteMode READ dragDropOverwriteMode WRITE setDragDropOverwriteMode) - Q_PROPERTY(DragDropMode dragDropMode READ dragDropMode WRITE setDragDropMode) - Q_PROPERTY(Qt::DropAction defaultDropAction READ defaultDropAction WRITE setDefaultDropAction) -#endif - Q_PROPERTY(bool alternatingRowColors READ alternatingRowColors WRITE setAlternatingRowColors) - Q_PROPERTY(SelectionMode selectionMode READ selectionMode WRITE setSelectionMode) - Q_PROPERTY(SelectionBehavior selectionBehavior READ selectionBehavior WRITE setSelectionBehavior) - Q_PROPERTY(QSize iconSize READ iconSize WRITE setIconSize) - Q_PROPERTY(Qt::TextElideMode textElideMode READ textElideMode WRITE setTextElideMode) - Q_PROPERTY(ScrollMode verticalScrollMode READ verticalScrollMode WRITE setVerticalScrollMode) - Q_PROPERTY(ScrollMode horizontalScrollMode READ horizontalScrollMode WRITE setHorizontalScrollMode) - -public: - enum SelectionMode { - NoSelection, - SingleSelection, - MultiSelection, - ExtendedSelection, - ContiguousSelection - }; - - enum SelectionBehavior { - SelectItems, - SelectRows, - SelectColumns - }; - - enum ScrollHint { - EnsureVisible, - PositionAtTop, - PositionAtBottom, - PositionAtCenter - }; - - enum EditTrigger { - NoEditTriggers = 0, - CurrentChanged = 1, - DoubleClicked = 2, - SelectedClicked = 4, - EditKeyPressed = 8, - AnyKeyPressed = 16, - AllEditTriggers = 31 - }; - - Q_DECLARE_FLAGS(EditTriggers, EditTrigger) - - enum ScrollMode { - ScrollPerItem, - ScrollPerPixel - }; - - explicit QAbstractItemView(QWidget *parent = 0); - ~QAbstractItemView(); - - virtual void setModel(QAbstractItemModel *model); - QAbstractItemModel *model() const; - - virtual void setSelectionModel(QItemSelectionModel *selectionModel); - QItemSelectionModel *selectionModel() const; - - void setItemDelegate(QAbstractItemDelegate *delegate); - QAbstractItemDelegate *itemDelegate() const; - - void setSelectionMode(QAbstractItemView::SelectionMode mode); - QAbstractItemView::SelectionMode selectionMode() const; - - void setSelectionBehavior(QAbstractItemView::SelectionBehavior behavior); - QAbstractItemView::SelectionBehavior selectionBehavior() const; - - QModelIndex currentIndex() const; - QModelIndex rootIndex() const; - - void setEditTriggers(EditTriggers triggers); - EditTriggers editTriggers() const; - - void setVerticalScrollMode(ScrollMode mode); - ScrollMode verticalScrollMode() const; - - void setHorizontalScrollMode(ScrollMode mode); - ScrollMode horizontalScrollMode() const; - - void setAutoScroll(bool enable); - bool hasAutoScroll() const; - - void setAutoScrollMargin(int margin); - int autoScrollMargin() const; - - void setTabKeyNavigation(bool enable); - bool tabKeyNavigation() const; - -#ifndef QT_NO_DRAGANDDROP - void setDropIndicatorShown(bool enable); - bool showDropIndicator() const; - - void setDragEnabled(bool enable); - bool dragEnabled() const; - - void setDragDropOverwriteMode(bool overwrite); - bool dragDropOverwriteMode() const; - - enum DragDropMode { - NoDragDrop, - DragOnly, - DropOnly, - DragDrop, - InternalMove - }; - - void setDragDropMode(DragDropMode behavior); - DragDropMode dragDropMode() const; - - void setDefaultDropAction(Qt::DropAction dropAction); - Qt::DropAction defaultDropAction() const; -#endif - - void setAlternatingRowColors(bool enable); - bool alternatingRowColors() const; - - void setIconSize(const QSize &size); - QSize iconSize() const; - - void setTextElideMode(Qt::TextElideMode mode); - Qt::TextElideMode textElideMode() const; - - virtual void keyboardSearch(const QString &search); - - virtual QRect visualRect(const QModelIndex &index) const = 0; - virtual void scrollTo(const QModelIndex &index, ScrollHint hint = EnsureVisible) = 0; - virtual QModelIndex indexAt(const QPoint &point) const = 0; - - QSize sizeHintForIndex(const QModelIndex &index) const; - virtual int sizeHintForRow(int row) const; - virtual int sizeHintForColumn(int column) const; - - void openPersistentEditor(const QModelIndex &index); - void closePersistentEditor(const QModelIndex &index); - - void setIndexWidget(const QModelIndex &index, QWidget *widget); - QWidget *indexWidget(const QModelIndex &index) const; - - void setItemDelegateForRow(int row, QAbstractItemDelegate *delegate); - QAbstractItemDelegate *itemDelegateForRow(int row) const; - - void setItemDelegateForColumn(int column, QAbstractItemDelegate *delegate); - QAbstractItemDelegate *itemDelegateForColumn(int column) const; - - QAbstractItemDelegate *itemDelegate(const QModelIndex &index) const; - - virtual QVariant inputMethodQuery(Qt::InputMethodQuery query) const; - -#ifdef Q_NO_USING_KEYWORD - inline void update() { QAbstractScrollArea::update(); } -#else - using QAbstractScrollArea::update; -#endif - -public Q_SLOTS: - virtual void reset(); - virtual void setRootIndex(const QModelIndex &index); - virtual void doItemsLayout(); - virtual void selectAll(); - void edit(const QModelIndex &index); - void clearSelection(); - void setCurrentIndex(const QModelIndex &index); - void scrollToTop(); - void scrollToBottom(); - void update(const QModelIndex &index); - -protected Q_SLOTS: - virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); - virtual void rowsInserted(const QModelIndex &parent, int start, int end); - virtual void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); - virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected); - virtual void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); - virtual void updateEditorData(); - virtual void updateEditorGeometries(); - virtual void updateGeometries(); - virtual void verticalScrollbarAction(int action); - virtual void horizontalScrollbarAction(int action); - virtual void verticalScrollbarValueChanged(int value); - virtual void horizontalScrollbarValueChanged(int value); - virtual void closeEditor(QWidget *editor, QAbstractItemDelegate::EndEditHint hint); - virtual void commitData(QWidget *editor); - virtual void editorDestroyed(QObject *editor); - -Q_SIGNALS: - void pressed(const QModelIndex &index); - void clicked(const QModelIndex &index); - void doubleClicked(const QModelIndex &index); - - void activated(const QModelIndex &index); - void entered(const QModelIndex &index); - void viewportEntered(); - -protected: - QAbstractItemView(QAbstractItemViewPrivate &, QWidget *parent = 0); - - void setHorizontalStepsPerItem(int steps); - int horizontalStepsPerItem() const; - void setVerticalStepsPerItem(int steps); - int verticalStepsPerItem() const; - - enum CursorAction { MoveUp, MoveDown, MoveLeft, MoveRight, - MoveHome, MoveEnd, MovePageUp, MovePageDown, - MoveNext, MovePrevious }; - virtual QModelIndex moveCursor(CursorAction cursorAction, - Qt::KeyboardModifiers modifiers) = 0; - - virtual int horizontalOffset() const = 0; - virtual int verticalOffset() const = 0; - - virtual bool isIndexHidden(const QModelIndex &index) const = 0; - - virtual void setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command) = 0; - virtual QRegion visualRegionForSelection(const QItemSelection &selection) const = 0; - virtual QModelIndexList selectedIndexes() const; - - virtual bool edit(const QModelIndex &index, EditTrigger trigger, QEvent *event); - - virtual QItemSelectionModel::SelectionFlags selectionCommand(const QModelIndex &index, - const QEvent *event = 0) const; - -#ifndef QT_NO_DRAGANDDROP - virtual void startDrag(Qt::DropActions supportedActions); -#endif - - virtual QStyleOptionViewItem viewOptions() const; - - enum State { - NoState, - DraggingState, - DragSelectingState, - EditingState, - ExpandingState, - CollapsingState, - AnimatingState - }; - - State state() const; - void setState(State state); - - void scheduleDelayedItemsLayout(); - void executeDelayedItemsLayout(); - - void setDirtyRegion(const QRegion ®ion); - void scrollDirtyRegion(int dx, int dy); - QPoint dirtyRegionOffset() const; - - void startAutoScroll(); - void stopAutoScroll(); - void doAutoScroll(); - - bool focusNextPrevChild(bool next); - bool event(QEvent *event); - bool viewportEvent(QEvent *event); - void mousePressEvent(QMouseEvent *event); - void mouseMoveEvent(QMouseEvent *event); - void mouseReleaseEvent(QMouseEvent *event); - void mouseDoubleClickEvent(QMouseEvent *event); -#ifndef QT_NO_DRAGANDDROP - void dragEnterEvent(QDragEnterEvent *event); - void dragMoveEvent(QDragMoveEvent *event); - void dragLeaveEvent(QDragLeaveEvent *event); - void dropEvent(QDropEvent *event); -#endif - void focusInEvent(QFocusEvent *event); - void focusOutEvent(QFocusEvent *event); - void keyPressEvent(QKeyEvent *event); - void resizeEvent(QResizeEvent *event); - void timerEvent(QTimerEvent *event); - void inputMethodEvent(QInputMethodEvent *event); - -#ifndef QT_NO_DRAGANDDROP - enum DropIndicatorPosition { OnItem, AboveItem, BelowItem, OnViewport }; - DropIndicatorPosition dropIndicatorPosition() const; -#endif - -private: - Q_DECLARE_PRIVATE(QAbstractItemView) - Q_DISABLE_COPY(QAbstractItemView) - Q_PRIVATE_SLOT(d_func(), void _q_columnsAboutToBeRemoved(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_columnsRemoved(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_columnsInserted(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_rowsRemoved(const QModelIndex&, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_modelDestroyed()) - Q_PRIVATE_SLOT(d_func(), void _q_layoutChanged()) - Q_PRIVATE_SLOT(d_func(), void _q_headerDataChanged()) -#ifndef QT_NO_GESTURES - Q_PRIVATE_SLOT(d_func(), void _q_scrollerStateChanged()) -#endif - - friend class QTreeViewPrivate; // needed to compile with MSVC - friend class QAccessibleItemRow; - friend class QListModeViewBase; - friend class QListViewPrivate; // needed to compile for Symbian emulator -}; - -Q_DECLARE_OPERATORS_FOR_FLAGS(QAbstractItemView::EditTriggers) - -#endif // QT_NO_ITEMVIEWS - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QABSTRACTITEMVIEW_H |