diff options
author | Russ Allbery <rra@debian.org> | 2014-08-24 23:00:07 -0700 |
---|---|---|
committer | Russ Allbery <rra@debian.org> | 2014-08-24 23:00:07 -0700 |
commit | 89685066474290e1fae4a78c268c8f68f1f4fba3 (patch) | |
tree | a6a4b9f2f642a67e3379c7eeb27c197075bafeef /gtkgame.c | |
parent | 19a4a81badf6373c7259ca4c229a529be6e9a93f (diff) |
Imported Upstream version 1.03.001
Diffstat (limited to 'gtkgame.c')
-rw-r--r-- | gtkgame.c | 181 |
1 files changed, 95 insertions, 86 deletions
@@ -16,11 +16,11 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: gtkgame.c,v 1.871 2013/07/11 04:52:15 mdpetch Exp $ + * $Id: gtkgame.c,v 1.887 2014/07/27 16:01:14 plm Exp $ */ -#include "gnubgmodule.h" #include "config.h" +#include "gnubgmodule.h" #include "gtklocdefs.h" #include "gtkuidefs.h" @@ -85,9 +85,10 @@ #define KEY_ESCAPE -229 +#if (USE_BOARD3D && !USE_GTKUIMANAGER) /* Offset action to avoid predefined values */ #define MENU_OFFSET 50 - +#endif #if (USE_GTKUIMANAGER) static void TogglePanel(guint iType, guint iActionID, GtkToggleAction * action, @@ -97,7 +98,7 @@ static void ToolbarStyle(guint iType, guint iActionID, GtkRadioAction * action, GtkRadioAction * alt, gpointer user_data); #endif -char *newLang; +static char *newLang; /* Hack this for now to stop re-entering - should be fixed when menu switched to actions */ int inCallback = FALSE; @@ -191,8 +192,8 @@ static int fAutoCommand; #if (USE_GTKUIMANAGER) static void -ExecToggleActionCommand_internal(guint iWidgetType, guint iCommand, gchar * szCommand, - gpointer * widget, gpointer * widgetalt, gpointer user_data) +ExecToggleActionCommand_internal(guint UNUSED(iWidgetType), guint UNUSED(iCommand), gchar * szCommand, + gpointer * widget, gpointer * UNUSED(widgetalt), gpointer UNUSED(user_data)) { char sz[80]; @@ -207,8 +208,8 @@ ExecToggleActionCommand_internal(guint iWidgetType, guint iCommand, gchar * szCo } static void -ExecRadioActionCommand_internal(guint iWidgetType, guint iCommand, gchar * szCommand, - gpointer * widget, gpointer * widgetalt, gpointer user_data) +ExecRadioActionCommand_internal(guint UNUSED(iWidgetType), guint iCommand, gchar * UNUSED(szCommand), gpointer * widget, + gpointer * UNUSED(widgetalt), gpointer UNUSED(user_data)) { char sz[80]; @@ -231,8 +232,8 @@ ExecRadioActionCommand_internal(guint iWidgetType, guint iCommand, gchar * szCom } static void -ExecActionCommand_internal(guint iWidgetType, guint iCommand, gchar * szCommand, - gpointer * widget, gpointer * widgetalt, gpointer user_data) +ExecActionCommand_internal(guint UNUSED(iWidgetType), guint iCommand, gchar * szCommand, gpointer * UNUSED(widget), + gpointer * UNUSED(widgetalt), gpointer UNUSED(user_data)) { char sz[80]; @@ -251,6 +252,10 @@ ExecActionCommand_internal(guint iWidgetType, guint iCommand, gchar * szCommand, UserCommand(sz); return; + case CMD_ANALYSE_MATCH: + UserCommand("analyse match"); + UserCommand("show statistics match"); + return; default: UserCommand(szCommand); @@ -490,6 +495,10 @@ Command(gpointer UNUSED(p), guint iCommand, GtkWidget * widget) UserCommand(sz); return; + case CMD_ANALYSE_MATCH: + UserCommand(aszCommands[CMD_ANALYSE_MATCH]); + UserCommand(aszCommands[CMD_SHOW_STATISTICS_MATCH]); + return; default: UserCommand(aszCommands[iCommand]); @@ -520,11 +529,12 @@ GtkWidget *pwOldGrab; GtkWidget *pwBoard; GtkWidget *pwMain = NULL; -GtkWidget *pwMenuBar; +static GtkWidget *pwMenuBar; GtkWidget *pwToolbar; static GtkWidget *pwStatus; -GtkWidget *pwIDBox, *pwGnubgID; +static GtkWidget *pwIDBox; +GtkWidget *pwGnubgID; static GtkWidget *pwProgress; GtkWidget *pwMessageText; GtkWidget *pwPanelVbox; @@ -551,7 +561,7 @@ static int fullScreenOnStartup = FALSE; static guint nStdin, nDisabledCount = 1; /* Save state of windows for full screen */ -int showingPanels, showingIDs, maximised; +static int showingPanels, showingIDs, maximised; static gulong grabIdSignal; @@ -578,7 +588,7 @@ GTKSuspendInput(void) return; if (suspendCount == 0 && pwGrab && GDK_IS_WINDOW(gtk_widget_get_window(pwGrab))) { - /* Grab events so that the board window knows this is a re-entrant*/ + /* Grab events so that the board window knows this is a re-entrant */ /* call, and won't allow commands like roll, move or double. */ grabbedWidget = pwGrab; if (pwGrab == pwStop) { @@ -617,9 +627,6 @@ GTKResumeInput(void) static gboolean StdinReadNotify(GIOChannel * UNUSED(source), GIOCondition UNUSED(cond), gpointer UNUSED(p)) { - - char sz[2048], *pch; - #if HAVE_LIBREADLINE /* Handle "next turn" processing before more input (otherwise we might * not even have a readline handler installed!) */ @@ -629,7 +636,8 @@ StdinReadNotify(GIOChannel * UNUSED(source), GIOCondition UNUSED(cond), gpointer rl_callback_read_char(); return TRUE; -#endif +#else + char sz[2048], *pch; while (nNextTurn) NextTurnNotify(NULL); @@ -645,7 +653,6 @@ StdinReadNotify(GIOChannel * UNUSED(source), GIOCondition UNUSED(cond), gpointer if ((pch = strchr(sz, '\n'))) *pch = 0; - fInterrupt = FALSE; HandleCommand(sz, acTop); @@ -658,6 +665,7 @@ StdinReadNotify(GIOChannel * UNUSED(source), GIOCondition UNUSED(cond), gpointer Prompt(); return TRUE; +#endif } @@ -765,7 +773,7 @@ GTKSetDice(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pw)) char sz[13]; /* "set dice x y" */ if (!GTKGetManualDice(an)) { - sprintf(sz, "set dice %d %d", an[0], an[1]); + sprintf(sz, "set dice %u %u", an[0], an[1]); UserCommand(sz); } } @@ -1342,7 +1350,8 @@ GTKTranslate(const gchar * path, gpointer UNUSED(func_data)) #if (USE_GTKUIMANAGER) static void -ToolbarStyle(guint iType, guint iActionID, GtkRadioAction * action, GtkRadioAction * alt, gpointer user_data) +ToolbarStyle(guint UNUSED(iType), guint UNUSED(iActionID), GtkRadioAction * action, GtkRadioAction * UNUSED(alt), + gpointer UNUSED(user_data)) { guint actionID = gtk_radio_action_get_current_value(GTK_RADIO_ACTION(action)); /* If radio button has been selected set style */ @@ -1358,7 +1367,7 @@ ToolbarStyle(gpointer UNUSED(callback_data), guint callback_action, GtkWidget * } #endif -GtkClipboard *clipboard = NULL; +static GtkClipboard *clipboard = NULL; static void PasteIDs(void) @@ -1431,8 +1440,7 @@ CopyIDs(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pw)) return; } - sprintf(buffer, "%s %s\n%s %s\n", _("Position ID:"), - PositionID(msBoard()), _("Match ID:"), MatchIDFromMatchState(&ms)); + sprintf(buffer, "%s:%s\n", PositionID(msBoard()), MatchIDFromMatchState(&ms)); GTKTextToClipboard(buffer); @@ -1477,7 +1485,8 @@ CopyPositionID(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pw)) #if (USE_GTKUIMANAGER) static void -TogglePanel(guint iType, guint iActionID, GtkToggleAction * action, GtkToggleAction * alt, gpointer user_data) +TogglePanel(guint UNUSED(iType), guint iActionID, GtkToggleAction * action, GtkToggleAction * UNUSED(alt), + gpointer UNUSED(user_data)) { int f; gnubgwindow panel = 0; @@ -1640,7 +1649,7 @@ SwitchDisplayMode(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pw)) #if (USE_GTKUIMANAGER) static void -ToggleShowingIDs(GtkToggleAction * action, gpointer user_data) +ToggleShowingIDs(GtkToggleAction * action, gpointer UNUSED(user_data)) { int newValue = gtk_toggle_action_get_active(action); char *sz = g_strdup_printf("set gui showids %s", newValue ? "on" : "off"); @@ -2237,7 +2246,7 @@ SetEvalCommands(const char *szPrefix, evalcontext * pec, evalcontext * pecOrig) outputpostpone(); if (pec->nPlies != pecOrig->nPlies) { - sprintf(sz, "%s plies %d", szPrefix, pec->nPlies); + sprintf(sz, "%s plies %u", szPrefix, pec->nPlies); UserCommand(sz); } @@ -3128,7 +3137,7 @@ ReportBug(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pwEvent)) #if (USE_GTKUIMANAGER) static GtkActionEntry actionEntries[] = { - {"FileMenuAction", NULL, N_("_File")}, + {"FileMenuAction", NULL, N_("_File"), NULL, NULL, G_CALLBACK(NULL)}, {"FileNewAction", GTK_STOCK_NEW, N_("_New..."), "<control>N", NULL, G_CALLBACK(NewClicked)}, {"FileOpenAction", GTK_STOCK_OPEN, N_("_Open"), "<control>O", NULL, G_CALLBACK(GTKOpen)}, {"FileSaveAction", GTK_STOCK_SAVE, N_("_Save"), "<control>S", NULL, G_CALLBACK(GTKSave)}, @@ -3140,26 +3149,26 @@ static GtkActionEntry actionEntries[] = { {"FileExitAction", NULL, N_("_Quit"), "<control>Q", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_QUIT)}, #endif - {"EditMenuAction", NULL, N_("_Edit")}, + {"EditMenuAction", NULL, N_("_Edit"), NULL, NULL, G_CALLBACK(NULL)}, {"UndoAction", GTK_STOCK_UNDO, N_("_Undo"), "<control>Z", NULL, G_CALLBACK(GTKUndo)}, - {"CopyIDMenuAction", NULL, N_("_Copy ID to Clipboard")}, + {"CopyIDMenuAction", NULL, N_("_Copy ID to Clipboard"), NULL, NULL, G_CALLBACK(NULL)}, {"CopyGNUBGIDAction", NULL, N_("GNUbg ID"), "<control>C", NULL, G_CALLBACK(CopyIDs)}, {"CopyMatchIDAction", NULL, N_("Match ID"), "<control>M", NULL, G_CALLBACK(CopyMatchID)}, {"CopyPositionIDAction", NULL, N_("Position ID"), "<control>P", NULL, G_CALLBACK(CopyPositionID)}, - {"CopyAsMenuAction", NULL, N_("Copy as")}, + {"CopyAsMenuAction", NULL, N_("Copy as"), NULL, NULL, G_CALLBACK(NULL)}, {"CopyPosAsAsciiAction", NULL, N_("Position as ASCII"), NULL, NULL, G_CALLBACK(CommandCopy)}, {"CopyAsGammOnLineAction", NULL, N_("GammOnLine (HTML)"), NULL, NULL, G_CALLBACK(CopyAsGOL)}, {"PasteIDAction", GTK_STOCK_PASTE, N_("_Paste ID"), "<control>V", NULL, G_CALLBACK(PasteIDs)}, - {"ViewMenuAction", NULL, N_("_View")}, - {"PanelsMenuAction", NULL, N_("_Panels")}, + {"ViewMenuAction", NULL, N_("_View"), NULL, NULL, G_CALLBACK(NULL)}, + {"PanelsMenuAction", NULL, N_("_Panels"), NULL, NULL, G_CALLBACK(NULL)}, {"RestorePanelsAction", NULL, N_("Restore panels"), NULL, NULL, G_CALLBACK(ShowAllPanels)}, {"HidePanelsAction", NULL, N_("Hide panels"), NULL, NULL, G_CALLBACK(HideAllPanels)}, - {"ToolBarMenuAction", NULL, N_("_Toolbar")}, + {"ToolBarMenuAction", NULL, N_("_Toolbar"), NULL, NULL, G_CALLBACK(NULL)}, {"HideToolBarAction", NULL, N_("_Hide Toolbar"), NULL, NULL, G_CALLBACK(HideToolbar)}, {"ShowToolBarAction", NULL, N_("_Show Toolbar"), NULL, NULL, G_CALLBACK(ShowToolbar)}, @@ -3167,7 +3176,7 @@ static GtkActionEntry actionEntries[] = { {"SwitchModeAction", NULL, N_("Switch to xD view"), NULL, NULL, G_CALLBACK(SwitchDisplayMode)}, #endif - {"GameMenuAction", NULL, N_("_Game")}, + {"GameMenuAction", NULL, N_("_Game"), NULL, NULL, G_CALLBACK(NULL)}, {"RollAction", NULL, N_("_Roll"), "<control>R", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ROLL)}, {"FinishMoveAction", NULL, N_("_Finish move"), "<control>F", NULL, G_CALLBACK(FinishMove)}, {"DoubleAction", GNUBG_STOCK_DOUBLE, N_("_Double"), "<control>D", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_DOUBLE)}, @@ -3181,11 +3190,11 @@ static GtkActionEntry actionEntries[] = { {"SetCubeAction", NULL, N_("Set cube..."), NULL, NULL, G_CALLBACK(GTKSetCube)}, {"SetDiceAction", NULL, N_("Set _dice..."), NULL, NULL, G_CALLBACK(GTKSetDice)}, - {"SetTurnMenuAction", NULL, N_("Set _turn")}, + {"SetTurnMenuAction", NULL, N_("Set _turn"), NULL, NULL, G_CALLBACK(NULL)}, {"ClearTurnAction", NULL, N_("Clear turn"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CLEAR_TURN)}, - {"AnalyseMenuAction", NULL, N_("_Analyse")}, + {"AnalyseMenuAction", NULL, N_("_Analyse"), NULL, NULL, G_CALLBACK(NULL)}, {"EvaluateAction", NULL, N_("_Evaluate"), "<control>E", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_EVAL)}, {"HintAction", GNUBG_STOCK_HINT, N_("_Hint"), "<control>H", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_HINT)}, {"RolloutAction", NULL, N_("_Rollout"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ROLLOUT)}, @@ -3194,7 +3203,7 @@ static GtkActionEntry actionEntries[] = { {"AnalyseMatchAction", NULL, N_("Analyse match or session"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_MATCH)}, - {"ClearAnalysisMenuAction", NULL, N_("Clear analysis")}, + {"ClearAnalysisMenuAction", NULL, N_("Clear analysis"), NULL, NULL, G_CALLBACK(NULL)}, {"ClearAnalysisMoveAction", GTK_STOCK_CLEAR, N_("Move"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_CLEAR_MOVE)}, {"ClearAnalysisGameAction", GTK_STOCK_CLEAR, N_("_Game"), NULL, NULL, @@ -3202,21 +3211,21 @@ static GtkActionEntry actionEntries[] = { {"ClearAnalysisMatchOrSessionAction", GTK_STOCK_CLEAR, N_("_Match or session"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_CLEAR_MATCH)}, - {"CMarkMenuAction", NULL, N_("CMark")}, - {"CMarkCubeMenuAction", NULL, N_("Cube")}, + {"CMarkMenuAction", NULL, N_("CMark"), NULL, NULL, G_CALLBACK(NULL)}, + {"CMarkCubeMenuAction", NULL, N_("Cube"), NULL, NULL, G_CALLBACK(NULL)}, {"CMarkCubeClearAction", NULL, N_("Clear"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_CUBE_CLEAR)}, {"CMarkCubeShowAction", NULL, N_("Show"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_CUBE_SHOW)}, - {"CMarkMoveMenuAction", NULL, N_("Move")}, + {"CMarkMoveMenuAction", NULL, N_("Move"), NULL, NULL, G_CALLBACK(NULL)}, {"CMarkMoveClearAction", NULL, N_("Clear"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_MOVE_CLEAR)}, {"CMarkMoveShowAction", NULL, N_("Show"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_MOVE_SHOW)}, - {"CMarkGameMenuAction", NULL, N_("Game")}, + {"CMarkGameMenuAction", NULL, N_("Game"), NULL, NULL, G_CALLBACK(NULL)}, {"CMarkGameClearAction", NULL, N_("Clear"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_GAME_CLEAR)}, {"CMarkGameShowAction", NULL, N_("Show"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_GAME_SHOW)}, - {"CMarkMatchMenuAction", NULL, N_("Match")}, + {"CMarkMatchMenuAction", NULL, N_("Match"), NULL, NULL, G_CALLBACK(NULL)}, {"CMarkMatchClearAction", NULL, N_("Clear"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_MATCH_CLEAR)}, {"CMarkMatchShowAction", NULL, N_("Show"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_MATCH_SHOW)}, - {"RolloutMenuAction", NULL, N_("Rollout")}, + {"RolloutMenuAction", NULL, N_("Rollout"), NULL, NULL, G_CALLBACK(NULL)}, {"RolloutCubeAction", NULL, N_("Cube"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_ROLLOUT_CUBE)}, {"RolloutMoveAction", NULL, N_("Move"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_ROLLOUT_MOVE)}, {"RolloutGameAction", NULL, N_("Game"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_ROLLOUT_GAME)}, @@ -3241,7 +3250,7 @@ static GtkActionEntry actionEntries[] = { {"EvaluationSpeedAction", NULL, N_("Evaluation speed"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_SHOW_CALIBRATION)}, - {"SettingsMenuAction", NULL, N_("_Settings")}, + {"SettingsMenuAction", NULL, N_("_Settings"), NULL, NULL, G_CALLBACK(NULL)}, {"SettingsAnalysisAction", NULL, N_("_Analysis..."), NULL, NULL, G_CALLBACK(SetAnalysis)}, {"SettingsBoardAppearanceAction", NULL, N_("_Board Appearance..."), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_SET_APPEARANCE)}, @@ -3251,7 +3260,7 @@ static GtkActionEntry actionEntries[] = { {"SettingsOptionsAction", NULL, N_("_Options..."), NULL, NULL, G_CALLBACK(SetOptions)}, {"SettingsLanguageAction", NULL, N_("_Language..."), NULL, NULL, G_CALLBACK(SetLanguage)}, - {"GoMenuAction", NULL, N_("G_o")}, + {"GoMenuAction", NULL, N_("G_o"), NULL, NULL, G_CALLBACK(NULL)}, {"GoPreviousMarkedMoveAction", GNUBG_STOCK_GO_PREV_MARKED, N_("Previous marked move"), "<shift><control>Page_Up", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_PREV_MARKED)}, {"GoPreviousCMarkedMoveAction", GNUBG_STOCK_GO_PREV_CMARKED, N_("Previous cmarked move"), "<shift>Page_Up", NULL, @@ -3269,29 +3278,29 @@ static GtkActionEntry actionEntries[] = { {"GoNextMarkedMoveAction", GNUBG_STOCK_GO_NEXT_MARKED, N_("Next marked move"), "<shift><control>Page_Down", NULL, CMD_ACTION_CALLBACK_FROMID(CMD_NEXT_MARKED)}, - {"HelpMenuAction", NULL, N_("_Help")}, + {"HelpMenuAction", NULL, N_("_Help"), NULL, NULL, G_CALLBACK(NULL)}, {"HelpCommandsAction", NULL, N_("_Commands"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_HELP)}, {"HelpManualAllAboutAction", NULL, N_("_Manual (all about)"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_SHOW_MANUAL_ABOUT)}, {"HelpManualWebAction", NULL, N_("Manual (_web)"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_SHOW_MANUAL_WEB)}, - {"HelpAboutGNUBGAction", GTK_STOCK_ABOUT, N_("_About gnubg"), NULL, NULL, + {"HelpAboutGNUBGAction", GTK_STOCK_ABOUT, N_("_About GNU Backgammon"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_SHOW_VERSION)} }; static GtkToggleActionEntry toggleActionEntries[] = { - {"EditPositionAction", GTK_STOCK_EDIT, N_("_Edit Position"), NULL, NULL, G_CALLBACK(ToggleEdit)}, - - {"PanelGameRecordAction", NULL, N_("_Game record"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_GAMELIST)}, /* TOGGLE */ - {"PanelAnalysisAction", NULL, N_("_Analysis"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_ANALYSIS)}, /* TOGGLE */ - {"PanelCommentaryAction", NULL, N_("_Commentary"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_COMMENTARY)}, /* TOGGLE */ - {"PanelMessageAction", NULL, N_("_Message"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_MESSAGE)}, /* TOGGLE */ - {"PanelTheoryAction", NULL, N_("_Theory"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_THEORY)}, /* TOGGLE */ - {"PanelCommandAction", NULL, N_("Command"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_COMMAND)}, /* TOGGLE */ - - {"DockPanelsAction", NULL, N_("_Dock panels"), NULL, NULL, G_CALLBACK(ToggleDockPanels)}, - {"ShowIDStatusBarAction", NULL, N_("Show _ID in status bar"), NULL, NULL, G_CALLBACK(ToggleShowingIDs)}, /* TOGGLE */ - {"FullScreenAction", NULL, N_("Full screen"), "F11", NULL, G_CALLBACK(DoFullScreenMode)}, /* TOGGLE */ - {"PlayClockwiseAction", NULL, N_("Play _Clockwise"), NULL, NULL, G_CALLBACK(ToggleClockwise)} /* TOGGLE */ + {"EditPositionAction", GTK_STOCK_EDIT, N_("_Edit Position"), NULL, NULL, G_CALLBACK(ToggleEdit), FALSE}, + + {"PanelGameRecordAction", NULL, N_("_Game record"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_GAMELIST), FALSE}, /* TOGGLE */ + {"PanelAnalysisAction", NULL, N_("_Analysis"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_ANALYSIS), FALSE}, /* TOGGLE */ + {"PanelCommentaryAction", NULL, N_("_Commentary"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_COMMENTARY), FALSE}, /* TOGGLE */ + {"PanelMessageAction", NULL, N_("_Message"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_MESSAGE), FALSE}, /* TOGGLE */ + {"PanelTheoryAction", NULL, N_("_Theory"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_THEORY), FALSE}, /* TOGGLE */ + {"PanelCommandAction", NULL, N_("Command"), NULL, NULL, GENERIC_TOGGLE_CALLBACK_FROMID(TOGGLE_COMMAND), FALSE}, /* TOGGLE */ + + {"DockPanelsAction", NULL, N_("_Dock panels"), NULL, NULL, G_CALLBACK(ToggleDockPanels), FALSE}, + {"ShowIDStatusBarAction", NULL, N_("Show _ID in status bar"), NULL, NULL, G_CALLBACK(ToggleShowingIDs), FALSE}, /* TOGGLE */ + {"FullScreenAction", NULL, N_("Full screen"), "F11", NULL, G_CALLBACK(DoFullScreenMode), FALSE}, /* TOGGLE */ + {"PlayClockwiseAction", NULL, N_("Play _Clockwise"), NULL, NULL, G_CALLBACK(ToggleClockwise), FALSE} /* TOGGLE */ }; static GtkRadioActionEntry toolbarRadioActionEntries[] = { @@ -3306,7 +3315,7 @@ static GtkRadioActionEntry setTurnRadioActionEntries[] = { }; #else -GtkItemFactoryEntry aife[] = { +static GtkItemFactoryEntry aife[] = { {N_("/_File"), NULL, NULL, 0, "<Branch>", NULL}, {N_("/_File/_New..."), "<control>N", NewClicked, 0, "<StockItem>", GTK_STOCK_NEW}, @@ -3518,7 +3527,7 @@ GtkItemFactoryEntry aife[] = { {N_("/_Help/Manual (_web)"), NULL, Command, CMD_SHOW_MANUAL_WEB, NULL, NULL}, {N_("/_Help/-"), NULL, NULL, 0, "<Separator>", NULL}, - {N_("/_Help/_About gnubg"), NULL, Command, CMD_SHOW_VERSION, + {N_("/_Help/_About GNU Backgammon"), NULL, Command, CMD_SHOW_VERSION, "<StockItem>", GTK_STOCK_ABOUT} }; #endif @@ -3580,7 +3589,7 @@ FileDragDropped(GtkWidget * UNUSED(widget), GdkDragContext * UNUSED(drag_context gint UNUSED(x), gint UNUSED(y), GtkSelectionData * data, guint UNUSED(info), guint UNUSED(time)) { gchar **list; - list = g_uri_list_extract_uris((gchar *) gtk_selection_data_get_data(data)); + list = g_uri_list_extract_uris((const gchar *) gtk_selection_data_get_data(data)); if (list[0]) { char *next, *file, *quoted; @@ -3744,12 +3753,12 @@ CreateMainWindow(void) idMenu = gtk_menu_new(); - menu_item = gtk_menu_item_new_with_label(_("Copy Position ID")); + menu_item = gtk_menu_item_new_with_label(_("Copy GNUbg ID")); gtk_menu_shell_append(GTK_MENU_SHELL(idMenu), menu_item); gtk_widget_show(menu_item); g_signal_connect(G_OBJECT(menu_item), "activate", G_CALLBACK(CopyIDs), NULL); - menu_item = gtk_menu_item_new_with_label(_("Paste Position ID")); + menu_item = gtk_menu_item_new_with_label(_("Paste GNUbg ID")); gtk_menu_shell_append(GTK_MENU_SHELL(idMenu), menu_item); gtk_widget_show(menu_item); g_signal_connect(G_OBJECT(menu_item), "activate", G_CALLBACK(PasteIDs), NULL); @@ -3884,7 +3893,7 @@ InitGTK(int *argc, char ***argv) enum { RE_NONE, RE_LANGUAGE_CHANGE }; -int reasonExited; +static int reasonExited; extern void RunGTK(GtkWidget * pwSplash, char *commands, char *python_script, char *match) @@ -4205,7 +4214,7 @@ GTKOutputErr(const char *sz) GtkTextBuffer *buffer; GtkTextIter iter; - GTKMessage((char *) sz, DT_ERROR); + GTKMessage(sz, DT_ERROR); if (PanelShowing(WINDOW_MESSAGE)) { buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(pwMessageText)); @@ -4600,12 +4609,12 @@ GetRolloutSettings(GtkWidget * pw, rolloutwidget * prw) prw->rcRollout.fStopOnSTD = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(prw->prwGeneral->pwDoSTDStop)); prw->rcRollout.nMinimumGames = (unsigned int) gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(prw->prwGeneral->pwMinGames)); - prw->rcRollout.rStdLimit = gtk_spin_button_get_value(GTK_SPIN_BUTTON(prw->prwGeneral->pwMaxError)); + prw->rcRollout.rStdLimit = (float)gtk_spin_button_get_value(GTK_SPIN_BUTTON(prw->prwGeneral->pwMaxError)); prw->rcRollout.fStopOnJsd = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(prw->prwGeneral->pwJsdDoStop)); prw->rcRollout.nMinimumJsdGames = (unsigned int) gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(prw->prwGeneral->pwJsdMinGames)); - prw->rcRollout.rJsdLimit = gtk_spin_button_get_value(GTK_SPIN_BUTTON(prw->prwGeneral->pwJsdAdjLimit)); + prw->rcRollout.rJsdLimit = (float)gtk_spin_button_get_value(GTK_SPIN_BUTTON(prw->prwGeneral->pwJsdAdjLimit)); /* if the players are the same, copy player 0 settings to player 1 */ if (fPlayersAreSame) { @@ -4784,7 +4793,7 @@ RolloutPageGeneral(rolloutpagegeneral * prpw, rolloutwidget * prw) pwPage = gtk_vbox_new(FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(pwPage), 8); - prpw->padjSeed = GTK_ADJUSTMENT(gtk_adjustment_new(labs(prw->rcRollout.nSeed), 0, INT_MAX, 1, 1, 0)); + prpw->padjSeed = GTK_ADJUSTMENT(gtk_adjustment_new(prw->rcRollout.nSeed, 0, INT_MAX, 1, 1, 0)); prpw->padjTrials = GTK_ADJUSTMENT(gtk_adjustment_new(prw->rcRollout.nTrials, 1, 1296 * 1296, 36, 36, 0)); pw = gtk_hbox_new(FALSE, 0); @@ -5235,7 +5244,7 @@ SetRollouts(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pwIgnore)) } if (rw.rcRollout.nTrials != rcRollout.nTrials) { - sprintf(sz, "set rollout trials %d", rw.rcRollout.nTrials); + sprintf(sz, "set rollout trials %u", rw.rcRollout.nTrials); UserCommand(sz); } @@ -5245,7 +5254,7 @@ SetRollouts(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pwIgnore)) } if (rw.rcRollout.nMinimumGames != rcRollout.nMinimumGames) { - sprintf(sz, "set rollout limit minimumgames %d", rw.rcRollout.nMinimumGames); + sprintf(sz, "set rollout limit minimumgames %u", rw.rcRollout.nMinimumGames); UserCommand(sz); } @@ -5264,7 +5273,7 @@ SetRollouts(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pwIgnore)) } if (rw.rcRollout.nMinimumJsdGames != rcRollout.nMinimumJsdGames) { - sprintf(sz, "set rollout jsd minimumgames %d", rw.rcRollout.nMinimumJsdGames); + sprintf(sz, "set rollout jsd minimumgames %u", rw.rcRollout.nMinimumJsdGames); UserCommand(sz); } @@ -5281,7 +5290,7 @@ SetRollouts(gpointer UNUSED(p), guint UNUSED(n), GtkWidget * UNUSED(pwIgnore)) UserCommand(sz); } - if (labs(rw.rcRollout.nSeed) != labs(rcRollout.nSeed)) { + if (rw.rcRollout.nSeed != rcRollout.nSeed) { sprintf(sz, "set rollout seed %lu", rw.rcRollout.nSeed); UserCommand(sz); } @@ -5422,8 +5431,10 @@ GTKCubeHint(moverecord * pmr, const matchstate * pms, int did_double, int did_ta * pci: cubeinfo * fOUtputMWC: output in MWC or equity * - * FIXME: include arOutput in the dialog, so the the user + * FIXME: Include arOutput in the dialog, so the the user * can see how many gammons/backgammons she'll win. + * FIXME: This only handles the acceptance / refusal side. + * Comment on the resignation itself as well. */ extern void @@ -5587,8 +5598,6 @@ GTKProgressEnd(void) SetMouseCursor(0); } -int colWidth; - extern void GTKShowScoreSheet(void) { @@ -5693,7 +5702,7 @@ GtkShowEngine(GtkWidget * parent) szBuffer[0] = g_new0(char, 4096); szBuffer[1] = NULL; EvalStatus(szBuffer[0]); - ShowList(szBuffer, _("Evaluation engine"), parent); + ShowList(szBuffer, _("Evaluation Engine"), parent); } extern void @@ -5779,7 +5788,7 @@ GTKShowBuildInfo(GtkWidget * UNUSED(pw), GtkWidget * pwParent) } /* Stores names in credits so not duplicated in list at bottom */ -listOLD names; +static listOLD names; static void AddTitle(GtkWidget * pwBox, char *Title) @@ -6442,7 +6451,7 @@ GTKSet(void *p) /* Match stats variables */ #define FORMATGS_ALL -1 #define NUM_STAT_TYPES 4 -char *aszStatHeading[NUM_STAT_TYPES] = { +static char *aszStatHeading[NUM_STAT_TYPES] = { N_("Chequer Play Statistics:"), N_("Cube Statistics:"), N_("Luck Statistics:"), @@ -6451,10 +6460,10 @@ char *aszStatHeading[NUM_STAT_TYPES] = { static GtkWidget *statViews[NUM_STAT_TYPES], *statView; static int numStatGames; -GtkWidget *pwStatDialog; +static GtkWidget *pwStatDialog; int fGUIUseStatsPanel = TRUE; -GtkWidget *pswList; -GtkWidget *pwNotebook; +static GtkWidget *pswList; +static GtkWidget *pwNotebook; static void AddList(char *pStr, GtkWidget * view, const char *pTitle) @@ -6919,8 +6928,8 @@ UpdateMatchinfo(const char *pch, const char *szParam, char **ppch) } /* Variables for match info dialog */ -GtkWidget *apwRating[2], *pwDate, *pwEvent, *pwRound, *pwPlace, *pwAnnotator; -GtkTextBuffer *buffer; +static GtkWidget *apwRating[2], *pwDate, *pwEvent, *pwRound, *pwPlace, *pwAnnotator; +static GtkTextBuffer *buffer; static void MatchInfoOK(GtkWidget * pw, int *UNUSED(pf)) |