Kexi API Documentation (2.0 alpha)

KexiQueryDesignerGuiEditor Class Reference

#include <kexiquerydesignerguieditor.h>

Inheritance diagram for KexiQueryDesignerGuiEditor:

KexiViewBase QWidget KexiActionProxy List of all members.

Detailed Description

Design view of the Query Designer.

Definition at line 59 of file kexiquerydesignerguieditor.h.

Public Slots

virtual void setFocus ()

Public Member Functions

 KexiQueryDesignerGuiEditor (KexiMainWindow *mainWin, QWidget *parent, const char *name=0)
virtual ~KexiQueryDesignerGuiEditor ()
KexiRelationWidgetrelationView () const
virtual QSize sizeHint () const

Protected Slots

void slotDragOverTableRow (KexiTableItem *item, int row, QDragMoveEvent *e)
void slotDroppedAtRow (KexiTableItem *item, int row, QDropEvent *ev, KexiTableItem *&newItem)
void slotNewItemAppendedForAfterDeletingInSpreadSheetMode ()
 Reaction on appending a new item after deleting one.
void slotTableAdded (KexiDB::TableSchema &t)
void slotTableHidden (KexiDB::TableSchema &t)
void slotBeforeCellChanged (KexiTableItem *item, int colnum, QVariant &newValue, KexiDB::ResultInfo *result)
 Called before cell change in tableview.
void slotRowInserted (KexiTableItem *item, uint row, bool repaint)
void slotTablePositionChanged (KexiRelationViewTableContainer *)
void slotAboutConnectionRemove (KexiRelationViewConnection *)
void slotTableFieldDoubleClicked (KexiDB::TableSchema *table, const QString &fieldName)
bool loadLayout ()
bool storeLayout ()
void showTablesForQuery (KexiDB::QuerySchema *query)
void showFieldsOrRelationsForQueryInternal (KexiDB::QuerySchema *query, bool showFields, bool showRelations, KexiDB::ResultInfo &result)
void showFieldsAndRelationsForQuery (KexiDB::QuerySchema *query, KexiDB::ResultInfo &result)
 convenience method equal to showFieldsOrRelationsForQueryInternal(query, true, true)
void showFieldsForQuery (KexiDB::QuerySchema *query, KexiDB::ResultInfo &result)
 convenience method equal to showFieldsOrRelationsForQueryInternal(query, true, false)
void showRelationsForQuery (KexiDB::QuerySchema *query, KexiDB::ResultInfo &result)
 convenience method equal to showFieldsOrRelationsForQueryInternal(query, false, true)
void addConnection (KexiDB::Field *masterField, KexiDB::Field *detailsField)
void slotPropertyChanged (KoProperty::Set &list, KoProperty::Property &property)
void slotNewItemStored (KexiPart::Item &)
void slotItemRemoved (const KexiPart::Item &item)
void slotItemRenamed (const KexiPart::Item &item, const QCString &oldName)

Protected Member Functions

void initTableColumns ()
 Called just once.
void initTableRows ()
 Called to have all rows empty.
virtual tristate beforeSwitchTo (int mode, bool &dontStore)
virtual tristate afterSwitchFrom (int mode)
virtual KexiDB::SchemaDatastoreNewData (const KexiDB::SchemaData &sdata, bool &cancel)
virtual tristate storeData (bool dontAsk=false)
void updateColumnsData ()
virtual KoProperty::Set * propertySet ()
KoProperty::Set * createPropertySet (int row, const QString &tableName, const QString &fieldName, bool newOne=false)
bool buildSchema (QString *errMsg=0)
KexiQueryPart::TempDatatempData () const
KexiTableItemcreateNewRow (const QString &tableName, const QString &fieldName, bool visible) const
KexiDB::BaseExprparseExpressionString (const QString &fullString, int &token, bool allowRelationalOperator)
QCString generateUniqueAlias () const
void updatePropertiesVisibility (KoProperty::Set &buf)

Friends

class KexiQueryView


Constructor & Destructor Documentation

KexiQueryDesignerGuiEditor::KexiQueryDesignerGuiEditor KexiMainWindow mainWin,
QWidget parent,
const char *  name = 0
 

Definition at line 141 of file kexiquerydesignerguieditor.cpp.

References KexiViewBase::addChildView(), COLUMN_ID_COLUMN, COLUMN_ID_CRITERIA, COLUMN_ID_SORTING, COLUMN_ID_TABLE, COLUMN_ID_VISIBLE, initTableColumns(), initTableRows(), KexiMainWindow::project(), KexiViewBase::setViewWidget(), slotAboutConnectionRemove(), slotBeforeCellChanged(), slotDragOverTableRow(), slotDroppedAtRow(), slotNewItemAppendedForAfterDeletingInSpreadSheetMode(), slotRowInserted(), slotTableAdded(), slotTableFieldDoubleClicked(), slotTableHidden(), and slotTablePositionChanged().

KexiQueryDesignerGuiEditor::~KexiQueryDesignerGuiEditor  )  [virtual]
 

Definition at line 202 of file kexiquerydesignerguieditor.cpp.


Member Function Documentation

void KexiQueryDesignerGuiEditor::addConnection KexiDB::Field masterField,
KexiDB::Field detailsField
[protected, slot]
 

Definition at line 763 of file kexiquerydesignerguieditor.cpp.

References SourceConnection::detailsField, SourceConnection::detailsTable, SourceConnection::masterField, SourceConnection::masterTable, KexiDB::Field::name(), and KexiDB::Field::table().

Referenced by showFieldsOrRelationsForQueryInternal().

tristate KexiQueryDesignerGuiEditor::afterSwitchFrom int  mode  )  [protected, virtual]
 

Todo:
load global query properties
Todo:
load global query properties

Reimplemented from KexiViewBase.

Definition at line 618 of file kexiquerydesignerguieditor.cpp.

References Kexi::DataViewMode, KexiViewBase::dirty(), initTableRows(), loadLayout(), KexiViewBase::m_dialog, KexiDialogBase::neverSaved(), Kexi::NoViewMode, KexiViewBase::parentDialog(), KexiViewBase::setDirty(), setFocus(), showFieldsAndRelationsForQuery(), showFieldsForQuery(), showTablesForQuery(), KexiDB::ResultInfo::success, tempData(), and Kexi::TextViewMode.

tristate KexiQueryDesignerGuiEditor::beforeSwitchTo int  mode,
bool &  dontStore
[protected, virtual]
 

called by KexiDialogBase::switchToViewMode() right before dialog is switched to new mode By default does nothing. Reimplement this if you need to do something before switching to this view.

Returns:
true if you accept or false if a error occupied and view shouldn't change If there is no error but switching should be just cancelled (probably after showing some info messages), you need to return cancelled. Set dontStore to true (it's false by default) if you want to avoid data storing by storeData() or storeNewData().

Reimplemented from KexiViewBase.

Definition at line 570 of file kexiquerydesignerguieditor.cpp.

References buildSchema(), cancelled, Kexi::DataViewMode, Kexi::DesignViewMode, KexiViewBase::dirty(), kexipluginsdbg, msgCannotSwitch_EmptyDesign(), KexiViewBase::parentDialog(), tempData(), and Kexi::TextViewMode.

bool KexiQueryDesignerGuiEditor::buildSchema QString errMsg = 0  )  [protected]
 

Builds query schema out of information provided by gui. The schema is stored in temp->query member. errMsg is optional error message returned.

Returns:
true on proper schema creation.

Definition at line 361 of file kexiquerydesignerguieditor.cpp.

References AND, KexiDB::OrderByColumnList::appendColumn(), KexiDB::OrderByColumnList::appendField(), KexiQueryPart::TempData::clearQuery(), COLUMN_ID_COLUMN, COLUMN_ID_TABLE, KexiDB::BaseExpr::debugString(), KexiDB::FieldList::field(), KexiDB::Field::isExpression(), KexiDB::Field::isQueryAsterisk(), KexiDBExpr_Logical, KexiDBExpr_Relational, kexipluginsdbg, kexipluginswarn, msgCannotSwitch_EmptyDesign(), KexiDB::Field::name(), parseExpressionString(), KexiQueryPart::TempData::query(), KexiQueryPart::TempData::registerTableSchemaChanges(), KexiRelationViewTableContainer::schema(), KexiQueryPart::TempData::setQuery(), tempData(), and KexiDB::QueryColumnInfo::visible.

Referenced by beforeSwitchTo(), storeData(), and storeNewData().

KexiTableItem * KexiQueryDesignerGuiEditor::createNewRow const QString tableName,
const QString fieldName,
bool  visible
const [protected]
 

Helper: allocates and initializes new table view's row. Doesn't insert it, just returns. tableName and fieldName shoudl be provided. visible flag sets value for "Visible" column.

Definition at line 1187 of file kexiquerydesignerguieditor.cpp.

References COLUMN_ID_COLUMN, COLUMN_ID_TABLE, and COLUMN_ID_VISIBLE.

Referenced by showFieldsOrRelationsForQueryInternal(), slotDroppedAtRow(), and slotTableFieldDoubleClicked().

KoProperty::Set * KexiQueryDesignerGuiEditor::createPropertySet int  row,
const QString tableName,
const QString fieldName,
bool  newOne = false
[protected]
 

Todo:
add table_field icon (add buff->addProperty(prop = new KexiProperty("this:iconName", "table_field") );

Definition at line 1695 of file kexiquerydesignerguieditor.cpp.

References slotPropertyChanged(), and updatePropertiesVisibility().

Referenced by showFieldsOrRelationsForQueryInternal(), slotBeforeCellChanged(), slotRowInserted(), and slotTableFieldDoubleClicked().

QCString KexiQueryDesignerGuiEditor::generateUniqueAlias  )  const [protected]
 

Definition at line 1266 of file kexiquerydesignerguieditor.cpp.

Referenced by slotBeforeCellChanged().

void KexiQueryDesignerGuiEditor::initTableColumns  )  [protected]
 

Called just once.

Definition at line 207 of file kexiquerydesignerguieditor.cpp.

References KexiDB::Field::Boolean, KexiDB::Field::Enum, KexiTableViewColumn::field(), KexiTableViewColumn::setRelatedData(), KexiTableViewColumn::setRelatedDataEditable(), and KexiDB::Field::Text.

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::initTableRows  )  [protected]
 

Called to have all rows empty.

Definition at line 260 of file kexiquerydesignerguieditor.cpp.

References COLUMN_ID_VISIBLE, and updateColumnsData().

Referenced by afterSwitchFrom(), and KexiQueryDesignerGuiEditor().

bool KexiQueryDesignerGuiEditor::loadLayout  )  [protected, slot]
 

Loads layout of relation GUI diagram.

Definition at line 1068 of file kexiquerydesignerguieditor.cpp.

References SourceConnection::detailsField, SourceConnection::detailsTable, KexiViewBase::dirty(), KexiViewBase::loadDataBlock(), SourceConnection::masterField, SourceConnection::masterTable, KexiViewBase::parentDialog(), KexiViewBase::setDirty(), showRelationsForQuery(), showTablesForQuery(), and KexiDB::ResultInfo::success.

Referenced by afterSwitchFrom().

KexiDB::BaseExpr * KexiQueryDesignerGuiEditor::parseExpressionString const QString fullString,
int &  token,
bool  allowRelationalOperator
[protected]
 

Todo:
this is primitive, temporary: reuse SQL parser
Todo:
what about query?

Definition at line 1291 of file kexiquerydesignerguieditor.cpp.

References CHARACTER_STRING_LITERAL, DATE_CONST, DATETIME_CONST, GREATER_OR_EQUAL, INTEGER_CONST, KexiUtils::isIdentifier(), len, LESS_OR_EQUAL, NOT_EQUAL, NOT_EQUAL2, REAL_CONST, SQL_NULL, TIME_CONST, and KexiDB::BaseExpr::toVariable().

Referenced by buildSchema(), and slotBeforeCellChanged().

KoProperty::Set * KexiQueryDesignerGuiEditor::propertySet  )  [protected, virtual]
 

Returns:
property buffer associated with currently selected row (i.e. field) or 0 if current row is empty.

Reimplemented from KexiViewBase.

Definition at line 1674 of file kexiquerydesignerguieditor.cpp.

Referenced by slotBeforeCellChanged().

KexiRelationWidget * KexiQueryDesignerGuiEditor::relationView  )  const
 

Definition at line 344 of file kexiquerydesignerguieditor.cpp.

void KexiQueryDesignerGuiEditor::setFocus  )  [virtual, slot]
 

Reimplemented from KexiViewBase.

Definition at line 1752 of file kexiquerydesignerguieditor.cpp.

Referenced by afterSwitchFrom().

void KexiQueryDesignerGuiEditor::showFieldsAndRelationsForQuery KexiDB::QuerySchema query,
KexiDB::ResultInfo result
[protected, slot]
 

convenience method equal to showFieldsOrRelationsForQueryInternal(query, true, true)

Definition at line 784 of file kexiquerydesignerguieditor.cpp.

References showFieldsOrRelationsForQueryInternal().

Referenced by afterSwitchFrom().

void KexiQueryDesignerGuiEditor::showFieldsForQuery KexiDB::QuerySchema query,
KexiDB::ResultInfo result
[protected, slot]
 

convenience method equal to showFieldsOrRelationsForQueryInternal(query, true, false)

Definition at line 774 of file kexiquerydesignerguieditor.cpp.

References showFieldsOrRelationsForQueryInternal().

Referenced by afterSwitchFrom().

void KexiQueryDesignerGuiEditor::showFieldsOrRelationsForQueryInternal KexiDB::QuerySchema query,
bool  showFields,
bool  showRelations,
KexiDB::ResultInfo result
[protected, slot]
 

Todo:
: now only sigle-field relationships are implemented!

what about multifield joins?

set["alias"].setValue(columnAlias, false);

Todo:
move this check to parser on QuerySchema creation or to QuerySchema creation (WHERE expression should be then simplified by removing joins
Todo:
testing primary key here is too simplified; maybe look ar isForeignKey() or indices..
Todo:
addConnection() should have "bool oneToOne" arg, for 1-to-1 relations
Todo:
fix for !INFIX operators
Todo:
what about ALIAS?
Todo:
fix for !INFIX operators
Todo:
if (!columnAlias.isEmpty())

Definition at line 790 of file kexiquerydesignerguieditor.cpp.

References addConnection(), AND, KexiDB::ResultInfo::clear(), COLUMN_ID_COLUMN, COLUMN_ID_CRITERIA, COLUMN_ID_SORTING, COLUMN_ID_VISIBLE, KexiDB::QuerySchema::columnAlias(), KexiDB::QuerySchema::columnsOrder(), KexiDB::OrderByColumnList::constBegin(), KexiDB::OrderByColumnList::constEnd(), createNewRow(), createPropertySet(), KexiDB::Relationship::detailsIndex(), KexiViewBase::dirty(), KexiDB::BaseExpr::exprClass(), KexiDB::Field::expression(), field, KexiDB::FieldList::fields(), KexiDB::QuerySchema::findTableField(), KexiDB::Field::isExpression(), KexiDB::Field::isPrimaryKey(), KexiDB::Field::isQueryAsterisk(), KexiDBExpr_Relational, kexidbg, kexipluginsdbg, kexipluginswarn, KexiDB::BinaryExpr::left(), KexiDB::Relationship::masterIndex(), KexiDB::VariableExpr::name, KexiDB::Field::name(), KexiDB::QuerySchema::orderByColumnList(), KexiDB::BaseExpr::parent(), KexiViewBase::propertySetSwitched(), KexiDB::QuerySchema::relationships(), KexiDB::BinaryExpr::right(), KexiViewBase::setDirty(), KexiDB::Field::table(), KexiDB::QuerySchema::tables(), KexiDB::BaseExpr::toBinary(), KexiDB::BaseExpr::token(), KexiDB::BinaryExpr::tokenToString(), KexiDB::BaseExpr::toString(), KexiDB::BaseExpr::toUnary(), KexiDB::QuerySchema::UnexpandedListWithoutAsterisks, and KexiDB::QuerySchema::whereExpression().

Referenced by showFieldsAndRelationsForQuery(), showFieldsForQuery(), and showRelationsForQuery().

void KexiQueryDesignerGuiEditor::showRelationsForQuery KexiDB::QuerySchema query,
KexiDB::ResultInfo result
[protected, slot]
 

convenience method equal to showFieldsOrRelationsForQueryInternal(query, false, true)

Definition at line 779 of file kexiquerydesignerguieditor.cpp.

References showFieldsOrRelationsForQueryInternal().

Referenced by loadLayout().

void KexiQueryDesignerGuiEditor::showTablesForQuery KexiDB::QuerySchema query  )  [protected, slot]
 

Definition at line 746 of file kexiquerydesignerguieditor.cpp.

References KexiDB::QuerySchema::tables(), and updateColumnsData().

Referenced by afterSwitchFrom(), and loadLayout().

QSize KexiQueryDesignerGuiEditor::sizeHint  )  const [virtual]
 

Definition at line 1179 of file kexiquerydesignerguieditor.cpp.

void KexiQueryDesignerGuiEditor::slotAboutConnectionRemove KexiRelationViewConnection  )  [protected, slot]
 

Definition at line 1649 of file kexiquerydesignerguieditor.cpp.

References KexiViewBase::setDirty().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotBeforeCellChanged KexiTableItem item,
int  colnum,
QVariant &  newValue,
KexiDB::ResultInfo result
[protected, slot]
 

Called before cell change in tableview.

allowSignals

allowSignals

Todo:
what about expressions?
allowSignals

Todo:
this is primitive, temporary: reuse SQL parser

Definition at line 1416 of file kexiquerydesignerguieditor.cpp.

References KexiDB::ResultInfo::allowToDiscardChanges, KexiDB::ResultInfo::column, COLUMN_ID_COLUMN, COLUMN_ID_CRITERIA, COLUMN_ID_SORTING, COLUMN_ID_TABLE, COLUMN_ID_VISIBLE, createPropertySet(), KexiDB::ResultInfo::desc, field, generateUniqueAlias(), KexiUtils::isIdentifier(), KexiDBExpr_Relational, kexipluginsdbg, kexipluginswarn, KexiDB::ResultInfo::msg, parseExpressionString(), propertySet(), KexiViewBase::propertySetSwitched(), KexiViewBase::setDirty(), KexiDB::SetFieldNameIfNoTableName, sortingAllowed(), KexiDB::splitToTableAndFieldParts(), KexiDB::ResultInfo::success, KexiDB::BinaryExpr::tokenToString(), KexiDB::BaseExpr::toString(), and updatePropertiesVisibility().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotDragOverTableRow KexiTableItem item,
int  row,
QDragMoveEvent *  e
[protected, slot]
 

Definition at line 1208 of file kexiquerydesignerguieditor.cpp.

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotDroppedAtRow KexiTableItem item,
int  row,
QDropEvent *  ev,
KexiTableItem *&  newItem
[protected, slot]
 

Definition at line 1217 of file kexiquerydesignerguieditor.cpp.

References createNewRow(), and KexiFieldDrag::decodeSingle().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotItemRemoved const KexiPart::Item item  )  [protected, slot]
 

Definition at line 1790 of file kexiquerydesignerguieditor.cpp.

References KexiPart::Item::mimeType(), and KexiPart::Item::name().

void KexiQueryDesignerGuiEditor::slotItemRenamed const KexiPart::Item item,
const QCString &  oldName
[protected, slot]
 

Definition at line 1795 of file kexiquerydesignerguieditor.cpp.

References KexiPart::Item::mimeType(), and KexiPart::Item::name().

void KexiQueryDesignerGuiEditor::slotNewItemAppendedForAfterDeletingInSpreadSheetMode  )  [protected, slot]
 

Reaction on appending a new item after deleting one.

Definition at line 1234 of file kexiquerydesignerguieditor.cpp.

References COLUMN_ID_VISIBLE.

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotNewItemStored KexiPart::Item  )  [protected, slot]
 

Definition at line 1785 of file kexiquerydesignerguieditor.cpp.

References KexiPart::Item::mimeType(), and KexiPart::Item::name().

void KexiQueryDesignerGuiEditor::slotPropertyChanged KoProperty::Set &  list,
KoProperty::Property &  property
[protected, slot]
 

Definition at line 1757 of file kexiquerydesignerguieditor.cpp.

References KexiUtils::identifierExpectedMessage(), and KexiUtils::isIdentifier().

Referenced by createPropertySet().

void KexiQueryDesignerGuiEditor::slotRowInserted KexiTableItem item,
uint  row,
bool  repaint
[protected, slot]
 

Definition at line 1241 of file kexiquerydesignerguieditor.cpp.

References createPropertySet(), and KexiViewBase::propertySetSwitched().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotTableAdded KexiDB::TableSchema t  )  [protected, slot]
 

Definition at line 1250 of file kexiquerydesignerguieditor.cpp.

References KexiViewBase::setDirty(), and updateColumnsData().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotTableFieldDoubleClicked KexiDB::TableSchema table,
const QString fieldName
[protected, slot]
 

Definition at line 1654 of file kexiquerydesignerguieditor.cpp.

References createNewRow(), createPropertySet(), KexiDB::FieldList::field(), KexiDB::SchemaData::name(), and KexiViewBase::propertySetSwitched().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotTableHidden KexiDB::TableSchema t  )  [protected, slot]
 

Definition at line 1259 of file kexiquerydesignerguieditor.cpp.

References KexiViewBase::setDirty(), and updateColumnsData().

Referenced by KexiQueryDesignerGuiEditor().

void KexiQueryDesignerGuiEditor::slotTablePositionChanged KexiRelationViewTableContainer  )  [protected, slot]
 

Definition at line 1644 of file kexiquerydesignerguieditor.cpp.

References KexiViewBase::setDirty().

Referenced by KexiQueryDesignerGuiEditor().

tristate KexiQueryDesignerGuiEditor::storeData bool  dontAsk = false  )  [protected, virtual]
 

Tells this view to store data changes on the backend. Called by KexiDialogBase::storeData(). Default implementation:

  • makes a deep copy of sdata
  • stores object schema data sdata in 'kexi__objects' internal table using Connection::storeObjectSchemaData(). If dontAsk is true, no question dialog will be shown to the user. The default is false.

Reimpelment this for your needs. Should return true on success or cancelled when the task should be cancelled.

See also:
storeNewData()

Reimplemented from KexiViewBase.

Definition at line 728 of file kexiquerydesignerguieditor.cpp.

References buildSchema(), cancelled, KexiViewBase::dirty(), KexiViewBase::setDirty(), KexiViewBase::storeData(), and storeLayout().

bool KexiQueryDesignerGuiEditor::storeLayout  )  [protected, slot]
 

Stores layout of relation GUI diagram.

Definition at line 1131 of file kexiquerydesignerguieditor.cpp.

References KexiRelationViewConnection::detailsField(), KexiRelationViewConnection::detailsTable(), KexiDB::Driver::EscapeAsNecessary, KexiDB::Driver::EscapeKexi, KexiDB::Connection::SelectStatementOptions::identifierEscaping, KexiViewBase::m_dialog, KexiViewBase::mainWin(), KexiRelationViewConnection::masterField(), KexiRelationViewConnection::masterTable(), options, KexiQueryPart::TempData::query(), KexiRelationViewTableContainer::schema(), KexiDialogBase::schemaData(), KexiDB::Connection::selectStatement(), KexiDB::Connection::setQuerySchemaObsolete(), KexiViewBase::storeDataBlock(), and tempData().

Referenced by storeData(), and storeNewData().

KexiDB::SchemaData * KexiQueryDesignerGuiEditor::storeNewData const KexiDB::SchemaData sdata,
bool &  cancel
[protected, virtual]
 

Tells this dialog to create and store data of the new object pointed by sdata on the backend. Called by KexiDialogBase::storeNewData(). Default implementation:

  • makes a deep copy of sdata
  • stores object schema data sdata in 'kexi__objects' internal table using Connection::storeObjectSchemaData(). Reimpelment this for your needs. Requirements:
  • deep copy of sdata should be made
  • schema data should be created at the backend (by calling KexiViewBase::storeNewData(const KexiDB::SchemaData& sdata)), or using Connection::storeObjectSchemaData() or more specialized method. For example, KexiAlterTableDialog uses Connection::createTable(TableSchema) for this (tableschema is SchemaData subclass) to store more information than just a schem adata. You should use such subclasses if needed. Should return newly created schema data object on success. In this case, do not store schema object yourself (make deep copy if needed).

Reimplemented from KexiViewBase.

Definition at line 695 of file kexiquerydesignerguieditor.cpp.

References buildSchema(), Kexi::DesignViewMode, KexiViewBase::m_dialog, KexiViewBase::m_mainWin, KexiMainWindow::project(), KexiQueryPart::TempData::query(), KexiQueryPart::TempData::queryChangedInPreviousView, KexiDialogBase::setId(), KexiQueryPart::TempData::setQuery(), storeLayout(), KexiQueryPart::TempData::takeQuery(), tempData(), and KexiViewBase::viewMode().

KexiQueryPart::TempData * KexiQueryDesignerGuiEditor::tempData  )  const [protected]
 

Definition at line 350 of file kexiquerydesignerguieditor.cpp.

References KexiViewBase::parentDialog().

Referenced by afterSwitchFrom(), beforeSwitchTo(), buildSchema(), storeLayout(), storeNewData(), and updateColumnsData().

void KexiQueryDesignerGuiEditor::updateColumnsData  )  [protected]
 

Updates data in columns depending on tables that are currently inserted. Tabular Data in combo box popups is updated as well.

Definition at line 274 of file kexiquerydesignerguieditor.cpp.

References COLUMN_ID_COLUMN, COLUMN_ID_TABLE, KexiDB::FieldList::fieldsIterator(), KexiDB::SchemaData::name(), and tempData().

Referenced by initTableRows(), showTablesForQuery(), slotTableAdded(), and slotTableHidden().

void KexiQueryDesignerGuiEditor::updatePropertiesVisibility KoProperty::Set &  buf  )  [protected]
 

Definition at line 1679 of file kexiquerydesignerguieditor.cpp.

References isAsterisk(), and KexiViewBase::propertySetReloaded().

Referenced by createPropertySet(), and slotBeforeCellChanged().


Friends And Related Function Documentation

friend class KexiQueryView [friend]
 

Definition at line 166 of file kexiquerydesignerguieditor.h.


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:18 2008 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003