Plasma
glapplet.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef PLASMA_GLAPPLET_H
00021 #define PLASMA_GLAPPLET_H
00022
00023 #include <plasma/applet.h>
00024
00025 #include <QtOpenGL/QGLWidget>
00026
00027 namespace Plasma
00028 {
00029
00030 class GLAppletPrivate;
00031
00037 class PLASMA_EXPORT GLApplet : public Applet
00038 {
00039 Q_OBJECT
00040
00041 public:
00049 GLApplet(QGraphicsItem *parent,
00050 const QString &serviceId,
00051 int appletId);
00052
00063 GLApplet(QObject *parent, const QVariantList &args);
00064
00065 ~GLApplet();
00066
00067 GLuint bindTexture(const QImage &image, GLenum target = GL_TEXTURE_2D);
00068 void deleteTexture(GLuint texture_id);
00069
00075 virtual void paintGLInterface(QPainter *painter,
00076 const QStyleOptionGraphicsItem *option);
00077 void makeCurrent();
00078 private:
00079 virtual void paintInterface(QPainter *painter,
00080 const QStyleOptionGraphicsItem *option,
00081 const QRect &contentsRect);
00082 private:
00083 GLAppletPrivate *const d;
00084 };
00085
00086 }
00087
00088 #endif