49 #include <QFormLayout>
51 #include <QFileDialog>
52 #include <QPushButton>
56 #include <QMessageBox>
58 #include <QPushButton>
60 #include <QCloseEvent>
81 this->
setButton (QWizard::BackButton, backButton);
85 this->
setButton (QWizard::FinishButton, finishButton);
93 this, SLOT(
hide() ) );
105 std::vector< std::vector< std::string > > oFilenames;
113 Server, User, Password, DBName);
115 if ( !ConnectionDatabase.first )
117 std::cout <<
"No connection open for QGoOpenOrCreateImgSession" << std::endl;
118 std::cout <<
"Debug: In " << __FILE__ <<
", line " << __LINE__;
119 std::cout << std::endl;
122 vtkMySQLDatabase *DatabaseConnector = ConnectionDatabase.second;
126 std::vector< std::string > ChannelAttributes (2);
127 ChannelAttributes[0] =
"channelID";
128 ChannelAttributes[1] =
"ChannelNumber";
130 boost::unordered_map< std::string, std::string > ListChannelsIDNumber =
132 "ImagingSessionID",
field(
"ImgSessionID").toString().toStdString() );
139 boost::unordered_map< std::string, std::string >::iterator it = ListChannelsIDNumber.begin();
140 oFilenames.resize( ListChannelsIDNumber.size() );
142 while ( it != ListChannelsIDNumber.end() )
144 std::string ChannelID = it->first;
147 DatabaseConnector,
"image",
"Filename",
"channelID", ChannelID);
153 DatabaseConnector->Close();
154 DatabaseConnector->Delete();
171 if (
field(
"ImgSessionID").toInt() != 0 )
229 if ( !
field(
"ImgSessionName").toString().toStdString().empty() )
235 if ( !
field(
"DBName").toString().toStdString().empty() )
243 switch ( CurrentPageID )
328 std::string oFilename;
360 Server, User, Password, DBName);
362 if ( !ConnectionDatabase.first )
364 std::cout <<
"No connection open for QGoOpenOrCreateImgSession" << std::endl;
365 std::cout <<
"Debug: In " << __FILE__ <<
", line " << __LINE__;
366 std::cout << std::endl;
369 vtkMySQLDatabase *DatabaseConnector = ConnectionDatabase.second;
373 "image",
"Filename",
"ImagingSessionID",
376 DatabaseConnector->Close();
377 DatabaseConnector->Delete();
QVariant field(const QString &name) const
std::string toStdString() const
QString GetImagingSessionName()
QGoConnectServerPage * m_ConnectServerPage
QGoWizardDB(QWidget *parent=0)
void SetIsAnOpenRecentFile(bool iIsAnOpenRecentFile)
void setPage(int id, QWizardPage *page)
QWizardPage * page(int id) const
void setOptions(QFlags< QWizard::WizardOption > options)
void NoGofigureDatabase()
int GetImagingSessionID()
QString tr(const char *sourceText, const char *disambiguation, int n)
boost::unordered_map< std::string, std::string > MapTwoColumnsFromTable(vtkMySQLDatabase *DatabaseConnector, const std::vector< std::string > &iColumnNames, const std::string &iTableName, std::string iField, std::string iValue)
query: "SELECT ColumnName1, ColumnName2 FROM TableName"
void SetIsAnOpenRecentFile(bool iIsAnOpenRecentFile)
void setBold(bool enable)
bool m_IsAnOpenRecentFile
std::string GetMegaCaptureHeaderFilename()
void setImgSessionName(std::string iImgSessionName)
int toInt(bool *ok) const
std::string ReturnOnlyOneValue(vtkMySQLDatabase *DatabaseConnector, const std::string &TableName, const std::string &ColumnName, const std::string &field, const std::string &value)
SELECT ColunmName FROM TableName WHERE field=value limit 1.
GoFigureFileInfoHelperMultiIndexContainer GetMultiIndexFileContainer()
std::string GetFirstFileName()
bool GetIsAnOpenRecentFile()
QWizardPage * currentPage() const
std::string GetMegaCaptureHeaderFilename()
std::vector< std::string > ListSpecificValuesForOneColumn(vtkMySQLDatabase *iDatabaseConnector, const std::string &TableName, const std::string &ColumnName, const std::string &field, const std::string &value, bool ExcludeZero)
SELECT ColumnName FROM TableName WHERE field = value and ColumnName <> 0 (if excludezero) ...
std::vector< std::vector< std::string > > GetFilenamesFromDB()
return a list for each channel of the filenames for the images in the database as a vector of vector ...
void closeEvent(QCloseEvent *iEvent)
int FindOneID(vtkMySQLDatabase *DatabaseConnector, const std::string &TableName, const std::string &ColumnName, const std::string &field, const std::string &value)
SELECT ColumnName FROM TableName WHERE field = value.
std::string m_FirstFileName
GoFigureFileInfoHelperMultiIndexContainer GetMultiIndexFileContainer()
std::pair< bool, vtkMySQLDatabase * > ConnectToDatabase(std::string ServerName, std::string login, std::string Password, std::string DBName)
vtkMySQLDatabase * m_DatabaseConnector
std::string m_ImgSessionName
void GofigureDatabaseExists()
void SetImgSessionName(std::string iImgSessionName)
bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
vtkMySQLDatabase * m_DatabaseConnector
vtkMySQLDatabase * m_DatabaseConnector