00001 //* Módulo : xysd.h 00002 // _Desc_ : Declara classe XYScaleDecorator. 00003 // _Autores_ : Camilo da Fonseca Freire. 00004 // _Data_ : 05 jul 96. 00005 00006 #ifndef __XYSD_H 00007 #define __XYSD_H 00008 00009 class XYAxis; 00010 00011 //* XYScaleDecorator 00012 // Classe abstrata responsável pela decoração da escala presente nos eixos. 00013 // Por decoração, entenda-se o "layout" da graduação que a escala repre 00014 // senta. 00015 class XYScaleDecorator 00016 { 00017 public: 00018 00019 //* Construtor e Destrutor 00020 //* Construtor da classe XYScaleDecorator 00021 XYScaleDecorator (void) {}; 00022 00023 //* Destrutor da classe XYScaleDecorator 00024 virtual ~XYScaleDecorator (void) {}; 00025 00026 //* Métodos de Draw 00027 //* Desenha a decoração no intervalo entre dois ticks de um eixo 00028 virtual void draw (const XYAxis* axis, int first_tick, int last_tick) const = 0; 00029 00030 //* BoundingBox 00031 //* Retorna menor retângulo que contém toda a decoração de um eixo 00032 virtual void boundingBox (const XYAxis* axis, int& xmin, 00033 int& ymin, int& xmax, 00034 int& ymax) const = 0; 00035 00036 }; 00037 00038 #endif 00039