#ifndef QABSTRACTITEMVIEW_H
#define QABSTRACTITEMVIEW_H
#include <QtGui/qabstractscrollarea.h>
#include <QtCore/qabstractitemmodel.h>
#include <QtGui/qitemselectionmodel.h>
#include <QtGui/qabstractitemdelegate.h>
typedef enum QtValidLicenseForGuiModule QtGuiModule;
#ifndef QT_NO_ITEMVIEWS
struct QMenu;
struct QDrag;
struct QAbstractItemViewPrivate;
class QAbstractItemView: public QAbstractScrollArea{
public: virtual struct QMetaObject const * metaObject() const
public: static struct QMetaObject const staticMetaObject;
public: virtual void* qt_metacast(char const *);
public: static inline class QString tr(char const * s, char const * c = 0);
public: static inline class QString trUtf8(char const * s, char const * c = 0);
public: static inline class QString tr(char const * s, char const * c, int n);
public: static inline class QString trUtf8(char const * s, char const * c, int n);
public: virtual int qt_metacall(enum QMetaObject::Call, int, void* *);
public: enum SelectionMode{
NoSelection = 0,
SingleSelection = 1,
MultiSelection = 2,
ExtendedSelection = 3,
ContiguousSelection = 4,
};
public: enum SelectionBehavior{
SelectItems = 0,
SelectRows = 1,
SelectColumns = 2,
};
public: enum ScrollHint{
EnsureVisible = 0,
PositionAtTop = 1,
PositionAtBottom = 2,
PositionAtCenter = 3,
};
public: enum EditTrigger{
NoEditTriggers = 0,
CurrentChanged = 1,
DoubleClicked = 2,
SelectedClicked = 4,
EditKeyPressed = 8,
AnyKeyPressed = 16,
AllEditTriggers = 31,
};
public: typedef class QFlags < enum QAbstractItemView::EditTrigger > EditTriggers;
public: enum ScrollMode{
ScrollPerItem = 0,
ScrollPerPixel = 1,
};
public: explicit QAbstractItemView(class QWidget* parent = 0);
public: virtual ~QAbstractItemView();
public: virtual void setModel(class QAbstractItemModel* model);
public: class QAbstractItemModel* model() const
public: virtual void setSelectionModel(class QItemSelectionModel* selectionModel);
public: class QItemSelectionModel* selectionModel() const
public: void setItemDelegate(class QAbstractItemDelegate* delegate);
public: class QAbstractItemDelegate* itemDelegate() const
public: void setSelectionMode(enum QAbstractItemView::SelectionMode mode);
public: enum QAbstractItemView::SelectionMode selectionMode() const
public: void setSelectionBehavior(enum QAbstractItemView::SelectionBehavior behavior);
public: enum QAbstractItemView::SelectionBehavior selectionBehavior() const
public: class QModelIndex currentIndex() const
public: class QModelIndex rootIndex() const
public: void setEditTriggers(class QFlags < enum QAbstractItemView::EditTrigger > triggers);
public: class QFlags < enum QAbstractItemView::EditTrigger > editTriggers() const
public: void setVerticalScrollMode(enum QAbstractItemView::ScrollMode mode);
public: enum QAbstractItemView::ScrollMode verticalScrollMode() const
public: void setHorizontalScrollMode(enum QAbstractItemView::ScrollMode mode);
public: enum QAbstractItemView::ScrollMode horizontalScrollMode() const
public: void setAutoScroll(bool enable);
public: bool hasAutoScroll() const
public: void setTabKeyNavigation(bool enable);
public: bool tabKeyNavigation() const
#ifndef QT_NO_DRAGANDDROP
public: void setDropIndicatorShown(bool enable);
public: bool showDropIndicator() const
public: void setDragEnabled(bool enable);
public: bool dragEnabled() const
public: void setDragDropOverwriteMode(bool overwrite);
public: bool dragDropOverwriteMode() const
public: enum DragDropMode{
NoDragDrop = 0,
DragOnly = 1,
DropOnly = 2,
DragDrop = 3,
InternalMove = 4,
};
public: void setDragDropMode(enum QAbstractItemView::DragDropMode behavior);
public: enum QAbstractItemView::DragDropMode dragDropMode() const
#endif
public: void setAlternatingRowColors(bool enable);
public: bool alternatingRowColors() const
public: void setIconSize(class QSize const & size);
public: class QSize iconSize() const
public: void setTextElideMode(enum Qt::TextElideMode mode);
public: enum Qt::TextElideMode textElideMode() const
public: virtual void keyboardSearch(class QString const & search);
public: virtual class QRect visualRect(class QModelIndex const & index) const = 0;
public: virtual void scrollTo(class QModelIndex const & index, enum QAbstractItemView::ScrollHint hint = QAbstractItemView::EnsureVisible) = 0;
public: virtual class QModelIndex indexAt(class QPoint const & point) const = 0;
public: class QSize sizeHintForIndex(class QModelIndex const & index) const
public: virtual int sizeHintForRow(int row) const
public: virtual int sizeHintForColumn(int column) const
public: void openPersistentEditor(class QModelIndex const & index);
public: void closePersistentEditor(class QModelIndex const & index);
public: void setIndexWidget(class QModelIndex const & index, class QWidget* widget);
public: class QWidget* indexWidget(class QModelIndex const & index) const
public: void setItemDelegateForRow(int row, class QAbstractItemDelegate* delegate);
public: class QAbstractItemDelegate* itemDelegateForRow(int row) const
public: void setItemDelegateForColumn(int column, class QAbstractItemDelegate* delegate);
public: class QAbstractItemDelegate* itemDelegateForColumn(int column) const
public: class QAbstractItemDelegate* itemDelegate(class QModelIndex const & index) const
public: virtual class QVariant inputMethodQuery(enum Qt::InputMethodQuery query) const
public: virtual void reset();
public: virtual void setRootIndex(class QModelIndex const & index);
public: virtual void doItemsLayout();
public: virtual void selectAll();
public: void edit(class QModelIndex const & index);
public: void clearSelection();
public: void setCurrentIndex(class QModelIndex const & index);
public: void scrollToTop();
public: void scrollToBottom();
protected: virtual void dataChanged(class QModelIndex const & topLeft, class QModelIndex const & bottomRight);
protected: virtual void rowsInserted(class QModelIndex const & parent, int start, int end);
protected: virtual void rowsAboutToBeRemoved(class QModelIndex const & parent, int start, int end);
protected: virtual void selectionChanged(class QItemSelection const & selected, class QItemSelection const & deselected);
protected: virtual void currentChanged(class QModelIndex const & current, class QModelIndex const & previous);
protected: virtual void updateEditorData();
protected: virtual void updateEditorGeometries();
protected: virtual void updateGeometries();
protected: virtual void verticalScrollbarAction(int action);
protected: virtual void horizontalScrollbarAction(int action);
protected: virtual void verticalScrollbarValueChanged(int value);
protected: virtual void horizontalScrollbarValueChanged(int value);
protected: virtual void closeEditor(class QWidget* editor, enum QAbstractItemDelegate::EndEditHint hint);
protected: virtual void commitData(class QWidget* editor);
protected: virtual void editorDestroyed(class QObject* editor);
protected: void pressed(class QModelIndex const & index);
protected: void clicked(class QModelIndex const & index);
protected: void doubleClicked(class QModelIndex const & index);
protected: void activated(class QModelIndex const & index);
protected: void entered(class QModelIndex const & index);
protected: void viewportEntered();
protected: QAbstractItemView(struct QAbstractItemViewPrivate&, class QWidget* parent = 0);
protected: void setHorizontalStepsPerItem(int steps);
protected: int horizontalStepsPerItem() const
protected: void setVerticalStepsPerItem(int steps);
protected: int verticalStepsPerItem() const
protected: enum CursorAction{
MoveUp = 0,
MoveDown = 1,
MoveLeft = 2,
MoveRight = 3,
MoveHome = 4,
MoveEnd = 5,
MovePageUp = 6,
MovePageDown = 7,
MoveNext = 8,
MovePrevious = 9,
};
protected: virtual class QModelIndex moveCursor(enum QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) = 0;
protected: virtual int horizontalOffset() const = 0;
protected: virtual int verticalOffset() const = 0;
protected: virtual bool isIndexHidden(class QModelIndex const & index) const = 0;
protected: virtual void setSelection(class QRect const & rect, class QFlags < enum QItemSelectionModel::SelectionFlag > command) = 0;
protected: virtual class QRegion visualRegionForSelection(class QItemSelection const & selection) const = 0;
protected: virtual QModelIndexList selectedIndexes() const
protected: virtual bool edit(class QModelIndex const & index, enum QAbstractItemView::EditTrigger trigger, struct QEvent* event);
protected: virtual class QFlags < enum QItemSelectionModel::SelectionFlag > selectionCommand(class QModelIndex const & index, struct QEvent const * event = 0) const
#ifndef QT_NO_DRAGANDDROP
protected: virtual void startDrag(Qt::DropActions supportedActions);
#endif
protected: virtual class QStyleOptionViewItem viewOptions() const
protected: enum State{
NoState = 0,
DraggingState = 1,
DragSelectingState = 2,
EditingState = 3,
ExpandingState = 4,
CollapsingState = 5,
AnimatingState = 6,
};
protected: enum QAbstractItemView::State state() const
protected: void setState(enum QAbstractItemView::State state);
protected: void scheduleDelayedItemsLayout();
protected: void executeDelayedItemsLayout();
protected: void setDirtyRegion(class QRegion const & region);
protected: void scrollDirtyRegion(int dx, int dy);
protected: class QPoint dirtyRegionOffset() const
protected: void startAutoScroll();
protected: void stopAutoScroll();
protected: void doAutoScroll();
protected: virtual bool focusNextPrevChild(bool next);
protected: virtual bool event(struct QEvent* event);
protected: virtual bool viewportEvent(struct QEvent* event);
protected: virtual void mousePressEvent(struct QMouseEvent* event);
protected: virtual void mouseMoveEvent(struct QMouseEvent* event);
protected: virtual void mouseReleaseEvent(struct QMouseEvent* event);
protected: virtual void mouseDoubleClickEvent(struct QMouseEvent* event);
#ifndef QT_NO_DRAGANDDROP
protected: virtual void dragEnterEvent(struct QDragEnterEvent* event);
protected: virtual void dragMoveEvent(struct QDragMoveEvent* event);
protected: virtual void dragLeaveEvent(struct QDragLeaveEvent* event);
protected: virtual void dropEvent(struct QDropEvent* event);
#endif
protected: virtual void focusInEvent(struct QFocusEvent* event);
protected: virtual void focusOutEvent(struct QFocusEvent* event);
protected: virtual void keyPressEvent(struct QKeyEvent* event);
protected: virtual void resizeEvent(struct QResizeEvent* event);
protected: virtual void timerEvent(struct QTimerEvent* event);
protected: virtual void inputMethodEvent(struct QInputMethodEvent* event);
#ifndef QT_NO_DRAGANDDROP
protected: enum DropIndicatorPosition{
OnItem = 0,
AboveItem = 1,
BelowItem = 2,
OnViewport = 3,
};
protected: enum QAbstractItemView::DropIndicatorPosition dropIndicatorPosition() const
#endif
private: inline struct QAbstractItemViewPrivate* d_func();
private: inline struct QAbstractItemViewPrivate const * d_func() const
private: QAbstractItemView(class QAbstractItemView const &);
private: class QAbstractItemView& operator =(class QAbstractItemView const &);
friend struct QAbstractItemViewPrivate;
friend struct QTreeViewPrivate;
friend struct QAccessibleItemRow;
};
struct QTreeViewPrivate;
struct QAccessibleItemRow;
inline class QFlags < enum QAbstractItemView::EditTrigger > operator |(enum QAbstractItemView::EditTrigger f1, class QFlags < enum QAbstractItemView::EditTrigger > f2);
inline class QFlags < enum QAbstractItemView::EditTrigger > operator |(enum QAbstractItemView::EditTrigger f1, enum QAbstractItemView::EditTrigger f2);
#endif // QT_NO_ITEMVIEWS
#endif // QABSTRACTITEMVIEW_H