00001 /* -*- mode: c++ -*- */ 00002 00014 #ifndef _TextPlotter_H_ 00015 #define _TextPlotter_H_ 00016 00017 #include "PlotterBase.h" 00018 00019 class TextDataRep; 00020 class TextRepBase; 00021 00036 class MDL_HIPPOPLOT_API TextPlotter : public PlotterBase 00037 { 00038 00039 private: 00040 00042 TextDataRep * m_datarep; 00043 00044 public: 00045 00047 TextPlotter (); 00048 00050 TextPlotter( const TextPlotter & plotter ); 00051 00053 ~TextPlotter(); 00054 00057 virtual PlotterBase * clone(); 00058 00060 bool hasNTupleBindings () const; 00061 00064 virtual void setRepresentation ( RepBase * ); 00065 00067 virtual RepBase * representation () const; 00068 00069 00070 virtual void addDataRep ( DataRep * rep ); 00071 virtual int getNumDataReps () const; 00072 virtual DataRep * getDataRep ( int index ) const; 00073 virtual TransformBase * getTransform (); 00074 00075 virtual void setErrorDisplay ( hippodraw::Axes::Type axis, bool ); 00076 virtual bool errorDisplay ( hippodraw::Axes::Type axis ) const; 00077 00078 virtual void drawIn( ViewBase * view ); 00079 void setAxisModel ( AxisModelBase *, hippodraw::Axes::Type ); 00080 void setRepColor ( const Color & ); 00081 const Color & repColor () const; 00082 00084 virtual float userToMarginX ( double x ) const; 00085 00087 virtual float userToMarginY ( double y ) const; 00088 00090 virtual float userToInvertedMarginY ( double y ) const; 00091 00092 virtual void marginToUserXY ( double mx, double my, bool scaled, 00093 double & ux, double & uy ) const; 00094 00098 const DataRep * getParentDataRep () const; 00099 00102 void setParentDataRep ( DataRep * ); 00103 00104 virtual void willDelete ( const Observable * observable ); 00105 00106 virtual NTuple * createNTuple () const; 00107 00108 virtual void update (); 00109 00110 }; 00111 00112 #endif // _TextPlotter_H_