/********************************************************************
*
* File: fsCSingleItemPickListEntryGui.h
*
* Purpose: Single pick list item that can have multiples
*
*********************************************************************/
#ifndef gfCSingleItemPickListEntryGuihdr
#define gfCSingleItemPickListEntryGuihdr
#include <fsCore/src/fsCUniqueId.h>
#include "gfIHintablePickListEntry.h"
class gfCSingleItemPickListEntryGui : public gfIHintablePickListEntry
{
friend class fsCComponentFactory;
public:
static const fsCUniqueId mTypeId;
virtual ~gfCSingleItemPickListEntryGui() = default;<--- Destructor in derived class
protected:
void entitiesMakeCollectableDo(fsS32 pTotalEntitiesToCollect) override;
void initialiseFromVariableTableDo(const fsCVariableTable& pVars) override;
void serialiseDo() override;
void deserialiseDo() override;
void deactivateDo() override;
void activateDo(std::vector<fsCEntity*> pMyEntities) override;
fsBool transitionOnUpdate(fsS32 pDeltaMs) override;
fsBool transitionOffUpdate(fsS32 pDeltaMs) override;
fsBool entityCollectedHandle() override;
static fsIComponent* create(fsCEntity* pParent);
gfCSingleItemPickListEntryGui(fsCEntity* pParent);
private:
void textUpdate() const;
fsBool mVisible;
fsStr mStringKey;
};
#endif