#ifndef COMANDOS_HH #define COMANDOS_HH #include "decoradores.hh" // Clase Aplicacioncita: actúa como cliente y como invocadora de los comandos. class Aplicacioncita { public: Aplicacioncita(); ~Aplicacioncita(); void leaComandos(); void crearCuadrado(int); void crearTriangulo(int); void crearRectangulo(int,int); private: Visual* objetoVisual; }; class Comando { public: virtual void ejecutar()=0; protected: Comando(){} }; // Clases comandos class CreeTriangulo : public Comando { public: CreeTriangulo(Aplicacioncita*,int); virtual void ejecutar(); private: int dimension; Aplicacioncita* app; }; class CreeCuadrado : public Comando { public: CreeCuadrado(Aplicacioncita*,int); virtual void ejecutar(); private: int dimension; Aplicacioncita* app; }; class CreeRectangulo : public Comando { public: CreeRectangulo(Aplicacioncita*,int,int); virtual void ejecutar(); private: int largo; int ancho; Aplicacioncita* app; }; #endif