Updated copyright notice to 2013
[xboard.git] / dialogs.h
index a8f791a..9c35f16 100644 (file)
--- a/dialogs.h
+++ b/dialogs.h
@@ -1,7 +1,7 @@
 /*
  * dialogs.h -- shared variables for generic dialog popup of XBoard
  *
- * Copyright 2000, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+ * Copyright 2000, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
  * ------------------------------------------------------------------------
  *
  * GNU XBoard is free software: you can redistribute it and/or modify
 #define MODAL 1
 #define NONMODAL 0
 
+/* Board widget numbers, MUST correspond to mainOptions array */
+
+#define W_MENU   0  // main menu bar
+#define W_ENGIN  6  // engine menu
+#define W_TITLE 10
+#define W_WHITE 12
+#define W_BLACK 13
+#define W_SMALL 15  // title in small layout
+#define W_MESSG 16 
+#define W_BUTTON 17 // button bar
+#define W_PAUSE 20
+#define W_BOARD 24
+#define W_MENUW 25
+#define W_MENUB 26
+#define W_DROP  27  // drop (popup) menu
 typedef enum {  // identifier of dialogs done by GenericPopup
 TransientDlg=0, // transient: grabs mouse events and is destroyed at pop-down (so other dialog can use this ID next time)
-CommentDlg, TagsDlg, TextMenuDlg, InputBoxDlg, NoDlg, DummyDlg, HistoryDlg, // persistent: no grab and reused
+CommentDlg, TagsDlg, TextMenuDlg, InputBoxDlg, ChatDlg, DummyDlg, HistoryDlg, // persistent: no grab and reused
 GameListDlg,
 EngOutDlg,
 EvalGraphDlg,
@@ -94,6 +110,7 @@ BrowserDlg,
 NrOfDialogs     // dummy for total
 } DialogClass;
 
+typedef int MemoCallback (Option *opt, int n, int x, int y, char *text, int index);
 typedef Option *PointerCallback(int n, int x, int y);
 typedef void ListBoxCallback(int n, int selected);
 typedef void ButtonCallback(int n);
@@ -101,36 +118,41 @@ typedef int OKCallback(int n);
 
 extern char commentTranslations[];
 extern char historyTranslations[];
-extern Pixel timerBackgroundPixel;
+//extern Pixel timerBackgroundPixel;
 extern int values[];
 extern ChessProgramState *currentCps;
 extern int dialogError;
 extern ButtonCallback *comboCallback;
+extern void *userLogo;
 
 extern WindowPlacement wpComment, wpTags, wpMoveHistory, wpMain;
 extern char *marked[];
 extern Boolean shellUp[];
-extern Option textOptions[], typeOptions[];
+extern Option textOptions[], typeOptions[], dualOptions[], mainOptions[];
 
 
 int DialogExists P((DialogClass n));
 int GenericPopUp P((Option *option, char *title, DialogClass dlgNr, DialogClass parent, int modal, int topLevel));
 int GenericReadout P((Option *currentOption, int selected));
 int PopDown P((DialogClass n));
+void MarkMenu P((char *item, int dlgNr));
 int AppendText P((Option *opt, char *s));
+void HighlightText P((Option *opt, int from, int to, Boolean highlight));
 void SetColor P((char *colorName, Option *box));
-void ColorChanged P((Widget w, XtPointer data, XEvent *event, Boolean *b));
+//void ColorChanged P((Widget w, XtPointer data, XEvent *event, Boolean *b));
 void SetInsertPos P((Option *opt, int pos));
 void HardSetFocus P((Option *opt));
+void CursorAtEnd P((Option *opt));
 void GetWidgetText  P((Option *opt, char **buf));
 void SetWidgetText  P((Option *opt, char *buf, int n));
 void GetWidgetState  P((Option *opt, int *state));
 void SetWidgetState  P((Option *opt, int state));
 void SetWidgetLabel P((Option *opt, char *buf));
 void SetDialogTitle  P((DialogClass dlg, char *title));
-void LoadListBox P((Option *opt, char *emptyText));
+void LoadListBox P((Option *opt, char *emptyText, int n1, int n2));
 void HighlightListBoxItem P((Option *opt, int nr));
 void HighlightWithScroll P((Option *opt, int sel, int max));
+void ScrollToCursor P((Option *opt, int pos));
 int  SelectedListBoxItem P((Option *opt));
 void BoardFocus P((void));
 void FocusOnWidget P((Option *opt, DialogClass dlg));
@@ -138,17 +160,23 @@ void UnCaret P((void));
 void SetIconName P((DialogClass dlg, char *name));
 int  ReadScroll P((Option *opt, float *top, float *bottom));
 void SetScroll P((Option *opt, float f));
-void AddHandler  P((Option *opt, int nr));
+void AddHandler  P((Option *opt, DialogClass dlg, int nr));
 void SendText P((int n));
-FILE *Browse P((DialogClass dlg, char *label, char *proposed, char *ext,
+void DisplayLogos P((Option *left, Option *right));
+void Browse P((DialogClass dlg, char *label, char *proposed, char *ext,
                        Boolean pathFlag, char *mode, char **name, FILE **fp));
 
-void InitDrawingParams P(()); // in xboard.c
+void InitDrawingParams P((int reload)); // in draw.c
+void InitDrawingHandle P((Option *opt));
+void ExposeRedraw P((Option *opt, int x, int y, int w, int h));
+void DrawLogo P((Option *opt, void *logo));
 void ErrorPopUp P((char *title, char *text, int modal));
 int  ShiftKeys P((void));
 void SetClockIcon P((int color));
 void DelayedLoad P((void));
 void DisplayTimerLabel P((Option *opt, char *color, long timer, int highlight));
+void SetWindowTitle P((char *text, char *title, char *icon));
+void SetupDropMenu P((void));
 Option *BoardPopUp P((int squareSize, int lineGap, void *clockFontThingy));
 
 int  SetCurrentComboSelection P((Option *opt));
@@ -157,10 +185,10 @@ void IcsKey P((int n));
 void ICSInputBoxPopUp P((void));
 void LoadOptionsPopUp P((DialogClass parent));
 void GameListOptionsPopUp P((DialogClass parent));
+void RefreshColor P((int source, int n));
+void SendString P((char *p));
 
 // in ngamelist.c
 int GameListClicks P((int direction));
 void SetFilter P((void));
-int SaveGameListAsText P((FILE *f));
-