kexi

kexidbconnectionset.h

00001 /* This file is part of the KDE project
00002    Copyright (C) 2003,2005 Jaroslaw Staniek <js@iidea.pl>
00003 
00004    This program is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Library General Public
00006    License as published by the Free Software Foundation; either
00007    version 2 of the License, or (at your option) any later version.
00008 
00009    This program is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Library General Public License for more details.
00013 
00014    You should have received a copy of the GNU Library General Public License
00015    along with this program; see the file COPYING.  If not, write to
00016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017  * Boston, MA 02110-1301, USA.
00018  */
00019 
00020 #ifndef KEXIDBCONNSET_H
00021 #define KEXIDBCONNSET_H
00022 
00023 #include <qstring.h>
00024 #include <kexidb/connectiondata.h>
00025 
00026 class KexiDBConnectionSetPrivate;
00027 
00029 class KEXICORE_EXPORT KexiDBConnectionSet : public QObject
00030 {
00031 public:
00032     KexiDBConnectionSet();
00033     ~KexiDBConnectionSet();
00034 
00038     void load();
00039 
00046     bool addConnectionData(KexiDB::ConnectionData *data, const QString& filename = QString::null);
00047 
00051     bool saveConnectionData(KexiDB::ConnectionData *oldData, KexiDB::ConnectionData *newData);
00052 
00055     bool removeConnectionData(KexiDB::ConnectionData *data);
00056 
00058     const KexiDB::ConnectionData::List& list() const;
00059 
00061     QString fileNameForConnectionData(KexiDB::ConnectionData *data) const;
00062 
00065     KexiDB::ConnectionData* connectionDataForFileName(const QString& fileName) const;
00066 
00067 private:
00069     void clear();
00070     void addConnectionDataInternal(KexiDB::ConnectionData *data, const QString& filename);
00071     void removeConnectionDataInternal(KexiDB::ConnectionData *data);
00072 
00073     KexiDBConnectionSetPrivate *d;
00074 };
00075 
00076 #endif // KEXIDBCONNSET_H
00077 
KDE Home | KDE Accessibility Home | Description of Access Keys