Skip to content

Commit 2416019

Browse files
committed
[GEN][ZH] Move duplicate code to load replay with into new function (#984)
1 parent d7d52e8 commit 2416019

File tree

2 files changed

+50
-78
lines changed
  • GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus
  • Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus

2 files changed

+50
-78
lines changed

Generals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/ReplayMenu.cpp

Lines changed: 25 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -444,6 +444,26 @@ void reallyLoadReplay(void)
444444
}
445445
}
446446

447+
static void loadReplay(UnicodeString filename)
448+
{
449+
AsciiString asciiFilename;
450+
asciiFilename.translate(filename);
451+
452+
if(TheRecorder->testVersionPlayback(asciiFilename))
453+
{
454+
MessageBoxOkCancel(TheGameText->fetch("GUI:OlderReplayVersionTitle"), TheGameText->fetch("GUI:OlderReplayVersion"), reallyLoadReplay, NULL);
455+
}
456+
else
457+
{
458+
TheRecorder->playbackFile(asciiFilename);
459+
460+
if(parentReplayMenu != NULL)
461+
{
462+
parentReplayMenu->winHide(TRUE);
463+
}
464+
}
465+
}
466+
447467
//-------------------------------------------------------------------------------------------------
448468
/** single player menu window system callback */
449469
//-------------------------------------------------------------------------------------------------
@@ -490,28 +510,11 @@ WindowMsgHandledType ReplayMenuSystem( GameWindow *window, UnsignedInt msg,
490510
if( controlID == listboxReplayFilesID )
491511
{
492512
int rowSelected = mData2;
493-
513+
494514
if (rowSelected >= 0)
495515
{
496-
UnicodeString filename;
497-
filename = GetReplayFilenameFromListbox(listboxReplayFiles, rowSelected);
498-
499-
AsciiString asciiFilename;
500-
asciiFilename.translate(filename);
501-
502-
if(TheRecorder->testVersionPlayback(asciiFilename))
503-
{
504-
MessageBoxOkCancel(TheGameText->fetch("GUI:OlderReplayVersionTitle"), TheGameText->fetch("GUI:OlderReplayVersion"),reallyLoadReplay ,NULL);
505-
}
506-
else
507-
{
508-
TheRecorder->playbackFile(asciiFilename);
509-
510-
if(parentReplayMenu != NULL)
511-
{
512-
parentReplayMenu->winHide(TRUE);
513-
}
514-
}
516+
UnicodeString filename = GetReplayFilenameFromListbox(listboxReplayFiles, rowSelected);
517+
loadReplay(filename);
515518
}
516519
}
517520
break;
@@ -564,25 +567,8 @@ WindowMsgHandledType ReplayMenuSystem( GameWindow *window, UnsignedInt msg,
564567
}
565568

566569
filename = GetReplayFilenameFromListbox(listboxReplayFiles, selected);
567-
568-
AsciiString asciiFilename;
569-
asciiFilename.translate(filename);
570-
571-
if(TheRecorder->testVersionPlayback(asciiFilename))
572-
{
573-
MessageBoxOkCancel(TheGameText->fetch("GUI:OlderReplayVersionTitle"), TheGameText->fetch("GUI:OlderReplayVersion"),reallyLoadReplay ,NULL);
574-
}
575-
else
576-
{
577-
TheRecorder->playbackFile(asciiFilename);
578-
579-
if(parentReplayMenu != NULL)
580-
{
581-
parentReplayMenu->winHide(TRUE);
582-
}
583-
}
584-
585-
}
570+
loadReplay(filename);
571+
}
586572
} // end else if
587573
else if( controlID == buttonBackID )
588574
{

GeneralsMD/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/ReplayMenu.cpp

Lines changed: 25 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -444,6 +444,26 @@ void reallyLoadReplay(void)
444444
}
445445
}
446446

447+
static void loadReplay(UnicodeString filename)
448+
{
449+
AsciiString asciiFilename;
450+
asciiFilename.translate(filename);
451+
452+
if(TheRecorder->testVersionPlayback(asciiFilename))
453+
{
454+
MessageBoxOkCancel(TheGameText->fetch("GUI:OlderReplayVersionTitle"), TheGameText->fetch("GUI:OlderReplayVersion"), reallyLoadReplay, NULL);
455+
}
456+
else
457+
{
458+
TheRecorder->playbackFile(asciiFilename);
459+
460+
if(parentReplayMenu != NULL)
461+
{
462+
parentReplayMenu->winHide(TRUE);
463+
}
464+
}
465+
}
466+
447467
//-------------------------------------------------------------------------------------------------
448468
/** single player menu window system callback */
449469
//-------------------------------------------------------------------------------------------------
@@ -490,28 +510,11 @@ WindowMsgHandledType ReplayMenuSystem( GameWindow *window, UnsignedInt msg,
490510
if( controlID == listboxReplayFilesID )
491511
{
492512
int rowSelected = mData2;
493-
513+
494514
if (rowSelected >= 0)
495515
{
496-
UnicodeString filename;
497-
filename = GetReplayFilenameFromListbox(listboxReplayFiles, rowSelected);
498-
499-
AsciiString asciiFilename;
500-
asciiFilename.translate(filename);
501-
502-
if(TheRecorder->testVersionPlayback(asciiFilename))
503-
{
504-
MessageBoxOkCancel(TheGameText->fetch("GUI:OlderReplayVersionTitle"), TheGameText->fetch("GUI:OlderReplayVersion"),reallyLoadReplay ,NULL);
505-
}
506-
else
507-
{
508-
TheRecorder->playbackFile(asciiFilename);
509-
510-
if(parentReplayMenu != NULL)
511-
{
512-
parentReplayMenu->winHide(TRUE);
513-
}
514-
}
516+
UnicodeString filename = GetReplayFilenameFromListbox(listboxReplayFiles, rowSelected);
517+
loadReplay(filename);
515518
}
516519
}
517520
break;
@@ -564,25 +567,8 @@ WindowMsgHandledType ReplayMenuSystem( GameWindow *window, UnsignedInt msg,
564567
}
565568

566569
filename = GetReplayFilenameFromListbox(listboxReplayFiles, selected);
567-
568-
AsciiString asciiFilename;
569-
asciiFilename.translate(filename);
570-
571-
if(TheRecorder->testVersionPlayback(asciiFilename))
572-
{
573-
MessageBoxOkCancel(TheGameText->fetch("GUI:OlderReplayVersionTitle"), TheGameText->fetch("GUI:OlderReplayVersion"),reallyLoadReplay ,NULL);
574-
}
575-
else
576-
{
577-
TheRecorder->playbackFile(asciiFilename);
578-
579-
if(parentReplayMenu != NULL)
580-
{
581-
parentReplayMenu->winHide(TRUE);
582-
}
583-
}
584-
585-
}
570+
loadReplay(filename);
571+
}
586572
} // end else if
587573
else if( controlID == buttonBackID )
588574
{

0 commit comments

Comments
 (0)