akregator/src

searchbar.h
00001 /*
00002     This file is part of Akregator.
00003 
00004     Copyright (C) 2005 Frank Osterfeld <frank.osterfeld at kdemail.net>
00005 
00006     This program is free software; you can redistribute it and/or modify
00007     it under the terms of the GNU General Public License as published by
00008     the Free Software Foundation; either version 2 of the License, or
00009     (at your option) any later version.
00010 
00011     This program is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00014     GNU General Public License for more details.
00015 
00016     You should have received a copy of the GNU General Public License
00017     along with this program; if not, write to the Free Software
00018     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00019 
00020     As a special exception, permission is given to link this program
00021     with any edition of TQt, and distribute the resulting executable,
00022     without including the source code for TQt in the source distribution.
00023 */
00024 
00025 #ifndef AKREGATOR_SEARCHBAR_H
00026 #define AKREGATOR_SEARCHBAR_H
00027 
00028 #include <tqhbox.h>
00029 
00030 class TQString;
00031 
00032 namespace Akregator
00033 {
00034 
00035 namespace Filters 
00036 {
00037     class ArticleMatcher;
00038 }
00039 
00040 class SearchBar : public TQHBox
00041 {
00042     Q_OBJECT
00043   
00044 
00045     public:
00046 
00047         SearchBar(TQWidget* parent=0, const char* name=0);
00048         virtual ~SearchBar();
00049 
00050         TQString text() const;
00051         int status() const;
00052 
00053         void setDelay(int ms);
00054         int delay() const;
00055 
00056     signals:
00058         void signalSearch(const Akregator::Filters::ArticleMatcher&, const Akregator::Filters::ArticleMatcher&);
00059 
00060     public slots:
00061         void slotClearSearch();
00062         void slotSetStatus(int status);
00063         void slotSetText(const TQString& text);
00064 
00065     private slots:
00066 
00067         void slotSearchStringChanged(const TQString& search);
00068         void slotSearchComboChanged(int index);
00069         void slotActivateSearch();
00070 
00071     private:
00072 
00073         class SearchBarPrivate;
00074         SearchBarPrivate* d;
00075 };
00076 
00077 }
00078 
00079 #endif //AKREGATOR_SEARCHBAR_H