#include <kexiquerydesignerguieditor.h>
|
| void | slotDragOverTableRow (KexiTableItem *item, int row, TQDragMoveEvent *e) |
| |
| void | slotDroppedAtRow (KexiTableItem *item, int row, TQDropEvent *ev, KexiTableItem *&newItem) |
| |
| void | slotNewItemAppendedForAfterDeletingInSpreadSheetMode () |
| |
| void | slotTableAdded (KexiDB::TableSchema &t) |
| |
| void | slotTableHidden (KexiDB::TableSchema &t) |
| |
| void | slotBeforeCellChanged (KexiTableItem *item, int colnum, TQVariant &newValue, KexiDB::ResultInfo *result) |
| |
| void | slotRowInserted (KexiTableItem *item, uint row, bool repaint) |
| |
| void | slotTablePositionChanged (KexiRelationViewTableContainer *) |
| |
| void | slotAboutConnectionRemove (KexiRelationViewConnection *) |
| |
| void | slotTableFieldDoubleClicked (KexiDB::TableSchema *table, const TQString &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) |
| |
| void | showFieldsForQuery (KexiDB::QuerySchema *query, KexiDB::ResultInfo &result) |
| |
| void | showRelationsForQuery (KexiDB::QuerySchema *query, KexiDB::ResultInfo &result) |
| |
| 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 TQCString &oldName) |
| |
|
| void | initTableColumns () |
| |
| void | initTableRows () |
| |
| virtual tristate | beforeSwitchTo (int mode, bool &dontStore) |
| |
| virtual tristate | afterSwitchFrom (int mode) |
| |
| virtual KexiDB::SchemaData * | storeNewData (const KexiDB::SchemaData &sdata, bool &cancel) |
| |
| virtual tristate | storeData (bool dontAsk=false) |
| |
| void | updateColumnsData () |
| |
| virtual KoProperty::Set * | propertySet () |
| |
| KoProperty::Set * | createPropertySet (int row, const TQString &tableName, const TQString &fieldName, bool newOne=false) |
| |
| bool | buildSchema (TQString *errMsg=0) |
| |
| KexiQueryPart::TempData * | tempData () const |
| |
| KexiTableItem * | createNewRow (const TQString &tableName, const TQString &fieldName, bool visible) const |
| |
| KexiDB::BaseExpr * | parseExpressionString (const TQString &fullString, int &token, bool allowRelationalOperator) |
| |
| TQCString | generateUniqueAlias () const |
| |
| void | updatePropertiesVisibility (KoProperty::Set &buf) |
| |
| virtual void | closeEvent (TQCloseEvent *e) |
| |
| void | propertySetReloaded (bool preservePrevSelection=false, const TQCString &propertyToSelect=TQCString()) |
| |
| bool | loadDataBlock (TQString &dataString, const TQString &dataID=TQString(), bool canBeEmpty=false) |
| |
| bool | storeDataBlock (const TQString &dataString, const TQString &dataID=TQString()) |
| |
| bool | removeDataBlock (const TQString &dataID=TQString()) |
| |
| void | setViewWidget (TQWidget *w, bool focusProxy=false) |
| |
| virtual void | updateActions (bool activated) |
| |
| virtual void | setFocusInternal () |
| |
| virtual void | parentDialogDetached () |
| |
| virtual void | parentDialogAttached () |
| |
| void | plugSharedAction (const char *action_name, TQObject *receiver, const char *slot) |
| |
| void | unplugSharedAction (const char *action_name) |
| |
| void | plugSharedAction (const char *action_name, const char *slot) |
| |
| int | plugSharedAction (const char *action_name, TQWidget *w) |
| |
| void | plugSharedActionToExternalGUI (const char *action_name, KXMLGUIClient *client) |
| |
| void | plugSharedActionsToExternalGUI (const TQValueList< TQCString > &action_names, KXMLGUIClient *client) |
| |
| void | unplugSharedAction (const char *action_name, TQWidget *w) |
| |
| TDEAction * | plugSharedAction (const char *action_name, const TQString &alternativeText, TQWidget *w) |
| |
| TQObject * | receiver () const |
| |
| void | addActionProxyChild (KexiActionProxy *child) |
| |
| void | takeActionProxyChild (KexiActionProxy *child) |
| |
Design view of the Query Designer.
Definition at line 59 of file kexiquerydesignerguieditor.h.
◆ KexiQueryDesignerGuiEditor()
| KexiQueryDesignerGuiEditor::KexiQueryDesignerGuiEditor |
( |
KexiMainWindow * |
mainWin, |
|
|
TQWidget * |
parent, |
|
|
const char * |
name = 0 |
|
) |
| |
◆ ~KexiQueryDesignerGuiEditor()
| KexiQueryDesignerGuiEditor::~KexiQueryDesignerGuiEditor |
( |
| ) |
|
|
virtual |
◆ addConnection
◆ afterSwitchFrom()
| tristate KexiQueryDesignerGuiEditor::afterSwitchFrom |
( |
int |
mode | ) |
|
|
protectedvirtual |
called by KexiDialogBase::switchToViewMode() right after dialog is switched to new mode By default does nothing. Reimplement this if you need to do something after 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.
- Todo:
- load global query properties
- Todo:
- load global query properties
Reimplemented from KexiViewBase.
Definition at line 618 of file kexiquerydesignerguieditor.cpp.
◆ beforeSwitchTo()
| tristate KexiQueryDesignerGuiEditor::beforeSwitchTo |
( |
int |
mode, |
|
|
bool & |
dontStore |
|
) |
| |
|
protectedvirtual |
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.
◆ buildSchema()
| bool KexiQueryDesignerGuiEditor::buildSchema |
( |
TQString * |
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.
- Todo:
- what about query?
allowRelationalOperator
set
- Todo:
- what about query?
- Todo:
- support expressions here
- Todo:
- ok, but not for expressions
Definition at line 361 of file kexiquerydesignerguieditor.cpp.
◆ createNewRow()
| KexiTableItem * KexiQueryDesignerGuiEditor::createNewRow |
( |
const TQString & |
tableName, |
|
|
const TQString & |
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 1188 of file kexiquerydesignerguieditor.cpp.
◆ createPropertySet()
| KoProperty::Set * KexiQueryDesignerGuiEditor::createPropertySet |
( |
int |
row, |
|
|
const TQString & |
tableName, |
|
|
const TQString & |
fieldName, |
|
|
bool |
newOne = false |
|
) |
| |
|
protected |
◆ generateUniqueAlias()
| TQCString KexiQueryDesignerGuiEditor::generateUniqueAlias |
( |
| ) |
const |
|
protected |
◆ initTableColumns()
| void KexiQueryDesignerGuiEditor::initTableColumns |
( |
| ) |
|
|
protected |
◆ initTableRows()
| void KexiQueryDesignerGuiEditor::initTableRows |
( |
| ) |
|
|
protected |
◆ loadLayout
| bool KexiQueryDesignerGuiEditor::loadLayout |
( |
| ) |
|
|
protectedslot |
◆ parseExpressionString()
| KexiDB::BaseExpr * KexiQueryDesignerGuiEditor::parseExpressionString |
( |
const TQString & |
fullString, |
|
|
int & |
token, |
|
|
bool |
allowRelationalOperator |
|
) |
| |
|
protected |
◆ propertySet()
| KoProperty::Set * KexiQueryDesignerGuiEditor::propertySet |
( |
| ) |
|
|
protectedvirtual |
◆ relationView()
| KexiRelationWidget * KexiQueryDesignerGuiEditor::relationView |
( |
| ) |
const |
◆ setFocus
| void KexiQueryDesignerGuiEditor::setFocus |
( |
| ) |
|
|
virtualslot |
◆ showFieldsAndRelationsForQuery
◆ showFieldsForQuery
◆ showFieldsOrRelationsForQueryInternal
- Todo:
- : now only sigle-field relationships are implemented!
- 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:
- Todo:
- what about multifield joins?
- 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())
- Todo:
- Todo:
- set["alias"].setValue(columnAlias, false);
Definition at line 790 of file kexiquerydesignerguieditor.cpp.
◆ showRelationsForQuery
◆ showTablesForQuery
◆ sizeHint()
| TQSize KexiQueryDesignerGuiEditor::sizeHint |
( |
| ) |
const |
|
virtual |
◆ slotAboutConnectionRemove
| void KexiQueryDesignerGuiEditor::slotAboutConnectionRemove |
( |
KexiRelationViewConnection * |
| ) |
|
|
protectedslot |
◆ slotBeforeCellChanged
| void KexiQueryDesignerGuiEditor::slotBeforeCellChanged |
( |
KexiTableItem * |
item, |
|
|
int |
colnum, |
|
|
TQVariant & |
newValue, |
|
|
KexiDB::ResultInfo * |
result |
|
) |
| |
|
protectedslot |
Called before cell change in tableview.
allowSignals
allowSignals
- Todo:
- what about expressions?
allowSignals
- Todo:
- this is primitive, temporary: reuse SQL parser
Definition at line 1417 of file kexiquerydesignerguieditor.cpp.
◆ slotDragOverTableRow
| void KexiQueryDesignerGuiEditor::slotDragOverTableRow |
( |
KexiTableItem * |
item, |
|
|
int |
row, |
|
|
TQDragMoveEvent * |
e |
|
) |
| |
|
protectedslot |
◆ slotDroppedAtRow
| void KexiQueryDesignerGuiEditor::slotDroppedAtRow |
( |
KexiTableItem * |
item, |
|
|
int |
row, |
|
|
TQDropEvent * |
ev, |
|
|
KexiTableItem *& |
newItem |
|
) |
| |
|
protectedslot |
◆ slotItemRemoved
| void KexiQueryDesignerGuiEditor::slotItemRemoved |
( |
const KexiPart::Item & |
item | ) |
|
|
protectedslot |
◆ slotItemRenamed
| void KexiQueryDesignerGuiEditor::slotItemRenamed |
( |
const KexiPart::Item & |
item, |
|
|
const TQCString & |
oldName |
|
) |
| |
|
protectedslot |
◆ slotNewItemAppendedForAfterDeletingInSpreadSheetMode
| void KexiQueryDesignerGuiEditor::slotNewItemAppendedForAfterDeletingInSpreadSheetMode |
( |
| ) |
|
|
protectedslot |
◆ slotNewItemStored
| void KexiQueryDesignerGuiEditor::slotNewItemStored |
( |
KexiPart::Item & |
item | ) |
|
|
protectedslot |
◆ slotPropertyChanged
| void KexiQueryDesignerGuiEditor::slotPropertyChanged |
( |
KoProperty::Set & |
list, |
|
|
KoProperty::Property & |
property |
|
) |
| |
|
protectedslot |
◆ slotRowInserted
| void KexiQueryDesignerGuiEditor::slotRowInserted |
( |
KexiTableItem * |
item, |
|
|
uint |
row, |
|
|
bool |
repaint |
|
) |
| |
|
protectedslot |
◆ slotTableAdded
◆ slotTableFieldDoubleClicked
| void KexiQueryDesignerGuiEditor::slotTableFieldDoubleClicked |
( |
KexiDB::TableSchema * |
table, |
|
|
const TQString & |
fieldName |
|
) |
| |
|
protectedslot |
◆ slotTableHidden
◆ slotTablePositionChanged
| void KexiQueryDesignerGuiEditor::slotTablePositionChanged |
( |
KexiRelationViewTableContainer * |
| ) |
|
|
protectedslot |
◆ storeData()
| tristate KexiQueryDesignerGuiEditor::storeData |
( |
bool |
dontAsk = false | ) |
|
|
protectedvirtual |
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.
◆ storeLayout
| bool KexiQueryDesignerGuiEditor::storeLayout |
( |
| ) |
|
|
protectedslot |
◆ storeNewData()
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.
◆ tempData()
◆ 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.
- Todo:
- what about query?
Definition at line 274 of file kexiquerydesignerguieditor.cpp.
◆ updatePropertiesVisibility()
| void KexiQueryDesignerGuiEditor::updatePropertiesVisibility |
( |
KoProperty::Set & |
buf | ) |
|
|
protected |
◆ KexiQueryView
| friend class KexiQueryView |
|
friend |
The documentation for this class was generated from the following files:
|