AeAssetUI.h 1.14 KB
#ifndef __AeAssetUI__
#define __AeAssetUI__

#include "AeTypes.h"
#include "AeAsset.h"

template <class T> class GList;
class AeAsset;
class AeAssetBinUI;
class AeFieldUI;


class AeAssetUI
{
public:
                                AeAssetUI (AeAsset *);
    virtual			~AeAssetUI (void);

    AeAsset *			GetAsset (void) { return fAsset; }
    void			SetAsset (AeAsset * asset) { fAsset = asset; }

    int       			GetRow (void) { return fRow; }
    void			SetRow (int row);

    int       			GetLevel (void) { return fLevel; }
    void			SetLevel (int level);

    TAssetType			GetType (void);
    Pixmap			GetIcon (void);

    Boolean			IsOpen (void) { return fIsOpen; }
    void			SetOpen (Boolean isOpen);

    void			GetFieldString (AeFieldUI *, String);
    Boolean			VerifyAndSetFieldString (AeFieldUI *, String, Boolean * pChanged);
    Boolean			IsEditable (AeFieldUI *);

protected:
    Boolean			isFieldInUI (AeFieldUI *);
    void			updateWidth (AeFieldUI *, String, String);
    void			shiftString (String);
    void			stripString (String);

    AeAsset *			fAsset;
    int				fRow;
    int	  		     	fLevel;
    Boolean			fIsOpen;
};


#endif __AeAssetUI__