21#ifndef _SERIALLETTER_CLASSIC_PLUGIN_H_
22#define _SERIALLETTER_CLASSIC_PLUGIN_H_
25#include <tqlistview.h>
26#include <kdialogbase.h>
27#include <KoCustomVariablesDia.h>
28#include "KWMailMergeDataSource.h"
44typedef TQValueList< DbRecord > Db;
46class KWClassicSerialDataSource:
public KWMailMergeDataSource
51 KWClassicSerialDataSource(TDEInstance *inst,TQObject *parent);
52 ~KWClassicSerialDataSource();
54 virtual void save( TQDomDocument &doc,TQDomElement&);
55 virtual void load( TQDomElement& elem );
56 virtual class TQString getValue( const class TQString &name,
int record = -1 )
const;
57 virtual int getNumRecords()
const {
58 return (
int)db.count();
60 virtual bool showConfigDialog(TQWidget *,
int);
61 virtual void refresh(
bool){};
64 friend class KWClassicMailMergeEditor;
65 friend class KWClassicMailMergeEditorList;
67 void setValue(
const TQString &name,
const TQString &value,
int record = -1 );
69 void addEntry(
const TQString &name );
70 void removeEntry(
const TQString &name );
71 void removeRecord(
int i );
81class KWClassicMailMergeEditorListItem :
public TQListViewItem
84 KWClassicMailMergeEditorListItem( TQListView *parent );
85 KWClassicMailMergeEditorListItem( TQListView *parent, TQListViewItem *after );
86 virtual ~KWClassicMailMergeEditorListItem();
88 virtual void setText(
int i,
const TQString &text );
89 virtual TQString text(
int i )
const;
94 TQLineEdit *editWidget;
104class KWClassicMailMergeEditorList :
public TQListView
110 KWClassicMailMergeEditorList( TQWidget *parent, KWClassicSerialDataSource *db_ );
111 virtual ~KWClassicMailMergeEditorList();
113 void invalidateCurrentRecord();
115 void displayRecord(
int i );
117 void setSorting(
int,
bool increasing =
true ) {
118 TQListView::setSorting( -1, increasing );
122 void columnSizeChange(
int c,
int os,
int ns );
123 void sectionClicked(
int c );
126 KWClassicSerialDataSource *db;
137class KWClassicMailMergeEditor :
public KDialogBase
143 KWClassicMailMergeEditor( TQWidget *parent, KWClassicSerialDataSource *db_ );
146 void resizeEvent( TQResizeEvent *e );
150 KWClassicMailMergeEditorList *dbList;
152 KWClassicSerialDataSource *db;
156 TQToolButton *forward;
157 TQToolButton *finish;
158 TQToolButton *newRecord;
159 TQToolButton *newEntry;
160 TQToolButton *deleteRecord;
161 TQToolButton *deleteEntry;
164 void changeRecord(
int i );