2 * wengineo.h -- Clipboard routines for WinBoard
4 * Copyright 2000, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
6 * Enhancements Copyright 2005 Alessandro Scotti
8 * ------------------------------------------------------------------------
10 * GNU XBoard is free software: you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation, either version 3 of the License, or (at
13 * your option) any later version.
15 * GNU XBoard is distributed in the hope that it will be useful, but
16 * WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program. If not, see http://www.gnu.org/licenses/. *
23 *------------------------------------------------------------------------
24 ** See the file ChangeLog for a revision history. */
26 // [HGM] define numbers to indicate icons, for referring to them in platform-independent way
29 #define nColorUnknown 3
35 // [HGM] same for output fields (note that there are two of each type, one per color)
41 #define nMemo 6 /* must match the ranking of the TextBox in following option list! */
43 #define STRIDE 7 /* must match the number of option in one pane! */
44 #define MEMO (nMemo-1)
46 /* Module variables */
49 #define LABEL_V_DISTANCE 1 /* Distance between label and memo */
50 #define SPLITTER_SIZE 4 /* Distance between first memo and second label */
54 enum ENGINE_STATE { STATE_UNKNOWN, STATE_THINKING, STATE_IDLE, STATE_PONDERING, STATE_ANALYZING };
56 extern int windowMode;
57 extern char exclusionHeader[];
58 extern int highTextStart[2], highTextEnd[2];
60 // back-end called by front-end
61 void SetEngineState( int which, enum ENGINE_STATE state, char * state_data );
63 // front-end called by back-end
64 void SetEngineColorIcon( int which );
65 void SetIcon( int which, int field, int nIcon );
66 void DoSetWindowText(int which, int field, char *s_label);
67 void InsertIntoMemo( int which, char * text, int where );
68 void DoClearMemo(int which);
69 void ResizeWindowControls( int mode );
70 int EngineOutputDialogExists();
71 void SetEngineOutputTitle( char *title );
72 void Collapse P((int colNr));
73 void InitEngineOutput P((Option *opt, Option *memo2)); // XB only
74 void DrawWidgetIcon P((Option *opt, int nIcon)); // XB only