void KexiFormPart::setupCustomPropertyPanelTabs(QTabWidget *tab) { if (!d->dataSourcePage) { d->dataSourcePage = new KexiDataSourcePage(0); d->dataSourcePage->setObjectName("dataSourcePage"); connect(d->dataSourcePage, SIGNAL(jumpToObjectRequested(QString,QString)), KexiMainWindowIface::global()->thisWidget(), SLOT(highlightObject(QString,QString))); connect(d->dataSourcePage, SIGNAL(formDataSourceChanged(QString,QString)), KexiFormManager::self(), SLOT(setFormDataSource(QString,QString))); connect(d->dataSourcePage, SIGNAL(dataSourceFieldOrExpressionChanged(QString,QString,KDbField::Type)), KexiFormManager::self(), SLOT(setDataSourceFieldOrExpression(QString,QString,KDbField::Type))); #ifdef KEXI_AUTOFIELD_FORM_WIDGET_SUPPORT connect(d->dataSourcePage, SIGNAL(insertAutoFields(QString,QString,QStringList)), KexiFormManager::self(), SLOT(insertAutoFields(QString,QString,QStringList))); #endif } KexiProject *prj = KexiMainWindowIface::global()->project(); d->dataSourcePage->setProject(prj); tab->addTab(d->dataSourcePage, koIcon("server-database"), QString()); tab->setTabToolTip(tab->indexOf(d->dataSourcePage), xi18n("Data Source")); if (!d->widgetTreeWidget) { d->widgetTreeWidget = new QWidget; QVBoxLayout *lyr = new QVBoxLayout(d->widgetTreeWidget); lyr->setContentsMargins(2, 2, 2, 2); d->widgetTree = new KFormDesigner::WidgetTreeWidget; d->widgetTree->setObjectName("KexiFormPart:WidgetTreeWidget"); lyr->addWidget(d->widgetTree); } tab->addTab(d->widgetTreeWidget, koIcon("widgets"), QString()); tab->setTabToolTip(tab->indexOf(d->widgetTreeWidget), xi18n("Widgets")); }
void KexiDataSourcePage::slotInsertSelectedFields() { #ifndef KEXI_NO_AUTOFIELD_WIDGET QStringList selectedFieldNames(m_fieldListView->selectedFieldNames()); if (selectedFieldNames.isEmpty()) return; emit insertAutoFields(m_fieldListView->schema()->table() ? "org.kexi-project.table" : "org.kexi-project.query", m_fieldListView->schema()->name(), selectedFieldNames); #endif }
void KexiDataSourcePage::slotFieldDoubleClicked(const QString& sourcePartClass, const QString& sourceName, const QString& fieldName) { #ifdef KEXI_NO_AUTOFIELD_WIDGET Q_UNUSED(sourcePartClass); Q_UNUSED(sourceName); Q_UNUSED(fieldName); #else QStringList selectedFields; selectedFields.append(fieldName); emit insertAutoFields(sourcePartClass, sourceName, selectedFields); #endif }
void KexiDataSourcePage::slotFieldDoubleClicked(const QString& sourcePluginId, const QString& sourceName, const QString& fieldName) { #ifdef KEXI_AUTOFIELD_FORM_WIDGET_SUPPORT QStringList selectedFields; selectedFields.append(fieldName); emit insertAutoFields(sourcePluginId, sourceName, selectedFields); #else Q_UNUSED(sourcePluginId); Q_UNUSED(sourceName); Q_UNUSED(fieldName); #endif }