27 #include "ui_TL4ConnectorWizardPageForm.h"
31 #include <QFileDialog>
34 #include <boost/filesystem.hpp>
37 : QWizardPage(parent),
38 m_ui(new
Ui::TL4ConnectorWizardPageForm)
43 #if TE_PLATFORM == TE_PLATFORMCODE_MSWINDOWS
44 m_ui->m_databaseTypeComboBox->addItem(
"Access");
60 connect(
m_ui->m_databaseTypeComboBox,
61 SIGNAL(currentIndexChanged(
const QString&)),
64 connect(
m_ui->m_directoryPushButton,
68 if(
m_ui->m_databaseTypeComboBox->count() > 0)
70 m_ui->m_databaseTypeComboBox->setCurrentIndex(0);
81 m_ui->m_dbComboBox->clear();
83 QString fileName = QFileDialog::getOpenFileName(
this, tr(
"Open Database"), QString(
""), tr(
"Database files (*.accdb *.mdb);; All Files (*.*)"), 0, QFileDialog::ReadOnly);
85 if(fileName.isEmpty())
88 m_ui->m_dbComboBox->addItem(fileName);
90 boost::filesystem::path p(fileName.toStdString());
94 m_ui->m_databaseNameLineEdit->setText(p.string().c_str());
99 if(text == QString(
"Access"))
101 m_ui->m_hostTextLabel->setText(tr(
"Host:"));
102 m_ui->m_hostLineEdit->setEnabled(
false);
103 m_ui->m_portLineEdit->setEnabled(
false);
104 m_ui->m_userLineEdit->setEnabled(
false);
105 m_ui->m_passwordLineEdit->setEnabled(
false);
106 m_ui->m_directoryPushButton->setEnabled(
true);
107 m_ui->m_dbComboBox->setEnabled(
false);
108 m_ui->m_databaseNameLineEdit->setEnabled(
false);
109 m_ui->m_encodingComboBox->setEnabled(
false);
114 if(text == QString(
"SQL Server") ||
115 text == QString(
"SQL Server Spatial"))
117 m_ui->m_hostTextLabel->setText(tr(
"Host:"));
118 m_ui->m_hostLineEdit->setEnabled(
true);
119 m_ui->m_portLineEdit->setEnabled(
true);
120 m_ui->m_userLineEdit->setEnabled(
true);
121 m_ui->m_passwordLineEdit->setEnabled(
true);
122 m_ui->m_directoryPushButton->setEnabled(
false);
123 m_ui->m_dbComboBox->setEnabled(
false);
124 m_ui->m_databaseNameLineEdit->setEnabled(
true);
125 m_ui->m_encodingComboBox->setEnabled(
true);
188 std::map<std::string, std::string> connInfo;
190 connInfo[
"T4_DRIVER"] = getDriverName(m_ui->m_databaseTypeComboBox->currentText().toStdString());
191 connInfo[
"T4_DB_NAME"] = m_ui->m_dbComboBox->currentText().toStdString();
192 connInfo[
"T4_HOST"] = m_ui->m_hostLineEdit->text().toStdString();
193 connInfo[
"T4_PORT"] = m_ui->m_portLineEdit->text().toStdString();
194 connInfo[
"T4_USER"] = m_ui->m_userLineEdit->text().toStdString();
195 connInfo[
"T4_PASSWORD"] = m_ui->m_passwordLineEdit->text().toStdString();
202 if (displayName ==
"Access")
204 else if (displayName ==
"SQL Server")
206 else if (displayName ==
"SQL Server Spatial")
208 else if (displayName ==
"Oracle")
210 else if (displayName ==
"Oracle OCI")
212 else if (displayName ==
"Oracle Spatial")
214 else if (displayName ==
"MySQL")
216 else if (displayName ==
"PostgreSQL")
218 else if (displayName ==
"PostGIS")
220 else if (displayName ==
"Firebird")
TL4ConnectorWizardPage(QWidget *parent=0)
void onDatabaseTypeComboBoxActivated(const QString &text)
std::map< std::string, std::string > getConnInfo()
~TL4ConnectorWizardPage()
std::string getDriverName(const std::string &displayName)
void onDirectoryPushButtonClicked()
std::auto_ptr< Ui::TL4ConnectorWizardPageForm > m_ui