//
// QPerforce is a gui interface to the perforce revision control
// system. It is based on the qt library, and should be easily portable
// across any platform that has this toolkit available.
//
// Copyright (C) 2002 Jacob Gladish
//
// TODO: find legit copyright.
//
#ifndef __PENDING_CHANGELISTS_H__
#define __PENDING_CHANGELISTS_H__
#include "IUpdateable.h"
#include <qstring.h>
#include <qdatetime.h>
#include <qlist.h>
#include <qlistview.h>
namespace Perforce {
class SubmittedChangeList;
typedef QList< SubmittedChangeList > SubmittedChangeListList;
class SubmittedChangeList
{
public:
virtual ~SubmittedChangeList() { }
static const SubmittedChangeListList& getSubmittedChangeLists();
inline int getChangeListNumber( void ) const;
inline const QDateTime& getDate( void ) const;
inline const QString& getUser( void ) const;
inline const QString& getDescription( void ) const;
private:
unsigned int _number;
QDateTime _date;
QString _user;
QString _description;
private:
struct SubmittedChangeListCache : public IUpdateable< SubmittedChangeListList > {
void updateCache();
void OutputStat( StrDict* varList );
void HandleError( Error* err );
};
friend SubmittedChangeListCache;
static SubmittedChangeListCache _submittedChangeListCache;
};
inline int SubmittedChangeList::getChangeListNumber( void ) const
{
return _number;
}
inline const QDateTime& SubmittedChangeList::getDate( void ) const
{
return _date;
}
inline const QString& SubmittedChangeList::getUser( void ) const
{
return _user;
}
inline const QString& SubmittedChangeList::getDescription( void ) const
{
return _description;
}
} // end namespace
#endif