// ClientDirUser.h: interface for the ClientDirUser class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_CLIENTDIRUSER_H__D373CAF4_C93F_44B6_B57A_0D8A5AAD8AEB__INCLUDED_)
#define AFX_CLIENTDIRUSER_H__D373CAF4_C93F_44B6_B57A_0D8A5AAD8AEB__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/* This ClientUser subclass handles output pertaining to folder objects - specifically, the
 * output of the "p4 dirs" and "p4 changes" commands.  Its structure is similar to ClientDepotUser,
 * so refer to that class if anything here doesn't make sense. */

class ClientDirUser : public ClientUser  
{
public:
	ClientDirUser();
	virtual ~ClientDirUser();
	/* This function handles "p4 dirs" by default, but calls OutputChanges if changeflag is set.*/
	void OutputInfo(char, const_char *);
	/* OutputChanges() dumps "p4 changes" output into a StrBuf. */
	void OutputChanges(const_char *);

	ListList dirs; //Holds a list of directory names in StrBuf form.
	StrBuf changes; //Holds "p4 changes" output.
	BOOL changeflag; //This flag should be set true if the command is "p4 changes".
	short results; //MAXRESULTS checker.
	int maxresults;
};

#endif // !defined(AFX_CLIENTDIRUSER_H__D373CAF4_C93F_44B6_B57A_0D8A5AAD8AEB__INCLUDED_)
