X-Git-Url: http://winboard.nl/cgi-bin?p=xboard.git;a=blobdiff_plain;f=dialogs.h;h=99b01e40e46dda6bcd7ed5789103ceffa77a88de;hp=d566b7d4cb4713cb269798459397273e2e13d0bb;hb=HEAD;hpb=37ba6fd87b2253e7ae140be53b49933cd5bc951e diff --git a/dialogs.h b/dialogs.h index d566b7d..99b01e4 100644 --- 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, 2014, 2015, 2016 Free Software Foundation, Inc. * ------------------------------------------------------------------------ * * GNU XBoard is free software: you can redistribute it and/or modify @@ -32,10 +32,11 @@ // int max X/E (w) (w) (w) (w) (w) (w) (w) (w) // void* handle X/E X/E X/E X/E X/E X X X X X // void* target X X X X/C C X X C C -// char* textValue E X/E * -// char ** choice X/E * X +// char* textValue X/E X/E * +// char ** choice C X/E * X // enum type X/E X/E X/E X/E X X X X X X X X -// char[] name X/E X/E X/E X/E X X X X X +// char * name X/E X/E X/E X/E X X X X X +// char ** font X X X X (GTK only) // File and Path options are like String (but get a browse button added in the dialog), and Slider // is like Spin. Menu can be PopUp or PopDown; both need the COMBO_CALLBACK bit (3) set! // (h) or (w) means the field optionally (when non-null) specifies the height or width of the main @@ -76,12 +77,30 @@ #define NO_OK (1 << 1) #define NO_CANCEL (1 << 2) +#define REPLACE (1 << 16) + #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, BrowserDlg, HistoryDlg, // persistent: no grab and reused +CommentDlg, TagsDlg, TextMenuDlg, InputBoxDlg, ChatDlg, DummyDlg, HistoryDlg, // persistent: no grab and reused GameListDlg, EngOutDlg, EvalGraphDlg, @@ -90,45 +109,64 @@ ErrorDlg, AskDlg, // this and beyond do grab mouse events (and are destroyed) FatalDlg, BoardWindow, +BrowserDlg, +MasterDlg, 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); 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; +extern WindowPlacement wpComment, wpTags, wpMoveHistory, wpMain, wpDualBoard, wpConsole; extern char *marked[]; extern Boolean shellUp[]; -extern Option textOptions[], typeOptions[]; +extern Option textOptions[], typeOptions[], dualOptions[], mainOptions[]; +extern Option historyOptions[], engoutOptions[], gamesOptions[], chatOptions[], tagsOptions[], commentOptions[]; +#define MAX_SIZE 130 +extern Boolean fontIsSet[], fontValid[][MAX_SIZE]; +extern int initialSquareSize; +extern char *fontTable[][MAX_SIZE]; +void GetPlacement P((DialogClass dlg, WindowPlacement *wp)); 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 AppendColorized P((Option *opt, char *s, int count)); +void Show P((Option *opt, int hide)); +int IcsHist P((int dir, Option *opt, DialogClass dlg)); +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 HardSetFocus P((Option *opt, DialogClass dlg)); +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 SetComboChoice P((Option *opt, int choice)); 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)); @@ -136,23 +174,47 @@ 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)); - -void InitDrawingParams P(()); // in xboard.c +void DisplayLogos P((Option *left, Option *right)); +void StartDir P((char *filter, char *newName)); +void Browse P((DialogClass dlg, char *label, char *proposed, char *ext, + Boolean pathFlag, char *mode, char **name, FILE **fp)); +void FileNamePopUpWrapper P((char *label, char *def, char *filter, FileProc proc, + Boolean pathFlag, char *openMode, char **openName, FILE **openFP)); + +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)); +void SlaveResize P((Option *opt)); int SetCurrentComboSelection P((Option *opt)); void BoxAutoPopUp P((char *buf)); +void ConsoleAutoPopUp P((char *buf)); 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)); +void DisplayHelp P((char *name)); +void WidgetEcho P((Option *opt, int n)); +int ErrorOK P((int n)); +void ApplyFont P((Option *opt, char *font)); +void LockBoardSize P((int after)); +void Preview P((int n, char *s)); +void DrawPosition P((int fullRedraw, Board b)); + // in ngamelist.c int GameListClicks P((int direction)); void SetFilter P((void)); -int SaveGameListAsText P((FILE *f)); - -