grglyph.h

Go to the documentation of this file.
00001 #ifndef grglyph_h
00002 #define grglyph_h
00003 
00004 #include <InterViews/transformer.h>
00005 #include "graph.h"
00006 
00007 struct Object;
00008 class GrGlyph;
00009 
00010 class GrGlyphItem : public GraphItem {
00011 public:
00012    GrGlyphItem(Glyph* g, float scalex, float scaley, float rot);
00013    virtual ~GrGlyphItem();
00014    virtual void allocate(Canvas*, const Allocation&, Extension&);
00015    virtual void draw(Canvas*, const Allocation&) const;
00016    virtual void print(Printer*, const Allocation&) const;
00017 private:
00018    Transformer t_;
00019 };
00020 
00021 class GrGlyph : public Glyph {
00022 public:
00023    GrGlyph(Object*);
00024    virtual ~GrGlyph();
00025 
00026    virtual void request(Requisition&) const;
00027    virtual void draw(Canvas*, const Allocation&) const;
00028    
00029    void new_path();
00030    void move_to(Coord, Coord);
00031    void line_to(Coord, Coord);
00032    void control_point(Coord, Coord);
00033    void curve_to(Coord, Coord, Coord, Coord, Coord, Coord);
00034    void close_path();
00035    void stroke(int color, int brush);
00036    void fill(int color);
00037    void erase();
00038    void gif(const char*);
00039 
00040    Object** temp_objvar();
00041 private:
00042    DataVec* type_;
00043    DataVec* x_;
00044    DataVec* y_;
00045    Object* obj_;
00046    Glyph* gif_;
00047 };
00048 
00049 #endif
Generated on Mon Jun 13 08:10:23 2011 for NEURON by  doxygen 1.6.3