25#include <kdialogbase.h>
31#include <tqstringlist.h>
33#include <tqtextstream.h>
35#include "KWMailMergeDataSource.h"
36#include "KWordMailMergeDatabaseIface.h"
37#include <koffice_export.h>
63 KWMailMergeDataBase( KWDocument *doc_ );
64 void showConfigDialog(TQWidget *);
66 TQString getValue(
const TQString &name,
int record = -1 )
const;
67 bool isSampleRecord();
69 const TQMap< TQString, TQString > &getRecordEntries()
const;
70 int getNumRecords()
const;
72 TQDomElement save(TQDomDocument &doc)
const;
73 void load(
const TQDomElement& elem );
75 KWMailMergeDataSource *loadPlugin(
const TQString& name);
76 KWMailMergeDataSource *openPluginFor(
int type,
int &version);
78 virtual void refresh(
bool force);
79 virtual TQStringList availablePlugins();
80 virtual bool loadPlugin(
const TQString &name,
const TQString &command);
81 virtual bool isConfigDialogShown();
87 friend class KWMailMergeConfigDialog;
90 class KWMailMergeDataSource *plugin;
91 TQMap<TQString, TQString> emptyMap;
92 bool askUserForConfirmationAndConfig(KWMailMergeDataSource *tmpPlugin,
bool config,TQWidget *par,
int version);
97class KWMailMergeChoosePluginDialog :
public KDialogBase
103 KWMailMergeChoosePluginDialog( TDETrader::OfferList );
104 ~KWMailMergeChoosePluginDialog();
106 int currentPlugin()
const;
109 void pluginChanged(
int pos );
112 class TQComboBox *chooser;
113 class TQLabel *descriptionLabel;
114 TDETrader::OfferList pluginOffers;
117class KWMailMergeConfigDialog :
public KDialogBase
123 KWMailMergeConfigDialog ( TQWidget *parent, KWMailMergeDataBase *db );
124 ~KWMailMergeConfigDialog();
127 TQPushButton *create;
129 TQPushButton *preview;
130 TQPushButton *document;
131 KWMailMergeDataBase *db_;
132 void enableDisableEdit();
136 void slotEditClicked();
137 void slotCreateClicked();
138 void slotOpenClicked();
139 void slotPreviewClicked();
140 void slotDocumentClicked();
149class KWMailMergeVariableInsertDia :
public KDialogBase
155 KWMailMergeVariableInsertDia( TQWidget *parent, KWMailMergeDataBase *db );
156 TQString getName()
const;
159 void slotSelectionChanged();
162 KWMailMergeDataBase *m_db;
DCOP interface for the MailMergeDataBase class.