00001 #ifndef CONNECTIONDIALOG_H 00002 #define CONNECTIONDIALOG_H 00003 00004 #include <QtCore/QString> 00005 #include <QtCore/QHash> 00006 00007 #include "ACE/accesstocool.h" 00008 #include "ACE/ui_ConnectionDialog_BASE.h" 00009 00010 class QCloseEvent; 00011 00012 00013 class ConnectionDialog : public QDialog, private Ui::ConnectionDialog_BASE 00014 { 00015 Q_OBJECT 00016 00017 public: 00018 ConnectionDialog( QWidget* parent = 0, Qt::WindowFlags f = 0 ); 00019 ~ConnectionDialog(); 00020 void closeConnection( QString connectionString ); 00021 bool isConnected( QString connectionString = "" ); 00022 00023 private: 00024 QHash< QString, cool::IDatabasePtr > connectionHash; 00025 QString dbConnectionQString; 00026 00027 void closeEvent( QCloseEvent* event ); 00028 void setConnections(); 00029 QString buildConnectionString(); 00030 void loadConnectionSettings( bool reload = false ); 00031 void saveConnectionSettings(); 00032 00033 signals: 00034 void buildFolderTree( cool::IDatabasePtr dbPtr, const QString connectionString ); 00035 00036 private slots: 00037 void slotConnect(); 00038 void slotRemoveHistoryEntry(); 00039 void slotRemoveAllHistory(); 00040 void slotPredefinedCS( bool enabled ); 00041 void slotPrepareDBType( int choice ); 00042 void slotPrepareDBType_2( int choice ); 00043 }; 00044 00045 #endif