insilmaril@808: #include insilmaril@808: #include insilmaril@808: #include insilmaril@808: insilmaril@808: #include "findwidget.h" insilmaril@808: insilmaril@808: insilmaril@808: extern QString vymName; insilmaril@808: insilmaril@808: FindWidget::FindWidget(QWidget* parent) insilmaril@808: { insilmaril@808: QVBoxLayout* mainLayout = new QVBoxLayout; insilmaril@808: QHBoxLayout *row2Layout = new QHBoxLayout; insilmaril@808: insilmaril@808: // Create Buttons insilmaril@808: cancelbutton = new QPushButton; insilmaril@808: cancelbutton->setText(tr("Cancel")); insilmaril@808: cancelbutton->setShortcut (Qt::Key_Escape); insilmaril@808: connect ( cancelbutton, SIGNAL( clicked() ), this, SLOT( cancelPressed() ) ); insilmaril@808: insilmaril@808: // Create LineEdit (here QComboBox) insilmaril@808: findcombo = new QComboBox; insilmaril@808: findcombo->setMinimumWidth(250); insilmaril@808: findcombo->setEditable(true); insilmaril@808: connect ( findcombo, SIGNAL( highlighted(int) ), insilmaril@808: this, SLOT( nextPressed() ) ); insilmaril@808: connect ( findcombo, SIGNAL( textChanged(const QString &) ), insilmaril@808: this, SLOT( findTextChanged(const QString&) ) ); insilmaril@808: insilmaril@808: nextbutton = new QPushButton; insilmaril@808: nextbutton->setText (tr("Next","Find widget")); insilmaril@808: //nextbutton->setDefault (true); insilmaril@808: //nextbutton->setShortcut (Qt::Key_Return); insilmaril@808: connect ( nextbutton, SIGNAL( clicked() ), this, SLOT( nextPressed() ) ); insilmaril@808: insilmaril@808: row2Layout->addWidget (cancelbutton); insilmaril@808: row2Layout->addWidget(findcombo); insilmaril@808: row2Layout->addWidget(nextbutton); insilmaril@808: insilmaril@808: mainLayout->addLayout (row2Layout); insilmaril@808: insilmaril@808: setLayout (mainLayout); insilmaril@808: } insilmaril@808: insilmaril@808: void FindWidget::popup() insilmaril@808: { insilmaril@808: show(); insilmaril@808: findcombo->lineEdit()->selectAll(); insilmaril@808: findcombo->setFocus(); insilmaril@808: } insilmaril@808: insilmaril@808: void FindWidget::cancelPressed() insilmaril@808: { insilmaril@808: hide(); insilmaril@808: } insilmaril@808: insilmaril@808: void FindWidget::nextPressed() insilmaril@808: { insilmaril@808: emit (nextButton(findcombo->currentText() ) ); insilmaril@808: } insilmaril@808: insilmaril@808: void FindWidget::findTextChanged(const QString&) insilmaril@808: { insilmaril@808: emit (somethingChanged() ); insilmaril@808: } insilmaril@808: