insilmaril@0: #include insilmaril@0: insilmaril@0: #include "findwindow.h" insilmaril@0: insilmaril@0: insilmaril@167: FindWindow::FindWindow(QWidget* parent, const char* name) insilmaril@0: : QGroupBox( 0, Horizontal, "Find", parent, name ) insilmaril@0: insilmaril@0: { insilmaril@0: setCaption ("VYM - Find Text"); insilmaril@0: //resize (180,130); insilmaril@0: move (130,130); insilmaril@0: insilmaril@0: setMargin( 100 ); insilmaril@0: insilmaril@0: QVBoxLayout* box = new QVBoxLayout( layout() ); insilmaril@0: insilmaril@0: QHBoxLayout *row1 = new QHBoxLayout( box ); insilmaril@0: row1->setMargin( 10 ); insilmaril@0: insilmaril@0: // Create a Label insilmaril@0: QLabel* label = new QLabel( "Text to find: ", this); insilmaril@0: row1->addWidget( label ); insilmaril@0: insilmaril@0: // Create LineEdit (here QComboBox) insilmaril@0: QHBoxLayout *row2 = new QHBoxLayout( box ); insilmaril@0: row2->setMargin( 10 ); insilmaril@0: findcombo = new QComboBox( true, this ); insilmaril@0: findcombo->setMinimumWidth(150); insilmaril@0: row2->addWidget( findcombo ); insilmaril@0: connect ( findcombo, SIGNAL( highlighted(int) ), insilmaril@0: this, SLOT( findPressed() ) ); insilmaril@0: connect ( findcombo, SIGNAL( textChanged(const QString &) ), insilmaril@0: this, SLOT( findTextChanged(const QString&) ) ); insilmaril@0: //findcombo->insertItem( "Normal", -1 ); insilmaril@0: insilmaril@0: // Create Buttons insilmaril@0: QHBoxLayout *row3 = new QHBoxLayout( box ); insilmaril@0: row3->setMargin( 10 ); insilmaril@0: clearbutton = new QPushButton (tr("Clear"),this); insilmaril@0: connect ( clearbutton, SIGNAL( clicked() ), insilmaril@0: findcombo, SLOT( clearEdit() ) ); insilmaril@0: row3->addWidget (clearbutton); insilmaril@0: insilmaril@0: QSpacerItem *si1= new QSpacerItem (10,0,QSizePolicy::Minimum, QSizePolicy::Expanding ); insilmaril@0: row3->addItem(si1); insilmaril@0: insilmaril@0: cancelbutton = new QPushButton (tr("Cancel"),this); insilmaril@0: cancelbutton->setAccel (Key_Escape); insilmaril@0: connect ( cancelbutton, SIGNAL( clicked() ), insilmaril@0: this, SLOT( cancelPressed() ) ); insilmaril@0: row3->addWidget (cancelbutton); insilmaril@0: insilmaril@0: QSpacerItem *si2= new QSpacerItem (10,0,QSizePolicy::Fixed, QSizePolicy::Fixed); insilmaril@0: row3->addItem(si2); insilmaril@0: insilmaril@0: findbutton = new QPushButton (tr("Find"),this); insilmaril@0: findbutton->setDefault (true); insilmaril@0: connect ( findbutton, SIGNAL( clicked() ), insilmaril@0: this, SLOT( findPressed() ) ); insilmaril@0: row3->add(findbutton); insilmaril@0: insilmaril@0: findcombo->setFocus(); insilmaril@0: } insilmaril@0: insilmaril@0: void FindWindow::popup() insilmaril@0: { insilmaril@0: findcombo->lineEdit()->selectAll(); insilmaril@0: show(); insilmaril@0: } insilmaril@0: insilmaril@0: void FindWindow::cancelPressed() insilmaril@0: { insilmaril@0: hide(); insilmaril@0: } insilmaril@0: insilmaril@0: void FindWindow::findPressed() insilmaril@0: { insilmaril@0: emit (findButton(findcombo->currentText() ) ); insilmaril@0: } insilmaril@0: insilmaril@0: void FindWindow::findTextChanged(const QString&) insilmaril@0: { insilmaril@0: emit (somethingChanged() ); insilmaril@0: }