Error message box now closes submission form for server communication errors as well.

This commit is contained in:
Jamie Greunbaum 2023-03-25 01:10:52 -04:00
parent 4f3236e51e
commit 5667a99105
3 changed files with 11 additions and 10 deletions

Binary file not shown.

View File

@ -138,18 +138,21 @@ void UBugSubmissionForm::SetMarkerData(ABugMarkerActor *BugMarker)
void UBugSubmissionForm::ShowProcessingOverlayLoading()
{
this->ProcessingRequestErrorText->SetText(FText::AsCultureInvariant(""));
this->ProcessingRequestOverlay->SetVisibility(ESlateVisibility::Visible);
this->ProcessingRequestThrobber->SetVisibility(ESlateVisibility::Visible);
this->ProcessingRequestErrorBox->SetVisibility(ESlateVisibility::Collapsed);
}
void UBugSubmissionForm::ShowProcessingOverlayMessage(const FString Message)
void UBugSubmissionForm::ShowProcessingOverlayMessage(const FString Message, const bool bExitAfterConfirm)
{
this->ProcessingRequestErrorText->SetText(FText::AsCultureInvariant(Message));
this->ProcessingRequestOverlay->SetVisibility(ESlateVisibility::Visible);
this->ProcessingRequestThrobber->SetVisibility(ESlateVisibility::Collapsed);
this->ProcessingRequestErrorBox->SetVisibility(ESlateVisibility::Visible);
if (bExitAfterConfirm)
{
this->ProcessingRequestErrorButton->OnClicked().AddUObject(this, &UBugSubmissionForm::CancelForm);
}
}
void UBugSubmissionForm::HideProcessingOverlay()
{
@ -319,11 +322,9 @@ void UBugSubmissionForm::ServerProductInfoResponse(FHttpRequestPtr Request, FHtt
}
else
{
this->ProcessingRequestErrorButton->OnClicked().AddUObject(this, &UBugSubmissionForm::CancelForm);
FStringFormatOrderedArguments Args;
Args.Add(FStringFormatArg(GetDefault<UUnrealzillaGlobalSettings>()->ProductName));
this->ShowProcessingOverlayMessage(FString::Format(TEXT("Could not find data for a product called {0}"), Args));
this->ShowProcessingOverlayMessage(FString::Format(TEXT("Could not find data for a product called {0}"), Args), true);
}
}
}
@ -473,15 +474,15 @@ void UBugSubmissionForm::ServerConnectionError(const EHttpRequestStatus::Type St
{
switch (Status) {
case EHttpRequestStatus::Failed_ConnectionError:
this->ShowProcessingOverlayMessage("Unable to connect to the server");
this->ShowProcessingOverlayMessage("Unable to connect to the server", true);
break;
case EHttpRequestStatus::NotStarted:
this->ShowProcessingOverlayMessage("Connection could not start");
this->ShowProcessingOverlayMessage("Connection could not start", true);
break;
case EHttpRequestStatus::Failed:
this->ShowProcessingOverlayMessage("Connection failed");
this->ShowProcessingOverlayMessage("Connection failed", true);
break;
default:
this->ShowProcessingOverlayMessage("Request failed for unknown reasons");
this->ShowProcessingOverlayMessage("Request failed for unknown reasons", true);
}
}

View File

@ -307,7 +307,7 @@ private:
UFUNCTION(BlueprintCallable)
void ShowProcessingOverlayLoading();
UFUNCTION(BlueprintCallable)
void ShowProcessingOverlayMessage(const FString Message);
void ShowProcessingOverlayMessage(const FString Message, const bool bExitAfterConfirm = false);
UFUNCTION(BlueprintCallable)
void HideProcessingOverlay();