Ticket #3742: restore_selection_v1.2.patch

File restore_selection_v1.2.patch, 7.1 KB (added by Imarok, 8 years ago)

Again whitespaces...

  • binaries/data/mods/public/gui/replaymenu/replay_actions.js

     
    11/**
     2 * Creates the data for restoring selection, order and filters when returning to the replay menu
     3 */
     4function createReplayMenuData(selectedDirectory)
     5{
     6    return {
     7        "selectedDirectory": selectedDirectory,
     8        "selectedColumn": Engine.GetGUIObjectByName("replaySelection").selected_column,
     9        "selectedColumnOrder": Engine.GetGUIObjectByName("replaySelection").selected_column_order,
     10        "selectedFilters": {
     11            "date": Engine.GetGUIObjectByName("dateTimeFilter").selected,
     12            "playernames": Engine.GetGUIObjectByName("playersFilter").caption,
     13            "mapName": Engine.GetGUIObjectByName("mapNameFilter").selected,
     14            "mapSize": Engine.GetGUIObjectByName("mapSizeFilter").selected,
     15            "popCap": Engine.GetGUIObjectByName("populationFilter").selected,
     16            "duration": Engine.GetGUIObjectByName("durationFilter").selected
     17        }
     18    }
     19}
     20/**
    221 * Starts the selected visual replay, or shows an error message in case of incompatibility.
    322 */
    423function startReplay()
     
    2544    Engine.StartVisualReplay(replayDirectory);
    2645    Engine.SwitchGuiPage("page_loading.xml", {
    2746        "attribs": Engine.GetReplayAttributes(replayDirectory),
    28         "isNetworked" : false,
     47        "isNetworked": false,
    2948        "playerAssignments": {
    3049            "local":{
    3150                "name": translate("You"),
     
    3352            }
    3453        },
    3554        "savedGUIData": "",
    36         "isReplay" : true
     55        "isReplay": true,
     56        "replayMenuData": createReplayMenuData(replayDirectory)
    3757    });
    3858}
    3959
     
    7999    // Open summary screen
    80100    summary.isReplay = true;
    81101    summary.gameResult = translate("Scores at the end of the game.");
    82     summary.replayDirectory = g_ReplaysFiltered[selected].directory;
     102    summary.replayMenuData = createReplayMenuData(g_ReplaysFiltered[selected].directory);
    83103    Engine.SwitchGuiPage("page_summary.xml", summary);
    84104}
    85105
  • binaries/data/mods/public/gui/replaymenu/replay_menu.js

     
    4141/**
    4242 * Initializes globals, loads replays and displays the list.
    4343 */
    44 function init()
     44function init(data)
    4545{
     46    if (data && data.replayMenuData)
     47    {
     48        g_selectedReplayDirectory = data.replayMenuData.selectedDirectory;
     49        Engine.GetGUIObjectByName("dateTimeFilter").selected = data.replayMenuData.selectedFilters.date;
     50        Engine.GetGUIObjectByName("playersFilter").caption = data.replayMenuData.selectedFilters.playernames;
     51        Engine.GetGUIObjectByName("mapNameFilter").selected = data.replayMenuData.selectedFilters.mapName;
     52        Engine.GetGUIObjectByName("mapSizeFilter").selected = data.replayMenuData.selectedFilters.mapSize;
     53        Engine.GetGUIObjectByName("populationFilter").selected = data.replayMenuData.selectedFilters.popCap;
     54        Engine.GetGUIObjectByName("durationFilter").selected = data.replayMenuData.selectedFilters.duration;
     55        Engine.GetGUIObjectByName("replaySelection").selected_column = data.replayMenuData.selectedColumn;
     56        Engine.GetGUIObjectByName("replaySelection").selected_column_order = data.replayMenuData.selectedColumnOrder;
     57    }
     58
    4659    if (!g_Settings)
    4760    {
    4861        Engine.SwitchGuiPage("page_pregame.xml");
  • binaries/data/mods/public/gui/session/session.js

     
    6161
    6262/**
    6363 * Not constant as we add "gaia".
    64  **/
     64 */
    6565var g_CivData = {};
    6666
     67/**
     68 * For restoring selection, order and filters when returning to the replay menu
     69 */
     70var g_ReplayMenuData;
     71
    6772var g_PlayerAssignments = { "local": { "name": translate("You"), "player": 1 } };
    6873
    6974/**
     
    213218        g_PlayerAssignments = initData.playerAssignments;
    214219        g_MatchID = initData.attribs.matchID;
    215220
     221        g_ReplayMenuData = initData.replayMenuData;
     222
    216223        // Cache the player data
    217224        // (This may be updated at runtime by handleNetMessage)
    218225        g_Players = getPlayerData(g_PlayerAssignments);
     
    473480        Engine.SaveReplayMetadata(JSON.stringify(summary));
    474481
    475482    summary.replayDirectory = Engine.GetCurrentReplayDirectory();
     483    summary.replayMenuData = g_ReplayMenuData;
    476484
    477485    Engine.EndGame();
    478486
  • binaries/data/mods/public/gui/summary/summary.js

     
    134134    if (Engine.HasXmppClient())
    135135        Engine.StopXmppClient();
    136136
    137     Engine.StartVisualReplay(g_GameData.replayDirectory);
     137    Engine.StartVisualReplay(g_GameData.replayMenuData.selectedDirectory);
    138138    Engine.SwitchGuiPage("page_loading.xml", {
    139         "attribs": Engine.GetReplayAttributes(g_GameData.replayDirectory),
    140         "isNetworked" : false,
     139        "attribs": Engine.GetReplayAttributes(g_GameData.replayMenuData.selectedDirectory),
     140        "isNetworked": false,
    141141        "playerAssignments": {
    142             "local" : {
     142            "local": {
    143143                "name": translate("You"),
    144144                "player": -1
    145145            }
    146146        },
    147147        "savedGUIData": "",
    148         "isReplay" : true
     148        "isReplay": true,
     149        "replayMenuData" : g_GameData.replayMenuData
    149150    });
    150151}
    151152
     
    159160    Engine.GetGUIObjectByName("timeElapsed").caption = sprintf(translate("Game time elapsed: %(time)s"), { "time": timeToString(data.timeElapsed) });
    160161    Engine.GetGUIObjectByName("summaryText").caption = data.gameResult;
    161162    Engine.GetGUIObjectByName("mapName").caption = sprintf(translate("%(mapName)s - %(mapType)s"), { "mapName": translate(data.mapSettings.Name), "mapType": mapSize ? mapSize.LongName : (mapType ? mapType.Title : "") });
    162     Engine.GetGUIObjectByName("replayButton").hidden = g_GameData.isInGame || !g_GameData.replayDirectory;
     163    Engine.GetGUIObjectByName("replayButton").hidden = g_GameData.isInGame || !g_GameData.replayMenuData.selectedDirectory;
    163164
    164165    // Panels
    165166    g_PlayerCount = data.playerStates.length - 1;
  • binaries/data/mods/public/gui/summary/summary.xml

     
    187187                }
    188188                else if (g_GameData.isReplay)
    189189                {
    190                     Engine.SwitchGuiPage("page_replaymenu.xml");
     190                    Engine.SwitchGuiPage("page_replaymenu.xml", { "replayMenuData": g_GameData.replayMenuData });
    191191                }
    192192                else if (!Engine.HasXmppClient())
    193193                {