kiconviewsearchline.h
00001 /* 00002 This file is part of the KDE libraries 00003 Copyright (c) 2004 Gustavo Sverzut Barbieri <gsbarbieri@users.sourceforge.net> 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Library General Public 00007 License version 2 as published by the Free Software Foundation. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Library General Public License for more details. 00013 00014 You should have received a copy of the GNU Library General Public License 00015 along with this library; see the file COPYING.LIB. If not, write to 00016 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00017 Boston, MA 02110-1301, USA. 00018 */ 00019 00020 #ifndef KICONVIEWSEARCHLINE_H 00021 #define KICONVIEWSEARCHLINE_H 00022 00023 #include <klineedit.h> 00024 #include <tqvaluelist.h> 00025 00026 class TQIconView; 00027 class TQIconViewItem; 00028 00038 class KDEUI_EXPORT KIconViewSearchLine : public KLineEdit 00039 { 00040 Q_OBJECT 00041 00042 public: 00043 00051 KIconViewSearchLine( TQWidget *parent = 0, 00052 TQIconView *iconView = 0, 00053 const char *name = 0 ); 00054 00059 KIconViewSearchLine( TQWidget *parent, const char *name ); 00060 00064 virtual ~KIconViewSearchLine(); 00065 00071 bool caseSensitive() const; 00072 00078 TQIconView *iconView() const; 00079 00080 00081 public slots: 00086 virtual void updateSearch( const TQString &s = TQString::null ); 00087 00093 void setCaseSensitive( bool cs ); 00094 00101 void setIconView( TQIconView *iv ); 00102 00103 00107 void clear(); 00108 00112 void iconDeleted(const TQString &filename); 00113 00114 protected: 00120 virtual bool itemMatches( const TQIconViewItem *item, 00121 const TQString &s ) const; 00122 00123 00127 void init( TQIconView *iconView = 0 ); 00128 00132 void hideItem( TQIconViewItem *item ); 00133 00140 void showItem( TQIconViewItem *item ); 00141 00142 00143 protected slots: 00157 void queueSearch( const TQString &s ); 00158 00167 void activateSearch(); 00168 00169 00170 private slots: 00174 void iconViewDeleted(); 00175 00176 00177 private: 00178 class KIconViewSearchLinePrivate; 00179 KIconViewSearchLinePrivate *d; 00180 }; 00181 00182 00183 #endif /* KICONVIEWSEARCHLINE_H */