kexi

KFormDesigner::WidgetInfo Class Reference

#include <widgetfactory.h>

Inheritance diagram for KFormDesigner::WidgetInfo:

KexiDataAwareWidgetInfo List of all members.

Detailed Description

This class holds properties of widget classes provided by a factory.

Definition at line 64 of file widgetfactory.h.


Public Types

typedef QPtrList< WidgetInfoList
typedef QAsciiDict< WidgetInfoDict

Public Member Functions

 WidgetInfo (WidgetFactory *f)
 WidgetInfo (WidgetFactory *f, const char *parentFactoryName, const char *inheritedClassName=0)
virtual ~WidgetInfo ()
QString pixmap () const
QCString className () const
QString namePrefix () const
QString name () const
QString description () const
QString includeFileName () const
QValueList< QCString > alternateClassNames () const
QString savingName () const
WidgetFactoryfactory () const
void setPixmap (const QString &p)
void setClassName (const QCString &s)
void setName (const QString &n)
void setNamePrefix (const QString &n)
void setDescription (const QString &desc)
void setIncludeFileName (const QString &name)
void addAlternateClassName (const QCString &alternateName, bool override=false)
bool isOverriddenClassName (const QCString &alternateName) const
void setSavingName (const QString &saveName)
void setAutoSyncForProperty (const char *propertyName, tristate flag)
tristate autoSyncForProperty (const char *propertyName) const
QCString parentFactoryName () const
WidgetInfoinheritedClass () const
void setCustomTypeForProperty (const char *propertyName, int type)
int customTypeForProperty (const char *propertyName) const

Protected Attributes

QCString m_parentFactoryName
QCString m_inheritedClassName
WidgetInfom_inheritedClass

Friends

class WidgetLibrary

Member Function Documentation

void WidgetInfo::addAlternateClassName const QCString &  alternateName,
bool  override = false
 

Sets alternate names for this class. If this name is found when loading a .ui file, the className() will be used instead. It allows to support both KDE and Qt versions of widget, without duplicating code. As a rule, className() should always return a class name which is inherited from alternate class. For example KListView class has alternate QListView class.

override parameter overrides class name of a widget, even if it was implemented in other factory. By default it's set to false, what means that no other class is overridden by this widget class if there is already a class implementing it (no matter in which factory). By forced overriding existing class with other - custom, user will be able to see more or less properties and experience different behaviour. For example, in Kexi application, KLineEdit class contains additional "datasource" property for binding to database sources.

Definition at line 84 of file widgetfactory.cpp.

tristate WidgetInfo::autoSyncForProperty const char *  propertyName  )  const
 

Returns:
autoSync override value (true or false) for propertyName. If cancelled value is returned, there is no overriding (the default).

Definition at line 119 of file widgetfactory.cpp.

QCString KFormDesigner::WidgetInfo::className  )  const [inline]
 

Returns:
the class name of a widget e.g. 'QLineEdit'

Definition at line 80 of file widgetfactory.h.

int WidgetInfo::customTypeForProperty const char *  propertyName  )  const
 

Returns:
custom type for property propertyName. If no specific custom type has been assigned, KoProperty::Auto is returned.
See also:
setCustomTypeForProperty()

Definition at line 137 of file widgetfactory.cpp.

bool WidgetInfo::isOverriddenClassName const QCString &  alternateName  )  const
 

Returns:
true is a class alternateName is defined as alternate name with 'override' flag set to true, using addAlternateClassName(). If this flag is set to false (the default) or there's no such alternate class name defined.

Definition at line 98 of file widgetfactory.cpp.

QString KFormDesigner::WidgetInfo::name  )  const [inline]
 

Returns:
the real name e.g. 'Line Edit', showed eg in ObjectTreeView

Definition at line 87 of file widgetfactory.h.

QString KFormDesigner::WidgetInfo::namePrefix  )  const [inline]
 

Returns:
the name used to name widget, that will appear eg in scripts (must not contain spaces nor non-latin1 characters)

Definition at line 84 of file widgetfactory.h.

QString KFormDesigner::WidgetInfo::pixmap  )  const [inline]
 

Returns:
a pixmap associated with the widget

Definition at line 77 of file widgetfactory.h.

void WidgetInfo::setAutoSyncForProperty const char *  propertyName,
tristate  flag
 

Sets autoSync flag for property propertyName. This allows to override autoSync flag for certain widget's property, because e.g. KoProperty::Editor can have autoSync flag set to false or true, but not all properties have to comply with that. flag equal to cancelled value means there is no overriding (the default).

Definition at line 103 of file widgetfactory.cpp.

void WidgetInfo::setCustomTypeForProperty const char *  propertyName,
int  type
 

Sets custom type type for property propertyName. This allows to override default type, especially when custom property and custom property editor item has to be used.

Definition at line 127 of file widgetfactory.cpp.

void KFormDesigner::WidgetInfo::setIncludeFileName const QString &  name  )  [inline]
 

Sets the C++ include file corresponding to this class, that uic will need to add when creating the file. You don't have to set this for Qt std widgets.

Definition at line 103 of file widgetfactory.h.

void KFormDesigner::WidgetInfo::setSavingName const QString &  saveName  )  [inline]
 

Sets the name that will be written in the .ui file when saving. This name must be one of alternate names (or loading will be impossible).

On form data saving to XML .ui format, saveName is used instead, so .ui format is not broken and still usable with other software as Qt Designer. Custom properties are saved as well with 'stdset' attribute set to 0.

Definition at line 135 of file widgetfactory.h.


Member Data Documentation

QCString KFormDesigner::WidgetInfo::m_inheritedClassName [protected]
 

Used for inheriting widgets between factories.

Definition at line 163 of file widgetfactory.h.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys