summaryrefslogtreecommitdiffstats
path: root/noatun-plugins/nexscope/output.cpp
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit84da08d7b7fcda12c85caeb5a10b4903770a6f69 (patch)
tree2a6aea76f2dfffb4cc04bb907c4725af94f70e72 /noatun-plugins/nexscope/output.cpp
downloadtdeaddons-84da08d7b7fcda12c85caeb5a10b4903770a6f69.tar.gz
tdeaddons-84da08d7b7fcda12c85caeb5a10b4903770a6f69.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/kdeaddons@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'noatun-plugins/nexscope/output.cpp')
-rw-r--r--noatun-plugins/nexscope/output.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/noatun-plugins/nexscope/output.cpp b/noatun-plugins/nexscope/output.cpp
new file mode 100644
index 0000000..84885e2
--- /dev/null
+++ b/noatun-plugins/nexscope/output.cpp
@@ -0,0 +1,48 @@
+#include "nex.h"
+#include <stdlib.h>
+
+SDL_Surface *OutputSDL::surface=0;
+
+OutputSDL::OutputSDL()
+{
+ SDL_Init(SDL_INIT_VIDEO);
+
+ SDL_WM_SetCaption("Nex","noatun");
+
+ bool fullscreen=false;
+ Uint32 flags = SDL_SWSURFACE | (fullscreen ? SDL_FULLSCREEN : SDL_RESIZABLE);
+
+ surface = SDL_SetVideoMode(width, height, 32, flags);
+
+ SDL_ShowCursor(1);
+
+}
+
+
+OutputSDL::~OutputSDL()
+{
+ SDL_FreeSurface(surface);
+}
+
+
+int OutputSDL::display(Bitmap *source)
+{
+ memcpy(surface->pixels, source->pixels(), source->bytes());
+ SDL_UpdateRect(surface, 0, 0, 0, 0);
+
+ SDL_Event event;
+
+ while ( SDL_PollEvent(&event) > 0 )
+ {
+ switch (event.type)
+ {
+ case SDL_QUIT:
+ return Exit;
+ default:
+ break;
+ }
+ }
+ return None;
+}
+
+