Skip to content

File evabElementBase.h

File List > src > evabElementBase.h

Go to the documentation of this file

#pragma once

#include <evabCoor.h>
#include <evabScreen.h>
#include <evabKeys.h>

namespace evab
{

  class ElementBase
  {
  public:
    virtual bool OnKey(Keys aKey);

    void Draw(Screen *aScreen, Coor aPos, Coor aSize, unsigned char aIsFocused);

    void Freeze();

  protected:
    bool isFrozen();
    virtual void drawer(Screen *aScreen, Coor aPos, Coor aSize, unsigned char aIsFocused) = 0;

    virtual void freezer() {};

    void redraw();

  private:
    unsigned short mSerialized = 0; 
  };

}