Remember window params of slave board
authorH.G. Muller <h.g.muller@hccnet.nl>
Tue, 19 Feb 2013 17:52:41 +0000 (18:52 +0100)
committerH.G. Muller <h.g.muller@hccnet.nl>
Tue, 19 Feb 2013 18:10:45 +0000 (19:10 +0100)
The slave board now has been assigned a WindowPlacement, which is also
saved in the settings file, through new options -slaveX/Y/W/H.

args.h
dialogs.h
gtk/xboard.c
gtk/xoptions.c
xaw/xboard.c

diff --git a/args.h b/args.h
index 43d5203..469bc49 100644 (file)
--- a/args.h
+++ b/args.h
@@ -772,6 +772,12 @@ ArgDescriptor argDescriptors[] = {
   { "gameListY", ArgY,   (void *) &wpGameList.y, TRUE, (ArgIniType) CW_USEDEFAULT },
   { "gameListW", ArgInt, (void *) &wpGameList.width, TRUE, (ArgIniType) CW_USEDEFAULT },
   { "gameListH", ArgInt, (void *) &wpGameList.height, TRUE, (ArgIniType) CW_USEDEFAULT },
+#if XBOARD
+  { "slaveX", ArgX,   (void *) &wpDualBoard.x, TRUE, (ArgIniType) CW_USEDEFAULT },
+  { "slaveY", ArgY,   (void *) &wpDualBoard.y, TRUE, (ArgIniType) CW_USEDEFAULT },
+  { "slaveW", ArgInt, (void *) &wpDualBoard.width, TRUE, (ArgIniType) CW_USEDEFAULT },
+  { "slaveH", ArgInt, (void *) &wpDualBoard.height, TRUE, (ArgIniType) CW_USEDEFAULT },
+#endif
   /* [AS] Layout stuff */
   { "moveHistoryUp", ArgBoolean, (void *) &wpMoveHistory.visible, TRUE, (ArgIniType) TRUE },
   { "moveHistoryX", ArgX,   (void *) &wpMoveHistory.x, TRUE, (ArgIniType) CW_USEDEFAULT },
index c237215..6d7e2b5 100644 (file)
--- a/dialogs.h
+++ b/dialogs.h
@@ -125,7 +125,7 @@ extern int dialogError;
 extern ButtonCallback *comboCallback;
 extern void *userLogo;
 
-extern WindowPlacement wpComment, wpTags, wpMoveHistory, wpMain;
+extern WindowPlacement wpComment, wpTags, wpMoveHistory, wpMain, wpDualBoard;
 extern char *marked[];
 extern Boolean shellUp[];
 extern Option textOptions[], typeOptions[], dualOptions[], mainOptions[];
index a1e8c0a..e4c62c4 100644 (file)
@@ -256,6 +256,7 @@ WindowPlacement wpEvalGraph;
 WindowPlacement wpEngineOutput;
 WindowPlacement wpGameList;
 WindowPlacement wpTags;
+WindowPlacement wpDualBoard;
 
 /* This magic number is the number of intermediate frames used
    in each half of the animation. For short moves it's reduced
index 9687090..607aae2 100644 (file)
@@ -634,7 +634,7 @@ AddHandler (Option *opt, DialogClass dlg, int nr)
 GtkWidget *shells[NrOfDialogs];
 DialogClass parents[NrOfDialogs];
 WindowPlacement *wp[NrOfDialogs] = { // Beware! Order must correspond to DialogClass enum
-    NULL, &wpComment, &wpTags, NULL, NULL, NULL, NULL, &wpMoveHistory, &wpGameList, &wpEngineOutput, &wpEvalGraph,
+    NULL, &wpComment, &wpTags, NULL, NULL, NULL, &wpDualBoard, &wpMoveHistory, &wpGameList, &wpEngineOutput, &wpEvalGraph,
     NULL, NULL, NULL, NULL, &wpMain
 };
 
index cdd93a9..a083e7c 100644 (file)
@@ -317,6 +317,7 @@ WindowPlacement wpEvalGraph;
 WindowPlacement wpEngineOutput;
 WindowPlacement wpGameList;
 WindowPlacement wpTags;
+WindowPlacement wpDualBoard;
 
 
 /* This magic number is the number of intermediate frames used