diff options
| author | Manolo Gouy <Manolo> | 2016-04-09 15:15:33 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2016-04-09 15:15:33 +0000 |
| commit | 8b672ee655aaee8e8a2002643846147997a8eaf8 (patch) | |
| tree | 1fd6d1e4d47273cf4a022f69f466d3bd7aa59a91 /src/drivers/WinAPI | |
| parent | d98a8e13e6eff36e3b428b5e5cb93019e23d644b (diff) | |
Rewrite fl_open_uri.cxx under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/drivers/WinAPI')
| -rw-r--r-- | src/drivers/WinAPI/Fl_WinAPI_System_Driver.H | 1 | ||||
| -rw-r--r-- | src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H index 3e5f06d39..6079b0721 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H +++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H @@ -75,6 +75,7 @@ public: virtual int filename_isdir(const char* n); virtual int filename_isdir_quick(const char* n); virtual const char *filename_ext(const char *buf); + virtual int open_uri(const char *uri, char *msg, int msglen); }; #endif // FL_WINAPI_SYSTEM_DRIVER_H diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx index 246a26521..95d94dfca 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx +++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx @@ -25,6 +25,7 @@ #include <stdio.h> #include <stdarg.h> #include <windows.h> +#include <shellapi.h> #include <wchar.h> #include <process.h> #include <locale.h> @@ -658,6 +659,12 @@ const char *Fl_WinAPI_System_Driver::filename_ext(const char *buf) { return q ? q : p; } +int Fl_WinAPI_System_Driver::open_uri(const char *uri, char *msg, int msglen) +{ + if (msg) snprintf(msg, msglen, "open %s", uri); + return (int)(ShellExecute(HWND_DESKTOP, "open", uri, NULL, NULL, SW_SHOW) > (void *)32); +} + // // End of "$Id$". // |
