Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Classes principales  ·  Annotées  ·  Classes groupées  ·  Modules  ·  Fonctions  · 

QItemEditorFactory Class

The QItemEditorFactory class provides widgets for editing item data in views and delegates. More...

 #include <QItemEditorFactory>

This class was introduced in Qt 4.2.

Public Functions

QItemEditorFactory()
virtual ~QItemEditorFactory()
virtual QWidget * createEditor(int userType, QWidget * parent) const
void registerEditor(int userType, QItemEditorCreatorBase * creator)
virtual QByteArray valuePropertyName(int userType) const

Static Public Members

const QItemEditorFactory * defaultFactory()
void setDefaultFactory(QItemEditorFactory * factory)

Detailed Description

The QItemEditorFactory class provides widgets for editing item data in views and delegates.

When editing data in an item view, editors are created and displayed by a delegate. QItemDelegate, which is the delegate by default installed on Qt's item views, uses a QItemEditorFactory to create editors for it. A default unique instance provided by QItemEditorFactory is used by all item delegates. If you set a new default factory with setDefaultFactory(), the new factory will be used by existing and new delegates.

A factory keeps a collection of QItemEditorCreatorBase instances, which are specialized editors that produce editors for one particular QVariant data type (All Qt models store their data in QVariants).

Standard Editing Widgets

The standard factory implementation provides editors for a variety of data types. These are created whenever a delegate needs to provide an editor for data supplied by a model. The following table shows the relationship between types and the standard editors provided.

TypeEditor Widget
boolQComboBox
doubleQDoubleSpinBox
intQSpinBox
unsigned int
QDateQDateEdit
QDateTimeQDateTimeEdit
QPixmapQLabel
QStringQLineEdit
QTimeQTimeEdit

Additional editors can be registered with the registerEditor() function.

See also QItemDelegate, Model/View Programming, and Color Editor Factory Example.

Member Function Documentation

QItemEditorFactory::QItemEditorFactory()

Constructs a new item editor factory.

QItemEditorFactory::~QItemEditorFactory() [virtual]

Destroys the item editor factory.

QWidget * QItemEditorFactory::createEditor(int userType, QWidget * parent) const [virtual]

Creates an editor widget with the given parent for the specified userType of data, and returns it as a QWidget.

See also registerEditor().

const QItemEditorFactory * QItemEditorFactory::defaultFactory() [static]

Returns the default item editor factory.

See also setDefaultFactory().

void QItemEditorFactory::registerEditor(int userType, QItemEditorCreatorBase * creator)

Registers an item editor creator specified by creator for the given userType of data.

Note: The factory takes ownership of the item editor creator and will destroy it if a new creator for the same type is registered later.

See also createEditor().

void QItemEditorFactory::setDefaultFactory(QItemEditorFactory * factory) [static]

Sets the default item editor factory to the given factory. Both new and existing delegates will use the new factory.

See also defaultFactory().

QByteArray QItemEditorFactory::valuePropertyName(int userType) const [virtual]

Returns the property name used to access data for the given userType of data.

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 5.0-snapshot
Copyright © 2012 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 !
 
 
 
 
Partenaires

Hébergement Web