Ananas Library 0.9.5
Класс aWidget

Базовый класс для визуальных объектов. Наследует QWidget. Подробнее...

#include <awidget.h>

Граф наследования:aWidget:
wCatalogue wDocument wField wGroupTree wJournal wReport wDBField

Открытые слоты

virtual QVariant value (const QString &name)
 
virtual QString value () const
 

Сигналы

void setData (QWidget *, aCfg *)
 
void getData (QWidget *)
 
void getMd (aCfg **)
 
void valueChanged (const QString &, const QVariant &)
 
void valueChanged (const QString &, const QVariant &, const QString &)
 
void changeObj (const QString &)
 
void changeObjId (const Q_ULLONG)
 
void keyPressed (QKeyEvent *e)
 

Открытые члены

 aWidget (QWidget *parent=0, const char *name=0, WFlags fl=0)
 
 aWidget (const QString &oname, aDatabase *adb, QWidget *parent=0, const char *name=0, WFlags fl=0)
 
 aWidget (aCfgItem context, aDatabase *adb, QWidget *parent=0, const char *name=0, WFlags fl=0)
 
virtual bool checkStructure ()
 
virtual void initObject (aDatabase *adb)
 
virtual void widgetEditor ()
 
virtual QDialog * createEditor (QWidget *parent)
 
virtual QToolBar * createToolBar (QMainWindow *parent)
 
virtual aObjectcreateDBObject (aCfgItem obj, aDatabase *)
 
virtual QString displayString ()
 
void init (aDatabase *adb)
 
bool getOpenEditor () const
 
void setOpenEditor (bool)
 
bool isInited ()
 
virtual bool isContainer ()
 
void setInited (bool flag)
 
aCfgItem * getMDObject ()
 
void setMDObject (aCfgItem object)
 
aSQLTable * table (const QString &name="")
 
void setObjectData (QWidget *object, aCfg *md)
 
void getObjectData (QWidget *object)
 
aCfggetMd ()
 
virtual Q_ULLONG uid ()
 
virtual ERR_Code New ()
 
virtual ERR_Code Update ()
 
virtual ERR_Code TurnOn ()
 
virtual ERR_Code Select (Q_ULLONG id)
 
aObjectdataObject ()
 
virtual Q_ULLONG docId ()
 
int formMode () const
 
virtual void setFormMode (int mode)
 
virtual QString getFieldName () const
 
int getId () const
 
void setId (int fn)
 
virtual QString textValue ()
 
virtual void setValue (const QString &)
 
virtual int setValue (const QString &name, const QVariant &value)
 
virtual int setObjValue (const QString &nameWidget, aObject *value)
 
virtual void SetReadOnly (bool)
 
virtual int Refresh ()
 
QWidget * Widget (QString name, bool onlyMyWidgets=true)
 
virtual aDataFieldgetAttribute (const QString &name)
 
virtual int setAttribute (const QString &name, const aDataField *value)
 

Открытые статические члены

static void widgetEditor (QWidget *object, QDialog *editor)
 
static aWidgetparentContainer (QWidget *w)
 
static aFormparentForm (QWidget *w)
 
static QString widgetName (QWidget *w)
 
static QWidget * Widget (QWidget *owner, QString name)
 

Открытые атрибуты

aDatabasedb
 
aCfgmd
 
aEngineengine
 

Защищенные члены

virtual void updateProp ()
 
virtual void keyPressEvent (QKeyEvent *e)
 

Защищенные данные

aObjectdbobj
 

Свойства

int Id
 
bool openEditor
 
int FormMode
 

Подробное описание

Базовый класс для визуальных объектов. Наследует QWidget.

От него наследуют свойства и методы такие визуальные объекты как контейнеры wDocument, wJournal, wCatalog, wDocument, wReport и виджеты wField, wDBField.

Конструктор(ы)

◆ aWidget() [1/3]

aWidget::aWidget ( QWidget * parent = 0,
const char * name = 0,
WFlags fl = 0 )

Конструктор, создающий абстрактный объект. Абстрактность в данном случае означает отстутствие привязки к базе данных.
Вызывает конструктор базового класса QWidget.

Аргументы
parent- указатель на родительский виджет.
name- имя создаваемого объекта.
fl- флаги используемые при создании виджета. Передаются в конструктор базового класса.

Используется в setObjValue(), SetReadOnly(), setValue(), Update(), value(), wCatalogue::wCatalogue(), wDocument::wDocument() и wField::wField().

◆ aWidget() [2/3]

aWidget::aWidget ( const QString & itemname,
aDatabase * adb,
QWidget * parent = 0,
const char * name = 0,
WFlags fl = 0 )

Конструктор, использующий для создания объекта имя элемента метаданных.
У класса есть также конструктор, использующий для создания объекта ссылку на объект с описанием элемента метаданных.

Аргументы
itemname- имя элемента метаданных.
adb- ссылка на объект доступа к базе данных.
parent- указатель на родительский виджет (передается в конструктор базового класса).
name- имя создаваемого объекта (передается в конструктор базового класса).
fl- флаги, используемые конструктором базового класса.

Перекрестные ссылки aDatabase::cfg, aCfg::find() и init().

◆ aWidget() [3/3]

aWidget::aWidget ( aCfgItem context,
aDatabase * adb,
QWidget * parent = 0,
const char * name = 0,
WFlags fl = 0 )

Конструктор, использующий для создания объекта ссылку на объект элемента метаданных.
У класса есть также конструктор, использующий для создания объекта имя элемента метаданных.

Аргументы
context- ссылка на объект элемента метаданных.
adb- ссылка на объект доступа к базе данных.
parent- указатель на родительский виджет (передается в конструктор базового класса).
name- имя создаваемого объекта (передается в конструктор базового класса).
fl- флаги, используемые конструктором базового класса.

Перекрестные ссылки init().

Методы

◆ checkStructure()

bool aWidget::checkStructure ( )
virtual

Ничего не делает. Возвращает false.

Переопределяется в wCatalogue, wDocument, wJournal и wReport.

◆ createDBObject()

aObject * aWidget::createDBObject ( aCfgItem obj,
aDatabase *  )
virtual

Пока ничего не делает. Возвращает 0;

Переопределяется в wCatalogue, wDocument, wGroupTree и wJournal.

Используется в initObject().

◆ createEditor()

QDialog * aWidget::createEditor ( QWidget * parent)
virtual

Возвращает значение свойства vName.

Устанавливает значение свойства vName.

Ничего не делает. Возвращает 0.

Переопределяется в wCatalogue, wDBField, wDocument, wField, wGroupTree, wJournal и wReport.

◆ createToolBar()

QToolBar * aWidget::createToolBar ( QMainWindow * parent)
virtual

Пока ничего не делает. Возвращает 0;

Переопределяется в wCatalogue, wGroupTree и wJournal.

Используется в aForm::initContainer().

◆ displayString()

QString aWidget::displayString ( )
virtual

Переопределяется в wDocument.

◆ getMd()

aCfg * aWidget::getMd ( )

Возвращает объект конфигурации для виджета верхнего уровня.

Перекрестные ссылки getMd().

Используется в getMd() и wDBField::init().

◆ getObjectData()

void aWidget::getObjectData ( QWidget * object)

Посылает сигнал getData( object ).

◆ init()

void aWidget::init ( aDatabase * adb)

Если объект не был проинициализирован, вызывает initObject(adb).

Перекрестные ссылки initObject().

Используется в aWidget(), aWidget() и aForm::initContainer().

◆ initObject()

void aWidget::initObject ( aDatabase * adb)
virtual

Инизиализирует созданный объект. Необходимо выполнить setId(id), где id идентификатор обекта в конфигурации.

Аргументы
adb- объект доступа к базе данных.

Переопределяется в wCatalogue, wDBField, wDocument, wGroupTree, wJournal и wReport.

Перекрестные ссылки createDBObject() и aLog::print().

Используется в aEditorFactory::createEditor(), init(), wCatalogue::initObject(), wDBField::initObject(), wDocument::initObject(), wGroupTree::initObject(), wJournal::initObject() и wReport::initObject().

◆ isContainer()

bool aWidget::isContainer ( )
virtual

Переопределяется в wDocument.

◆ keyPressEvent()

void aWidget::keyPressEvent ( QKeyEvent * e)
protectedvirtual

Обрабатывает события при нажатии кнопок клавиатуры.

Переопределяется в wGroupTree.

Используется в wGroupTree::keyPressEvent().

◆ New()

ERR_Code aWidget::New ( )
virtual

Создает новый объект для работы с записями базы данных. Объект создается испоьлзуя виртуальную функцию aObject::New() объекта aObject и его потомков.

Возвращает
код ошибки.

Переопределяется в wDocument и wReport.

Перекрестные ссылки aLog::print().

Используется в wDocument::New().

◆ Select()

ERR_Code aWidget::Select ( Q_ULLONG id)
virtual

Выбирает объект в базе данных.

Аргументы
id- id объекта в базе данных.
Возвращает
код ошибки.

Переопределяется в wDocument и wReport.

Перекрестные ссылки aLog::print().

Используется в wDocument::Select().

◆ setObjectData()

void aWidget::setObjectData ( QWidget * object,
aCfg * md )

Посылает сигнал setData( object, md ).

◆ setObjValue()

int aWidget::setObjValue ( const QString & nameWidget,
aObject * value )
virtual

Установка значения виджетов формы сложного типа. Поддерживаемые типы виджетов: wField, wDBField.

Аргументы
nameWidget- Имя виджета.
value- Значение виджета.

Перекрестные ссылки aWidget(), aLog::print() и value().

◆ setOpenEditor()

void aWidget::setOpenEditor ( bool fn)

Вызывает редактор свойств, если значение передаваемого параметра равно true. Редактор свойств предоставляет пользователю диалог задания значений свойств виджета. Например, для такого виджета как wDBField редактор свойств позволяет выбрать элемент метаданных описывающий поле базы данных, значение которого будет редактироваться с использованием виджета. То есть осуществить привязку данных (data bindings).

Аргументы
fn- параметр, значение которого должно быть равно true, для того чтобы был вызван редактор свойств.

◆ SetReadOnly()

void aWidget::SetReadOnly ( bool status)
virtual

Устанавливает флаг толко чтение. Когда установлен этот флаг, запрещается редактирование полей виджета, и сохранение изменений в базу.

Аргументы
status- Новое значение флага только чтение.

Переопределяется в wField.

Перекрестные ссылки aWidget().

◆ setValue() [1/2]

void aWidget::setValue ( const QString & value)
virtual

Функция установки значения виджетов формы. Должна быть реализована в наследующем классе.

Аргументы
value- Значение виджета. Имя у виджета уже есть в момент вызова этой функции.

Переопределяется в wField.

Перекрестные ссылки value().

◆ setValue() [2/2]

int aWidget::setValue ( const QString & nameWidget,
const QVariant & value )
virtual

Установка значения виджетов формы. Поддерживаемые типы виджетов: wField, wDBField, QPushButton, QLabel, QLineEdit, QCheckBox.

Аргументы
nameWidget- Имя виджета.
value- Значение виджета.

Перекрестные ссылки aWidget(), aLog::print() и value().

◆ uid()

Q_ULLONG aWidget::uid ( )
virtual

Возвращает id объекта базы данных. Возвращает id текущей записи в базе данных или 0 если обект для работы с базой не создан. Id является уникальным и идентифицирует конкретный экземпляр обекта.

Возвращает
id текущей записи в базе данных.

Переопределяется в wReport.

Перекрестные ссылки aLog::print().

Используется в wDBTable::init() и wDocument::New().

◆ Update()

ERR_Code aWidget::Update ( )
virtual

Обновляет данные по данному виджету в базе

Переопределяется в wReport.

Перекрестные ссылки aWidget(), aLog::print() и value().

Используется в aForm::UpdateDB().

◆ value [1/2]

virtual QString aWidget::value ( ) const
inlinevirtualslot

Переопределяется в wField.

◆ value [2/2]

QVariant aWidget::value ( const QString & nameWidget)
virtualslot

Возвращает значение поля. Возвращает значение поля с именем name.

Аргументы
name- имя поля в конфигурации.
Возвращает
значение поля.

Перекрестные ссылки aWidget(), aLog::print() и value().

Используется в setObjValue(), setValue(), setValue(), Update(), value() и wCatalogue::valueChanged().


Объявления и описания членов классов находятся в файлах: