kmlistview.h
00001 /* 00002 * This file is part of the KDE libraries 00003 * Copyright (c) 2001 Michael Goffioul <tdeprint@swing.be> 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 KMLISTVIEW_H 00021 #define KMLISTVIEW_H 00022 00023 #include <tqlistview.h> 00024 #include <tqptrlist.h> 00025 00026 class KMListViewItem; 00027 class KMPrinter; 00028 00029 class KMListView : public TQListView 00030 { 00031 Q_OBJECT 00032 public: 00033 KMListView(TQWidget *parent = 0, const char *name = 0); 00034 ~KMListView(); 00035 00036 void setPrinterList(TQPtrList<KMPrinter> *list); 00037 void setPrinter(const TQString&); 00038 void setPrinter(KMPrinter*); 00039 00040 signals: 00041 void rightButtonClicked(const TQString&, const TQPoint&); 00042 void printerSelected(const TQString&); 00043 00044 protected slots: 00045 void slotRightButtonClicked(TQListViewItem*, const TQPoint&, int); 00046 void slotSelectionChanged(); 00047 void slotOnItem(TQListViewItem*); 00048 void slotOnViewport(); 00049 00050 protected: 00051 KMListViewItem* findItem(KMPrinter*); 00052 KMListViewItem* findItem(const TQString&); 00053 00054 private: 00055 TQPtrList<KMListViewItem> m_items; 00056 KMListViewItem *m_root, *m_classes, *m_printers, *m_specials; 00057 }; 00058 00059 #endif