# include "config.h"
#endif
-#include "components/playlist/playlist_model.hpp"
-
-#include <QString>
#include <QList>
-class QSettings;
-class PLModel;
class PLItem
{
friend class PLModel;
public:
- PLItem( playlist_item_t *, PLItem *parent, PLModel * );
- PLItem( playlist_item_t *, QSettings *, PLModel * );
+ PLItem( playlist_item_t *, PLItem *parent );
+ PLItem( playlist_item_t * );
~PLItem();
int row() const;
void insertChild( PLItem *, int p, bool signal = true );
void appendChild( PLItem *item, bool signal = true )
{
- insertChild( item, children.count(), signal );
+ children.insert( children.count(), item );
};
+ void removeChild( PLItem * );
+ void removeChildren();
+ void takeChildAt( int );
- void remove( PLItem *removed );
-
- PLItem *child( int row ) { return children.value( row ); };
- int childCount() const { return children.count(); };
-
- PLItem *parent() { return parentItem; };
+ PLItem *child( int row ) { return children.value( row ); }
+ int childCount() const { return children.count(); }
- void update( playlist_item_t * );
+ PLItem *parent() { return parentItem; }
+ input_item_t *inputItem() { return p_input; }
+ int id() { return i_id; }
+ bool operator< ( PLItem& );
protected:
QList<PLItem*> children;
- int i_type;
int i_id;
- int i_showflags;
input_item_t *p_input;
private:
- void init( playlist_item_t *, PLItem *, PLModel *, QSettings * );
+ void init( playlist_item_t *, PLItem * );
PLItem *parentItem;
- PLModel *model;
};
#endif