com.trolltech.qt.gui
Class QItemEditorFactory

java.lang.Object
  extended by com.trolltech.qt.internal.QSignalEmitterInternal
      extended by com.trolltech.qt.QSignalEmitter
          extended by com.trolltech.qt.QtJambiObject
              extended by com.trolltech.qt.gui.QItemEditorFactory
All Implemented Interfaces:
QtJambiInterface

public class QItemEditorFactory
extends QtJambiObject

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.
Type
Editor Widget
bool QComboBox
double QDoubleSpinBox
int QSpinBox
unsigned int
QDate QDateEdit
QDateTime QDateTimeEdit
QPixmap QLabel
QString QLineEdit
QTime QTimeEdit
Additional editors can be registered with the
registerEditor() function.

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


Nested Class Summary
 
Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
QSignalEmitter.AbstractSignal, QSignalEmitter.PrivateSignal0, QSignalEmitter.PrivateSignal1, QSignalEmitter.PrivateSignal2, QSignalEmitter.PrivateSignal3, QSignalEmitter.PrivateSignal4, QSignalEmitter.PrivateSignal5, QSignalEmitter.PrivateSignal6, QSignalEmitter.PrivateSignal7, QSignalEmitter.PrivateSignal8, QSignalEmitter.PrivateSignal9, 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
QItemEditorFactory()
          Constructs a new item editor factory.
 
Method Summary
 QWidget createEditor(int type, QWidget parent)
          Creates an editor widget with the given parent for the specified type of data, and returns it as a QWidget.
static QItemEditorFactory defaultFactory()
          Returns the default item editor factory.
 void registerEditor(int type, QItemEditorCreatorBase creator)
          Registers an item editor creator specified by creator for the given type of data.
static void setDefaultFactory(QItemEditorFactory factory)
          Sets the default item editor factory to the given factory.
 QByteArray valuePropertyName(int type)
          Returns the property name used to access data for the given type of data.
 
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
clone, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.trolltech.qt.QtJambiInterface
disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership
 

Constructor Detail

QItemEditorFactory

public QItemEditorFactory()
Constructs a new item editor factory.

Method Detail

registerEditor

public final void registerEditor(int type,
                                 QItemEditorCreatorBase creator)
Registers an item editor creator specified by creator for the given type 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().


createEditor

public QWidget createEditor(int type,
                            QWidget parent)
Creates an editor widget with the given parent for the specified type of data, and returns it as a QWidget.

See also:
registerEditor().


valuePropertyName

public QByteArray valuePropertyName(int type)
Returns the property name used to access data for the given type of data.


defaultFactory

public static QItemEditorFactory defaultFactory()
Returns the default item editor factory.

See also:
setDefaultFactory().


setDefaultFactory

public static void setDefaultFactory(QItemEditorFactory factory)
Sets the default item editor factory to the given factory. Both new and existing delegates will use the new factory.

See also:
defaultFactory().