OSDN Git Service

first
[psychlops/cpp.git] / psychlops / platform / win32 / psychlops_io_clipboard_Win32.cpp
1 /*
2  *  psychlops_io_clipboard_Win32.cpp
3  *  Psychlops Standard Library (Win32)
4  *
5  *  Last Modified 2010/01/05 by Kenchi HOSOKAWA
6  *  (C) 2010 Kenchi HOSOKAWA, Kazushi MARUYA, Takao SATO
7  */
8
9 #include <string>\r
10 #include <windows.h>
11
12 #include "../../core/devices/psychlops_io_clipboard.h"
13
14
15 namespace Psychlops {\r
16 \r
17         std::string Clipboard::getText()\r
18         {\r
19                 HANDLE hClip;\r
20                 char* pText;\r
21                 std::string tmp;\r
22                 if ( OpenClipboard( NULL ) == FALSE ) {\r
23                         return tmp;\r
24                 }\r
25                 if ((hClip = GetClipboardData( CF_TEXT ) ) == NULL) {\r
26                         return tmp;\r
27                 } else {\r
28                         pText = (char*)GlobalLock( hClip );\r
29                         tmp.append(pText);\r
30                         GlobalUnlock( hClip );\r
31                 }\r
32                 CloseClipboard();\r
33                 return tmp;\r
34         }\r
35
36 }       /*      <- namespace Psycholops         */