00001 /********************************************************************** 00002 ** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 00003 ** 00004 ** This file is part of the Qtopia Environment. 00005 ** 00006 ** This file may be distributed and/or modified under the terms of the 00007 ** GNU General Public License version 2 as published by the Free Software 00008 ** Foundation and appearing in the file LICENSE.GPL included in the 00009 ** packaging of this file. 00010 ** 00011 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00012 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00013 ** 00014 ** See http://www.trolltech.com/gpl/ for GPL licensing information. 00015 ** 00016 ** Contact info@trolltech.com if any conditions of this licensing are 00017 ** not clear to you. 00018 ** 00019 **********************************************************************/ 00020 #ifndef PLAY_LIST_SELECTION_H 00021 #define PLAY_LIST_SELECTION_H 00022 00023 #include <qlist.h> 00024 #include <qlistview.h> 00025 #include <qpe/applnk.h> 00026 #include <qpe/config.h> 00027 00028 class PlayListSelection : public QListView { 00029 Q_OBJECT 00030 public: 00031 PlayListSelection( QWidget *parent, const char *name=0 ); 00032 ~PlayListSelection(); 00033 00034 const DocLnk *current(); // retrieve the current playlist entry (media file link) 00035 public slots: 00036 void addToSelection( const DocLnk & ); // Add a media file to the playlist 00037 void removeSelected(); // Remove a media file from the playlist 00038 void moveSelectedUp(); // Move the media file up the playlist so it is played earlier 00039 void moveSelectedDown(); // Move the media file down the playlist so it is played later 00040 void unSelect(); 00041 void writeCurrent( Config &); 00042 void setSelectedItem( const QString & ); 00043 bool prev(); 00044 bool next(); 00045 bool first(); 00046 bool last(); 00047 00048 bool isEmpty() const { return childCount() == 0; } 00049 00050 protected: 00051 virtual void contentsMouseMoveEvent(QMouseEvent *); 00052 /* #ifdef USE_PLAYLIST_BACKGROUND */ 00053 virtual void drawBackground( QPainter *p, const QRect &r ); 00054 virtual void paintEmptyArea( QPainter *p, const QRect &r ) { drawBackground( p, r ); }; 00055 /* #endif */ 00056 00057 private: 00058 QList<DocLnk> selectedList; 00059 const DocLnk *lnk; 00060 }; 00061 00062 00063 #endif // PLAY_LIST_SELECTION_H 00064 00065
1.4.2