better handling of pasting a game without PGN tags
authorH.G. Muller <h.g.muller@hccnet.nl>
Sun, 12 Jul 2009 01:22:17 +0000 (18:22 -0700)
committerArun Persaud <arun@nubati.net>
Sun, 12 Jul 2009 01:22:17 +0000 (18:22 -0700)
patch in wclipbrd.h to make it smarter to decide between pasting a game or a position so it can handle games without PGN tags. If it doesn't parse as a FEN it is assumed to be a game.

winboard/wclipbrd.c

index b187344..e3c677e 100644 (file)
@@ -38,6 +38,7 @@
 \r
 /* Imports from winboard.c */\r
 extern HWND hwndMain;\r
 \r
 /* Imports from winboard.c */\r
 extern HWND hwndMain;\r
+Boolean ParseFEN(Board b, int *stm, char *FEN);\r
 \r
 /* File globals */\r
 static char *copyTemp;\r
 \r
 /* File globals */\r
 static char *copyTemp;\r
@@ -291,18 +292,24 @@ PasteGameFromClipboard()
 VOID PasteGameOrFENFromClipboard()\r
 {\r
   char *buf;\r
 VOID PasteGameOrFENFromClipboard()\r
 {\r
   char *buf;\r
-  char *tmp;\r
+//  char *tmp;\r
+  Board dummyBoard; int dummy; // [HGM] paste any\r
 \r
   if (!PasteTextFromClipboard(&buf)) {\r
     return;\r
   }\r
 \r
 \r
   if (!PasteTextFromClipboard(&buf)) {\r
     return;\r
   }\r
 \r
+#if 0\r
   tmp = buf;\r
   while( *tmp == ' ' || *tmp == '\t' || *tmp == '\r' || *tmp == '\n' ) {\r
       tmp++;\r
   }\r
 \r
   if( *tmp == '[' ) {\r
   tmp = buf;\r
   while( *tmp == ' ' || *tmp == '\t' || *tmp == '\r' || *tmp == '\n' ) {\r
       tmp++;\r
   }\r
 \r
   if( *tmp == '[' ) {\r
+#else\r
+  // [HGM] paste any: make still smarter, to allow pasting of games without tags, recognize FEN in stead\r
+  if(!ParseFEN(dummyBoard, &dummy, buf) ) {\r
+#endif\r
       PasteGameFromString( buf );\r
   }\r
   else {\r
       PasteGameFromString( buf );\r
   }\r
   else {\r