/* * searchwidget.cc * * Copyright (c) 2002, 2003 Frerich Raabe * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. For licensing and distribution details, check the * accompanying file 'COPYING'. */ #include "searchwidget.h" #include #include #include #include #include #include using namespace Barry; SearchWidget::SearchWidget( QWidget *parent ): QWidget( parent, "searchwidget" ) { QHBoxLayout *layout = new QHBoxLayout( this ); layout->setMargin( 0 ); QGroupBox *frame = new QGroupBox( 1, Vertical, this ); frame->setTitle( i18n( "Search" ) ); layout->addWidget( frame ); m_editField = new KLineEdit( frame, "editField" ); connect( m_editField, SIGNAL( textChanged( const QString & ) ), this, SLOT( contentsChanged( const QString & ) ) ); connect( m_editField, SIGNAL( returnPressed( const QString & ) ), this, SLOT( gotSearchTerm( const QString & ) ) ); QPixmap helpPixmap = SmallIcon( QString::fromLatin1( "help" ) ); m_toolButton = new QToolButton( frame, "toolButton" ); connect( m_toolButton, SIGNAL( pressed() ), this, SLOT( buttonPressed() ) ); m_toolButton->setIconSet( QIconSet( helpPixmap ) ); m_toolButton->setEnabled( false ); } void SearchWidget::addEntry( const QString &entry ) { m_editField->completionObject()->addItem( entry ); } void SearchWidget::contentsChanged( const QString &contents ) { m_toolButton->setEnabled( !contents.isEmpty() ); } void SearchWidget::gotSearchTerm( const QString &term ) { emit searchTerm( term ); m_editField->clear(); } void SearchWidget::buttonPressed() { gotSearchTerm( m_editField->text() ); } #include "searchwidget.moc" // vim:ts=4:sw=4:noet:list