klistviewlineedit.h
00001 /* This file is part of the KDE libraries 00002 Copyright (C) 2000 Charles Samuels <charles@kde.org> 00003 00004 This library is free software; you can redistribute it and/or 00005 modify it under the terms of the GNU Library General Public 00006 License version 2 as published by the Free Software Foundation. 00007 00008 This library is distributed in the hope that it will be useful, 00009 but WITHOUT ANY WARRANTY; without even the implied warranty of 00010 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00011 Library General Public License for more details. 00012 00013 You should have received a copy of the GNU Library General Public License 00014 along with this library; see the file COPYING.LIB. If not, write to 00015 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 00016 Boston, MA 02111-1307, USA. 00017 */ 00018 #ifndef KLISTVIEWLINEEDIT_H 00019 #define KLISTVIEWLINEEDIT_H 00020 00021 #include <klineedit.h> 00022 #include <klistview.h> 00023 00028 class KListViewLineEdit : public KLineEdit 00029 { 00030 Q_OBJECT 00031 public: 00032 KListViewLineEdit(KListView *parent); 00033 ~KListViewLineEdit(); 00034 00035 signals: 00036 void done(QListViewItem*, int); 00037 00038 public slots: 00039 void terminate(); 00040 void load(QListViewItem *i, int c); 00041 00042 protected: 00043 virtual void focusOutEvent(QFocusEvent *); 00044 virtual void keyPressEvent(QKeyEvent *e); 00045 virtual void paintEvent(QPaintEvent *e); 00046 virtual bool event (QEvent *pe); 00047 00049 void selectNextCell (QListViewItem *pi, int column, bool forward); 00050 void terminate(bool commit); 00051 QListViewItem *item; 00052 int col; 00053 KListView *p; 00054 00055 protected slots: 00056 void slotSelectionChanged(); 00057 00058 }; 00059 00060 #endif