X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xhistory.c;h=1a0d2e5e57503a9158846ecbf8e46e492c3e1dfd;hb=222c259543a8125e7391106f8a6c0f9d9720efc9;hp=e8dd0b42c6ea6edf6919431ae381931831a93058;hpb=56310c5b198bc521e0a715377c68378b7bcf10a5;p=xboard.git diff --git a/xhistory.c b/xhistory.c index e8dd0b4..1a0d2e5 100644 --- a/xhistory.c +++ b/xhistory.c @@ -1,6 +1,7 @@ /* * New (WinBoard-style) Move history for XBoard * + * Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc. * ------------------------------------------------------------------------ * * GNU XBoard is free software: you can redistribute it and/or modify @@ -23,7 +24,6 @@ #include #include -#include #include #include @@ -48,6 +48,8 @@ #include "common.h" #include "frontend.h" #include "backend.h" +#include "xhistory.h" +#include "xboard.h" #include "gettext.h" #ifdef ENABLE_NLS @@ -58,42 +60,39 @@ # define N_(s) s #endif -// templates for calls into back-end +// templates for calls into back-end (= history.c; should be moved to history.h header shared with it!) void RefreshMemoContent P((void)); void MemoContentUpdated P((void)); void FindMoveByCharIndex P(( int char_index )); -int AppendText P((Option *opt, char *s)); -int GenericPopUp P((Option *option, char *title, int dlgNr)); -void MarkMenu P((char *item, int dlgNr)); -void GetWidgetText P((Option *opt, char **buf)); - +// variables in xoptions.c extern Option historyOptions[]; -extern Widget shells[10]; -extern Boolean shellUp[10]; // ------------- low-level front-end actions called by MoveHistory back-end ----------------- -void HighlightMove( int from, int to, Boolean highlight ) +void +HighlightMove (int from, int to, Boolean highlight) { if(highlight) XawTextSetSelection( historyOptions[0].handle, from, to ); // for lack of a better method, use selection for highighting } -void ClearHistoryMemo() +void +ClearHistoryMemo () { ClearTextWidget(&historyOptions[0]); } // the bold argument says 0 = normal, 1 = bold typeface // the colorNr argument says 0 = font-default, 1 = gray -int AppendToHistoryMemo( char * text, int bold, int colorNr ) +int +AppendToHistoryMemo (char * text, int bold, int colorNr) { - Arg args[10]; return AppendText(&historyOptions[0], text); // for now ignore bold & color stuff, as Xaw cannot handle that } -void ScrollToCurrent(int caretPos) +void +ScrollToCurrent (int caretPos) { Arg args[10]; char *s; @@ -136,17 +135,20 @@ Option historyOptions[] = { // ------------ standard entry points into MoveHistory code ----------- -Boolean MoveHistoryIsUp() +Boolean +MoveHistoryIsUp () { return shellUp[7]; } -Boolean MoveHistoryDialogExists() +Boolean +MoveHistoryDialogExists () { return shells[7] != NULL; } -void HistoryPopUp() +void +HistoryPopUp () { if(GenericPopUp(historyOptions, _("Move list"), 7)) XtOverrideTranslations(historyOptions[0].handle, XtParseTranslationTable(historyTranslations)); @@ -154,11 +156,7 @@ void HistoryPopUp() } void -HistoryShowProc(w, event, prms, nprms) - Widget w; - XEvent *event; - String *prms; - Cardinal *nprms; +HistoryShowProc (Widget w, XEvent *event, String *prms, Cardinal *nprms) { if (!shellUp[7]) { ASSIGN(historyText, ""); @@ -168,15 +166,3 @@ HistoryShowProc(w, event, prms, nprms) } else PopDown(7); ToNrEvent(currentMove); } - -// duplicate of code in winboard.c, so an move to back-end! -void -HistorySet( char movelist[][2*MOVE_LEN], int first, int last, int current ) -{ - MoveHistorySet( movelist, first, last, current, pvInfoList ); - - EvalGraphSet( first, last, current, pvInfoList ); - - MakeEngineOutputTitle(); -} -