Make book-edit function WB
[xboard.git] / winboard / wedittags.c
index 22a23ab..2ec157d 100644 (file)
@@ -73,6 +73,10 @@ EditTagsDialog(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
     EnableWindow(GetDlgItem(hDlg, OPT_TagsCancel), canEditTags);\r
     EnableWindow(GetDlgItem(hDlg, OPT_EditTags), !canEditTags);\r
     SendMessage(hwndText, EM_SETREADONLY, !canEditTags, 0);\r
+    if (bookUp) {\r
+      SetWindowText(hDlg, _("Edit Book"));\r
+      SetFocus(hwndText);\r
+    } else\r
     if (canEditTags) {\r
       SetWindowText(hDlg, _("Edit Tags"));\r
       SetFocus(hwndText);\r
@@ -127,8 +131,9 @@ EditTagsDialog(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
          else\r
            *p++ = *q++;\r
        }\r
-       *p = NULLCHAR;\r
-        if(resPtr) *resPtr = strdup(str), err = 0; else\r
+       *p = NULLCHAR; err = 0;\r
+        if(resPtr) *resPtr = strdup(str); else\r
+       if(bookUp) SaveToBook(str); else\r
        err = ReplaceTags(str, &gameInfo);\r
        if (err) DisplayError(_("Error replacing tags."), err);\r
 \r
@@ -173,7 +178,7 @@ VOID TagsPopDown(void)
 {\r
   if (editTagsDialog) ShowWindow(editTagsDialog, SW_HIDE);\r
   CheckMenuItem(GetMenu(hwndMain), IDM_Tags, MF_UNCHECKED);\r
-  editTagsUp = FALSE;\r
+  editTagsUp = bookUp = FALSE;\r
 }\r
 \r
 \r
@@ -230,7 +235,7 @@ VOID EditTagsPopUp(char *tags, char **dest)
 \r
 VOID EditTagsProc()\r
 {\r
-  if (editTagsUp) {\r
+  if (editTagsUp && !bookUp) {\r
     TagsPopDown();\r
   } else {\r
     EditTagsEvent();\r