#endif
#include "lists.h"
-#include "frontend.h"
extern char *wbOptions;
extern int gotPremove;
extern int blackPlaysFirst;
extern FILE *debugFP;
extern char* programVersion;
-extern ProcRef firstProgramPR, secondProgramPR;
extern Board boards[];
extern char marker[BOARD_RANKS][BOARD_FILES];
extern char lastMsg[MSG_SIZ];
#include <math.h>
#include "common.h"
+#include "frontend.h"
#include "backend.h"
#include "moves.h"
#include "gettext.h"
#define ZIPPY_MAX_GAMES 0
#define ZIPPY_REPLAY_TIMEOUT 120
+typedef VOIDSTAR ProcRef;
+#define NoProc ((ProcRef) 0)
+typedef VOIDSTAR InputSourceRef;
+
+typedef void (*DelayedEventCallback) P((void));
+
+typedef enum { Press, Release } ClickType;
+
typedef enum {
BeginningOfGame, MachinePlaysWhite, MachinePlaysBlack,
AnalyzeMode, AnalyzeFile, TwoMachinesPlay,
extern int chatCount;
extern char chatPartner[MAX_CHAT][MSG_SIZ];
+// Some prototypes of routines so general they should be available everywhere
+/* If status == 0, we are exiting with a benign message, not an error */
+void DisplayFatalError P((String message, int error, int status));
+void DisplayError P((String message, int error));
+
// [HGM] generally useful macros; there are way too many memory leaks...
#define FREE(x) if(x) free(x)
#define ASSIGN(x, y) if(x) free(x); x = strdup(y)
#include <stdio.h>
-typedef VOIDSTAR ProcRef;
-#define NoProc ((ProcRef) 0)
-typedef VOIDSTAR InputSourceRef;
-
char *T_ P((char *s));
void ModeHighlight P((void));
void SetICSMode P((void));
void SetMachineThinkingEnables P((void));
void DisplayTitle P((String title));
void DisplayMessage P((String message, String extMessage));
-void DisplayError P((String message, int error));
void DisplayMoveError P((String message));
-/* If status == 0, we are exiting with a benign message, not an error */
-void DisplayFatalError P((String message, int error, int status));
+void DisplayNote P((String message));
void DisplayInformation P((String message));
-void DisplayNote P((String message));
void AskQuestion P((String title, String question, String replyPrefix,
ProcRef pr));
void DisplayIcsInteractionTitle P((String title));
void StartLoadGameTimer P((long millisec));
void AutoSaveGame P((void));
-typedef void (*DelayedEventCallback) P((void));
void ScheduleDelayedEvent P((DelayedEventCallback cb, long millisec));
DelayedEventCallback GetDelayedEvent P((void));
void CancelDelayedEvent P((void));
// [HGM] mouse: next six used by mouse handler, which was moved to backend
extern int fromX, fromY, toX, toY;
-typedef enum { Press, Release } ClickType;
void PromotionPopUp P((void));
void DragPieceBegin P((int x, int y, Boolean instantly));
void DragPieceEnd P((int x, int y));
extern char *firstChessProgramNames;
void GreyRevert P((Boolean grey));
-void MarkMenuItem P((char *menuRef, int state));
void EnableNamedMenuItem P((char *menuRef, int state));
typedef struct FrontEndProgramStats_TAG {
// [HGM] bitmaps: put before incuding the bitmaps / pixmaps, to know how many piece types there are.
#include "common.h"
+#include "frontend.h"
#include "backend.h"
#include "xhistory.h"
#include "xedittags.h"
extern Menu menuBar[];
+void MarkMenuItem P((char *menuRef, int state));
void ErrorPopUp P((char *title, char *text, int modal));
void AppendEnginesToMenu P((char *list));
void LoadGameProc P((void));
}
void
-MarkMenuItem (char *menuRef, int state)
-{
- MenuItem *item = MenuNameToItem(menuRef);
-
- if(item) {
- Arg args[2];
- XtSetArg(args[0], XtNleftBitmap, state ? xMarkPixmap : None);
- XtSetValues(item->handle, args, 1);
- }
-}
-
-void
EnableNamedMenuItem (char *menuRef, int state)
{
MenuItem *item = MenuNameToItem(menuRef);
};
void
+MarkMenuItem (char *menuRef, int state)
+{
+ MenuItem *item = MenuNameToItem(menuRef);
+
+ if(item) {
+ Arg args[2];
+ XtSetArg(args[0], XtNleftBitmap, state ? xMarkPixmap : None);
+ XtSetValues(item->handle, args, 1);
+ }
+}
+
+void
GetWidgetText (Option *opt, char **buf)
{
Arg arg;