summaryrefslogtreecommitdiff
path: root/src/drivers/PicoSDL
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2016-04-17 14:22:02 +0000
committerMatthias Melcher <fltk@matthiasm.com>2016-04-17 14:22:02 +0000
commitcc57af841a11ee314efca6a434ff14bed51706e4 (patch)
treef3080908a464e23d2c24c3643a049afc4f449708 /src/drivers/PicoSDL
parenta4e5dc0267bf972b5897aec0f167b3e2d9488a8c (diff)
virtualizes fl_set_spot and fl_reset_spot
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11640 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/drivers/PicoSDL')
-rw-r--r--src/drivers/PicoSDL/Fl_PicoSDL_Screen_Driver.cxx13
-rw-r--r--src/drivers/PicoSDL/Fl_PicoSDL_System_Driver.cxx1
-rw-r--r--src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx30
3 files changed, 17 insertions, 27 deletions
diff --git a/src/drivers/PicoSDL/Fl_PicoSDL_Screen_Driver.cxx b/src/drivers/PicoSDL/Fl_PicoSDL_Screen_Driver.cxx
index 30377c0a9..c1a96e2cc 100644
--- a/src/drivers/PicoSDL/Fl_PicoSDL_Screen_Driver.cxx
+++ b/src/drivers/PicoSDL/Fl_PicoSDL_Screen_Driver.cxx
@@ -38,6 +38,7 @@ Fl_PicoSDL_Screen_Driver::Fl_PicoSDL_Screen_Driver()
{
}
+
Fl_PicoSDL_Screen_Driver::~Fl_PicoSDL_Screen_Driver()
{
}
@@ -118,12 +119,22 @@ double Fl_PicoSDL_Screen_Driver::wait(double time_to_wait)
break;
case SDL_MOUSEWHEEL:
break;
+ case SDL_KEYDOWN: // full keyboard support is a lot more complex
+ case SDL_KEYUP:
+ if (e.type==SDL_KEYDOWN) Fl::e_number = FL_KEYDOWN; else Fl::e_number = FL_KEYUP;
+ if (!window) break;
+ if (e.key.keysym.sym==SDLK_ESCAPE) {
+ Fl::e_keysym = FL_Escape;
+ Fl::handle(Fl::e_number, window);
+ }
+ break;
}
}
return 0.0;
}
+// FIXME: remove the stuff below
#include <FL/x.H>
#include <FL/Fl.H>
@@ -147,8 +158,6 @@ double Fl_PicoSDL_Screen_Driver::wait(double time_to_wait)
#if !defined(FL_DOXYGEN) // FIXME silence Doxygen warnings
-void fl_set_spot(int, int, int, int, int, int, Fl_Window*) { }
-void fl_reset_spot() { }
//const char *fl_filename_name(char const*) { return 0; }
void fl_clipboard_notify_change() { }
diff --git a/src/drivers/PicoSDL/Fl_PicoSDL_System_Driver.cxx b/src/drivers/PicoSDL/Fl_PicoSDL_System_Driver.cxx
index 7b3b9e4fb..6122ff5f1 100644
--- a/src/drivers/PicoSDL/Fl_PicoSDL_System_Driver.cxx
+++ b/src/drivers/PicoSDL/Fl_PicoSDL_System_Driver.cxx
@@ -29,7 +29,6 @@
Fl_System_Driver *Fl_System_Driver::newSystemDriver()
{
return new Fl_System_Driver();
-// return new Fl_PicoSDL_System_Driver();
}
diff --git a/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx b/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx
index 531e697d8..1c56b42b5 100644
--- a/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx
+++ b/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx
@@ -24,7 +24,7 @@
#include <FL/Fl.H>
#include <FL/Fl_WIndow.H>
-void Fl_Window_Driver::default_icons(Fl_RGB_Image const**, int) { }
+
const char *fl_local_alt = "alt";
const char *fl_local_ctrl = "ctrl";
@@ -38,6 +38,10 @@ Fl_Window_Driver *Fl_Window_Driver::newWindowDriver(Fl_Window *win)
}
+void Fl_Window_Driver::default_icons(Fl_RGB_Image const**, int) {
+}
+
+
Fl_PicoSDL_Window_Driver::Fl_PicoSDL_Window_Driver(Fl_Window *win)
: Fl_Pico_Window_Driver(win)
{
@@ -88,32 +92,9 @@ Fl_X *Fl_PicoSDL_Window_Driver::makeWindow()
}
-#if 0
-void Fl_PicoSDL_Window_Driver::flush_single()
-{
- if (!shown()) return;
- pWindow->make_current();
- Fl_X *i = Fl_X::i(pWindow);
- if (!i) return;
- fl_clip_region(i->region);
- i->region = 0;
- // SDL_RenderClear((SDL_Renderer*)i->xid);
- pWindow->draw();
- SDL_RenderPresent((SDL_Renderer*)i->xid);
-}
-#endif
-
-
void Fl_PicoSDL_Window_Driver::draw_end()
{
-// if (!shown()) return;
-// pWindow->make_current();
Fl_X *i = Fl_X::i(pWindow);
-// if (!i) return;
-// fl_clip_region(i->region);
-// i->region = 0;
-// // SDL_RenderClear((SDL_Renderer*)i->xid);
-// pWindow->draw();
SDL_RenderPresent((SDL_Renderer*)i->xid);
}
@@ -123,6 +104,7 @@ void Fl_PicoSDL_Window_Driver::make_current()
fl_window = pWindow->i->xid;
}
+
void Fl_PicoSDL_Window_Driver::show() {
if (!shown()) {
makeWindow();