From 8362bf63dea22bbf6736609b0f49c152f975eb63 Mon Sep 17 00:00:00 2001 From: tpearson Date: Wed, 20 Jan 2010 01:29:50 +0000 Subject: Added old abandoned KDE3 version of koffice git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/koffice@1077364 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kword/KWMailMergeDataBase.h | 164 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 kword/KWMailMergeDataBase.h (limited to 'kword/KWMailMergeDataBase.h') diff --git a/kword/KWMailMergeDataBase.h b/kword/KWMailMergeDataBase.h new file mode 100644 index 00000000..4b20e3e9 --- /dev/null +++ b/kword/KWMailMergeDataBase.h @@ -0,0 +1,164 @@ +/* This file is part of the KDE project + Copyright (C) 1998, 1999 Reginald Stadlbauer + + Modified by Joseph wenninger, 2001 + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#ifndef mailmerge_h +#define mailmerge_h + +#include +#include + + +#include +#include +#include +#include +#include + +#include "KWMailMergeDataSource.h" +#include "KWordMailMergeDatabaseIface.h" +#include + +class QListBox; +class QPushButton; +class QLineEdit; +class QSpinBox; +class KWDocument; +class QVBox; + +//class KWMailMergeDataBase; + + + + +/****************************************************************** + * + * Class: KWMailMergeDataBase + * + ******************************************************************/ + +class KWORD_EXPORT KWMailMergeDataBase: public QObject,KWordMailMergeDatabaseIface +{ +Q_OBJECT + +public: + KWMailMergeDataBase( KWDocument *doc_ ); + void showConfigDialog(QWidget *); // Select datasource type and / or configure datasource + + QString getValue( const QString &name, int record = -1 ) const; //accesses the plugin + bool isSampleRecord(); + + const QMap< QString, QString > &getRecordEntries() const; //accesses the plugin + int getNumRecords() const; //accesses the plugin + + QDomElement save(QDomDocument &doc) const; // save some global config + plugin config + void load( const QDomElement& elem ); // save some global config + plugin config + + KWMailMergeDataSource *loadPlugin(const QString& name); + KWMailMergeDataSource *openPluginFor(int type,int &version); + + virtual void refresh(bool force); + virtual QStringList availablePlugins(); + virtual bool loadPlugin(const QString &name,const QString &command); + virtual bool isConfigDialogShown(); + + int version(); +private: + int m_version; +protected: + friend class KWMailMergeConfigDialog; + KWDocument *doc; + int action; + class KWMailMergeDataSource *plugin; + QMap emptyMap; + bool askUserForConfirmationAndConfig(KWMailMergeDataSource *tmpPlugin,bool config,QWidget *par,int version); + bool rejectdcopcall; +}; + + +class KWMailMergeChoosePluginDialog : public KDialogBase +{ + Q_OBJECT + + public: + KWMailMergeChoosePluginDialog( KTrader::OfferList ); + ~KWMailMergeChoosePluginDialog(); + + int currentPlugin() const; + + private slots: + void pluginChanged( int pos ); + + private: + class QComboBox *chooser; + class QLabel *descriptionLabel; + KTrader::OfferList pluginOffers; +}; + +class KWMailMergeConfigDialog : public KDialogBase +{ + Q_OBJECT + +public: + KWMailMergeConfigDialog ( QWidget *parent, KWMailMergeDataBase *db ); + ~KWMailMergeConfigDialog(); +protected: + QPushButton *edit; + QPushButton *create; + QPushButton *open; + QPushButton *preview; + QPushButton *document; + KWMailMergeDataBase *db_; + void enableDisableEdit(); + void doNewActions(); + +protected slots: + void slotEditClicked(); + void slotCreateClicked(); + void slotOpenClicked(); + void slotPreviewClicked(); + void slotDocumentClicked(); +}; + +/****************************************************************** + * + * Class: KWMailMergeVariableInsertDia + * + ******************************************************************/ + +class KWMailMergeVariableInsertDia : public KDialogBase +{ + Q_OBJECT + + public: + KWMailMergeVariableInsertDia( QWidget *parent, KWMailMergeDataBase *db ); + QString getName() const; // ### unused, can we remove this? + + protected slots: + void slotSelectionChanged(); + + private: + KWMailMergeDataBase *m_db; + + protected: + QListBox *names; +}; + +#endif -- cgit v1.2.1