AeBankEditor.h 1.27 KB
// AeBankEditor.h
//
// This class contains the abstract and concrete definitions
// for editor clients of the database.  Editors have both read
// and write access into the database.
//
// The AeBinEditor abstract class represents an editor for assets
// according to their type or bin.  It could also be called a list
// editor since the assets are viewed in a list.  This editor has
// lots of routines to support the list widget callbacks and must
// handle all the user input for each cell in the list.
//
// The AeAssetEditor, which edits all assets, and the AeBankEditor,
// which edits only bank assets, are implemented as AeBinEditors.
//

#ifndef __AeBankEditor__
#define __AeBankEditor__


#include "AeBinEditor.h"


template<class T> class GList;
class AeAsset;
class AeAssetBin;
class AeBankWindow;
class AeBankAsset;


class AeBankEditor : public AeBinEditor
{
public:
                        AeBankEditor (void);
    virtual	       	~AeBankEditor (void);

    void	       	SetBankAsset (AeBankAsset *);

protected:
    virtual Boolean	binHasUI (AeAssetBin *);

private:
    void		createAssetUIs (void);
    void		createAssetUIsRecurse (GList<AeAsset *> *);
    void		createRefAssetUIs (AeAsset *);

    AeBankAsset *	fBank;
    AeBankWindow *	fWindow;
};	




#endif // __AeBankEditor__