00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef FIFE_COORDINATERENDERER_H
00023 #define FIFE_COORDINATERENDERER_H
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #include "view/rendererbase.h"
00034 #include "util/structures/rect.h"
00035
00036 namespace FIFE {
00037 class RenderBackend;
00038 class IFont;
00039
00040 class CoordinateRenderer: public RendererBase {
00041 public:
00047 CoordinateRenderer(RenderBackend* renderbackend, int32_t position);
00048
00049 CoordinateRenderer(const CoordinateRenderer& old);
00050
00051 RendererBase* clone();
00052
00055 virtual ~CoordinateRenderer();
00056
00057 void render(Camera* cam, Layer* layer, RenderList& instances);
00058 std::string getName() { return "CoordinateRenderer"; }
00059 void setColor(uint8_t r, uint8_t g, uint8_t b);
00060
00064 void setFont(IFont* font) { m_font = font; }
00065
00068 void setZoom(bool enable) { m_zoom = enable; }
00069
00070 static CoordinateRenderer* getInstance(IRendererContainer* cnt);
00071
00072 private:
00073 void adjustLayerArea();
00074
00075 Rect m_layer_area;
00076 Location m_tmploc;
00077 ExactModelCoordinate m_c;
00078 IFont* m_font;
00079 bool m_font_color;
00080 SDL_Color m_color;
00081 bool m_zoom;
00082 };
00083 }
00084
00085 #endif