QAbstractItemModelLa classe QAbstractItemModel fournit une interface abstraite pour les classes mod�le d'�l�ment. Plus d'informations... #include <QAbstractItemModel> H�ritageH�rite de QObject. H�ritageH�rit� par QAbstractListModel, QAbstractProxyModel, QAbstractTableModel, QDirModel, QFileSystemModel, QHelpContentModel, QProxyModel et QStandardItemModel. Description d�taill�eLa classe QAbstractItemModel fournit une interface abstraite pour les classes mod�les d'�l�ment. La classe QAbstractItemModel d�finit une interface standard que les mod�les d'�l�ment doivent utiliser pour interop�rer avec les autres composants de l'architecture mod�le/vue. La classe n'est pas directement instanciable. Par contre, vous pouvez en h�riter pour cr�er de nouveaux mod�les. La classe QAbstractItemModel est l'une des classes mod�le/vue et fait partie du framework mod�le/vue de Qt. Si vous avez besoin d'un mod�le pour l'utiliser avec une QListView ou une QTableView, vous devriez plut�t envisager de d�river la classe QAbstractListModel ou QAbstractTableModel plut�t que cette classe. Le mod�le de donn�es sous-jacent est expos� aux vues et d�l�gu�s sous forme d'une hi�rarchie de tableaux. Si vous n'utilisez pas cette hi�rarchie, alors le mod�le est une simple table de lignes et colonnes. Chaque �l�ment poss�de un index unique sp�cifi� par un QModelIndex.
Chaque �l�ment est associ� � des �l�ments de donn�es associ�s et ceux-ci peuvent �tre r�cup�r�s en sp�cifiant un r�le (voir Qt::ItemDataRole) � la fonction data() du mod�le. Les donn�es de tous les r�les disponibles peuvent �tre r�cup�r�es en m�me temps avec la fonction itemData(). Les donn�es pour chaque r�le sont d�finies en utilisant un Qt::ItemDataRole particulier. Les donn�es pour les r�les individuels sont d�finies individuellement avec la fonction setData() ou elles peuvent �tre d�finies pour tous les r�les avec la fonction setItemData(). Les �l�ments peuvent �tre test�s avec la fonction flags() (voir Qt::ItemFlag) pour savoir s'ils peuvent �tre s�lectionn�s, d�plac�s ou manipul�s de diff�rentes fa�ons. Si un �l�ment poss�de des objets enfants, la fonction hasChildren() retourne true pour l'index correspondant. Le mod�le poss�de une fonction rowCount() et une fonction columnCount() pour chaque niveau de la hi�rarchie. Les lignes et colonnes peuvent �tre ins�r�es et retir�es avec les fonctions insertRows(), insertColumns(), removeRows() et removeColumns(). Le mod�le envoie des signaux pour informer des changements. Par exemple, le signal dataChanged() est envoy� � chaque fois que des �l�ments de donn�es du mod�le sont modifi�s. Les changements des ent�tes fournis par le mod�le provoquent l'�mission du signal headerDataChanged(). Si la structure des donn�es sous-jacentes change, le mod�le peut envoyer le signal layoutChanged() pour informer les vues qu'elles doivent r�afficher les �l�ments pr�sent�s, en prenant la nouvelle structure en compte. On peut effectuer une recherche de donn�es particuli�res dans les �l�ments accessibles par le mod�le en utilisant la fonction match(). Pour trier le mod�le, vous pouvez utiliser la fonction sort(). D�rivationNote : des guides g�n�riques pour la d�rivation de mod�les sont disponibles dans la documentation de la d�rivation de mod�le. Lors de la d�rivation de QAbstractItemModel, vous devez au moins impl�menter les fonctions index(), parent(), rowCount(), columnCount() et data(). Ces fonctions sont utilis�es dans tous les mod�les en lecture seule et forment les bases des mod�les �ditables. Vous pouvez aussi r�impl�menter la fonction hasChildren() pour fournir un comportement sp�cial aux mod�les dans lesquels l'impl�mentation de la fonction rowCount() est co�teuse. Cela permet aux mod�les de limiter le nombre de donn�es requises par les vues et peut �tre utilis� pour impl�menter un remplissage retard� des donn�es du mod�le. Afin de permettre l'�dition du mod�le, vous devez aussi impl�menter les fonctions setData() et flags() afin que ItemIsEditable soit renvoy�. Vous pouvez aussi red�finir les fonctions headerData() et setHeaderData() pour contr�ler la fa�on dont les ent�tes de votre mod�le sont affich�s. Les signaux dataChanged() et headerDataChanged() doivent �tre �mis explicitement lors de la r�impl�mentation respectivement des fonctions setData() et setHeaderData(). Les mod�les personnalis�s doivent cr�er des index de mod�le � l'usage des autres composants. Pour ce faire, appelez la fonction createIndex() avec les num�ros de ligne et de colonne appropri�s pour l'�l�ment, ainsi qu'un identificateur pointeur ou entier pour cet �l�ment. La combinaison de ces valeurs doit �tre unique pour chaque �l�ment. Les mod�les personnalis�s utilisent typiquement ces identificateurs uniques dans les autres fonctions r�impl�ment�es pour retrouver les donn�es des �l�ments et acc�der aux informations des parents et enfants de l'�l�ment. Voir l'exemple de mod�le arbre simple pour plus d'informations � propos des identificateurs uniques. Il n'est pas n�cessaire de g�rer chaque r�le d�fini dans Qt::ItemDataRole. Selon le type de donn�es contenu dans le mod�le, il peut �tre suffisant d'impl�menter la fonction data() pour renvoyer les informations valides pour les r�les les plus communs. La plupart des mod�les fournissent au moins la repr�sentation textuelle des donn�es de l'�l�ment pour le r�le Qt::DisplayRole et les mod�les devraient de pr�f�rence aussi fournir des informations valides pour les r�les Qt::ToolTipRole et Qt::WhatsThisRole, ces r�les permettant aux mod�les d'�tre utilis�s par les vues standard de Qt. Toutefois, pour certains mod�les g�rant des donn�es tr�s sp�cialis�es, il peut �tre appropri� de ne fournir des donn�es que pour des r�les d�finis par l'utilisateur. Les mod�les qui fournissent des interfaces pour les structures de donn�es redimensionnables peuvent fournir les impl�mentations des fonctions insertRows(), removeRows(), insertColumns(), et removeColumns(). Lors de l'impl�mentation de ces fonctions, il est important d'informer les vues connect�es de tout changement des dimensions du mod�le avant et apr�s qu'ils aient lieu�:
Les signaux priv�s que ces fonctions �mettent donnent aux composants attach�s la possibilit� d'effectuer des actions avant que des donn�es deviennent indisponibles. L'encapsulation des op�rations d'insertion et de suppression avec ces fonctions de d�but et de fin permet aussi au mod�le de g�rer la persistance des index de mod�les correctement. Pour que les s�lections soient correctement g�r�es, vous devez vous assurer que vous appelez ces fonctions. Si vous ins�rez ou supprimez un �l�ment ayant des enfants, vous n'avez pas besoin d'appeler ces fonctions sur les �l�ments enfants. Autrement dit, l'�l�ment parent va s'occuper de ses �l�ments enfants. Pour cr�er des mod�les se peuplant incr�mentalement, vous pouvez r�implementer les fonctions fetchMore() et canFetchMore(). Si la r�implementation de la fonction fetchMore() ajoute des lignes dans le mod�le, les fonctions beginInsertRows() et endInsertRows() doivent �tre appel�es. Voir aussi Classes mod�les, R�f�rence pour la d�rivation de mod�le, QModelIndex, QAbstractItemView, Utilisation du glisser/d�poser avec les vues d'�l�ments, Exemple de mod�le DOM simple, Exemple de mod�le en arbre simple, Exemple de mod�le en arbre �ditable et Exemple "Plus d'�l�ments". Fonctions membresQAbstractItemModel::QAbstractItemModel ( QObject * parent = 0 )Construit un mod�le d'�l�ment abstrait avec le parent parent donn�. QAbstractItemModel::~QAbstractItemModel () [virtual]D�truit le mod�le d'�l�ment abstrait. void QAbstractItemModel::beginInsertColumns ( const QModelIndex & parent, int first, int last ) [protected]Commence une op�ration d'insertion de colonnes. Lors de la r�impl�mentation de la fonction insertColumns() dans une sous-classe, vous devez appeler cette fonction avant l'insertion des donn�es dans le mod�le stockant les donn�es. L'index parent correspond au parent dans lequel les nouvelles colonnes sont ins�r�es ; first et last sont les num�ros de colonne des nouvelles colonnes apr�s leur insertion (premier et dernier num�ro).
Note : cette fonction �met le signal columnsAboutToBeInserted() que les vues ou les proxy connect�s doivent traiter avant l'insertion des donn�es. Sinon, les vues pourront se trouver dans un �tat invalide. Voir aussi endInsertColumns(). void QAbstractItemModel::beginInsertRows ( const QModelIndex & parent, int first, int last ) [protected]Commence une op�ration d'insertion de lignes. Lors de la r�impl�mentation de la fonction insertRows() dans une sous-classe, vous devez appeler cette fonction avant l'insertion des donn�es dans le mod�le stockant les donn�es. L'index parent correspond au parent dans lequel les nouvelles lignes seront ins�r�es ; first et last sont les num�ros de ligne des nouvelles lignes apr�s leur insertion (premier et dernier num�ro).
Note : cette fonction �met le signal rowsAboutToBeInserted() que les vues ou les proxy connect�s doivent traiter avant l'insertion des donn�es. Sinon, les vues pourront se trouver dans un �tat invalide. Voir aussi endInsertRows(). bool QAbstractItemModel::beginMoveColumns ( const QModelIndex & sourceParent, int sourceFirst, int sourceLast, const QModelIndex & destinationParent, int destinationChild ) [protected]Commence une op�ration de d�placement de colonnes. Lors de la r�impl�mentation dans une sous-classe, cette m�thode simplifie le d�placement d'entit�s dans votre mod�le. Cette m�thode est responsable du d�placement d'index persistants dans le mod�le, vous �vitant de le faire par vous-m�me. L'utilisation de beginMoveRows et endMoveRows est une alternative � l'envoi de layoutAboutToBeChanged et layoutChanged directement avec changePersistentIndexes. Le signal layoutAboutToBeChanged est envoy� par cette m�thode pour des raisons de compatibilit�. L'index sourceParent correspond au parent depuis lequel les colonnes sont d�plac�es. Les num�ros de colonnes sourceFirst et sourceLast correspondent aux colonnes � d�placer. L'index destinationParent correspond au parent dans lequel les colonnes sont d�plac�es. Le num�ro de colonne destinationChild est la colonne dans laquelle les colonnes seront d�plac�es. Ainsi, l'index de colonne sourceFirst dans sourceParent deviendra la colonne destinationChild dans destinationParent, suivie par les autres colonnes jusqu'� sourceLast. Par contre, lors du d�placement des colonnes dans le m�me parent (si sourceParent et destinationParent sont identiques), les colonnes seront plac�es avant la colonne d'index destinationChild. Ainsi, si vous souhaitez d�placer les colonnes 0 et 1 pour qu'elles deviennent les colonnes 1 et 2, destinationChild devra �tre 3. Dans ce cas, le nouvel index pour la colonne source i (qui est compris entre sourceFirst et sourceLast) est �gal � (destinationChild-sourceLast-1+i). Notez que, si sourceParent et destinationParent sont identiques, destinationChild ne doit pas �tre compris entre sourceFirst et sourceLast + 1. Vous devez aussi vous assurer de ne pas essayer de d�placer une colonne dans l'un de ses propres enfants ou anc�tres. Cette m�thode retourne false si l'une de ces conditions est vraie, dans ce cas vous devez annuler l'op�ration de d�placement. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi endMoveColumns(). bool QAbstractItemModel::beginMoveRows ( const QModelIndex & sourceParent, int sourceFirst, int sourceLast, const QModelIndex & destinationParent, int destinationChild ) [protected]Commence une op�ration de d�placement de lignes. Lors de la r�impl�mentation d'une sous-classe, cette m�thode simplifie le d�placement d'entit�s dans votre mod�le. Cette m�thode est responsable du d�placement des index persistants dans le mod�le, vous �vitant de le faire par vous-m�me. L'utilisation de beginMoveRows et endMoveRows est une alternative � l'envoi des signaux layoutAboutToBeChanged et layoutChanged directement avec changePersistentIndexes. Le signal layoutAboutToBeChanged est envoy� par cette m�thode pour des raisons de compatibilit�. L'index sourceParent correspond au parent depuis lequel les lignes sont d�plac�s ; Les num�ros de lignes sourceFirst et sourceLast correspondent aux lignes � d�placer. L'index destinationParent correspond au parent dans lequel les lignes sont d�plac�es. Le num�ro de ligne destinationChild est la ligne dans laquelle les lignes seront d�plac�es. Ainsi, l'index de ligne sourceFirst dans sourceParent deviendra la ligne destinationChild dans destinationParent, suivie par les autres lignes jusqu'� sourceLast. Par contre, lors du d�placement des lignes dans le m�me parent (si sourceParent et destinationParent sont identiques), les lignes seront plac�es avant la ligne d'index destinationChild. Ainsi, si vous souhaitez d�placer les lignes 0 et 1 pour qu'elles deviennent les lignes 1 et 2, destinationChild devra �tre 3. Dans ce cas, le nouvel index pour la ligne source i (qui est compris entre sourceFirst et sourceLast) est �gal � (destinationChild-sourceLast-1+i). Notez que, si sourceParent et destinationParent sont identiques, destinationChild ne doit pas �tre compris entre sourceFirst et sourceLast + 1. Vous devez aussi vous assurer de ne pas essayer de d�placer une colonne dans l'un de ses propres enfants ou anc�tres. Cette m�thode retourne false si l'une de ces conditions est vraie, dans ce cas vous devez annuler l'op�ration de d�placement.
Cette fonction a �t� introduite dans Qt 4.6. Voir aussi endMoveRows(). void QAbstractItemModel::beginRemoveColumns ( const QModelIndex & parent, int first, int last ) [protected]D�marre une op�ration de suppression de colonne. Lors de la r�implementation de la fonction removeColumns() dans une sous-classe, vous devez appeler cette fonction avant la suppression des donn�es dans le mod�le sous-jacent. L'index parent correspond au parent � partir duquel les colonnes seront supprim�es. Les num�ros de colonnes first et last correspondent � la premi�re et derni�re colonne � supprimer.
Note : cette fonction envoie le signal columnsAboutToBeRemoved() que les vues ou proxy connect�s doivent traiter avant la suppression des donn�es. Sinon, les vues pourront se trouver dans un �tat invalide. Voir aussi endRemoveColumns(). void QAbstractItemModel::beginRemoveRows ( const QModelIndex & parent, int first, int last ) [protected]D�marre une op�ration de suppression de ligne. Lors de la r�impl�mentation de la fonction removeRows() dans une sous-classe, vous devez appeler cette fonction avant la suppression des donn�es dans le mod�le sous-jacent. L'index parent correspond au parent � partir duquel les lignes seront supprim�es. Les num�ros de lignes first et last correspondent � la premi�re et � la derni�re ligne � supprimer.
Note : cette fonction envoie le signal rowsAboutToBeRemoved() que les vues ou proxy connect�s doivent traiter avant la suppression des donn�es. Sinon, les vues pourront se trouver dans un �tat invalide. Voir aussi endRemoveRows(). void QAbstractItemModel::beginResetModel () [protected]D�marre une op�ration de r�initialisation du mod�le. Une op�ration de r�initialisation r�initialise le mod�le � son �tat actuel dans chacune des vues attach�es. Note : chaque vue attach�e � ce mod�le sera r�initialis�e. Lorsque le mod�le est r�initialis�, cela signifie que toutes les donn�es lues � partir du mod�le sont maintenant invalides et doivent �tre r�cup�r�es une nouvelle fois. Cela signifie aussi que l'�l�ment actuel ou les �l�ments s�lectionn�s deviendront invalides. Lorsqu'un mod�le change radicalement ses donn�es et il peut �tre plus facile d'appeler simplement cette fonction plut�t que d'envoyer le signal dataChanged() pour informer les autres composants lorsque la source de donn�es sous-jacentes, ou sa structure, a chang�. Vous devez appeler cette fonction avant de r�initialiser toute structure de donn�es interne dans votre mod�le ou dans votre mod�le proxy. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi modelAboutToBeReset(), modelReset() et endResetModel(). QModelIndex QAbstractItemModel::buddy ( const QModelIndex & index ) const [virtual]Retourne un index du mod�le pour le camarade de l'�l�ment repr�sent� par index. Lorsque l'utilisateur veut �diter un �l�ment, la vue appellera cette fonction pour v�rifier si c'est un autre �l�ment du mod�le qui doit �tre �dit� � sa place. La vue construira ensuite un d�l�gu� utilisant l'index de mod�le retourn� par l'�l�ment camarade. L'impl�mentation par d�faut de cette fonction consid�re que chaque �l�ment est son propre camarade. bool QAbstractItemModel::canFetchMore ( const QModelIndex & parent ) const [virtual]Retourne true s'il y a encore des donn�es disponibles pour parent ; sinon retourne false. L'impl�mentation par d�faut retourne toujours true. Si la fonction canFetchMore() retourne true, QAbstractItemView appellera la fonction fetchMore(). Cependant, la fonction fetchMore() est uniquement appel�e lorsque le mod�le est peupl� incr�mentalement. Voir aussi fetchMore(). void QAbstractItemModel::changePersistentIndex ( const QModelIndex & from, const QModelIndex & to ) [protected]Modifie le QPersistentModelIndex �gal � l'index from donn� en index to. Si aucun index de mod�le persistant �gal � l'index from n'est trouv�, aucun changement n'est effectu�. Voir aussi persistentIndexList() et changePersistentIndexList(). void QAbstractItemModel::changePersistentIndexList ( const QModelIndexList & from, const QModelIndexList & to ) [protected]Modifie les QPersistentModelIndex �gaux aux index de la liste from en index de la liste to. Si aucun index de mod�le persistant �gal aux index de la liste from n'est trouv�, aucun changement n'est effectu�. Cette fonction a �t� introduite dans Qt 4.1. Voir aussi persistentIndexList() et changePersistentIndex(). int QAbstractItemModel::columnCount ( const QModelIndex & parent = QModelIndex() ) const [pure virtual]Retourne le nombre de colonnes des enfants du parent donn�. Dans la plupart des sous-classes, le nombre de colonnes est ind�pendant du parent. Par exemple : int DomModel::columnCount(const QModelIndex &/*parent*/) const { return 3; } Note : lors de la r�impl�mentation d'un mod�le de table, la fonction columnCount() doit retourner 0 lorsque le parent est valide. Voir aussi rowCount(). void QAbstractItemModel::columnsAboutToBeInserted ( const QModelIndex & parent, int start, int end ) [signal]Le signal est envoy� juste avant que les colonnes soient ins�r�es dans le mod�le. Les nouveaux �l�ments seront positionn�s entre le d�but start et la fin end inclus, dans l'�l�ment parent donn�. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements des dimensions du mod�le. Il peut seulement �tre envoy� par l'impl�mentation de QAbstractItemModel et ne peut pas �tre explicitement �mis par le code d'une sous-classe. Voir aussi insertColumns() et beginInsertColumns(). void QAbstractItemModel::columnsAboutToBeMoved ( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationColumn ) [signal]Ce signal est envoy� juste avant que les colonnes soient d�plac�es dans le mod�le. Les �l�ments qui seront d�plac�s sont ceux situ�s entre sourceStart et sourceEnd inclus, dans l'�l�ment sourceParent donn�. Ils seront d�plac�s dans le parent de destination destinationParent � partir de la colonne destinationColumn. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements des dimensions du mod�le. Il ne peut �tre envoy� que par l'impl�mentation de QAbstractItemModel et ne peut pas �tre explicitement �mis par le code d'une sous-classe. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginMoveRows(). void QAbstractItemModel::columnsAboutToBeRemoved ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est envoy� juste avant que les colonnes soient retir�es du mod�le. Les �l�ments qui seront supprim�s sont ceux situ�s entre start et end inclus, dans l'�l�ment parent donn�. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements des dimensions du mod�le. Il ne peut �tre envoy� que par une impl�mentation de QAbstractItemModel et ne peut pas �tre explicitement �mis par le code d'une sous-classe. Voir aussi removeColumns() et beginRemoveColumns(). void QAbstractItemModel::columnsInserted ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est envoy� apr�s que les colonnes sont ins�r�es dans le mod�le. Les nouveaux �l�ments sont ceux entre start et end inclus, dans l'�l�ment parent parent. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements des dimensions du mod�le. Il ne peut �tre envoy� que par l'impl�mentation de QAbstractItemModel et ne peut pas �tre explicitement �mis par le code d'une sous-classe. Voir aussi insertColumns() et beginInsertColumns(). void QAbstractItemModel::columnsMoved ( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationColumn ) [signal]Ce signal est envoy� apr�s que les colonnes sont d�plac�es dans le mod�le. Les �l�ments entre sourceStart et sourceEnd inclus du parent sourceParent donn� sont d�plac�s dans le destinationParent en partant de la colonne destinationColumn. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements des dimensions du mod�le. Il ne peut �tre envoy� que par l'impl�mentation de QAbstractItemModel et ne peut �tre explicitement �mis par le code d'une sous-classe. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginMoveRows(). void QAbstractItemModel::columnsRemoved ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est envoy� apr�s que les colonnes sont supprim�es du mod�le. Les �l�ments qui seront supprim�s sont ceux situ�s entre start et end inclus, dans l'�l�ment parent donn�. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements des dimensions du mod�le. Il ne peut �tre envoy� que par l'impl�mentation de QAbstractItemModel et ne peut �tre explicitement �mis par le code d'une sous-classe. Voir aussi removeColumns() et beginRemoveColumns(). QModelIndex QAbstractItemModel::createIndex ( int row, int column, void * ptr = 0 ) const [protected]Cr�e un index de mod�le pour la ligne row et la colonne column donn�es avec le pointeur interne ptr. Lors de l'utilisation d'un QSortFilterProxyModel, ses indices poss�dent leurs propres pointeurs internes. Il n'est pas recommand� d'acc�der � ces pointeurs en dehors du mod�le. Utilisez la fonction data() � la place. Cette fonction fournit une interface coh�rente que les sous-classes de mod�le doivent utiliser pour cr�er les index de mod�le. QModelIndex QAbstractItemModel::createIndex ( int row, int column, quint32 id ) const [protected]Cr�e un index de mod�le pour la ligne row et la colonne column donn�es avec l'identifiant interne id. Cette fonction fournit une interface coh�rente que les sous-classes de mod�le doivent utiliser pour cr�er les index de mod�le. Voir aussi QModelIndex::internalId(). QVariant QAbstractItemModel::data ( const QModelIndex & index, int role = Qt::DisplayRole ) const [pure virtual]Retourne les donn�es enregistr�es pour le role donn� pour l'�l�ment r�f�renc� par index. Note : si vous n'avez pas de valeur � renvoyer, retournez un QVariant invalide au lieu de renvoyer 0. Voir aussi Qt::ItemDataRole, setData() et headerData(). void QAbstractItemModel::dataChanged ( const QModelIndex & topLeft, const QModelIndex & bottomRight ) [signal]Ce signal est envoy� chaque fois que les donn�es dans un �l�ment existant sont modifi�es. Si les �l�ments ont le m�me parent, les �l�ments affect�s sont ceux compris entre topLeft et bottomRight inclus. Si les �l�ments n'ont pas le m�me parent, le comportement est ind�fini. Lors de la r�impl�mentation de la fonction setData(), ce signal doit �tre envoy� explicitement. Voir aussi headerDataChanged(), setData() et layoutChanged(). bool QAbstractItemModel::dropMimeData ( const QMimeData * data, Qt::DropAction action, int row, int column, const QModelIndex & parent ) [virtual]Traite les donn�es data fournies par une op�ration de glisser-d�poser qui s'est termin�e par l'action sp�cifi�e. Retourne true si la donn�e et l'action peuvent �tre g�r�es par le mod�le ; sinon retourne false. La ligne row, la colonne column et le parent sp�cifi�s indiquent l'emplacement d'un �l�ment dans le mod�le o� l'op�ration s'est termin�e. Il est de la responsabilit� du mod�le de terminer l'action � l'emplacement correct. Par exemple, une action de d�pose sur un �l�ment d'un QTreeView peut donner lieu � une insertion des �l�ments sp�cifi�s par row, column et parent soit comme enfants, soit comme fr�res de l'�l�ment. Lorsque la ligne et la colonne valent -1 cela signifie qu'il est de la responsabilit� du mod�le de d�cider o� placer les donn�es. Cela peut arriver dans un arbre lorsque les donn�es sont d�pos�es dans le parent. Habituellement, les mod�les ajouteront les donn�es dans le parent. Voir aussi supportedDropActions() et Utiliser le glisser-d�poser avec les vues d'�l�ments. void QAbstractItemModel::endInsertColumns () [protected]Termine une op�ration d'insertion de colonnes. Lors de la r�impl�mentation de la fonction insertColumns() dans une sous-classe, vous devez appeler cette fonction apr�s l'insertion des donn�es dans le mod�le sous-jacent. Voir aussi beginInsertColumns(). void QAbstractItemModel::endInsertRows () [protected]Termine une op�ration d'insertion de lignes. Lors de la r�implementation de la fonction insertRows() dans une sous-classe, vous devez appeler cette fonction apr�s l'insertion des donn�es dans le mod�le sous-jacent. Voir aussi beginInsertRows(). void QAbstractItemModel::endMoveColumns () [protected]Termine une op�ration de d�placement de colonnes. Lors de l'impl�mentation d'une sous-classe, vous devez appeler cette fonction apr�s le d�placement des donn�es dans le mod�le sous-jacent. Le signal layoutChanged est envoy� par cette m�thode pour des raisons de compatibilit�. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginMoveColumns(). void QAbstractItemModel::endMoveRows () [protected]Termine une op�ration de d�placement de lignes. Lors de l'impl�mentation d'une sous-classe, vous devez appeler cette fonction apr�s le d�placement des donn�es dans le mod�le sous-jacent. Le signal layoutChanged est envoy� par cette m�thode pour des raisons de compatibilit�. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginMoveRows(). void QAbstractItemModel::endRemoveColumns () [protected]Termine une op�ration de suppression de colonnes. Lors de la r�implementation de la fonction removeColumns() dans une sous-classe, vous devez appeler cette fonction apr�s la suppression des donn�es dans le mod�le sous-jacent. Voir aussi beginRemoveColumns(). void QAbstractItemModel::endRemoveRows () [protected]Termine l'op�ration de suppression de lignes. Lors de la r�impl�mentation de la fonction removeRows() dans une sous-classe, vous devez appeler cette fonction apr�s la suppression des donn�es dans le mod�le sous-jacent. Voir aussi beginRemoveRows(). void QAbstractItemModel::endResetModel () [protected]Compl�te une op�ration de r�initialisation du mod�le. Vous devez appeler cette fonction apr�s la r�initialisation de toute structure de donn�es de votre mod�le ou mod�le proxy. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginResetModel(). void QAbstractItemModel::fetchMore ( const QModelIndex & parent ) [virtual]R�cup�re les donn�es disponibles pour les �l�ments ayant pour parent l'index parent sp�cifi�. R�impl�mentez cette fonction si vous peuplez le mod�le incr�mentalement. L'impl�mentation par d�faut ne fait rien. Voir aussi canFetchMore(). Qt::ItemFlags QAbstractItemModel::flags ( const QModelIndex & index ) const [virtual]Retourne les indicateurs pour lindex donn�. L'impl�mentation de base retourne une combinaison d'indicateurs qui activent l'�l�ment (ItemIsEnabled) et l'autorisent � �tre s�lectionn� (ItemIsSelectable). Voir aussi Qt::ItemFlags. bool QAbstractItemModel::hasChildren ( const QModelIndex & parent = QModelIndex() ) const [virtual]Retourne true si parent poss�de des enfants ; sinon retourne false. Utilisez la fonction rowCount() sur le parent pour trouver le nombre d'enfants. Voir aussi parent() et index(). bool QAbstractItemModel::hasIndex ( int row, int column, const QModelIndex & parent = QModelIndex() ) constRetourne true si le mod�le retourne un QModelIndex valide pour la ligne row et la colonne column avec parent, sinon retourne false. QVariant QAbstractItemModel::headerData ( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const [virtual]Retourne les donn�es de l'en-t�te pour le role et la section donn�s avec lorientation sp�cifi�e. Pour les en-t�tes horizontaux, le num�ro de section correspond au num�ro de colonne. Sym�triquement, pour les en-t�tes verticaux, le num�ro de section correspond au num�ro de ligne. Voir aussi Qt::ItemDataRole, setHeaderData() et QHeaderView. void QAbstractItemModel::headerDataChanged ( Qt::Orientation orientation, int first, int last ) [signal]Ce signal est envoy� chaque fois qu'un en-t�te est modifi�e. L'orientation indique si la modification concerne l'en-t�te horizontal ou vertical. Les sections de l'en-t�te comprises entre first et last doivent �tre mises � jour. Lors de la r�implementation de la fonction setHeaderData(), ce signal doit �tre envoy� explicitement. Si vous changez le nombre de colonnes ou de lignesv vous n'avez pas besoin d'envoyer ce signal, mais utilisez les fonctions begin/end (r�f�rez-vous � la section sur la d�rivation dans la description de la classe QAbstractItemModel pour plus de d�tails). Voir aussi headerData(), setHeaderData() et dataChanged(). QModelIndex QAbstractItemModel::index ( int row, int column, const QModelIndex & parent = QModelIndex() ) const [pure virtual]Retourne l'index de l'�l�ment du mod�le sp�cifi� par la ligne row, la colonne column et l'index parent. Lors de la r�impl�mentation de cette fonction dans des classes d�riv�es, appelez createIndex() pour g�n�rer des index de mod�le que les autres composants peuvent utiliser pour acc�der aux �l�ments de votre mod�le. Voir aussi createIndex(). bool QAbstractItemModel::insertColumn ( int column, const QModelIndex & parent = QModelIndex() )Ins�re une colonne unique avant la colonne column donn�e en tant qu'enfant du parent sp�cifi�. Retourne true si la colonne est ins�r�e ; sinon retourne false. Voir aussi insertColumns(), insertRow() et removeColumn(). bool QAbstractItemModel::insertColumns ( int column, int count, const QModelIndex & parent = QModelIndex() ) [virtual]Sur les mod�les qui le g�rent, cette fonction ins�re count nouvelles colonnes dans le mod�le avant la colonne column donn�e. Les �l�ments des nouvelles colonnes seront des enfants de l'�l�ment repr�sent� par l'index de mod�le parent. Si column est 0, les colonnes sont ajout�es avant les colonnes existantes. Si column est columnCount(), les colonnes sont ajout�es apr�s les colonnes existantes. Si parent ne poss�de pas d'enfant, une ligne unique avec count colonnes est ins�r�e. Retourne true si l'insertion des colonnes a r�ussi ; sinon retourne false. L'impl�mentation de la classe de base ne fait rien et retourne false. Si vous impl�mentez votre propre mod�le, vous pouvez r�impl�menter cette fonction si vous souhaitez g�rer les insertions. L?autre branche de l?alternative est de fournir votre propre API pour la modification des donn�es. Voir aussi insertRows(), removeColumns(), beginInsertColumns() et endInsertColumns(). bool QAbstractItemModel::insertRow ( int row, const QModelIndex & parent = QModelIndex() )Note : l'impl�mentation de la classe de base de cette fonction ne fait rien et retourne false. Ins�re une ligne unique avant la ligne row donn�e en tant qu'enfant de l'�l�ment parent sp�cifi�. Retourne true si la ligne a �t� ins�r�e ; sinon retourne false. Voir aussi insertRows(), insertColumn() et removeRow(). bool QAbstractItemModel::insertRows ( int row, int count, const QModelIndex & parent = QModelIndex() ) [virtual]Note : l'impl�mentation de la classe de base de cette fonction ne fait rien et retourne false. Sur les mod�les qui le g�rent, ins�re count lignes dans le mod�le avant la ligne row. Les �l�ments des nouvelles lignes seront des enfants de l'�l�ment ayant pour index de mod�le parent. Si row est 0, les lignes sont ajout�es avant les lignes du parent. Si row est rowCount(), les lignes sont ajout�es apr�s les lignes existantes du parent. Si parent n'a pas d'enfant, une colonne avec count lignes est ajout�e. Retourne true l'insertion a r�ussi ; sinon retourne false. Si vous impl�mentez votre propre mod�le, vous pouvez r�impl�menter cette fonction si vous souhaitez g�rer les insertions. L'autre possibilit� est de fournir votre propre API pour la modification des donn�es. Dans tous les cas, vous devez appeler beginInsertRows() et endInsertRows() pour signaler aux autres composants que le mod�le a �t� modifi�. Voir aussi insertColumns(), removeRows(), beginInsertRows() et endInsertRows(). QMap<int, QVariant> QAbstractItemModel::itemData ( const QModelIndex & index ) const [virtual]Retourne une QMap contenant des valeurs pour tous les r�les pr�d�finis du mod�le pour l'�l�ment correspondant � lindex donn�. R�impl�mentez cette fonction si vous souhaitez �tendre le comportement par d�faut de cette fonction afin d'inclure des r�les personnalis�s. Voir aussi setItemData(), Qt::ItemDataRole et data(). void QAbstractItemModel::layoutAboutToBeChanged () [signal]Ce signal est �mis juste avant que la disposition du mod�le soit modifi�e. Les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de disposition du mod�le. Les sous-classes doivent mettre � jour tous les mod�les d'index persistants apr�s l'envoi du signal layoutAboutToBeChanged(). Cette fonction a �t� introduite dans Qt 4.2. Voir aussi layoutChanged() et changePersistentIndex(). void QAbstractItemModel::layoutChanged () [signal]Ce signal est envoy� chaque fois que la disposition des �l�ments expos�s par le mod�le est modifi�e, par exemple lorsque le mod�le est tri�. Lorsque ce signal est re�u par la vue, il doit mettre � jour la disposition des �l�ments pour refl�ter ce changement. Lors de la d�rivation de QAbstractItemModel ou QAbstractProxyModel, assurez-vous d'envoyer le signal layoutAboutToBeChanged() avant de changer l'ordre des �l�ments ou d'alt�rer la structure des donn�es expos�es aux vues et envoyez le signal layoutChanged() apr�s le changement de la disposition. Les sous-classes doivent mettre � jour tous les mod�les d'index persistants avant l'envoi du signal layoutChanged(). Autrement dit, lorsque la structure est modifi�e, l'ordre des op�rations est le suivant :
Voir aussi layoutAboutToBeChanged(), dataChanged(), headerDataChanged(), modelReset() et changePersistentIndex(). QModelIndexList QAbstractItemModel::match ( const QModelIndex & start, int role, const QVariant & value, int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags( Qt::MatchStartsWith | Qt::MatchWrap ) ) const [virtual]Retourne une liste d'index des �l�ments de la colonne de l'index start pour lesquels les donn�es stock�es avec le r�le role correspondent � la valeur value sp�cifi�e. La m�thode de recherche est d�termin�e par les drapeaux flags donn�s. La liste retourn�e peut �tre vide. La recherche d�marre � partir de l'index start et continue jusqu'� ce que le nombre d'�l�ments trouv�s soit �gal � hits, ou que la recherche atteigne la derni�re ligne, qu'elle revienne sur l'index start - si l'indicateur MatchWrap est sp�cifi� dans flags. Si vous souhaitez trouver tous les �l�ments correspondants, utilisez hits = -1. Par d�faut, cette fonction utilise une comparaison de cha�ne de caract�res sur tous les �l�ments, circulaire, recherchant les �l�ments commen�ant par value. Note : l'impl�mentation par d�faut de cette fonction ne recherche que dans une colonne. Reimpl�mentez cette fonction pour inclure un comportement de recherche diff�rent. QMimeData * QAbstractItemModel::mimeData ( const QModelIndexList & indexes ) const [virtual]Retourne un objet qui contient les donn�es s�rialis�es des �l�ments correspondant � la liste indexes sp�cifi�e. Le format utilis� pour d�crire les donn�es encod�es est obtenu � partir de la fonction mimeTypes(). Si la liste d'index est vide ou si aucun type MIME n'est g�r�, la fonction renvoie 0 et non une liste vide s�rialis�e. Voir aussi mimeTypes() et dropMimeData(). QStringList QAbstractItemModel::mimeTypes () const [virtual]Retourne une liste de types MIME pouvant �tre utilis�s pour d�crire une liste d'index de mod�le. Voir aussi mimeData(). void QAbstractItemModel::modelAboutToBeReset () [signal]Ce signal est envoy� lorsque la fonction reset() est appel�e, avant que l'�tat interne du mod�le (c'est-�-dire les index de mod�les persistants) ne soit invalid�. Cette fonction a �t� introduite dans Qt 4.2. Voir aussi beginResetModel() et modelReset(). void QAbstractItemModel::modelReset () [signal]Ce signal est envoy� lorsque la fonction reset() est appel�e, apr�s que l'�tat interne du mod�le (c'est-�-dire les index de mod�les persistants) est invalid�. Cette fonction a �t� introduite dans Qt 4.1. Voir aussi endResetModel() et modelAboutToBeReset(). QModelIndex QAbstractItemModel::parent ( const QModelIndex & index ) const [pure virtual]Retourne le parent de l'�l�ment du mod�le ayant lindex donn�. Si l'�l�ment n'a pas de parent, un QModelIndex invalide est retourn�. Une convention courante utilis�e dans les mod�les exposant des structures de donn�es en arbre est que seuls les �l�ments de la premi�re colonne ont des enfants. Dans ce cas, lors de la r�impl�mentation de cette fonction dans une sous-classe, la colonne du QModelIndex retourn� devrait �tre 0. Lors de la r�impl�mentation de cette fonction dans une sous-classe, �vitez d'appeler les fonctions membres de QModelIndex, telles que QModelIndex::parent(), car les index appartenant � votre mod�le appelleront simplement votre impl�mentation, ce qui produira une r�cursion infinie. Voir aussi createIndex(). QModelIndexList QAbstractItemModel::persistentIndexList () const [protected]Retourne la liste des index enregistr�s comme index persistants dans le mod�le. Cette fonction a �t� introduite dans Qt 4.2. bool QAbstractItemModel::removeColumn ( int column, const QModelIndex & parent = QModelIndex() )Supprime la colonne column des �l�ments enfants du parent sp�cifi�. Retourne true si la colonne est supprim�e ; sinon retourne false. Voir aussi removeColumns(), removeRow() et insertColumn(). bool QAbstractItemModel::removeColumns ( int column, int count, const QModelIndex & parent = QModelIndex() ) [virtual]Pour les mod�les qui le g�rent, supprime du mod�le count colonnes � partir de la colonne column pour le parent parent. Retourne true si les colonnes ont �t� supprim�es ; sinon retourne false. L'impl�mentation de la classe de base ne fait rien et retourne false. Si vous impl�mentez votre propre mod�le, vous pouvez r�impl�menter cette fonction si vous souhaitez g�rer la suppression. L'autre possibilit� est de fournir votre propre API pour la modification des donn�es. Voir aussi removeColumn(), removeRows(), insertColumns(), beginRemoveColumns() et endRemoveColumns(). bool QAbstractItemModel::removeRow ( int row, const QModelIndex & parent = QModelIndex() )Supprime la ligne row des �l�ments enfants du parent parent sp�cifi�. Retourne true si la ligne est supprim�e ; sinon retourne false. Cette fonction est une fonction de commodit� qui appelle removeRows(). L'impl�mentation de QAbstractItemModel de la fonction removeRows() ne fait rien. Voir aussi removeRows(), removeColumn() et insertRow(). bool QAbstractItemModel::removeRows ( int row, int count, const QModelIndex & parent = QModelIndex() ) [virtual]Sur les mod�les qui le g�rent, supprime dans le mod�le count lignes en partant de la ligne row dans le parent. Retourne true si la suppression a r�ussi ; sinon retourne false. L'impl�mentation de la classe de base ne fait rien et retourne false. Si vous impl�mentez votre propre mod�le, vous pouvez r�impl�menter cette fonction si vous souhaitez g�rer la suppression. L'autre possibilit� est de fournir votre propre API pour la modification des donn�es. Voir aussi removeRow(), removeColumns(), insertColumns(), beginRemoveRows() et endRemoveRows(). void QAbstractItemModel::reset () [protected]R�initialise le mod�le � son �tat d'origine dans les vues attach�es. Note : utilisez les fonctions beginResetModel() et endResetModel() � chaque fois que possible. Utilisez cette m�thode seulement s'il est impossible d'appeler la fonction beginResetModel() avant d'invalider le mod�le. Sinon cela peut provoquer un comportement ind�fini, surtout lors de l'utilisation de mod�le proxy. void QAbstractItemModel::revert () [virtual slot]Indique au mod�le qu'il doit oublier les informations mises en cache. Cette fonction est typiquement utilis�e lors de l'�dition de lignes. Voir aussi submit(). const QHash<int, QByteArray> & QAbstractItemModel::roleNames () constRetourne les noms de r�le du mod�le. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi setRoleNames(). int QAbstractItemModel::rowCount ( const QModelIndex & parent = QModelIndex() ) const [pure virtual]Retourne le nombre de lignes dans le parent donn�. Lorsque le parent est valide, cela signifie que rowCount retourne le nombre d'enfants du parent. Note : lors de l'impl�mentation d'un mod�le bas� sur une table, la fonction rowCount() devrait retourner 0 lorsque le parent est valide. Voir aussi columnCount(). void QAbstractItemModel::rowsAboutToBeInserted ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est �mis juste avant que les lignes ne soient ins�r�es dans le mod�le. Les nouveaux �l�ments seront positionn�s entre start et end inclus, sous l'�l�ment parent. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de dimensions du mod�le. Il ne peut �tre �mis que par l'impl�mentation de QAbstractItemModel et ne peut �tre �mis explicitement par le code d'une sous-classe. Voir aussi insertRows() et beginInsertRows(). void QAbstractItemModel::rowsAboutToBeMoved ( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationRow ) [signal]Ce signal est �mis avant que les lignes ne soient d�plac�es dans le mod�le. Les �l�ments qui seront d�plac�s sont ceux compris entre sourceStart et sourceEnd inclus, sous l'�l�ment parent sourceParent. Ils seront d�plac�s dans le parent destinationParent � partir de la ligne destinationRow. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de dimensions du mod�le. Il ne peut �tre �mis que par l'impl�mentation de QAbstractItemModel et ne peut �tre �mis explicitement par le code d'une sous-classe. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginMoveRows(). void QAbstractItemModel::rowsAboutToBeRemoved ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est envoy� juste avant que les lignes ne soient supprim�es du mod�le. Les �l�ments supprim�s sont ceux compris entre start et end inclus, sous l'�l�ment parent parent. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de dimensions du mod�le. Il ne peut �tre �mis que par l'impl�mentation de QAbstractItemModel et ne peut �tre �mis explicitement par le code d'une sous-classe. Voir aussi removeRows() et beginRemoveRows(). void QAbstractItemModel::rowsInserted ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est envoy� juste apr�s que les lignes sont ins�r�es dans le mod�le. Les nouveaux �l�ments sont ceux compris entre start et end inclus, sous l'�l�ment parent parent. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de dimensions du mod�le. Il ne peut �tre �mis que par l'impl�mentation de QAbstractItemModel et ne peut �tre �mis explicitement par le code d'une sous-classe. Voir aussi insertRows() et beginInsertRows(). void QAbstractItemModel::rowsMoved ( const QModelIndex & sourceParent, int sourceStart, int sourceEnd, const QModelIndex & destinationParent, int destinationRow ) [signal]Ce signal est envoy� apr�s que les lignes sont d�plac�es dans le mod�le. Les �l�ments entre sourceStart et sourceEnd inclus de l'�l�ment parent sourceParent ont �t� d�plac�s dans le parent destinationParent � la ligne destinationRow. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de dimensions du mod�le. Il ne peut �tre �mis que par l'impl�mentation de QAbstractItemModel et ne peut �tre �mis explicitement par le code d'une sous-classe. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi beginMoveRows(). void QAbstractItemModel::rowsRemoved ( const QModelIndex & parent, int start, int end ) [signal]Ce signal est envoy� apr�s que les lignes sont supprim�es du mod�le. Les �l�ments supprim�s sont ceux compris entre start et end inclus, sous l'�l�ment parent parent. Note : les composants connect�s � ce signal l'utilisent pour s'adapter aux changements de dimensions du mod�le. Il ne peut �tre �mis que par l'impl�mentation de QAbstractItemModel et ne peut �tre �mis explicitement par le code d'une sous-classe. Voir aussi removeRows() et beginRemoveRows(). bool QAbstractItemModel::setData ( const QModelIndex & index, const QVariant & value, int role = Qt::EditRole ) [virtual]D�finit le role de la donn�e pour l'�l�ment � l'index index � la valeur value. Retourne true en cas de r�ussite ; sinon retourne false. Le signal dataChanged() doit �tre envoy� si les donn�es ont �t� d�finies avec succ�s. L'impl�mentation de classe de base retourne false. Cette fonction et la fonction data() doivent �tre r�impl�ment�es pour les mod�les �ditables. Voir aussi Qt::ItemDataRole, data() et itemData(). bool QAbstractItemModel::setHeaderData ( int section, Qt::Orientation orientation, const QVariant & value, int role = Qt::EditRole ) [virtual]D�finit la donn�e pour le role et la section donn�s de l'ent�te ayant lorientation sp�cifi�e � la valeur value fournie. Retourne true si la donn�e de l'en-t�te a �t� mise � jour ; sinon retourne false. Lors de la r�impl�mentation de cette fonction, le signal headerDataChanged() doit �tre envoy� explicitement. Voir aussi Qt::ItemDataRole et headerData(). bool QAbstractItemModel::setItemData ( const QModelIndex & index, const QMap<int, QVariant> & roles ) [virtual]D�finit les donn�es de r�le pour l'�l�ment � l'index index aux valeurs associ�es dans roles, pour chaque Qt::ItemDataRole. Retourne true en cas de succ�s ; sinon retourne false. Les r�les qui ne sont pas dans roles ne seront pas modifi�s. Voir aussi setData(), data() et itemData(). void QAbstractItemModel::setRoleNames ( const QHash<int, QByteArray> & roleNames ) [protected]D�finit les noms de r�les du mod�le � roleNames. Cette fonction permet la correspondance entre les identifiants de r�le et les noms de propri�t�s de r�le dans les interfaces utilisateur d�claratives. Cette fonction doit �tre appel�e avant d'utiliser le mod�le. La modification des noms de r�les apr�s que le mod�le a �t� d�fini peut provoquer un comportement ind�fini. Cette fonction a �t� introduite dans Qt 4.6. Voir aussi roleNames(). void QAbstractItemModel::setSupportedDragActions ( Qt::DropActions actions )D�finit les actions de d�placement g�r�es pour les �l�ments dans le mod�le. Cette fonction a �t� introduite dans Qt 4.2. Voir aussi supportedDragActions() et Utilisation du glisser-d�poser avec les vues d'�l�ments. QModelIndex QAbstractItemModel::sibling ( int row, int column, const QModelIndex & index ) constRetourne les �l�ments de m�me niveau � la ligne row et la colonne column pour l'�l�ment � l'index index ou un QModelIndex invalide s'il n'y a pas d'autres �l�ments � cet emplacement. La fonction sibling() est simplement une fonction de commodit� qui trouve le parent de l'�l�ment et l'utilise pour r�cup�rer l'index des �l�ments enfants dans la ligne row et la colonne column. Voir aussi index(), QModelIndex::row() et QModelIndex::column(). void QAbstractItemModel::sort ( int column, Qt::SortOrder order = Qt::AscendingOrder ) [virtual]Trie le mod�le par la colonne column dans l'ordre order donn�. L'impl�mentation de base ne fait rien. QSize QAbstractItemModel::span ( const QModelIndex & index ) const [virtual]Retourne le nombre de lignes et de colonnes occup�es par l'�l�ment repr�sent� par l'index index. Note : actuellement, cette valeur n'est pas utilis�e. bool QAbstractItemModel::submit () [virtual slot]Indique au mod�le qu'il doit transf�rer les informations mises en cache vers l'enregistrement d�finitif. Cette fonction est typiquement utilis�e pour l'�dition des lignes. Retourne true s'il n'y a pas d'erreur ; sinon retourne false. Voir aussi revert(). Qt::DropActions QAbstractItemModel::supportedDragActions () constRetourne les actions g�r�es par les donn�es dans ce mod�le. L'impl�mentation par d�faut retourne supportedDropActions() si aucune valeur sp�cifique n'a �t� d�finie avec la fonction setSupportedDragActions(). La fonction supportedDragActions() est utilis�e par QAbstractItemView::startDrag() comme valeur par d�faut lorsqu'un d�placement est effectu�. Voir aussi setSupportedDragActions(), Qt::DropActions et Utilisation du glisser-d�poser avec les vues d'�l�ments. Qt::DropActions QAbstractItemModel::supportedDropActions () const [virtual]Retourne les actions de d�pose g�r�es par ce mod�le. L'impl�mentation par d�faut retourne Qt::CopyAction. R�impl�mentez cette fonction si vous souhaitez g�rer des actions suppl�mentaires. Vous pouvez aussi r�impl�menter la fonction dropMimeData() pour g�rer des op�rations suppl�mentaires. Cette fonction a �t� introduite dans Qt 4.2. Voir aussi dropMimeData(), Qt::DropActions et Utilisation du glisser-d�poser avec les vues d'�l�ments. RemerciementsMerci � Alexandre Laurent pour la traduction, ainsi qu'� Ilya Diallo et Claude Leloup pour la relecture ! |
Cette page est une traduction d'une page de la documentation de Qt, �crite par Nokia Corporation and/or its subsidiary(-ies). Les �ventuels probl�mes r�sultant d'une mauvaise traduction ne sont pas imputables � Nokia. | Qt 4.7 | |
Copyright © 2025 Developpez LLC. Tous droits r�serv�s Developpez LLC. Aucune reproduction, m�me partielle, ne peut �tre faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'� 3 ans de prison et jusqu'� 300 000 E de dommages et int�r�ts. Cette page est d�pos�e � la SACD. | ||
Vous avez d�nich� une erreur ? Un bug ? Une redirection cass�e ? Ou tout autre probl�me, quel qu'il soit ? Ou bien vous d�sirez participer � ce projet de traduction ? N'h�sitez pas � nous contacter ou par MP ! |