Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

FontBase.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00015 #ifndef _FontBase_H_
00016 #define _FontBase_H_
00017 
00018 #include <string>
00019 
00020 namespace hippodraw
00021 {
00023   namespace FontWeight
00024   {
00025     enum weight{ Light, Normal, DemiBold, Bold, Black, Invisible };
00026   }
00027 }
00028 
00033 class FontBase
00034 {
00035   
00036 protected:
00037   
00039   FontBase() {};
00040   
00042   FontBase ( const std::string & family, 
00043              int pointsize = 12,
00044              int weight = hippodraw::FontWeight::Normal, 
00045              bool italic = false );
00046 
00047 public:
00048   
00050   virtual ~FontBase(){};
00051   
00053   virtual std::string family() const = 0;
00054   
00056   virtual void setFamily( const std::string & family ) = 0;
00057   
00059   virtual int pointSize() const = 0;
00060   
00062   virtual void setPointSize( int pointsize ) = 0;
00063   
00065   virtual int weight() const = 0;
00066   
00068   virtual void setWeight( int weight ) = 0;
00069   
00072   virtual bool italic () const = 0;
00073   
00075   virtual void setItalic( bool enable ) = 0;
00076   
00077 };
00078 
00079 #endif  //_FontBase_H_

Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3