1
#include "mailmerge_qtsqlplugin_easyfilter.h"
2
#include "mailmerge_qtsqlplugin_easyfilter.moc"
4
#include <qscrollview.h>
9
KWQTSqlEasyFilter::KWQTSqlEasyFilter( QWidget *parent)
10
:KDialogBase( Swallow, i18n( "Mail Merge - Editor" ), Ok | Cancel, Ok, parent, "", true)
12
m_fieldList << "" <<"one" << "two" << "three" << "four";
13
m_sortingList << ""<<i18n("ascending")<<i18n("descending");
14
m_operationList <<"="<<i18n("contains")<< "<" << ">";
16
m_table=new QTable(6,3,this);
17
setMainWidget(m_table);
19
m_table->verticalHeader()->setLabel(0,i18n("Field"));
20
m_table->verticalHeader()->setLabel(1,i18n("Sorting Order"));
21
m_table->verticalHeader()->setLabel(2,i18n("include"));
22
m_table->verticalHeader()->setLabel(3,i18n("Operator"));
23
m_table->verticalHeader()->setLabel(4,i18n("Condition"));
24
m_table->verticalHeader()->setLabel(5,i18n("Value"));
25
m_table->setSelectionMode(QTable::NoSelection);
26
m_table->setColumnMovingEnabled(true);
27
m_table->setSorting(false);
29
for (int i=0; i<3; i++)
34
int h=m_table->rowHeight(0);
35
for (int i=0;i<6;i++) h+=m_table->rowHeight(i);
36
h+=m_table->horizontalHeader()->sizeHint().height();
37
m_table->setMinimumHeight(h);
40
for (int i=0;i<3;i++) w+=m_table->columnWidth(i);
41
w+=m_table->verticalHeader()->headerWidth();
42
m_table->setMinimumWidth(w);
43
connect(m_table,SIGNAL(valueChanged ( int, int)),this,SLOT(slotValueChanged ( int, int)));
46
void KWQTSqlEasyFilter::createColumn(int i)
49
m_table->setItem(0,i,it=new QComboTableItem(m_table,m_fieldList,false));
50
m_table->setItem(1,i,it=new QComboTableItem(m_table,m_sortingList,false));
51
it->setEnabled(false);
52
m_table->setItem(2,i,it=new QCheckTableItem(m_table,i18n("Yes")));
53
it->setEnabled(false);
54
m_table->setItem(3,i,it=new QCheckTableItem(m_table,i18n("NOT")));
55
it->setEnabled(false);
56
m_table->setItem(4,i,it=new QComboTableItem(m_table,m_operationList,false));
57
it->setEnabled(false);
58
m_table->setItem(5,i,it=new QTableItem(m_table,QTableItem::WhenCurrent,""));
59
it->setEnabled(false);
60
m_table->ensureCellVisible(0,i);
64
void KWQTSqlEasyFilter::slotValueChanged ( int row, int col )
69
if (m_table->item(row,col)->text()!="")
71
if (col==m_table->numCols()-1)
73
m_table->insertColumns(col+1,1);
76
m_table->item(1,col)->setEnabled(true);
77
m_table->item(2,col)->setEnabled(true);
78
bool enableSearch=(static_cast<QCheckTableItem*>(m_table->item(2,col))->isChecked());
79
m_table->item(3,col)->setEnabled(enableSearch);
80
m_table->item(4,col)->setEnabled(enableSearch);
81
m_table->item(5,col)->setEnabled(enableSearch);
85
for (int i=1;i<6;i++) m_table->item(i,col)->setEnabled(false);
89
bool enSearch=static_cast<QCheckTableItem*>(m_table->item(row,col))->isChecked();
90
m_table->item(3,col)->setEnabled(enSearch);
91
m_table->item(4,col)->setEnabled(enSearch);
92
m_table->item(5,col)->setEnabled(enSearch);
97
KWQTSqlEasyFilter::~KWQTSqlEasyFilter(){;}