(Feat) Add Main Menu + Music Manger

This commit is contained in:
2026-07-29 20:18:51 +02:00
parent 956f48816b
commit 9b5ad7c8a4
55 changed files with 3727 additions and 125 deletions
@@ -6,12 +6,14 @@
#include "Blueprint/UserWidget.h"
#include "SettingsTabWidget.generated.h"
class USettingsMenuWidget;
/**
* Base commune a tous les onglets de reglages.
*
* Deux verbes, rien de plus : l'ecran parent rafraichit ou reinitialise l'onglet
* visible sans jamais savoir ce qu'il contient. Ajouter l'onglet Graphismes plus
* tard ne demandera donc aucune ligne dans USettingsMenuWidget.
* visible sans jamais savoir ce qu'il contient. Ajouter un onglet ne demande
* donc aucune ligne dans USettingsMenuWidget.
*/
UCLASS(Abstract)
class SURVIVAL_PROJET_API USettingsTabWidget : public UUserWidget
@@ -24,4 +26,22 @@ public:
/** Remet a l'usine les seuls reglages de cet onglet, puis se rafraichit. */
virtual void ResetToDefaults() {}
/**
* L'ecran se presente a ses onglets a la construction.
*
* Pointeur explicite plutot qu'un GetTypedOuter au moment de s'en servir :
* un onglet doit pouvoir demander une confirmation, et faire dependre ca de
* la forme de l'arbre de widgets casserait le jour ou on l'imbrique
* autrement.
*
* Defini dans le .cpp et non inline : TWeakObjectPtr exige un type complet
* pour s'assigner, et inclure l'en-tete de l'ecran ici ferait dependre tous
* les onglets de lui.
*/
void SetOwningMenu(USettingsMenuWidget* InMenu);
protected:
UPROPERTY(Transient, BlueprintReadOnly, Category = "Reglages")
TWeakObjectPtr<USettingsMenuWidget> OwningMenu;
};