Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

YQPkgSelList.h

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                                                                      |
00003 |                      __   __    ____ _____ ____                      |
00004 |                      \ \ / /_ _/ ___|_   _|___ \                     |
00005 |                       \ V / _` \___ \ | |   __) |                    |
00006 |                        | | (_| |___) || |  / __/                     |
00007 |                        |_|\__,_|____/ |_| |_____|                    |
00008 |                                                                      |
00009 |                               core system                            |
00010 |                                                        (C) SuSE GmbH |
00011 \----------------------------------------------------------------------/
00012 
00013   File:       YQPkgSelList.h
00014 
00015   Author:     Stefan Hundhammer <sh@suse.de>
00016 
00017 /-*/
00018 
00019 // -*- c++ -*-
00020 
00021 
00022 #ifndef YQPkgSelList_h
00023 #define YQPkgSelList_h
00024 
00025 #include <YQPkgObjList.h>
00026 #include <y2pm/PMSelection.h>
00027 
00028 
00029 class YQPkgSelListItem;
00030 
00031 
00035 class YQPkgSelList : public YQPkgObjList
00036 {
00037     Q_OBJECT
00038 
00039 public:
00040 
00044     YQPkgSelList( QWidget * parent );
00045 
00049     virtual ~YQPkgSelList();
00050 
00051 
00052 public slots:
00053 
00061     void filter();
00062 
00066     void filterIfVisible();
00067 
00068 
00074     void addPkgSelItem( PMSelectionPtr sel );
00075 
00079     void sendUpdatePackages() { emit updatePackages(); }
00080 
00085     void applyChanges();
00086 
00087 public:
00088 
00092     YQPkgSelListItem * selection() const;
00093 
00094 
00095 signals:
00096 
00101     void updatePackages();
00102 
00107     void filterStart();
00108 
00112     void filterMatch( PMPackagePtr pkg );
00113 
00117     void filterFinished();
00118 
00119 
00120 protected slots:
00121 
00125     void fillList();
00126 };
00127 
00128 
00129 
00130 class YQPkgSelListItem: public YQPkgObjListItem
00131 {
00132 public:
00133 
00138     YQPkgSelListItem( YQPkgSelList * pkgSelList, PMSelectionPtr sel );
00139 
00143     virtual ~YQPkgSelListItem();
00144 
00148     PMSelectionPtr pmSel() { return _pmSel; }
00149 
00153     const PMSelectionPtr constPmSel() const { return _pmSel; }
00154 
00162     virtual void setStatus( PMSelectable::UI_Status newStatus );
00163 
00164 
00175     virtual int compare( QListViewItem *        other,
00176                          int                    col,
00177                          bool                   ascending ) const;
00178 
00179     // Columns
00180 
00181     int statusCol()     const   { return _pkgSelList->statusCol();      }
00182     int summaryCol()    const   { return _pkgSelList->summaryCol();     }
00183 
00184 
00185 protected:
00186 
00187     // Data members
00188 
00189     YQPkgSelList        *       _pkgSelList;
00190     PMSelectionPtr              _pmSel;
00191 };
00192 
00193 
00194 #endif // ifndef YQPkgSelList_h

Generated on Wed Sep 14 10:59:02 2005 for yast2-qt by  doxygen 1.4.4