// Fill out your copyright notice in the Description page of Project Settings. #include "ModeInputTextBox.h" #include void UModeInputTextBox::HandleOnTextChanged(FText const & inText) { /* if (GetText().IsEmpty()) { return; } SetText(FText()); */ Text = FText(); auto & s = inText.ToString(); // UE_LOGFMT(LogTemp, Warning, "kill me {inText}", s); auto lastChar = s.ToUpper().Right(1); // UE_LOGFMT(LogTemp, Warning, "fucking {lastChar}", lastChar); SetText(FText::FromString(lastChar)); if (!lastChar.IsEmpty()) { switch (myTarget) { case THSModeTarget::Energy: switch (lastChar[lastChar.Len() - 1]) { case 'E': break; case 'X': break; default: lastChar[lastChar.Len() - 1] = '\0'; break; } break; case THSModeTarget::OpMode: switch (lastChar[lastChar.Len() - 1]) { case 'T': break; case 'R': break; case 'P': break; default: lastChar = ""; } break; default: break; } } // UE_LOGFMT(LogTemp, Warning, "wat {lastChar}", lastChar); SetText(FText::FromString(lastChar)); // SetText(FText::FromString(FString::Printf(TEXT("%c"), lastChar))); }