// Fill out your copyright notice in the Description page of Project Settings. #include "CraftingIngredientRowWidget.h" #include "Components/Image.h" #include "Components/TextBlock.h" #include "ItemDataAsset.h" void UCraftingIngredientRowWidget::SetIngredient(const FCraftIngredientStatus& Status) { if (IngredientIcon) { UTexture2D* Icon = Status.Item ? Status.Item->Icon : nullptr; if (Icon) { IngredientIcon->SetBrushFromTexture(Icon); IngredientIcon->SetVisibility(ESlateVisibility::HitTestInvisible); } else { // Sans ca, un objet sans icone afficherait le carre blanc du brush // par defaut au milieu de la liste. IngredientIcon->SetVisibility(ESlateVisibility::Hidden); } } if (IngredientNameText) { IngredientNameText->SetText(Status.Item ? Status.Item->DisplayName : FText::GetEmpty()); } if (IngredientCountText) { IngredientCountText->SetText(FText::Format(CountFormat, FText::AsNumber(Status.OwnedQuantity), FText::AsNumber(Status.RequiredQuantity))); IngredientCountText->SetColorAndOpacity(FSlateColor(Status.IsSatisfied() ? EnoughColor : MissingColor)); } }