|
|
|
/*
|
|
|
|
kncollection.h
|
|
|
|
|
|
|
|
KNode, the KDE newsreader
|
|
|
|
Copyright (c) 1999-2001 the KNode authors.
|
|
|
|
See file AUTHORS for details
|
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this program; if not, write to the Free Software Foundation,
|
|
|
|
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, US
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef KNCOLLECTION_H
|
|
|
|
#define KNCOLLECTION_H
|
|
|
|
|
|
|
|
#include <tqstring.h>
|
|
|
|
|
|
|
|
class KNCollectionViewItem;
|
|
|
|
|
|
|
|
|
|
|
|
class KNCollection {
|
|
|
|
|
|
|
|
public:
|
|
|
|
enum collectionType { CTnntpAccount, CTgroup,
|
|
|
|
CTfolder, CTcategory,
|
|
|
|
CTvirtualGroup };
|
|
|
|
|
|
|
|
KNCollection(KNCollection *p);
|
|
|
|
virtual ~KNCollection();
|
|
|
|
|
|
|
|
// type
|
|
|
|
virtual collectionType type()=0;
|
|
|
|
|
|
|
|
// list item handling
|
|
|
|
KNCollectionViewItem* listItem()const { return l_istItem; }
|
|
|
|
void setListItem(KNCollectionViewItem *i);
|
|
|
|
virtual void updateListItem();
|
|
|
|
|
|
|
|
// info
|
|
|
|
virtual TQString path()=0;
|
|
|
|
virtual bool readInfo(const TQString &confPath)=0;
|
|
|
|
virtual void saveInfo()=0;
|
|
|
|
|
|
|
|
// parent
|
|
|
|
KNCollection* parent()const { return p_arent; }
|
|
|
|
virtual void setParent(KNCollection *p) { p_arent=p; }
|
|
|
|
|
|
|
|
// name
|
|
|
|
virtual const TQString& name() { return n_ame; }
|
|
|
|
void setName(const TQString &s) { n_ame=s; }
|
|
|
|
|
|
|
|
// count
|
|
|
|
int count()const { return c_ount; }
|
|
|
|
void setCount(int i) { c_ount=i; }
|
|
|
|
void incCount(int i) { c_ount+=i; }
|
|
|
|
void decCount(int i) { c_ount-=i; }
|
|
|
|
|
|
|
|
protected:
|
|
|
|
KNCollection *p_arent;
|
|
|
|
KNCollectionViewItem *l_istItem;
|
|
|
|
TQString n_ame;
|
|
|
|
int c_ount;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|