#include <wdbtable.h>
Открытые слоты | |
| QValueList< int > | getBindList () |
| void | setWFieldEditor () |
| void | setAvailableTables () |
| void | lineUpdate (QSql::Op mode) |
| void | newFilter (const QString &) |
| void | newDataId (const Q_ULLONG) |
| QVariant | Value (const QString &colname) |
| bool | searchColumn (const QString &text, bool FromCurrent=FALSE, bool Forward=TRUE) |
| void | searchOpen (const QString &text="") |
| void | searchClose () |
Сигналы | |
| void | saveLine (QSqlRecord *rec) |
| void | deleteLine (QSqlRecord *rec) |
| void | selected (Q_ULLONG uid) |
| void | selectRecord (Q_ULLONG) |
| void | updateCurr (int row, int col) |
| void | insertRequest () |
| void | updateRequest () |
| void | deleteRequest () |
| void | viewRequest () |
Открытые члены | |
| wDBTable (QString objtype, QWidget *parent=0, const char *name=0) | |
| virtual | ~wDBTable () |
| void | checkFields () |
| void | setFields (int numTable) |
| QStringList | getFields (int numTable, bool GetId=false) |
| QString | getFieldName (long idField) |
| QString | getFieldType (long idField) |
| int | getTableInd (int id) |
| int | getTableId (int ind) |
| void | init () |
| void | init (aDatabase *adb, aEngine *e=0) |
| void | OpenEditor () |
| QStringList | getDefFields () const |
| QStringList | getDefHeaders () const |
| QStringList | getColWidth () const |
| QStringList | getDefIdList () const |
| Q_ULLONG | getId () const |
| int | getTblInd () const |
| bool | getOpenEditor () const |
| int | getDefColWidth () const |
| void | setDefFields (QStringList lst) |
| void | setDefHeaders (QStringList lst) |
| void | setColWidth (QStringList lst) |
| void | setDefIdList (QStringList lst) |
| void | setId (Q_ULLONG fn) |
| void | setTblInd (int ind) |
| void | setOpenEditor (bool fn) |
| void | setDefColWidth (int fn) |
| QString | getEditFormName () const |
| void | setEditFormName (QString name) |
| QString | containerType () const |
| void | setContainerType (QString name) |
| QPixmap | systemIcon () |
| virtual int | Select (ANANAS_UID db_uid) |
Открытые атрибуты | |
| aCfg * | md |
| aDatabase * | db |
| aEngine * | engine |
| QStringList | list_available_tables |
| QStringList | fname |
| QStringList | hname |
| QStringList | colWidth |
| QStringList | idList |
| int | defColWidth |
| int | tableInd |
| aCfgItem | tables |
| QSqlCursor * | cur |
| bool | searchMode |
| QString | searchString |
| aSearchWidget * | searchWidget |
Защищенные слоты | |
| void | doubleClickEventHandler (int, int, int, const QPoint &) |
| virtual void | updateTableCellHandler (int, int) |
| void | dropped (QDropEvent *) |
Защищенные члены | |
| virtual QDragObject * | dragObject () |
| virtual void | paintField (QPainter *p, const QSqlField *field, const QRect &cr, bool selected) |
| QWidget * | beginUpdate (int row, int col, bool replace) |
| virtual bool | updateCurrent () |
| void | contentsContextMenuEvent (QContextMenuEvent *e) |
| virtual bool | deleteCurrent () |
| virtual void | keyPressEvent (QKeyEvent *e) |
| void | EditElement () |
| virtual void | activateNextCell () |
| virtual bool | beginInsert () |
| Переопределяем метод базового класса, осуществляющий вставку новой строки в таблицу. Наш метод будет всегда помещать новую строку в начале таблицы. | |
| virtual QSql::Confirm | confirmEdit (QSql::Op m) |
| Переопределяем метод базового класса, вызывающий диалог подтверждения. Переопределен только диалог подтверждения удаления. | |
Свойства | |
| Q_ULLONG | Id |
| int | DefaultColWidth |
| int | TableInd |
| QStringList | DefFields |
| QStringList | DefHeaders |
| QStringList | ColWidth |
| QStringList | DefIdList |
| QString | editFormName |
Друзья | |
| class | aForm |
Поддерживает редактирование журнала документов и таблицы элементов каталога.
| wDBTable::wDBTable | ( | QString | objtype, | |
| QWidget * | parent = 0, |
|||
| const char * | name = 0 | |||
| ) |
Конструктор. Задает значение ширины по умолчанию для столбца = 100.
Перекрестные ссылки init(), lineUpdate(), aLog::print() и updateTableCellHandler().
| wDBTable::~wDBTable | ( | ) | [virtual] |
Деструктор.
| void wDBTable::checkFields | ( | ) |
Функция проверяет свойства name, id, DefHeaders и ColWidth. Если находит ошибки в свойствах name или id, она выводит сообщение об этом, но не исправляет ошибки. Если находит ошибки в свойствах DefHeaders или ColWidth, то исправляет.
Перекрестные ссылки getFieldName() и aLog::print().
Используется в OpenEditor().
| void wDBTable::setFields | ( | int | idTable | ) |
Устанавливает свойства `DefFields', `DefHeaders', `ColWidth', `DefIdList' в значения, определенные в метаданных. Старые значения не сохраняются. Для документа используется idTable.
| idTable | (in) - id таблицы документа. Не используется для каталогов и журналов. |
Перекрестные ссылки aCfg::attr(), aCfg::countChild(), aCfg::find(), aCfg::findChild() и aCfg::objClass().
| QStringList wDBTable::getFields | ( | int | idTable, | |
| bool | GetId = false | |||
| ) |
Получение списка id или имен полей таблицы. Возвращаемое значение зависит от параметра GetId.
| idTable | (in) - id таблицы документа. Для каталога и журнала не используется. | |
| GetId | (ib) - |
Перекрестные ссылки aCfg::attr(), aCfg::countChild(), aCfg::find(), aCfg::findChild() и aCfg::objClass().
| QString wDBTable::getFieldName | ( | long | id | ) |
Получение имени поля.
| id | - идентификатор поля |
Перекрестные ссылки aCfg::attr() и aCfg::find().
Используется в checkFields().
| QString wDBTable::getFieldType | ( | long | id | ) |
Получение типа поля.
| id | - идентификатор поля |
Перекрестные ссылки aCfg::attr(), aCfg::find() и aCfg::objClass().
Используется в aEditorFactory::createEditor().
| int wDBTable::getTableInd | ( | int | id | ) |
Получение позиции таблицы в метаданных по ее id. Эта позиция совпадает с индексом таблицы в комбобоксе редактора свойств таблицы.
| id | (in) - id таблицы. Не используется в каталоге и журнале. |
Перекрестные ссылки aCfg::count(), aCfg::findChild(), aCfg::id() и aCfg::objClass().
| int wDBTable::getTableId | ( | int | numTable | ) |
Получение id таблицы по ее позиции в метаданных. Эта позиция совпадает с индексом таблицы в комбобоксе редактора свойств таблицы.
| numTable | (in) - Положение таблицы в метаданных. Не используется в каталоге и журнале. |
Перекрестные ссылки aCfg::findChild(), aCfg::id() и aCfg::objClass().
| void wDBTable::init | ( | ) |
Функция инициализации. Устанавливает объект метаданных и объект таблицы, к которому идет обращение для поиска полей или (в случае документа) таблиц
Перекрестные ссылки aCfg::find(), aCfg::findChild(), aWidget::getId(), aWidget::getMd() и aCfg::objClass().
Используется в wDBTable().
Инициализация виджета при загрузке в форму инжина.
Перекрестные ссылки aDatabase::cfg, aWidget::dataObject(), aWidget::getId(), aWidget::getMDObject(), newDataId(), aCfg::objClass(), aCfg::objTable(), aLog::print(), setWFieldEditor(), aWidget::table() и aWidget::uid().
| void wDBTable::OpenEditor | ( | ) |
Создает диалоговое окно редактора свойств.
Перекрестные ссылки checkFields() и setAvailableTables().
Используется в setOpenEditor().
| QStringList wDBTable::getDefFields | ( | ) | const |
Получение списка заданных полей.
Используется в aForm::ColIndex().
| QStringList wDBTable::getDefHeaders | ( | ) | const |
Получение списка заданных заголовков.
| QStringList wDBTable::getColWidth | ( | ) | const |
Получение списка заданных размеров столбцов.
| QStringList wDBTable::getDefIdList | ( | ) | const |
Получение списка заданных идентификаторов столбцов.
| Q_ULLONG wDBTable::getId | ( | ) | const |
Получение идентификатора документа метаданных, которому принадлежит виджет.
Используется в EditElement().
| int wDBTable::getTblInd | ( | ) | const |
Получение идентификатора текущей таблицы.
| bool wDBTable::getOpenEditor | ( | ) | const |
Всегда возвращает false.
| int wDBTable::getDefColWidth | ( | ) | const |
Получение размера столбца по умолчанию.
| void wDBTable::setDefFields | ( | QStringList | lst | ) |
Установка списка имен полей.
| void wDBTable::setDefHeaders | ( | QStringList | lst | ) |
Установка списка заголовков полей.
| void wDBTable::setColWidth | ( | QStringList | lst | ) |
Установка списка размеров столбцов.
| void wDBTable::setDefIdList | ( | QStringList | lst | ) |
Установка списка идентификаторов столбцов.
| void wDBTable::setId | ( | Q_ULLONG | fn | ) |
Установка идентификатора документа метаданных, которому принадлежит виджет.
Используется в newDataId().
| void wDBTable::setTblInd | ( | int | ind | ) |
Установка идентификатора текущей таблицы.
| void wDBTable::setOpenEditor | ( | bool | fn | ) |
Открывает окно редактора свойсв, если fn == true
Перекрестные ссылки OpenEditor().
| void wDBTable::setDefColWidth | ( | int | fn | ) |
Установка размера столбцов по умолчанию.
| QValueList< int > wDBTable::getBindList | ( | ) | [slot] |
Получение списка уже присутствующих в форме таблиц. Необходимо для того, чтобы одну таблицу не добавили два раза.
Используется в setAvailableTables().
| void wDBTable::setWFieldEditor | ( | ) | [slot] |
Устанавливает свой редактор ячейки таблицы (wField).
Перекрестные ссылки aEditorFactory::setMd().
Используется в init().
| void wDBTable::setAvailableTables | ( | ) | [slot] |
Заполняет внутренний список доступных таблиц, используя в качестве источника информации объект tables. Добавляет к имени уже забинденой таблицы звездочку(*).
Перекрестные ссылки aCfg::attr(), aCfg::countChild(), aCfg::find(), aCfg::findChild(), getBindList(), aCfg::id() и aCfg::objClass().
Используется в OpenEditor().
| void wDBTable::lineUpdate | ( | QSql::Op | mode | ) | [slot] |
Обработчик сигнала изменения строки. Генерирует сигналы deleteLine и saveLine.
Перекрестные ссылки deleteLine() и saveLine().
Используется в wDBTable().
| void wDBTable::newFilter | ( | const QString & | flt | ) | [slot] |
Слот обрабатывает ситуацию смены/установки идентификатора документа, устанавливая новый фильтр. Кроме переустановки фильта следует вызывать слот newDataId, для смены/установки значения идентификатора документа. Для журнала этого можно не делать.
| flt | - строка вида "idd=999", задающая условия отбора записей в таблицу по значению поля idd. |
| void wDBTable::newDataId | ( | const | Q_ULLONG | ) | [slot] |
| QVariant wDBTable::Value | ( | const QString & | colname | ) | [slot] |
Получение значения поля. Не реализовано.
Перекрестные ссылки aLog::print().
| void wDBTable::updateTableCellHandler | ( | int | r, | |
| int | c | |||
| ) | [protected, virtual, slot] |
Обрабатывает окончание редактирования ячейки таблицы.
Используется в wDBTable().
| void wDBTable::saveLine | ( | QSqlRecord * | rec | ) | [signal] |
Сигнал испускается после обновлении строки таблицы.
Используется в lineUpdate().
| void wDBTable::deleteLine | ( | QSqlRecord * | rec | ) | [signal] |
Сигнал испускается после удаления строки таблицы.
Используется в lineUpdate().
| void wDBTable::selected | ( | Q_ULLONG | uid | ) | [signal] |
Сигнал испускается после выбора документа.
Используется в keyPressEvent().
| void wDBTable::selectRecord | ( | Q_ULLONG | ) | [signal] |
Сигнал испускается после изменения строки.
| void wDBTable::updateCurr | ( | int | row, | |
| int | col | |||
| ) | [signal] |
Сигнал испускается после обновления ячейки с номером row, col.
Используется в deleteCurrent() и updateCurrent().
| void wDBTable::insertRequest | ( | ) | [signal] |
Сигналы от контекстного меню для присоединения к wJournal Если контейнер другого типа, то вызывается стандартное меню, и эти сигналы не испускаются.
Используется в contentsContextMenuEvent().
| void wDBTable::updateRequest | ( | ) | [signal] |
| void wDBTable::deleteRequest | ( | ) | [signal] |
| void wDBTable::viewRequest | ( | ) | [signal] |
| void wDBTable::paintField | ( | QPainter * | p, | |
| const QSqlField * | field, | |||
| const QRect & | cr, | |||
| bool | selected | |||
| ) | [protected, virtual] |
Переопределенная функция рисования поля таблицы. В типе DateTime не отображает время. Поддерживает вычисляемые поля.
| QWidget * wDBTable::beginUpdate | ( | int | row, | |
| int | col, | |||
| bool | replace | |||
| ) | [protected] |
Переопределяет функцию QDataTable. Выделяет текст в ячейке.
Перекрестные ссылки wField::selectAll().
| bool wDBTable::updateCurrent | ( | ) | [protected, virtual] |
Переопределяет функцию QDataTable. Испускает сигнал updateCurr().
Перекрестные ссылки updateCurr().
| void wDBTable::contentsContextMenuEvent | ( | QContextMenuEvent * | e | ) | [protected] |
Переопределяет функцию QDataTable. Если контейнер wJournal, может испускаеть сигналы insertRequest(), updateRequest(), deleteRequest(), viewRequest()
Перекрестные ссылки beginInsert(), deleteRequest(), insertRequest(), keyPressEvent(), updateRequest() и viewRequest().
| bool wDBTable::deleteCurrent | ( | ) | [protected, virtual] |
| void wDBTable::keyPressEvent | ( | QKeyEvent * | e | ) | [protected, virtual] |
Обрабатывает события при нажатии кнопок клавиатуры.
Перекрестные ссылки EditElement(), aLog::print() и selected().
Используется в contentsContextMenuEvent().
| void wDBTable::EditElement | ( | ) | [protected] |
Открывает форму по умолчанию для объекта контейнера и настраивает ее на работу с текущей строкой таблицы. Используется только в настраиваемом редакторе каталога.
Перекрестные ссылки getId() и aEngine::openForm().
Используется в keyPressEvent().
| void wDBTable::activateNextCell | ( | ) | [protected, virtual] |
Переопределяет функцию QDataTable. Отрабатывет после нажатия Enter в редактируемой ячейке. Перемещает фокус ввода на следующую ячейку.
1.5.5