Source Code (Use browser search to find items of interest.)
Class Index
kdevelop'SearchDialog (./kdevelop/kdevelop/kwrite/kwdialog.h:19)
class SearchDialog : public QDialog {
Q_OBJECT
public:
SearchDialog(QStringList &searchFor, QStringList &replaceWith,
int flags, QWidget *parent, const char *name = 0L);
QString getSearchFor();
QString getReplaceWith();
int getFlags();
protected slots:
void okSlot();
protected:
QComboBox *search;
QComboBox *replace;
QCheckBox *opt1;
QCheckBox *opt2;
QCheckBox *opt3;
QCheckBox *opt4;
QCheckBox *opt5;
QCheckBox *opt6;
};
kdevelop'SearchDialog::SearchDialog() (./kdevelop/kdevelop/kwrite/kwdialog.cpp:21)
SearchDialog::SearchDialog(QStringList &searchFor, QStringList &replaceWith,
int flags, QWidget *parent, const char *name)
: QDialog(parent,name,true) {
QVBoxLayout *mainLayout = new QVBoxLayout( this, 8 );
QLabel *label1, *label2;
QPushButton *button1, *button2;
// setFocusPolicy(QWidget::StrongFocus);
search = new QComboBox(true, this);
search->insertStringList(searchFor);
search->setFixedHeight( search->sizeHint().height() );
search->setMinimumWidth( search->sizeHint().width() );
//workaround for missing QComboBox::selectAll()
((QLineEdit *) (search->children()->getFirst()))->selectAll();
// search->dumpObjectTree();
// search->selectAll();
label1 = new QLabel(search,i18n("&Text To Find:"),this);
label1->setFixedSize( label1->sizeHint() );
mainLayout->addWidget( label1, 0, AlignLeft );
mainLayout->addWidget( search, 0, AlignLeft );
// r.setRect(10,0,300,25);
// label->setGeometry(r);
// r.moveBy(0,25);
// search->setGeometry(r);
if (flags & sfReplace) {
replace = new QComboBox(true, this);
replace->insertStringList(replaceWith);
replace->setFixedHeight( replace->sizeHint().height() );
replace->setMinimumWidth( replace->sizeHint().width() );
label2 = new QLabel(replace,i18n("&Replace With:"),this);
label2->setFixedSize( label2->sizeHint() );
mainLayout->addWidget( label2, 0, AlignLeft );
mainLayout->addWidget( replace, 0, AlignLeft );
} else replace = 0;
QGroupBox *group = new QGroupBox(i18n("Options"),this);
mainLayout->addWidget( group );
QHBoxLayout *vbl1 = new QHBoxLayout( group, 10, 4 );
QVBoxLayout *vbl2 = new QVBoxLayout();
vbl1->addLayout(vbl2);
vbl2->addSpacing( 10 );
opt1 = new QCheckBox(i18n("&Case Sensitive"),group);
opt1->setFixedSize( opt1->sizeHint() );
vbl2->addWidget( opt1, 0, AlignLeft );
int max2=opt1->sizeHint().width();
opt2 = new QCheckBox(i18n("&Whole Words Only"),group);
opt2->setFixedSize( opt2->sizeHint() );
vbl2->addWidget( opt2, 0, AlignLeft );
if(opt2->sizeHint().width()>max2) max2 = opt2->sizeHint().width();
opt3 = new QCheckBox(i18n("&From Cursor"),group);
opt3->setFixedSize( opt3->sizeHint() );
vbl2->addWidget( opt3, 0, AlignLeft );
if(opt3->sizeHint().width()>max2) max2 = opt3->sizeHint().width();
QVBoxLayout *vbl3 = new QVBoxLayout();
vbl1->addLayout(vbl3);
vbl3->addSpacing( 10 );
opt4 = new QCheckBox(i18n("Find &Backwards"),group);
opt4->setFixedSize( opt4->sizeHint() );
vbl3->addWidget( opt4, 0, AlignLeft );
int max3=opt4->sizeHint().width();
opt5 = new QCheckBox(i18n("&Selected Text"),group);
opt5->setFixedSize( opt5->sizeHint() );
vbl3->addWidget( opt5, 0, AlignLeft );
if(opt5->sizeHint().width()>max3) max3 = opt5->sizeHint().width();
opt1->setChecked(flags & sfCaseSensitive);
opt2->setChecked(flags & sfWholeWords);
opt3->setChecked(flags & sfFromCursor);
opt4->setChecked(flags & sfBackward);
opt5->setChecked(flags & sfSelected);
if (replace) {
opt6 = new QCheckBox(i18n("&Prompt On Replace"),group);
opt6->setChecked(flags & sfPrompt);
opt6->setFixedSize( opt6->sizeHint() );
vbl3->addWidget( opt6, 0, AlignLeft );
if(opt6->sizeHint().width()>max3) max3 = opt6->sizeHint().width();
}
group->setMinimumHeight(10+10+10+2*4+3*(opt1->sizeHint().height()));
group->setMinimumWidth(max2+max3+10+10+10+10+4+5);
search->setMinimumWidth(group->width());
if( replace )
replace->setMinimumWidth(group->width());
mainLayout->addSpacing(10);
mainLayout->addStretch( 1 );
QHBoxLayout *hbl2 = new QHBoxLayout();
mainLayout->addLayout( hbl2 );
hbl2->addStretch( 1 );
button1 = new QPushButton(i18n("&OK"),this);
button1->setFixedSize( button1->sizeHint() );
button1->setDefault(true);
hbl2->addWidget( button1 );
connect(button1,SIGNAL(clicked()),this,SLOT(okSlot()));
button2 = new QPushButton(i18n("Cancel"),this);
button2->setFixedSize( button2->sizeHint() );
hbl2->addWidget( button2 );
connect(button2,SIGNAL(clicked()),this,SLOT(reject()));//SIGNAL(doneSearch()));
//setFixedSize(r.x()*2 + r.width(),br.bottom() + 5);
search->setFocus();
mainLayout->activate();
resize(minimumSize());
}
kdevelop'SearchDialog::getSearchFor() (./kdevelop/kdevelop/kwrite/kwdialog.cpp:140)
QString SearchDialog::getSearchFor() {
return search->currentText();
}
kdevelop'SearchDialog::getReplaceWith() (./kdevelop/kdevelop/kwrite/kwdialog.cpp:144)
QString SearchDialog::getReplaceWith() {
return replace->currentText();
}
kdevelop'SearchDialog::getFlags() (./kdevelop/kdevelop/kwrite/kwdialog.cpp:148)
int SearchDialog::getFlags() {
int flags = 0;
if (opt1->isChecked()) flags |= sfCaseSensitive;
if (opt2->isChecked()) flags |= sfWholeWords;
if (opt3->isChecked()) flags |= sfFromCursor;
if (opt4->isChecked()) flags |= sfBackward;
if (opt5->isChecked()) flags |= sfSelected;
if (replace) {
if (opt6->isChecked()) flags |= sfPrompt;
flags |= sfReplace;
}
return flags;
}
kdevelop'SearchDialog::okSlot() (./kdevelop/kdevelop/kwrite/kwdialog.cpp:164)
void SearchDialog::okSlot() {
const char *text;
text = search->currentText();
if (text && *text) accept();//emit search();
}