diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 114a878c64ce6f8223cfd22d76a20eb16d177e5e (patch) | |
tree | acaf47eb0fa12142d3896416a69e74cbf5a72242 /languages/cpp/app_templates/noatunvisual/plugin_impl.h | |
download | tdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.tar.gz tdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdevelop@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'languages/cpp/app_templates/noatunvisual/plugin_impl.h')
-rw-r--r-- | languages/cpp/app_templates/noatunvisual/plugin_impl.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/languages/cpp/app_templates/noatunvisual/plugin_impl.h b/languages/cpp/app_templates/noatunvisual/plugin_impl.h new file mode 100644 index 00000000..2a7de7b1 --- /dev/null +++ b/languages/cpp/app_templates/noatunvisual/plugin_impl.h @@ -0,0 +1,77 @@ + +#ifndef %{APPNAMEUC}_IMPL_H +#define %{APPNAMEUC}_IMPL_H + +struct SDL_Surface; + +/** + * @short This class is used for painting and supports some effects. + * Note: This is used in Blurscope. Feel free to remove this and + * implement your own drawing routines! + */ +template<class Pixel> class Bitmap +{ +public: + int width, height, extra; + Pixel *data; + + Bitmap(int e=0) : extra(e), data(0) { } + ~Bitmap() { delete[] data; } + + inline void addPixel(int x, int y, int bright1, int bright2); + void addVertLine(int x, int y, int y2, int br1, int br2); + + void fadeStar(); + + void size(int w,int h) + { + delete[] data; + width = w; + height = h; + data = new Pixel[w*h+extra]; + clear(); + } + + void clear() + { + memset(data,0,sizeof(Pixel)*(width*height+extra)); + } +}; + +/** + * @short This class does: + * o set up view + * o drawing routines. + */ +class %{APPNAME}View +{ +public: + %{APPNAME}View(int in); + ~%{APPNAME}View(); + +protected: + /** Screen initialization with SDL. Note, that you can initialize OpenGL with SDL! */ + void startVideo(); + /** SDL event queue */ + void checkInput(); + /** Used in Blurscope. Feel free to implement your own drawing routines! */ + void setupPalette(double dummy=0.0); + + /** Draw everything. */ + void repaint(); + +private: + /** used for pipelining */ + int mFd; + + /** SDL screen surface */ + SDL_Surface *surface; + Bitmap<unsigned short> outputBmp; + + bool fullscreen; + int width; + int height; +}; + +#endif // %{APPNAMEUC}_IMPL_H + |