Lock game an position file during writing
[xboard.git] / backend.h
index e9bd07b..0a290a9 100644 (file)
--- a/backend.h
+++ b/backend.h
@@ -110,6 +110,7 @@ extern char* programVersion;
 extern ProcRef firstProgramPR, secondProgramPR;
 extern Board boards[];
 extern char marker[BOARD_RANKS][BOARD_FILES];
+extern char lastMsg[MSG_SIZ];
 
 char *CmailMsg P((void));
 /* Tord: Added the useFEN960 parameter in PositionToFEN() below */
@@ -205,9 +206,11 @@ void GetMoveListEvent P((void));
 void ExitAnalyzeMode P((void));
 void AnalyzeModeEvent P((void));
 void AnalyzeFileEvent P((void));
+void MatchEvent P((int mode));
+void TypeInEvent P((char first));
+void TypeInDoneEvent P((char *move));
 void InitPosition P((int redraw));
 void NewSettingEvent P((int option, int *feature, char *command, int value));
-int WaitForSecond P((DelayedEventCallback x));
 void SettingsMenuIfReady P((void));
 void DoEcho P((void));
 void DontEcho P((void));
@@ -228,6 +231,7 @@ Boolean LoadPV P((int x, int y));
 Boolean LoadMultiPV P((int x, int y, char *buf, int index, int *start, int *end));
 void UnLoadPV P(());
 void MovePV P((int x, int y, int h));
+int PromoScroll P((int x, int y));
 
 char *StrStr P((char *string, char *match));
 char *StrCaseStr P((char *string, char *match));
@@ -275,8 +279,10 @@ typedef struct _ListGame {
     GameInfo gameInfo;      /*  Note that some entries may be NULL. */
 } ListGame;
  
+extern int opponentKibitzes;
 extern ChessSquare gatingPiece;
 extern List gameList;
+extern int lastLoadGameNumber;
 void ClearGameInfo P((GameInfo *));
 int GameListBuild P((FILE *));
 void GameListInitGameInfo P((GameInfo *));
@@ -292,14 +298,15 @@ extern Boolean set_cont_sequence P((char *new_seq));
 extern int wrap P((char *dest, char *src, int count, int width, int *lp));
 int Explode P((Board board, int fromX, int fromY, int toX, int toY));
 
-typedef enum { CheckBox, ComboBox, TextBox, Button, Spin, ResetButton,
-                  SaveButton, FileName, PathName, Slider, Message } Control;
+typedef enum { CheckBox, ComboBox, TextBox, Button, Spin, ResetButton, SaveButton,
+                FileName, PathName, Slider, Message, Fractional, Label, Break, EndMark } Control;
 
 typedef struct _OPT {   // [HGM] options: descriptor of UCI-style option
     int value;          // current setting, starts as default
     int min;
     int max;
     void *handle;       // for use by front end
+    void *target;       // for use by front end
     char *textValue;    // points to beginning of text value in name field
     char **choice;      // points to array of combo choices in cps->combo
     Control type;
@@ -401,5 +408,6 @@ extern ChessProgramStats programStats;
 extern int opponentKibitzes; // used by wengineo.c
 extern int errorExitStatus;\r
 void SettingsPopUp P((ChessProgramState *cps)); // [HGM] really in front-end, but CPS not known in frontend.h
+int WaitForEngine P((ChessProgramState *cps, DelayedEventCallback x));
 
 #endif /* _BACKEND */