00001
00002
00014 #ifndef _RepBase_H_
00015 #define _RepBase_H_
00016
00017 #include "graphics/Color.h"
00018
00019 #include <string>
00020
00021
00022 class BinToColor;
00023 class DataSource;
00024 class ProjectorBase;
00025 class Range;
00026 class TransformBase;
00027 class ViewBase;
00028
00043 class MDL_HIPPOPLOT_API RepBase
00044 {
00045
00046 protected:
00047
00049 std::string m_name;
00050
00052 std::string m_text;
00053
00055 Color m_color;
00056
00058 static const Color s_desel_color;
00059
00061 float m_size;
00062
00064 bool m_desel;
00065
00068 bool m_highlite;
00069
00072 RepBase ( const char *, float size );
00073
00075 RepBase ( const RepBase & );
00076
00077 public:
00078
00080 virtual ~RepBase();
00081
00084 virtual RepBase * clone() = 0;
00085
00088 const std:: string & name () const;
00089
00091 virtual void setColor ( const Color & );
00092
00097 virtual void setStyle ( unsigned int style );
00098
00103 virtual unsigned int getStyle ( ) const;
00104
00106 void setText ( const std::string & text );
00107
00109 virtual const Color & getColor () const;
00110
00115 virtual const Color & color () const;
00116
00120 virtual void setSelected ( bool yes = true );
00121
00125 virtual bool isSelected () const;
00126
00134 virtual void setHighLighted ( bool yes );
00135
00137 float size () const;
00138
00140 void setSize ( float value );
00141
00145 virtual bool xError () const;
00146
00150 virtual bool yError () const;
00151
00154 virtual void setErrorOn ( const std::string & axis, bool yes = true );
00155
00162 virtual const BinToColor * getValueTransform ( ) const;
00163
00172 virtual void setValueTransform ( BinToColor * );
00173
00182 virtual void drawProjectedValues ( const DataSource * ntuple,
00183 TransformBase * transform,
00184 ViewBase * view ) = 0;
00185
00190 virtual void displayError ( ViewBase & view );
00191 };
00192
00193 #endif // _RepBase_H_