00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef PAPYRUSCIRCLE_H
00020 #define PAPYRUSCIRCLE_H
00021
00022 #include <papyrus/arc.h>
00023
00040 namespace Papyrus
00041 {
00042
00053 class Circle : public Arc
00054 {
00055 protected:
00056
00057 Circle( double radius, Cairo::RefPtr<Cairo::Pattern> fill );
00058
00059 Circle( double radius,
00060 Cairo::RefPtr<Cairo::Pattern> fill,
00061 const LineStyle& outline
00062 );
00063
00064 public:
00065 typedef PapyrusSmartPointer<Circle> pointer;
00066
00068 static Circle::pointer create( double radius = 1.0,
00069 Cairo::RefPtr<Cairo::Pattern> fill = Cairo::RefPtr<Cairo::Pattern>()
00070 );
00071
00073 static Circle::pointer create( double radius,
00074 Cairo::RefPtr<Cairo::Pattern> fill,
00075 const LineStyle& outline
00076 );
00077
00078 ~Circle();
00079
00080 PAPYRUS_CLASS_NAME( "Circle" );
00081
00082 PAPYRUS_CLONE_METHOD( Circle );
00083
00084 };
00085
00086 }
00087
00088 #endif