00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef __WPGPAINTINTERFACE_H__
00028 #define __WPGPAINTINTERFACE_H__
00029
00030 #include <libwpd/libwpd.h>
00031
00032 namespace libwpg
00033 {
00034
00035 class WPGPaintInterface {
00036 public:
00037 virtual ~WPGPaintInterface() {}
00038
00039
00040 virtual void startGraphics(const ::WPXPropertyList &propList) = 0;
00041
00042
00043 virtual void endGraphics() = 0;
00044
00045 virtual void setStyle(const ::WPXPropertyList &propList, const ::WPXPropertyListVector &gradient) = 0;
00046
00047 virtual void startLayer(const ::WPXPropertyList &propList) = 0;
00048
00049 virtual void endLayer() = 0;
00050
00051 virtual void startEmbeddedGraphics(const ::WPXPropertyList &propList) = 0;
00052
00053 virtual void endEmbeddedGraphics() = 0;
00054
00055
00056 virtual void drawRectangle(const ::WPXPropertyList& propList) = 0;
00057
00058 virtual void drawEllipse(const ::WPXPropertyList& propList) = 0;
00059
00060 virtual void drawPolygon(const ::WPXPropertyListVector &vertices) = 0;
00061
00062 virtual void drawPolyline(const ::WPXPropertyListVector &vertices) = 0;
00063
00064 virtual void drawPath(const ::WPXPropertyListVector &path) = 0;
00065
00066
00067 virtual void drawGraphicObject(const ::WPXPropertyList &propList, const ::WPXBinaryData &binaryData) = 0;
00068
00069
00070 virtual void startTextObject(const ::WPXPropertyList &propList, const ::WPXPropertyListVector &path) = 0;
00071 virtual void endTextObject() = 0;
00072
00073 virtual void startTextLine(const ::WPXPropertyList &propList) = 0;
00074 virtual void endTextLine() = 0;
00075
00076 virtual void startTextSpan(const ::WPXPropertyList &propList) = 0;
00077 virtual void endTextSpan() = 0;
00078
00079 virtual void insertText(const ::WPXString &str) = 0;
00080 };
00081
00082 }
00083
00084 #endif // __WPGPAINTINTERFACE_H__
00085