|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.trolltech.qt.internal.QSignalEmitterInternal
com.trolltech.qt.QSignalEmitter
com.trolltech.qt.QtJambiObject
com.trolltech.qt.gui.QStandardItem
public class QStandardItem
The QStandardItem class provides an item for use with the QStandardItemModel
class. Items usually contain text, icons, or checkboxes.
Each item can have its own background brush which is set with the setBackground()
function. The current background brush can be found with background()
. The text label for each item can be rendered with its own font and brush. These are specified with the setFont()
and setForeground()
functions, and read with font()
and foreground()
.
By default, items are enabled, editable, selectable, checkable, and can be used both as the source of a drag and drop operation and as a drop target. Each item's flags can be changed by calling setFlags()
. Checkable items can be checked and unchecked with the setCheckState()
function. The corresponding checkState()
function indicates whether the item is currently checked.
You can store application-specific data in an item by calling setData()
.
Each item can have a two-dimensional table of child items. This makes it possible to build hierarchies of items. The typical hierarchy is the tree, in which case the child table is a table with a single column (a list).
The dimensions of the child table can be set with setRowCount()
and setColumnCount()
. Items can be positioned in the child table with setChild()
. Get a pointer to a child item with child()
. New rows and columns of children can also be inserted with insertRow()
and insertColumn()
, or appended with appendRow()
and appendColumn()
. When using the append and insert functions, the dimensions of the child table will grow as needed.
An existing row of children can be removed with removeRow()
or takeRow()
; correspondingly, a column can be removed with removeColumn()
or takeColumn()
.
An item's children can be sorted by calling sortChildren()
.Subclassing
When subclassing QStandardItem to provide custom items, it is possible to define new types for them so that they can be distinguished from the base class. The type()
function should be reimplemented to return a new type value equal to or greater than UserType
.
Reimplement data()
and setData()
if you want to perform custom handling of data queries and/or control how an item's data is represented.
Reimplement clone()
if you want QStandardItemModel
to be able to create instances of your custom item class on demand (see QStandardItemModel::setItemPrototype()
).
Reimplement read()
and write()
if you want to control how items are represented in their serialized form.
Reimplement operator<() if you want to control the semantics of item comparison. operator<() determines the sorted order when sorting items with sortChildren()
or with QStandardItemModel::sort()
.
QStandardItemModel
, Item View Convenience Classes, and Model/View Programming.
Nested Class Summary | |
---|---|
static class |
QStandardItem.ItemType
This enum describes the types that are used to describe standard items. |
Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter |
---|
QSignalEmitter.AbstractSignal, QSignalEmitter.Signal0, QSignalEmitter.Signal1, QSignalEmitter.Signal2, QSignalEmitter.Signal3, QSignalEmitter.Signal4, QSignalEmitter.Signal5, QSignalEmitter.Signal6, QSignalEmitter.Signal7, QSignalEmitter.Signal8, QSignalEmitter.Signal9 |
Nested classes/interfaces inherited from class com.trolltech.qt.internal.QSignalEmitterInternal |
---|
com.trolltech.qt.internal.QSignalEmitterInternal.AbstractSignalInternal |
Field Summary |
---|
Fields inherited from class com.trolltech.qt.internal.QSignalEmitterInternal |
---|
currentSender |
Constructor Summary | |
---|---|
|
QStandardItem()
Constructs an item. |
|
QStandardItem(int rows)
Constructs an item with rows rows and columns columns of child items. |
|
QStandardItem(int rows,
int columns)
Constructs an item with rows rows and columns columns of child items. |
|
QStandardItem(QIcon icon,
java.lang.String text)
Constructs an item with the given icon and text. |
protected |
QStandardItem(QStandardItem other)
Constructs a copy of other. |
|
QStandardItem(java.lang.String text)
Constructs an item with the given text. |
Method Summary | |
---|---|
java.lang.String |
accessibleDescription()
Returns the item's accessible description. |
java.lang.String |
accessibleText()
Returns the item's accessible text. |
void |
appendColumn(java.util.List items)
Appends a column containing items. |
void |
appendRow(java.util.List items)
Appends a row containing items. |
void |
appendRow(QStandardItem item)
Appends a row containing item. |
void |
appendRows(java.util.List items)
Appends rows containing items. |
QBrush |
background()
Returns the brush used to render the item's background. |
Qt.CheckState |
checkState()
Returns the checked state of the item. |
QStandardItem |
child(int row)
Returns the child item at (row, column) if one has been set; otherwise returns 0. |
QStandardItem |
child(int row,
int column)
Returns the child item at (row, column) if one has been set; otherwise returns 0. |
QStandardItem |
clone()
This method is reimplemented for internal reasons |
int |
column()
Returns the column where the item is located in its parent's child table, or -1 if the item has no parent. |
int |
columnCount()
Returns the number of child item columns that the item has. |
java.lang.Object |
data()
Returns the item's data for the given role, or an invalid QVariant if there is no data for the role. |
java.lang.Object |
data(int role)
Returns the item's data for the given role, or an invalid QVariant if there is no data for the role. |
protected void |
emitDataChanged()
Causes the model associated with this item to emit a dataChanged () signal for this item. |
Qt.ItemFlags |
flags()
Returns the item flags for the item. |
QFont |
font()
Returns the font used to render the item's text. |
QBrush |
foreground()
Returns the brush used to render the item's foreground (e. |
boolean |
hasChildren()
Returns true if this item has any children; otherwise returns false. |
QIcon |
icon()
Returns the item's icon. |
com.trolltech.qt.core.QModelIndex |
index()
Returns the QModelIndex associated with this item. |
void |
insertColumn(int column,
java.util.List items)
Inserts a column at column containing items. |
void |
insertColumns(int column,
int count)
Inserts count columns of child items at column column. |
void |
insertRow(int row,
java.util.List items)
Inserts a row at row containing items. |
void |
insertRow(int row,
QStandardItem item)
Inserts a row at row containing item. |
void |
insertRows(int row,
int count)
Inserts count rows of child items at row row. |
void |
insertRows(int row,
java.util.List items)
Inserts items at row. |
boolean |
isCheckable()
Returns whether the item is user-checkable. |
boolean |
isDragEnabled()
Returns whether the item is drag enabled. |
boolean |
isDropEnabled()
Returns whether the item is drop enabled. |
boolean |
isEditable()
Returns whether the item can be edited by the user. |
boolean |
isEnabled()
Returns whether the item is enabled. |
boolean |
isSelectable()
Returns whether the item is selectable by the user. |
boolean |
isTristate()
Returns whether the item is tristate; that is, if it's checkable with three separate states. |
QStandardItemModel |
model()
Returns the QStandardItemModel that this item belongs to. |
boolean |
operator_less(QStandardItem other)
Returns true if this item is less than other; otherwise returns false. |
QStandardItem |
parent()
Returns the item's parent item, or 0 if the item has no parent. |
void |
read(QDataStream in)
Reads the item from stream in. |
void |
readFrom(QDataStream in)
|
void |
removeColumn(int column)
Removes the given column. |
void |
removeColumns(int column,
int count)
Removes count columns at column column. |
void |
removeRow(int row)
Removes the given row. |
void |
removeRows(int row,
int count)
Removes count rows at row row. |
int |
row()
Returns the row where the item is located in its parent's child table, or -1 if the item has no parent. |
int |
rowCount()
Returns the number of child item rows that the item has. |
void |
setAccessibleDescription(java.lang.String accessibleDescription)
Sets the item's accessible description to the string specified by accessibleDescription. |
void |
setAccessibleText(java.lang.String accessibleText)
Sets the item's accessible text to the string specified by accessibleText. |
void |
setBackground(QBrush brush)
Sets the item's background brush to the specified brush. |
void |
setCheckable(boolean checkable)
Sets whether the item is user-checkable. |
void |
setCheckState(Qt.CheckState checkState)
Sets the check state of the item to be state. |
void |
setChild(int row,
int column,
QStandardItem item)
Sets the child item at (row, column) to item. |
void |
setChild(int row,
QStandardItem item)
Sets the child at row to item. |
void |
setColumnCount(int columns)
Sets the number of child item columns to columns. |
void |
setData(java.lang.Object value)
Sets the item's data for the given role to the specified value. |
void |
setData(java.lang.Object value,
int role)
Sets the item's data for the given role to the specified value. |
void |
setDragEnabled(boolean dragEnabled)
Sets whether the item is drag enabled. |
void |
setDropEnabled(boolean dropEnabled)
Sets whether the item is drop enabled. |
void |
setEditable(boolean editable)
Sets whether the item is editable. |
void |
setEnabled(boolean enabled)
Sets whether the item is enabled. |
void |
setFlags(Qt.ItemFlag[] flags)
|
void |
setFlags(Qt.ItemFlags flags)
Sets the item flags for the item to flags. |
void |
setFont(QFont font)
Sets the font used to display the item's text to the given font. |
void |
setForeground(QBrush brush)
Sets the brush used to display the item's foreground (e. |
void |
setIcon(QIcon icon)
Sets the item's icon to the icon specified. |
void |
setRowCount(int rows)
Sets the number of child item rows to rows. |
void |
setSelectable(boolean selectable)
Sets whether the item is selectable. |
void |
setSizeHint(QSize sizeHint)
Sets the size hint for the item to be size. |
void |
setStatusTip(java.lang.String statusTip)
Sets the item's status tip to the string specified by statusTip. |
void |
setText(java.lang.String text)
Sets the item's text to the text specified. |
void |
setTextAlignment(Qt.Alignment textAlignment)
Sets the text alignment for the item's text to the alignment specified. |
void |
setTextAlignment(Qt.AlignmentFlag[] textAlignment)
|
void |
setToolTip(java.lang.String toolTip)
Sets the item's tooltip to the string specified by toolTip. |
void |
setTristate(boolean tristate)
Sets whether the item is tristate. |
void |
setWhatsThis(java.lang.String whatsThis)
Sets the item's "What's This?" help to the string specified by whatsThis. |
QSize |
sizeHint()
Returns the size hint set for the item, or an invalid QSize if no size hint has been set. |
void |
sortChildren(int column)
Sorts the children of the item using the given order, by the values in the given column. |
void |
sortChildren(int column,
Qt.SortOrder order)
Sorts the children of the item using the given order, by the values in the given column. |
java.lang.String |
statusTip()
Returns the item's status tip. |
QStandardItem |
takeChild(int row)
Removes the child item at (row, column) without deleting it, and returns a pointer to the item. |
QStandardItem |
takeChild(int row,
int column)
Removes the child item at (row, column) without deleting it, and returns a pointer to the item. |
java.util.List |
takeColumn(int column)
Removes column without deleting the column items, and returns a list of pointers to the removed items. |
java.util.List |
takeRow(int row)
Removes row without deleting the row items, and returns a list of pointers to the removed items. |
java.lang.String |
text()
Returns the item's text. |
Qt.Alignment |
textAlignment()
Returns the text alignment for the item's text. |
java.lang.String |
toolTip()
Returns the item's tooltip. |
int |
type()
Returns the type of this item. |
java.lang.String |
whatsThis()
Returns the item's "What's This?" help. |
void |
write(QDataStream out)
Writes the item to stream out. |
void |
writeTo(QDataStream out)
|
Methods inherited from class com.trolltech.qt.QtJambiObject |
---|
dispose, disposed, equals, finalize, reassignNativeResources, tr, tr, tr |
Methods inherited from class com.trolltech.qt.QSignalEmitter |
---|
blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread |
Methods inherited from class com.trolltech.qt.internal.QSignalEmitterInternal |
---|
__qt_signalInitialization |
Methods inherited from class java.lang.Object |
---|
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.trolltech.qt.QtJambiInterface |
---|
disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership |
Constructor Detail |
---|
public QStandardItem()
public QStandardItem(QIcon icon, java.lang.String text)
protected QStandardItem(QStandardItem other)
model()
is not copied. This function is useful when reimplementing clone()
.
public QStandardItem(java.lang.String text)
public QStandardItem(int rows)
public QStandardItem(int rows, int columns)
Method Detail |
---|
public final java.lang.String accessibleDescription()
The accessible description is used by assistive technologies (i.e. for users who cannot use conventional means of interaction).
setAccessibleDescription()
, and accessibleText()
.
public final java.lang.String accessibleText()
The accessible text is used by assistive technologies (i.e. for users who cannot use conventional means of interaction).
setAccessibleText()
, and accessibleDescription()
.
public final void appendColumn(java.util.List items)
insertColumn()
.
public final void appendRow(QStandardItem item)
When building a list or a tree that has only one column, this function provides a convenient way to append a single new item.
public final void appendRow(java.util.List items)
insertRow()
.
public final void appendRows(java.util.List items)
insertRow()
.
public final QBrush background()
foreground()
, and setBackground()
.
public final Qt.CheckState checkState()
setCheckState()
, and isCheckable()
.
public final QStandardItem child(int row)
setChild()
, takeChild()
, and parent()
.
public final QStandardItem child(int row, int column)
setChild()
, takeChild()
, and parent()
.
public final int column()
row()
, and parent()
.
public final int columnCount()
setColumnCount()
, and rowCount()
.
protected final void emitDataChanged()
dataChanged
() signal for this item. You normally only need to call this function if you have subclassed QStandardItem and reimplemented data()
and/or setData()
.
setData()
.
public final Qt.ItemFlags flags()
The item flags determine how the user can interact with the item.
By default, items are enabled, editable, selectable, checkable, and can be used both as the source of a drag and drop operation and as a drop target.
setFlags()
.
public final QFont font()
setFont()
.
public final QBrush foreground()
setForeground()
, and background()
.
public final boolean hasChildren()
rowCount()
, columnCount()
, and child()
.
public final QIcon icon()
setIcon()
, and iconSize
.
public final com.trolltech.qt.core.QModelIndex index()
When you need to invoke item functionality in a QModelIndex-based API (e.g. QAbstractItemView
), you can call this function to obtain an index that corresponds to the item's location in the model.
If the item is not associated with a model, an invalid QModelIndex is returned.
model()
, and QStandardItemModel::itemFromIndex()
.
public final void insertColumn(int column, java.util.List items)
insertColumns()
, and insertRow()
.
public final void insertColumns(int column, int count)
insertColumn()
, and insertRows()
.
public final void insertRow(int row, QStandardItem item)
When building a list or a tree that has only one column, this function provides a convenient way to insert a single new item.
public final void insertRow(int row, java.util.List items)
insertRows()
, and insertColumn()
.
public final void insertRows(int row, java.util.List items)
insertRow()
, and insertColumn()
.
public final void insertRows(int row, int count)
insertRow()
, and insertColumns()
.
public final boolean isCheckable()
The default value is false.
setCheckable()
, checkState()
, and isTristate()
.
public final boolean isDragEnabled()
The default value is true.
Note that item dragging must be enabled in the view for dragging to work; see QAbstractItemView::dragEnabled
.
setDragEnabled()
, isDropEnabled()
, and flags()
.
public final boolean isDropEnabled()
The default value is true.
setDropEnabled()
, isDragEnabled()
, and flags()
.
public final boolean isEditable()
When an item is editable (and enabled), the user can edit the item by invoking one of the view's edit triggers; see QAbstractItemView::editTriggers
.
The default value is true.
setEditable()
, and flags()
.
public final boolean isEnabled()
When an item is enabled, the user can interact with it. The possible types of interaction are specified by the other item flags, such as isEditable()
and isSelectable()
.
The default value is true.
setEnabled()
, and flags()
.
public final boolean isSelectable()
The default value is true.
setSelectable()
, and flags()
.
public final boolean isTristate()
The default value is false.
setTristate()
, isCheckable()
, and checkState()
.
public final QStandardItemModel model()
QStandardItemModel
that this item belongs to. If the item is not a child of another item that belongs to the model, this function returns 0.
index()
.
public final void writeTo(QDataStream out)
public final void readFrom(QDataStream in)
public final QStandardItem parent()
child()
.
public final void removeColumn(int column)
takeColumn()
, removeColumns()
, and removeRow()
.
public final void removeColumns(int column, int count)
removeColumn()
, and removeRows()
.
public final void removeRow(int row)
takeRow()
, removeRows()
, and removeColumn()
.
public final void removeRows(int row, int count)
removeRow()
, and removeColumn()
.
public final int row()
column()
, and parent()
.
public final int rowCount()
setRowCount()
, and columnCount()
.
public final void setAccessibleDescription(java.lang.String accessibleDescription)
The accessible description is used by assistive technologies (i.e. for users who cannot use conventional means of interaction).
accessibleDescription()
, and setAccessibleText()
.
public final void setAccessibleText(java.lang.String accessibleText)
The accessible text is used by assistive technologies (i.e. for users who cannot use conventional means of interaction).
accessibleText()
, and setAccessibleDescription()
.
public final void setBackground(QBrush brush)
background()
, and setForeground()
.
public final void setCheckState(Qt.CheckState checkState)
checkState()
, and setCheckable()
.
public final void setCheckable(boolean checkable)
The item delegate will render a checkable item with a check box next to the item's text.
isCheckable()
, setCheckState()
, and setTristate()
.
public final void setChild(int row, QStandardItem item)
public final void setChild(int row, int column, QStandardItem item)
child()
.
public final void setColumnCount(int columns)
columnCount()
, the data in the unwanted columns is discarded. columnCount()
, and setRowCount()
.
public final void setDragEnabled(boolean dragEnabled)
Note that you also need to ensure that item dragging is enabled in the view; see QAbstractItemView::dragEnabled
.
isDragEnabled()
, setDropEnabled()
, and setFlags()
.
public final void setDropEnabled(boolean dropEnabled)
Note that you also need to ensure that drops are enabled in the view; see QWidget::acceptDrops()
; and that the model supports the desired drop actions; see QAbstractItemModel::supportedDropActions()
.
isDropEnabled()
, setDragEnabled()
, and setFlags()
.
public final void setEditable(boolean editable)
How the user can edit items in a view is determined by the view's edit triggers; see QAbstractItemView::editTriggers
.
isEditable()
, and setFlags()
.
public final void setEnabled(boolean enabled)
This flag takes presedence over the other item flags; e.g. if an item is not enabled, it cannot be selected by the user, even if the Qt::ItemIsSelectable
flag has been set.
isEnabled()
, Qt::ItemIsEnabled
, and setFlags()
.
public final void setFlags(Qt.ItemFlag[] flags)
public final void setFlags(Qt.ItemFlags flags)
The item flags determine how the user can interact with the item. This is often used to disable an item.
flags()
, and setData()
.
public final void setFont(QFont font)
font()
, setText()
, and setForeground()
.
public final void setForeground(QBrush brush)
foreground()
, setBackground()
, and setFont()
.
public final void setIcon(QIcon icon)
icon()
.
public final void setRowCount(int rows)
rowCount()
, the data in the unwanted rows is discarded. rowCount()
, and setColumnCount()
.
public final void setSelectable(boolean selectable)
You can control the selection behavior and mode by manipulating their view properties; see QAbstractItemView::selectionMode
and QAbstractItemView::selectionBehavior
.
isSelectable()
, and setFlags()
.
public final void setSizeHint(QSize sizeHint)
sizeHint()
.
public final void setStatusTip(java.lang.String statusTip)
statusTip()
, setToolTip()
, and setWhatsThis()
.
public final void setText(java.lang.String text)
text()
, setFont()
, and setForeground()
.
public final void setTextAlignment(Qt.AlignmentFlag[] textAlignment)
public final void setTextAlignment(Qt.Alignment textAlignment)
textAlignment()
.
public final void setToolTip(java.lang.String toolTip)
toolTip()
, setStatusTip()
, and setWhatsThis()
.
public final void setTristate(boolean tristate)
isCheckable()
.) isTristate()
, setCheckable()
, and setCheckState()
.
public final void setWhatsThis(java.lang.String whatsThis)
whatsThis()
, setStatusTip()
, and setToolTip()
.
public final QSize sizeHint()
QSize
if no size hint has been set. If no size hint has been set, the item delegate will compute the size hint based on the item data.
setSizeHint()
.
public final void sortChildren(int column)
Note: This function is recursive, therefore it sorts the children of the item, its grandchildren, etc.
public final void sortChildren(int column, Qt.SortOrder order)
Note: This function is recursive, therefore it sorts the children of the item, its grandchildren, etc.
public final java.lang.String statusTip()
setStatusTip()
, toolTip()
, and whatsThis()
.
public final QStandardItem takeChild(int row)
Note that this function, unlike takeRow()
and takeColumn()
, does not affect the dimensions of the child table.
child()
, takeRow()
, and takeColumn()
.
public final QStandardItem takeChild(int row, int column)
Note that this function, unlike takeRow()
and takeColumn()
, does not affect the dimensions of the child table.
child()
, takeRow()
, and takeColumn()
.
public final java.util.List takeColumn(int column)
removeColumn()
, insertColumn()
, and takeRow()
.
public final java.util.List takeRow(int row)
removeRow()
, insertRow()
, and takeColumn()
.
public final java.lang.String text()
setText()
.
public final Qt.Alignment textAlignment()
setTextAlignment()
.
public final java.lang.String toolTip()
setToolTip()
, statusTip()
, and whatsThis()
.
public final java.lang.String whatsThis()
setWhatsThis()
, toolTip()
, and statusTip()
.
public QStandardItem clone()
clone
in class java.lang.Object
public final java.lang.Object data()
QVariant
if there is no data for the role. Note: The default implementation treats Qt::EditRole
and Qt::DisplayRole
as referring to the same data.
setData()
.
public java.lang.Object data(int role)
QVariant
if there is no data for the role. Note: The default implementation treats Qt::EditRole
and Qt::DisplayRole
as referring to the same data.
setData()
.
public boolean operator_less(QStandardItem other)
The default implementation uses the data for the item's sort role (see QStandardItemModel::sortRole
) to perform the comparison if the item belongs to a model; otherwise, the data for the item's Qt::DisplayRole
(text()
) is used to perform the comparison.
sortChildren()
and QStandardItemModel::sort()
use this function when sorting items. If you want custom sorting, you can subclass QStandardItem and reimplement this function.
public void read(QDataStream in)
write()
.
public final void setData(java.lang.Object value)
If you subclass QStandardItem and reimplement this function, your reimplementation should call emitDataChanged()
if you do not call the base implementation of setData()
. This will ensure that e.g. views using the model are notified of the changes.
Note: The default implementation treats Qt::EditRole
and Qt::DisplayRole
as referring to the same data.
Qt::ItemDataRole
, data()
, and setFlags()
.
public void setData(java.lang.Object value, int role)
If you subclass QStandardItem and reimplement this function, your reimplementation should call emitDataChanged()
if you do not call the base implementation of setData()
. This will ensure that e.g. views using the model are notified of the changes.
Note: The default implementation treats Qt::EditRole
and Qt::DisplayRole
as referring to the same data.
Qt::ItemDataRole
, data()
, and setFlags()
.
public int type()
UserType
. QStandardItem::Type
.
public void write(QDataStream out)
read()
.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |