Kexi API Documentation (2.0 alpha)

KexiFormDataItemInterface Class Reference

#include <kexiformdataiteminterface.h>

Inheritance diagram for KexiFormDataItemInterface:

KexiDataItemInterface KexiDBAutoField KexiDBCheckBox KexiDBDateEdit KexiDBDateTimeEdit KexiDBDoubleSpinBox KexiDBForm KexiDBImageBox KexiDBIntSpinBox KexiDBLabel KexiDBLineEdit KexiDBTextEdit KexiDBTimeEdit List of all members.

Detailed Description

An interface for declaring form widgets to be data-aware.

Definition at line 32 of file kexiformdataiteminterface.h.

Public Member Functions

 KexiFormDataItemInterface ()
virtual ~KexiFormDataItemInterface ()
QString dataSource () const
void setDataSource (const QString &ds)
 Sets the name of the data source for this widget.
QCString dataSourceMimeType () const
void setDataSourceMimeType (const QCString &ds)
virtual void setDisplayDefaultValue (QWidget *widget, bool displayDefaultValue)
virtual bool hasDisplayedDefaultValue () const
virtual QWidgetwidget ()
virtual void setInvalidState (const QString &displayText)=0
virtual void setReadOnly (bool readOnly)=0
virtual KexiDB::Fieldfield () const
virtual KexiDB::QueryColumnInfocolumnInfo () const
virtual void setColumnInfo (KexiDB::QueryColumnInfo *cinfo)
virtual void setVisibleColumnInfo (KexiDB::QueryColumnInfo *cinfo)
virtual KexiDB::QueryColumnInfovisibleColumnInfo () const
virtual void hideWidget ()
virtual void showWidget ()
virtual void undoChanges ()
void cancelEditor ()
virtual bool keyPressed (QKeyEvent *ke)

Protected Attributes

QString m_dataSource
QCString m_dataSourceMimeType
KexiDB::QueryColumnInfom_columnInfo
KexiDisplayUtils::DisplayParametersm_displayParametersForEnteredValue
 used in setDisplayDefaultValue()
KexiDisplayUtils::DisplayParametersm_displayParametersForDefaultValue
 used in setDisplayDefaultValue()
bool m_displayDefaultValue: 1
 used by setDisplayDefaultValue()

Friends

class KexiDBAutoField


Constructor & Destructor Documentation

KexiFormDataItemInterface::KexiFormDataItemInterface  ) 
 

Definition at line 25 of file kexiformdataiteminterface.cpp.

KexiFormDataItemInterface::~KexiFormDataItemInterface  )  [virtual]
 

Definition at line 34 of file kexiformdataiteminterface.cpp.

References m_displayParametersForDefaultValue, and m_displayParametersForEnteredValue.


Member Function Documentation

void KexiFormDataItemInterface::cancelEditor  ) 
 

Definition at line 62 of file kexiformdataiteminterface.cpp.

References KexiFormScrollView::cancelEditor().

Referenced by KexiDBTextEdit::undo(), and KexiDBLineEdit::undo().

virtual KexiDB::QueryColumnInfo* KexiFormDataItemInterface::columnInfo  )  const [inline, virtual]
 

Returns:
database column information for this item

Implements KexiDataItemInterface.

Definition at line 90 of file kexiformdataiteminterface.h.

Referenced by KexiFormView::afterSwitchFrom(), KexiDBAutoField::createEditor(), KexiFormDataProvider::fillDataItems(), KexiDBTextWidgetInterface::paint(), KexiDBAutoField::setAutoCaption(), KexiDBAutoField::setFieldCaptionInternal(), KexiDBComboBox::setVisibleColumnInfo(), and KexiDBImageBox::updateActionStrings().

QString KexiFormDataItemInterface::dataSource  )  const [inline]
 

Returns:
the name of the data source for this widget. Data source usually means here a table or query, a field name or an expression.

Reimplemented in KexiDBAutoField, KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Definition at line 40 of file kexiformdataiteminterface.h.

Referenced by KexiFormView::afterSwitchFrom(), KexiDBTimeEdit::dataSource(), KexiDBTextEdit::dataSource(), KexiDBLineEdit::dataSource(), KexiDBLabel::dataSource(), KexiDBIntSpinBox::dataSource(), KexiDBImageBox::dataSource(), KexiDBForm::dataSource(), KexiDBDoubleSpinBox::dataSource(), KexiDBDateTimeEdit::dataSource(), KexiDBDateEdit::dataSource(), KexiDBCheckBox::dataSource(), KexiDBAutoField::dataSource(), KexiFormDataProvider::fillDataItems(), KexiFormDataProvider::invalidateDataSources(), KexiFormDataProvider::setMainDataSourceWidget(), KexiDBForm::updateReadOnlyFlags(), and KexiDBForm::updateTabStopsOrder().

QCString KexiFormDataItemInterface::dataSourceMimeType  )  const [inline]
 

Returns:
the mime type of the data source for this widget. Data source mime type means here types like "kexi/table" or "kexi/query" in.the data source is set to object (as within form or subform) or is empty if the data source is set to table field or query column.

Reimplemented in KexiDBAutoField, KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Definition at line 50 of file kexiformdataiteminterface.h.

Referenced by KexiDBTimeEdit::dataSourceMimeType(), KexiDBTextEdit::dataSourceMimeType(), KexiDBLineEdit::dataSourceMimeType(), KexiDBLabel::dataSourceMimeType(), KexiDBIntSpinBox::dataSourceMimeType(), KexiDBImageBox::dataSourceMimeType(), KexiDBForm::dataSourceMimeType(), KexiDBDoubleSpinBox::dataSourceMimeType(), KexiDBDateTimeEdit::dataSourceMimeType(), KexiDBDateEdit::dataSourceMimeType(), KexiDBCheckBox::dataSourceMimeType(), and KexiDBAutoField::dataSourceMimeType().

KexiDB::Field * KexiFormDataItemInterface::field  )  const [virtual]
 

Returns:
database column information for this item

Implements KexiDataItemInterface.

Reimplemented in KexiDBComboBox.

Definition at line 47 of file kexiformdataiteminterface.cpp.

References KexiDB::QueryColumnInfo::field, and m_columnInfo.

Referenced by KexiDBComboBox::field(), and KexiDBAutoField::setWidgetType().

virtual bool KexiFormDataItemInterface::hasDisplayedDefaultValue  )  const [inline, virtual]
 

Returns:
true if default value is displayed for this item.

Definition at line 66 of file kexiformdataiteminterface.h.

Referenced by KexiFormDataProvider::fillDataItems().

virtual void KexiFormDataItemInterface::hideWidget  )  [inline, virtual]
 

Does nothing, because within forms, widgets are always visible.

Reimplemented from KexiDataItemInterface.

Definition at line 107 of file kexiformdataiteminterface.h.

virtual bool KexiFormDataItemInterface::keyPressed QKeyEvent *  ke  )  [inline, virtual]
 

Reimplemented in KexiDBAutoField, KexiDBComboBox, KexiDBImageBox, and KexiDBLineEdit.

Definition at line 132 of file kexiformdataiteminterface.h.

Referenced by KexiDBForm::eventFilter(), and KexiDBAutoField::keyPressed().

virtual void KexiFormDataItemInterface::setColumnInfo KexiDB::QueryColumnInfo cinfo  )  [inline, virtual]
 

Used internally to set database column information. Reimplement if you need to do additional actions, e.g. set data validator based on field type. Don't forget about calling superclass implementation.

Implements KexiDataItemInterface.

Reimplemented in KexiDBAutoField, KexiDBComboBox, KexiDBImageBox, KexiDBLabel, KexiDBLineEdit, and KexiDBTextEdit.

Definition at line 96 of file kexiformdataiteminterface.h.

Referenced by KexiFormDataProvider::invalidateDataSources(), KexiDBTextEdit::setColumnInfo(), KexiDBLineEdit::setColumnInfo(), KexiDBLabel::setColumnInfo(), KexiDBImageBox::setColumnInfo(), KexiDBComboBox::setColumnInfo(), KexiDBAutoField::setColumnInfo(), and KexiDBAutoField::setColumnInfoInternal().

void KexiFormDataItemInterface::setDataSource const QString ds  )  [inline]
 

Sets the name of the data source for this widget.

Data source usually means here a table or query or field name name.

Reimplemented in KexiDBAutoField, KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Definition at line 44 of file kexiformdataiteminterface.h.

Referenced by KexiDBTimeEdit::setDataSource(), KexiDBTextEdit::setDataSource(), KexiDBLineEdit::setDataSource(), KexiDBLabel::setDataSource(), KexiDBIntSpinBox::setDataSource(), KexiDBImageBox::setDataSource(), KexiDBForm::setDataSource(), KexiDBDoubleSpinBox::setDataSource(), KexiDBDateTimeEdit::setDataSource(), KexiDBDateEdit::setDataSource(), KexiDBCheckBox::setDataSource(), and KexiDBAutoField::setDataSource().

void KexiFormDataItemInterface::setDataSourceMimeType const QCString &  ds  )  [inline]
 

Sets the mime type of the data source for this widget. Data source usually means here a "kexi/table" or "kexi/query".

See also:
dataSourceMimeType()

Reimplemented in KexiDBAutoField, KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Definition at line 55 of file kexiformdataiteminterface.h.

Referenced by KexiDBTimeEdit::setDataSourceMimeType(), KexiDBTextEdit::setDataSourceMimeType(), KexiDBLineEdit::setDataSourceMimeType(), KexiDBLabel::setDataSourceMimeType(), KexiDBIntSpinBox::setDataSourceMimeType(), KexiDBImageBox::setDataSourceMimeType(), KexiDBForm::setDataSourceMimeType(), KexiDBDoubleSpinBox::setDataSourceMimeType(), KexiDBDateTimeEdit::setDataSourceMimeType(), KexiDBDateEdit::setDataSourceMimeType(), KexiDBCheckBox::setDataSourceMimeType(), and KexiDBAutoField::setDataSourceMimeType().

void KexiFormDataItemInterface::setDisplayDefaultValue QWidget widget,
bool  displayDefaultValue
[virtual]
 

If displayDefaultValue is true, the value set by KexiDataItemInterface::setValue() is displayed in a special way. Used by KexiFormDataProvider::fillDataItems(). widget is equal to 'this'. You can reimplement this in the widget. Always call the superclass' implementation. setDisplayDefaultValue(.., false) is called in KexiFormScrollView::valueChanged() as a response on data change performed by user.

Reimplemented in KexiDBAutoField, KexiDBCheckBox, KexiDBLineEdit, and KexiDBTextEdit.

Definition at line 52 of file kexiformdataiteminterface.cpp.

References KexiDisplayUtils::initDisplayForDefaultValue(), m_displayDefaultValue, m_displayParametersForDefaultValue, and m_displayParametersForEnteredValue.

Referenced by KexiFormDataProvider::fillDataItems(), KexiDBTextEdit::setDisplayDefaultValue(), KexiDBLineEdit::setDisplayDefaultValue(), KexiDBCheckBox::setDisplayDefaultValue(), and KexiDBAutoField::setDisplayDefaultValue().

virtual void KexiFormDataItemInterface::setInvalidState const QString displayText  )  [pure virtual]
 

Sets 'invalid' state, e.g. a text editor widget should display text displayText and become read only to prevent entering data, because updating at the database backend is not available. displayText is usually set to something i18n'd like "#NAME?". Note: that even widgets that usualy do not display texts (e.g. pixmaps) should display displayText too.

Implemented in KexiDBAutoField, KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Referenced by KexiFormDataProvider::invalidateDataSources().

virtual void KexiFormDataItemInterface::setReadOnly bool  readOnly  )  [pure virtual]
 

Changes 'read only' flag, for this widget. Typically this flag can be passed to a widget itself, e.g. KLineEdit::setReadOnly(bool).

Implemented in KexiDBAutoField, KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Referenced by KexiDBAutoField::setReadOnly(), and KexiDBForm::updateReadOnlyFlags().

virtual void KexiFormDataItemInterface::setVisibleColumnInfo KexiDB::QueryColumnInfo cinfo  )  [inline, virtual]
 

Used internally to set visible database column information. Reimplemented in KexiDBComboBox: except for combo box, this does nothing.

Reimplemented in KexiDBComboBox.

Definition at line 100 of file kexiformdataiteminterface.h.

Referenced by KexiFormDataProvider::invalidateDataSources().

virtual void KexiFormDataItemInterface::showWidget  )  [inline, virtual]
 

Does nothing, because within forms, widgets are always visible.

Reimplemented from KexiDataItemInterface.

Definition at line 110 of file kexiformdataiteminterface.h.

void KexiFormDataItemInterface::undoChanges  )  [virtual]
 

Undoes changes made to this item - just resets the widget to original value. Note: This is internal method called by KexiFormScrollView::cancelEditor(). To cancel editing of the widget's data from the widget's code, use KexiFormDataItemInterface::cancelEditor(). Reimplemented in KexiDBComboBox to also revert the visible value (i.e. text) to the original state.

Reimplemented in KexiDBComboBox.

Definition at line 40 of file kexiformdataiteminterface.cpp.

References KexiDataItemInterface::setValueInternal().

Referenced by KexiFormScrollView::cancelEditor(), and KexiDBComboBox::undoChanges().

virtual KexiDB::QueryColumnInfo* KexiFormDataItemInterface::visibleColumnInfo  )  const [inline, virtual]
 

Returns:
visible database column information for this item. Except for combo box, this is exactly the same as columnInfo().

Reimplemented in KexiDBComboBox.

Definition at line 104 of file kexiformdataiteminterface.h.

References KexiDataItemInterface::columnInfo().

Referenced by KexiDBAutoField::createEditor(), KexiDBAutoField::setFieldTypeInternal(), and KexiDBAutoField::setWidgetType().

virtual QWidget* KexiFormDataItemInterface::widget  )  [inline, virtual]
 

Convenience function: casts this item to a QWidget. Can return 0 if the item is not a QWidget-derived object.

Implements KexiDataItemInterface.

Reimplemented in KexiDBCheckBox, KexiDBDateEdit, KexiDBDateTimeEdit, KexiDBDoubleSpinBox, KexiDBForm, KexiDBImageBox, KexiDBIntSpinBox, KexiDBLabel, KexiDBLineEdit, KexiDBTextEdit, and KexiDBTimeEdit.

Definition at line 70 of file kexiformdataiteminterface.h.


Friends And Related Function Documentation

friend class KexiDBAutoField [friend]
 

Definition at line 142 of file kexiformdataiteminterface.h.


Member Data Documentation

KexiDB::QueryColumnInfo* KexiFormDataItemInterface::m_columnInfo [protected]
 

Definition at line 137 of file kexiformdataiteminterface.h.

Referenced by field(), KexiDBTextEdit::setColumnInfo(), KexiDBTextEdit::setValueInternal(), KexiDBLineEdit::setValueInternal(), KexiDBLineEdit::value(), KexiDBLineEdit::valueIsEmpty(), and KexiDBLineEdit::valueIsValid().

QString KexiFormDataItemInterface::m_dataSource [protected]
 

Definition at line 132 of file kexiformdataiteminterface.h.

QCString KexiFormDataItemInterface::m_dataSourceMimeType [protected]
 

Definition at line 136 of file kexiformdataiteminterface.h.

bool KexiFormDataItemInterface::m_displayDefaultValue [protected]
 

used by setDisplayDefaultValue()

Definition at line 140 of file kexiformdataiteminterface.h.

Referenced by setDisplayDefaultValue().

KexiDisplayUtils::DisplayParameters* KexiFormDataItemInterface::m_displayParametersForDefaultValue [protected]
 

used in setDisplayDefaultValue()

Definition at line 139 of file kexiformdataiteminterface.h.

Referenced by setDisplayDefaultValue(), KexiDBTextEdit::setDisplayDefaultValue(), KexiDBLineEdit::setDisplayDefaultValue(), KexiDBCheckBox::setDisplayDefaultValue(), and ~KexiFormDataItemInterface().

KexiDisplayUtils::DisplayParameters* KexiFormDataItemInterface::m_displayParametersForEnteredValue [protected]
 

used in setDisplayDefaultValue()

Definition at line 138 of file kexiformdataiteminterface.h.

Referenced by setDisplayDefaultValue(), KexiDBTextEdit::setDisplayDefaultValue(), KexiDBLineEdit::setDisplayDefaultValue(), KexiDBCheckBox::setDisplayDefaultValue(), and ~KexiFormDataItemInterface().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for Kexi 2.0 alpha.
Documentation copyright © 2002-2007 the Kexi Team.
Generated on Tue Apr 1 20:50:01 2008 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003