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

qpainter.h

00001 
00002 #ifndef __QPainter_h
00003 #define __QPainter_h
00004 
00005 #include "Xft.h"
00006 #include "Xrender.h"
00007 
00008 #include "qwidget.h"
00009 #include "qimage.h"
00010 
00011 class QColor : public QObject
00012 {
00013     int R, G, B;
00014 
00015 public:
00016     QColor(int r, int g, int b)
00017     {
00018         set(r, g, b);
00019     }
00020 
00021     int r() { return R; }
00022     int g() { return G; }
00023     int b() { return B; }
00024     void set(int r, int g, int b)
00025     {   
00026         R = r; G = g; B = b;
00027     }
00028 };
00029 
00030 class QPainter : public QObject
00031 {
00032 protected:
00033     class GPainterPrivate *d;
00034 
00035 public:
00036     enum RowOperation
00037     {
00038         CopyROP,
00039         AndROP,
00040         OrROP,
00041         XorROP
00042     };
00043 
00044     QPainter();
00045     ~QPainter();
00046 
00047     int X();
00048     int Y();
00049     QWidget *Handle();
00050     class GRect *GetClient();
00051 
00052     virtual void GetScale(double &x, double &y) { x = 1.0; y = 1.0; }
00053     
00054     virtual bool Begin(QWidget *w);
00055     virtual void End();
00056     virtual bool IsOk();
00057 
00058     virtual void SetClient(class GRect *r);
00059     virtual void PushClip(int x1, int y1, int x2, int y2);
00060     virtual void PopClip();
00061     virtual void EmptyClip();
00062     
00063     virtual void translate(int x, int y);
00064     virtual void setFore(int c);
00065     virtual void setBack(int c);
00066     virtual void setRasterOp(RowOperation i);
00067     virtual RowOperation rasterOp();
00068     virtual void setFont(class QFont &f);
00069 
00070     virtual void drawPoint(int x, int y);
00071     virtual void drawLine(int x1, int y1, int x2, int y2);
00072     virtual void drawRect(int x, int y, int wid, int height);
00073     virtual void drawArc(double cx, double cy, double radius);
00074     virtual void drawArc(double cx, double cy, double radius, double start, double end);
00075     virtual void fillArc(double cx, double cy, double radius);
00076     virtual void fillArc(double cx, double cy, double radius, double start, double end);
00077     virtual void drawImage(int x, int y, QImage &image, int sx, int sy, int sw, int sh, QImage::BlitOp op);
00078     virtual void drawText(int x, int y, char16 *text, int len, int *backColour, GRect *clip);
00079 };
00080 
00081 #endif

Generated on Wed Oct 26 14:46:51 2005 for Lgi by  doxygen 1.4.1