UOperatingSystemBaseProgram
#include <OperatingSystemSimulator/Public/Programs/OperatingSystemBaseProgram.h>class UOperatingSystemBaseProgramDefined in OperatingSystemBaseProgram.h:58
Inherits:
UObjectSubclassed by:UOperatingSystemAudioPlayer,UOperatingSystemCCTVProgram,UOperatingSystemDroneProgram,UOperatingSystemStore,UOperatingSystemTerminal,UOperatingSystemVideoPlayer
Inheritance diagram
Section titled “Inheritance diagram”---
config:
class:
hideEmptyMembersBox: true
---
classDiagram
class UOperatingSystemBaseProgram["UOperatingSystemBaseProgram"]
class UObject["UObject"]
UObject <|-- UOperatingSystemBaseProgram
class UOperatingSystemAudioPlayer["UOperatingSystemAudioPlayer"]
UOperatingSystemBaseProgram <|-- UOperatingSystemAudioPlayer
class UOperatingSystemCCTVProgram["UOperatingSystemCCTVProgram"]
UOperatingSystemBaseProgram <|-- UOperatingSystemCCTVProgram
class UOperatingSystemDroneProgram["UOperatingSystemDroneProgram"]
UOperatingSystemBaseProgram <|-- UOperatingSystemDroneProgram
class UOperatingSystemStore["UOperatingSystemStore"]
UOperatingSystemBaseProgram <|-- UOperatingSystemStore
class UOperatingSystemTerminal["UOperatingSystemTerminal"]
UOperatingSystemBaseProgram <|-- UOperatingSystemTerminal
class UOperatingSystemVideoPlayer["UOperatingSystemVideoPlayer"]
UOperatingSystemBaseProgram <|-- UOperatingSystemVideoPlayer
Collaboration diagram
Section titled “Collaboration diagram”---
config:
class:
hideEmptyMembersBox: true
---
classDiagram
class UOperatingSystemBaseProgram["UOperatingSystemBaseProgram"]
class FOperatingSystemVersion["FOperatingSystemVersion"]
UOperatingSystemBaseProgram *-- FOperatingSystemVersion
class UOperatingSystemProgramIconWidget["UOperatingSystemProgramIconWidget"]
UOperatingSystemBaseProgram *-- UOperatingSystemProgramIconWidget
class UOperatingSystemProgramWidget["UOperatingSystemProgramWidget"]
UOperatingSystemBaseProgram *-- UOperatingSystemProgramWidget
class EOperatingSystemProgramCloseMethod["EOperatingSystemProgramCloseMethod"]
UOperatingSystemBaseProgram ..> EOperatingSystemProgramCloseMethod
class EOperatingSystemProgramSaveMethod["EOperatingSystemProgramSaveMethod"]
UOperatingSystemBaseProgram ..> EOperatingSystemProgramSaveMethod
class UOperatingSystemProgramSettings["UOperatingSystemProgramSettings"]
UOperatingSystemBaseProgram *-- UOperatingSystemProgramSettings
class UOperatingSystemProgramData["UOperatingSystemProgramData"]
UOperatingSystemBaseProgram *-- UOperatingSystemProgramData
class EOperatingSystemWindowStartupState["EOperatingSystemWindowStartupState"]
UOperatingSystemBaseProgram ..> EOperatingSystemWindowStartupState
class UDraggableWindow["UDraggableWindow"]
UOperatingSystemBaseProgram *-- UDraggableWindow
class UOperatingSystemTaskbarButton["UOperatingSystemTaskbarButton"]
UOperatingSystemBaseProgram *-- UOperatingSystemTaskbarButton
class UOperatingSystemPartition["UOperatingSystemPartition"]
UOperatingSystemBaseProgram *-- UOperatingSystemPartition
class UOperatingSystemFile["UOperatingSystemFile"]
UOperatingSystemBaseProgram *-- UOperatingSystemFile
class UOperatingSystem["UOperatingSystem"]
UOperatingSystemBaseProgram *-- UOperatingSystem
Class detail
Section titled “Class detail”---
config:
class:
hideEmptyMembersBox: true
---
classDiagram
class UOperatingSystemBaseProgram {
+OnOperatingSystemProgramViewStateChanged : FOnOperatingSystemProgramViewStateChange
+UOperatingSystemBaseProgram()
+StartProgram(FGenericError &OutError) UOperatingSystemBaseProgram() *
+IsRunning() const bool()
+CanAddToDesktop() const bool()
+GetOperatingSystem() const UOperatingSystem() *
+CreateIconWidget() UOperatingSystemProgramIconWidget() *
+GetIconWidget() const UOperatingSystemProgramIconWidget() *
+OpenFile(UOperatingSystemFile *TargetFile, FGenericE void()
+CloseProgram(const bool bIsFullClose, FGenericError &Out void()
+BringToFront(FGenericError &OutError) const void()
+GetParentWindow() const UDraggableWindow() *
+IsCompatibleWithOS(const TWeakObjectPtr< const UOperatingSyste void()
+CanSaveSettings() const bool()
+SetParentPartition(TWeakObjectPtr< UOperatingSystemPartition > void()
+OnProgramWindowStateChanged(const EOperatingSystemProgramViewState &New void()
+IsWindowMaximized() const bool()
+GetSaveSlotName() const FString()
+GetWindowPosition() const TOptional()< FVector2D() >
+GetParentPartition() const TWeakObjectPtr()< UOperatingSystemPartit
+GetIconWidgetClass() const TSoftClassPtr()< UOperatingSystemProgram
+GetWidgetClass() const TSoftClassPtr()< UOperatingSystemProgram
+GetSettingsClass() const TSoftClassPtr()< UOperatingSystemProgram
+GetDataClass() const TSoftClassPtr()< UOperatingSystemProgram
+GetTaskbarButtonClass() const TSoftClassPtr()< UOperatingSystemTaskbar
+GetSettings() const TWeakObjectPtr< UOperatingSystemProgramS
+GetDataObj() const TWeakObjectPtr()< UOperatingSystemProgra
+GetTaskbarButton() const TWeakObjectPtr()< UOperatingSystemTaskba
+GetProgramWidget() const UOperatingSystemProgramWidget() *
+CreateDataObj(FGenericError &OutError) void()
+GetSettings() const T *
+GetDataObj() const T() *
+GetAs() const T() *
+GetAs() T() *
+GetProgramName() const FString()
+GetIdentifier() const FName()
+IsSingleInstanceProgram() const bool()
+IsSystemInstalledProgram() const bool()
+GetProcessID() const uint32()
+GetSpaceRequiredInMB() const float()
+ShouldRememberLastWindowPosition() const bool()
+IsSetToRunOnStartup() const bool()
+GetCloseMethod() const EOperatingSystemProgramCloseMethod()
+CreateProgram(TWeakObjectPtr< UOperatingSystem > OwningOS UOperatingSystemBaseProgram() *
+IsStoreItemFree(const FOperatingSystemStoreProgramData &Pro bool()
+Name : FText()
+Author : FText()
+Description : FText()
+Identifier : FName()
+Version : FOperatingSystemVersion()
+StoreDisplayName : FText()
+StoreType : FText()
+StorePrice : float()
+SupportedOperatingSystems : FGameplayTagContainer()
+bRequireMinOperatingSystemVersion : uint8()
+MinOperatingSystemVersion : FOperatingSystemVersion()
+IconObject : TSoftObjectPtr()< UObject >
+SpaceRequiredInMB : float()
+IconWidgetClass : TSoftClassPtr()< UOperatingSystemProgram
+WidgetClass : TSoftClassPtr()< UOperatingSystemProgram
+CloseMethod : EOperatingSystemProgramCloseMethod()
+SaveMethod : EOperatingSystemProgramSaveMethod()
+SettingsClass : TSoftClassPtr()< UOperatingSystemProgram
+DataClass : TSoftClassPtr()< UOperatingSystemProgram
+bRunOnStartup : uint8()
+bRequiresData : uint8()
+bAddToDesktop : uint8()
+bCreateNotification : uint8()
+bSingleInstanceOnly : uint8()
+bCanRunOnPortableDevice : uint8()
+bCreateSettingsBeforeStarting : uint8()
+bRememberLastWindowPosition : uint8()
+bAllowDragging : uint8()
+bAllowResizing : uint8()
+bOverrideWindowSize : uint8()
+OverrideWindowSize : FVector2D()
+MinimumWindowResize : FVector2D()
+StartWindowState : EOperatingSystemWindowStartupState()
+OverrideWindowClass : TSoftClassPtr()< UDraggableWindow() >
+TaskbarButtonClass : TSoftClassPtr()< UOperatingSystemTaskbar
+ParentPartition : TWeakObjectPtr()< UOperatingSystemPartit
+OnValidate(FGenericError &OutError) const void()
+OnStart(FGenericError &OutError) void()
+OnClose(FGenericError &OutError) void()
+OnOpenFile(UOperatingSystemFile *TargetFile, FGenericE void()
+OnThemeChanged(UOperatingSystemSettingModule_Theme *ThemeP void()
+K2_OnCreate() void()
+K2_OnInstall() void()
+K2_OnStart() FGenericError()
+K2_OnClose() void()
+K2_OnSettingsLoad(UOperatingSystemProgramSettings *LoadedSett void()
+K2_OnOpenFile(FGenericError &OutError) void()
+K2_OnValidate(FGenericError &OutError) const void()
+K2_GetSaveSlotName() const FString()
+bIsSystemInstalledProgram : uint8()
+bHasBlueprintOnCreate : uint8()
+bHasBlueprintOnInstall : uint8()
+bHasBlueprintOnStart : uint8()
+bHasBlueprintOnClose : uint8()
+bHasBlueprintOnSettingsLoad : uint8()
+bHasBlueprintOnOpenFile : uint8()
+bHasBlueprintGetSaveSlotName : uint8()
+bHasBlueprintOnValidate : uint8()
+ProgramWidget : TObjectPtr()< UOperatingSystemProgramWid
+Settings : TObjectPtr()< UOperatingSystemProgramSet
+DataObj : TObjectPtr()< UOperatingSystemProgramDat
+ChildFile : TObjectPtr()< UOperatingSystemFile() >
+ParentOS : TWeakObjectPtr()< UOperatingSystem() >
+ParentWindow : TObjectPtr()< UDraggableWindow() >
+TaskbarButton : TObjectPtr()< UOperatingSystemTaskbarBut
+ProcessID : int32()
+CachedIconWidget : TObjectPtr()< UOperatingSystemProgramIco
+Internal_Start(FGenericError &OutError) void()
+Internal_Validate(FGenericError &OutError) const void()
+Internal_LoadProgramSettings(FGenericError &OutError) void()
+Internal_OnThemeChanged(UObject *Payload) void()
}
Caller impact — GetSettings
Section titled “Caller impact — GetSettings”Documented call sites inside the plugin (68):
flowchart LR UOperatingSystemBaseProgram__GetSettings["UOperatingSystemBaseProgram::GetSettings"] UOperatingSystemBaseProgram__BringToFront["UOperatingSystemBaseProgram::BringToFront"] UOperatingSystemBaseProgram__BringToFront --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__CaptureNow["UOperatingSystemCCTVProgram::CaptureNow"] UOperatingSystemCCTVProgram__CaptureNow --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__ChangeCurrentPath["UOperatingSystemTerminal::ChangeCurrentPath"] UOperatingSystemTerminal__ChangeCurrentPath --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__ChangeCurrentUser["UOperatingSystemTerminal::ChangeCurrentUser"] UOperatingSystemTerminal__ChangeCurrentUser --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__CheckRootPassword["UOperatingSystemTerminal::CheckRootPassword"] UOperatingSystemTerminal__CheckRootPassword --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__ClearHistory["UOperatingSystemTerminal::ClearHistory"] UOperatingSystemTerminal__ClearHistory --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__CloseProgram["UOperatingSystemBaseProgram::CloseProgram"] UOperatingSystemBaseProgram__CloseProgram --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__CreateDataObj["UOperatingSystemBaseProgram::CreateDataObj"] UOperatingSystemBaseProgram__CreateDataObj --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__CreateIconWidget["UOperatingSystemBaseProgram::CreateIconWidget"] UOperatingSystemBaseProgram__CreateIconWidget --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__CreateProgram["UOperatingSystemBaseProgram::CreateProgram"] UOperatingSystemBaseProgram__CreateProgram --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemProgramSettings__CreateSettings["UOperatingSystemProgramSettings::CreateSettings"] UOperatingSystemProgramSettings__CreateSettings --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__DestroyActiveCommand["UOperatingSystemTerminal::DestroyActiveCommand"] UOperatingSystemTerminal__DestroyActiveCommand --> UOperatingSystemBaseProgram__GetSettings FOperatingSystemStoreProgramData__FOperatingSystemStoreProgramData["FOperatingSystemStoreProgramData::FOperatingSystemStoreProgramData"] FOperatingSystemStoreProgramData__FOperatingSystemStoreProgramData --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__GetAllCCTV_Actors["UOperatingSystemCCTVProgram::GetAllCCTV_Actors"] UOperatingSystemCCTVProgram__GetAllCCTV_Actors --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__GetAverageRating["UOperatingSystemStore::GetAverageRating"] UOperatingSystemStore__GetAverageRating --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__GetCommand["UOperatingSystemTerminal::GetCommand"] UOperatingSystemTerminal__GetCommand --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__GetCurrentDirectoryPath["UOperatingSystemTerminal::GetCurrentDirectoryPath"] UOperatingSystemTerminal__GetCurrentDirectoryPath --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__GetCurrentLayout["UOperatingSystemCCTVProgram::GetCurrentLayout"] UOperatingSystemCCTVProgram__GetCurrentLayout --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemProgramSettings__GetLastWindowPosition["UOperatingSystemProgramSettings::GetLastWindowPosition"] UOperatingSystemProgramSettings__GetLastWindowPosition --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__GetNextCommandFromHistory["UOperatingSystemTerminal::GetNextCommandFromHistory"] UOperatingSystemTerminal__GetNextCommandFromHistory --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__GetPreviousCommandFromHistory["UOperatingSystemTerminal::GetPreviousCommandFromHistory"] UOperatingSystemTerminal__GetPreviousCommandFromHistory --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__GetSaveSlotName["UOperatingSystemBaseProgram::GetSaveSlotName"] UOperatingSystemBaseProgram__GetSaveSlotName --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__GetWindowPosition["UOperatingSystemBaseProgram::GetWindowPosition"] UOperatingSystemBaseProgram__GetWindowPosition --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminalCommand__HasFlag["UOperatingSystemTerminalCommand::HasFlag"] UOperatingSystemTerminalCommand__HasFlag --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__HasRepository["UOperatingSystemTerminal::HasRepository"] UOperatingSystemTerminal__HasRepository --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__Internal_FindAdditionalCommands["UOperatingSystemTerminal::Internal_FindAdditionalCommands"] UOperatingSystemTerminal__Internal_FindAdditionalCommands --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__Internal_GetCurrentAverageRating["UOperatingSystemStore::Internal_GetCurrentAverageRating"] UOperatingSystemStore__Internal_GetCurrentAverageRating --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__Internal_GetSaveFile["UOperatingSystemStore::Internal_GetSaveFile"] UOperatingSystemStore__Internal_GetSaveFile --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__Internal_LoadProgramSettings["UOperatingSystemBaseProgram::Internal_LoadProgramSettings"] UOperatingSystemBaseProgram__Internal_LoadProgramSettings --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemAudioPlayer__Internal_OnAudioPlaybackChanged["UOperatingSystemAudioPlayer::Internal_OnAudioPlaybackChanged"] UOperatingSystemAudioPlayer__Internal_OnAudioPlaybackChanged --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemAudioPlayer__Internal_OnAudioPlayStateChanged["UOperatingSystemAudioPlayer::Internal_OnAudioPlayStateChanged"] UOperatingSystemAudioPlayer__Internal_OnAudioPlayStateChanged --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__Internal_OnThemeChanged["UOperatingSystemBaseProgram::Internal_OnThemeChanged"] UOperatingSystemBaseProgram__Internal_OnThemeChanged --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__Internal_Start["UOperatingSystemBaseProgram::Internal_Start"] UOperatingSystemBaseProgram__Internal_Start --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__Internal_TryCreateSaveFile["UOperatingSystemStore::Internal_TryCreateSaveFile"] UOperatingSystemStore__Internal_TryCreateSaveFile --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__Internal_Validate["UOperatingSystemBaseProgram::Internal_Validate"] UOperatingSystemBaseProgram__Internal_Validate --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__IsCompatibleWithOS["UOperatingSystemBaseProgram::IsCompatibleWithOS"] UOperatingSystemBaseProgram__IsCompatibleWithOS --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__IsRunning["UOperatingSystemBaseProgram::IsRunning"] UOperatingSystemBaseProgram__IsRunning --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__IsStoreItemFree["UOperatingSystemBaseProgram::IsStoreItemFree"] UOperatingSystemBaseProgram__IsStoreItemFree --> UOperatingSystemBaseProgram__GetSettings FOperatingSystemCommandFlag__IsValid["FOperatingSystemCommandFlag::IsValid"] FOperatingSystemCommandFlag__IsValid --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__MessageReceivedFromCommand["UOperatingSystemTerminal::MessageReceivedFromCommand"] UOperatingSystemTerminal__MessageReceivedFromCommand --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemAudioPlayer__OnOpenFile["UOperatingSystemAudioPlayer::OnOpenFile"] UOperatingSystemAudioPlayer__OnOpenFile --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemVideoPlayer__OnOpenFile["UOperatingSystemVideoPlayer::OnOpenFile"] UOperatingSystemVideoPlayer__OnOpenFile --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__OnProgramWindowStateChanged["UOperatingSystemBaseProgram::OnProgramWindowStateChanged"] UOperatingSystemBaseProgram__OnProgramWindowStateChanged --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__OnStart["UOperatingSystemCCTVProgram::OnStart"] UOperatingSystemCCTVProgram__OnStart --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__OnStart["UOperatingSystemTerminal::OnStart"] UOperatingSystemTerminal__OnStart --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__OnValidate["UOperatingSystemCCTVProgram::OnValidate"] UOperatingSystemCCTVProgram__OnValidate --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__OnValidate["UOperatingSystemStore::OnValidate"] UOperatingSystemStore__OnValidate --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__OnValidate["UOperatingSystemTerminal::OnValidate"] UOperatingSystemTerminal__OnValidate --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__OpenFile["UOperatingSystemBaseProgram::OpenFile"] UOperatingSystemBaseProgram__OpenFile --> UOperatingSystemBaseProgram__GetSettings FOperatingSystemCommandFlag__operator["FOperatingSystemCommandFlag::operator=="] FOperatingSystemCommandFlag__operator --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__ProcessCommand["UOperatingSystemTerminal::ProcessCommand"] UOperatingSystemTerminal__ProcessCommand --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__PromptRootPassword["UOperatingSystemTerminal::PromptRootPassword"] UOperatingSystemTerminal__PromptRootPassword --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__PromptUserContinue["UOperatingSystemTerminal::PromptUserContinue"] UOperatingSystemTerminal__PromptUserContinue --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemProgramSettings__SaveSettings["UOperatingSystemProgramSettings::SaveSettings"] UOperatingSystemProgramSettings__SaveSettings --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__SetCaptureMethod["UOperatingSystemCCTVProgram::SetCaptureMethod"] UOperatingSystemCCTVProgram__SetCaptureMethod --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__SetCaptureSpeed["UOperatingSystemCCTVProgram::SetCaptureSpeed"] UOperatingSystemCCTVProgram__SetCaptureSpeed --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__SetLayout["UOperatingSystemCCTVProgram::SetLayout"] UOperatingSystemCCTVProgram__SetLayout --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__SetParentPartition["UOperatingSystemBaseProgram::SetParentPartition"] UOperatingSystemBaseProgram__SetParentPartition --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemAudioPlayer__SetPaused["UOperatingSystemAudioPlayer::SetPaused"] UOperatingSystemAudioPlayer__SetPaused --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__SetSelectedCamera["UOperatingSystemCCTVProgram::SetSelectedCamera"] UOperatingSystemCCTVProgram__SetSelectedCamera --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemAudioPlayer__SetVolumeMultiplier["UOperatingSystemAudioPlayer::SetVolumeMultiplier"] UOperatingSystemAudioPlayer__SetVolumeMultiplier --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemBaseProgram__StartProgram["UOperatingSystemBaseProgram::StartProgram"] UOperatingSystemBaseProgram__StartProgram --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__SubmitRating["UOperatingSystemStore::SubmitRating"] UOperatingSystemStore__SubmitRating --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemAudioPlayer__UOperatingSystemAudioPlayer["UOperatingSystemAudioPlayer::UOperatingSystemAudioPlayer"] UOperatingSystemAudioPlayer__UOperatingSystemAudioPlayer --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemCCTVProgram__UOperatingSystemCCTVProgram["UOperatingSystemCCTVProgram::UOperatingSystemCCTVProgram"] UOperatingSystemCCTVProgram__UOperatingSystemCCTVProgram --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemStore__UOperatingSystemStore["UOperatingSystemStore::UOperatingSystemStore"] UOperatingSystemStore__UOperatingSystemStore --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemVideoPlayer__UOperatingSystemVideoPlayer["UOperatingSystemVideoPlayer::UOperatingSystemVideoPlayer"] UOperatingSystemVideoPlayer__UOperatingSystemVideoPlayer --> UOperatingSystemBaseProgram__GetSettings UOperatingSystemTerminal__VerifyUserPrompt["UOperatingSystemTerminal::VerifyUserPrompt"] UOperatingSystemTerminal__VerifyUserPrompt --> UOperatingSystemBaseProgram__GetSettings
Caller impact — GetOperatingSystem
Section titled “Caller impact — GetOperatingSystem”Documented call sites inside the plugin (8):
flowchart LR UOperatingSystemBaseProgram__GetOperatingSystem["UOperatingSystemBaseProgram::GetOperatingSystem"] UOperatingSystemTerminal__ChangeCurrentUser["UOperatingSystemTerminal::ChangeCurrentUser"] UOperatingSystemTerminal__ChangeCurrentUser --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemTerminal__CheckRootPassword["UOperatingSystemTerminal::CheckRootPassword"] UOperatingSystemTerminal__CheckRootPassword --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemTaskbarButton__CreateTaskbarButton["UOperatingSystemTaskbarButton::CreateTaskbarButton"] UOperatingSystemTaskbarButton__CreateTaskbarButton --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemTerminal__HasRepository["UOperatingSystemTerminal::HasRepository"] UOperatingSystemTerminal__HasRepository --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemVideoPlayer__OnClose["UOperatingSystemVideoPlayer::OnClose"] UOperatingSystemVideoPlayer__OnClose --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemAudioPlayer__OnOpenFile["UOperatingSystemAudioPlayer::OnOpenFile"] UOperatingSystemAudioPlayer__OnOpenFile --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemTerminal__OnStart["UOperatingSystemTerminal::OnStart"] UOperatingSystemTerminal__OnStart --> UOperatingSystemBaseProgram__GetOperatingSystem UOperatingSystemStore__SubmitRating["UOperatingSystemStore::SubmitRating"] UOperatingSystemStore__SubmitRating --> UOperatingSystemBaseProgram__GetOperatingSystem
Caller impact — GetProgramName
Section titled “Caller impact — GetProgramName”Documented call sites inside the plugin (3):
flowchart LR UOperatingSystemBaseProgram__GetProgramName["UOperatingSystemBaseProgram::GetProgramName"] UOperatingSystemWidget__CreateNewWindow["UOperatingSystemWidget::CreateNewWindow"] UOperatingSystemWidget__CreateNewWindow --> UOperatingSystemBaseProgram__GetProgramName UOperatingSystemAudioPlayer__OnOpenFile["UOperatingSystemAudioPlayer::OnOpenFile"] UOperatingSystemAudioPlayer__OnOpenFile --> UOperatingSystemBaseProgram__GetProgramName UOperatingSystemCCTVProgram__OnStart["UOperatingSystemCCTVProgram::OnStart"] UOperatingSystemCCTVProgram__OnStart --> UOperatingSystemBaseProgram__GetProgramName
Caller impact — CreateProgram
Section titled “Caller impact — CreateProgram”Documented call sites inside the plugin (3):
flowchart LR UOperatingSystemBaseProgram__CreateProgram["UOperatingSystemBaseProgram::CreateProgram"] UOperatingSystem__Internal_InstallProgram["UOperatingSystem::Internal_InstallProgram"] UOperatingSystem__Internal_InstallProgram --> UOperatingSystemBaseProgram__CreateProgram UOperatingSystem__Internal_LoadSavedProgram["UOperatingSystem::Internal_LoadSavedProgram"] UOperatingSystem__Internal_LoadSavedProgram --> UOperatingSystemBaseProgram__CreateProgram UOperatingSystemBaseProgram__StartProgram["UOperatingSystemBaseProgram::StartProgram"] UOperatingSystemBaseProgram__StartProgram --> UOperatingSystemBaseProgram__CreateProgram
The base class for all operating system programs.
This class provides properties and functions that are common to all programs, such as the program name, author, description, version, and settings class.
To create a new program, derive from this class and implement the necessary functionality for the specific program.
See also: UOperatingSystemProgramWidget
See also: UOperatingSystemProgramSettings
Public Attributes
Section titled “Public Attributes”| Return | Name | Description |
|---|---|---|
FOnOperatingSystemProgramViewStateChanged | OnOperatingSystemProgramViewStateChanged | A Blueprint assignable delegate that is triggered when the view state of an operating system program changes. This delegate can be used to handle view state changes of an operating system program, such as when a program window is minimized or maximized. |
OnOperatingSystemProgramViewStateChanged
Section titled “OnOperatingSystemProgramViewStateChanged”FOnOperatingSystemProgramViewStateChanged OnOperatingSystemProgramViewStateChangedDefined in OperatingSystemBaseProgram.h:273 A Blueprint assignable delegate that is triggered when the view state of an operating system program changes. This delegate can be used to handle view state changes of an operating system program, such as when a program window is minimized or maximized.
See also: OnOperatingSystemProgramViewStateChanged
See also: UOperatingSystemBaseProgram
Referenced by
Section titled “Referenced by”Public Methods
Section titled “Public Methods”| Return | Name | Description |
|---|---|---|
UOperatingSystemBaseProgram | ||
UOperatingSystemBaseProgram * | StartProgram | Starts a program in the operating system. |
bool | IsRunning const | Checks if the program is running. |
bool | CanAddToDesktop const | Check if the program can be added to the desktop. |
UOperatingSystem * | GetOperatingSystem const | Get the operating system associated with this program. |
UOperatingSystemProgramIconWidget * | CreateIconWidget | Creates an icon widget for the operating system program. This function creates an icon widget for the operating system program, if it has not been created before. If a cached icon widget exists, it is returned instead of creating a new one. |
UOperatingSystemProgramIconWidget * | GetIconWidget const | Gets the icon widget for the Operating System program. |
void | OpenFile | Opens a file in the operating system. |
void | CloseProgram | Closes the program. |
void | BringToFront const | |
UDraggableWindow * | GetParentWindow const | Get the parent window of the program. |
void | IsCompatibleWithOS const | Checks if the given operating system is compatible with this program. |
bool | CanSaveSettings const | Checks if the settings of the operating system base program can be saved. |
void | SetParentPartition | Sets the parent partition of the program to the specified operating system partition. |
void | OnProgramWindowStateChanged const | Called when the program window’s state changes. |
bool | IsWindowMaximized const | Checks whether the window of the operating system base program is maximized. |
FString | GetSaveSlotName virtual const | Retrieves the name of the save slot for the operating system program. |
TOptional< FVector2D > | GetWindowPosition const | Retrieves the position of the window associated with the operating system program. |
TWeakObjectPtr< UOperatingSystemPartition > | GetParentPartition const | Get the parent partition of the current operating system program. |
TSoftClassPtr< UOperatingSystemProgramIconWidget > | GetIconWidgetClass const | Retrieves the class of the icon widget for the operating system program. |
TSoftClassPtr< UOperatingSystemProgramWidget > | GetWidgetClass const | Retrieves the widget class associated with the operating system base program. This method returns the widget class that should be used to create the program widget for the specific program. |
TSoftClassPtr< UOperatingSystemProgramSettings > | GetSettingsClass const | Get the settings class associated with this program. This method returns the class type of the settings object specific to this program. |
TSoftClassPtr< UOperatingSystemProgramData > | GetDataClass const | Retrieves the data class associated with the program. |
TSoftClassPtr< UOperatingSystemTaskbarButton > | GetTaskbarButtonClass const | Retrieves the taskbar button class associated with the program. |
TWeakObjectPtr< UOperatingSystemProgramSettings > | GetSettings const | Get the settings object for the program. |
TWeakObjectPtr< UOperatingSystemProgramData > | GetDataObj const | Retrieves the data object associated with the operating system program. |
TWeakObjectPtr< UOperatingSystemTaskbarButton > | GetTaskbarButton const | Retrieves the taskbar button associated with the program. |
UOperatingSystemProgramWidget * | GetProgramWidget const | Returns the program widget associated with the operating system program. |
void | CreateDataObj | |
T * | GetSettings const inline | Get the settings object of type T. |
T * | GetDataObj const inline | Returns the data object associated with the program. |
T * | GetAs const inline | Returns const program casted to given type. |
T * | GetAs inline | Returns program casted to given type. |
FString | GetProgramName const inline | Returns the program name as a FString. |
FName | GetIdentifier const inline | Returns the identifier of the program. The identifier serves as a unique identification for the program. |
bool | IsSingleInstanceProgram const inline | Returns a boolean value indicating whether the program is a single instance program. A single instance program is a program that allows only one instance to run at a time. |
bool | IsSystemInstalledProgram const inline | Returns a boolean value indicating whether the program is installed on the system. If the program is installed, it will return true; otherwise, it will return false. |
uint32 | GetProcessID const inline | Retrieves the process ID of the current program. This method allows you to obtain the unique process ID of the program. |
float | GetSpaceRequiredInMB const inline | Get the space required by the program in megabytes. This method returns the space required by the program in megabytes. |
bool | ShouldRememberLastWindowPosition const inline | Indicates whether the program should remember the last window position. |
bool | IsSetToRunOnStartup const inline | Indicates whether this program should run at system startup. |
EOperatingSystemProgramCloseMethod | GetCloseMethod const inline | Returns the close method of the operating system program. |
UOperatingSystemBaseProgram
Section titled “UOperatingSystemBaseProgram”UOperatingSystemBaseProgram()Defined in OperatingSystemBaseProgram.h:275
References
Section titled “References”CHECK_IN_BPIMPLEMENTED_IN_BP_LAMBDA
StartProgram
Section titled “StartProgram”UOperatingSystemBaseProgram * StartProgram(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:314 Starts a program in the operating system.
This function is used to start a program in the operating system. It checks if the program is already running. If the program is set to run in a single instance only and is already running, it returns the currently running instance. Otherwise, it creates a new instance of the program and initializes it.
Parameters
Section titled “Parameters”OutErrorThe error message in case of any error during program start.
Returns
Section titled “Returns”A pointer to the started program, or nullptr if there was an error.
References
Section titled “References”ApplicationbIsSystemInstalledProgrambSingleInstanceOnlyCreateProgramCreateProgramWidgetCreateTaskbarButtonDataObjGetSettingsINVALID_PROCESS_IDIsRunningMAKE_ERRORParentOS
IsRunning
Section titled “IsRunning”const
bool IsRunning() constDefined in OperatingSystemBaseProgram.h:322 Checks if the program is running.
Returns
Section titled “Returns”True if the program is running. False otherwise.
Referenced by
Section titled “Referenced by”References
Section titled “References”CanAddToDesktop
Section titled “CanAddToDesktop”const
bool CanAddToDesktop() constDefined in OperatingSystemBaseProgram.h:333 Check if the program can be added to the desktop.
This function is used to determine if the program can be added to the desktop. It checks if the property bAddToDesktop is set to true and if the IconWidgetClass is not null.
Returns
Section titled “Returns”True if the program can be added to the desktop, false otherwise.
References
Section titled “References”GetOperatingSystem
Section titled “GetOperatingSystem”const
UOperatingSystem * GetOperatingSystem() constDefined in OperatingSystemBaseProgram.h:341 Get the operating system associated with this program.
Returns
Section titled “Returns”A pointer to the operating system.
Referenced by
Section titled “Referenced by”ChangeCurrentUserCheckRootPasswordCreateTaskbarButtonHasRepositoryOnCloseOnOpenFileOnStartSubmitRating
References
Section titled “References”CreateIconWidget
Section titled “CreateIconWidget”UOperatingSystemProgramIconWidget * CreateIconWidget()Defined in OperatingSystemBaseProgram.h:352 Creates an icon widget for the operating system program. This function creates an icon widget for the operating system program, if it has not been created before. If a cached icon widget exists, it is returned instead of creating a new one.
Returns
Section titled “Returns”A pointer to the created icon widget.
References
Section titled “References”CachedIconWidgetCreateIconWidgetGetSettingsNameOS_LOG_ERROR
GetIconWidget
Section titled “GetIconWidget”const
UOperatingSystemProgramIconWidget * GetIconWidget() constDefined in OperatingSystemBaseProgram.h:359 Gets the icon widget for the Operating System program.
Returns
Section titled “Returns”The icon widget associated with this program.
References
Section titled “References”OpenFile
Section titled “OpenFile”void OpenFile(UOperatingSystemFile * TargetFile, FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:369 Opens a file in the operating system.
DO NOT call this function directly. Use UOperatingSystemStatics::OpenFile function instead.
Parameters
Section titled “Parameters”-
TargetFileThe file to be opened. -
OutErrorThe error message if the file fails to open.
References
Section titled “References”bHasBlueprintOnOpenFileChildFileGetSettingsK2_OnOpenFileOnOpenFileParentOSParentWindowProgramWidget
CloseProgram
Section titled “CloseProgram”void CloseProgram(constbool bIsFullClose, FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:398 Closes the program.
If the program has a blueprint on close, it calls the K2_OnClose() function. Then it calls the OnClose() function and provides an OutError parameter. The ProcessID is set to INVALID_PROCESS_ID. If a ChildFile object is valid, it closes the file, marks it as garbage, and sets it to nullptr.
If the SaveMethod is set to SaveOnExit or the ParentOS is shutting down or restarting and the SaveMethod is set to SaveOnOperatingSystemShutdown, it saves the program settings using the UOperatingSystemProgramSettings::SaveSettings() function.
If ProgramWidget is valid, it destroys the operating system base widget and sets ProgramWidget to nullptr.
If the Settings object is valid and the ParentOS is shutting down or restarting, it marks the Settings object as garbage and sets it to nullptr.
It then closes the ParentWindow and sets ParentWindow to nullptr.
Finally, it broadcasts the OnProgramClosed event with this program object as a parameter.
Parameters
Section titled “Parameters”-
bIsFullCloseDetermines if this program should be completely closed or not. -
OutErrorThe reference to an FGenericError object to store any error that occurred during the closing process.
References
Section titled “References”bHasBlueprintOnCloseChildFileDataObjGetSettingsINVALID_PROCESS_IDK2_OnCloseNameOnCloseOS_LOG_VERBOSEParentOSParentWindowProcessIDProgramWidgetSaveMethodSaveOnExitSaveOnOperatingSystemShutdownSaveSettingsSettings
BringToFront
Section titled “BringToFront”const
void BringToFront(FGenericError & OutError) constDefined in OperatingSystemBaseProgram.h:400
References
Section titled “References”GetSettingsMAKE_ERRORParentWindow
GetParentWindow
Section titled “GetParentWindow”const
UDraggableWindow * GetParentWindow() constDefined in OperatingSystemBaseProgram.h:410 Get the parent window of the program.
This function returns the parent window of the program. The parent window is the draggable window that contains the program’s UI elements.
Returns
Section titled “Returns”A pointer to the parent window.
References
Section titled “References”IsCompatibleWithOS
Section titled “IsCompatibleWithOS”const
void IsCompatibleWithOS(constTWeakObjectPtr< constUOperatingSystem > TestOS, FGenericError & OutError) constDefined in OperatingSystemBaseProgram.h:624 Checks if the given operating system is compatible with this program.
Parameters
Section titled “Parameters”-
TestOSThe operating system to test compatibility with. -
OutErrorThe error message in case of incompatibility.
References
Section titled “References”CanSaveSettings
Section titled “CanSaveSettings”const
bool CanSaveSettings() constDefined in OperatingSystemBaseProgram.h:631 Checks if the settings of the operating system base program can be saved.
Returns
Section titled “Returns”true if the settings can be saved, false otherwise.
Referenced by
Section titled “Referenced by”References
Section titled “References”DoNotSaveSaveMethodSettings
SetParentPartition
Section titled “SetParentPartition”void SetParentPartition(TWeakObjectPtr< UOperatingSystemPartition > OwningPartition)Defined in OperatingSystemBaseProgram.h:638 Sets the parent partition of the program to the specified operating system partition.
Parameters
Section titled “Parameters”OwningPartitionA weak object pointer to the operating system partition that owns this program.
References
Section titled “References”OnProgramWindowStateChanged
Section titled “OnProgramWindowStateChanged”const
void OnProgramWindowStateChanged(constEOperatingSystemProgramViewState & NewState) constDefined in OperatingSystemBaseProgram.h:645 Called when the program window’s state changes.
Parameters
Section titled “Parameters”NewStateThe new state of the program window.
References
Section titled “References”IsWindowMaximized
Section titled “IsWindowMaximized”const
bool IsWindowMaximized() constDefined in OperatingSystemBaseProgram.h:659 Checks whether the window of the operating system base program is maximized.
This method checks if the window of the operating system base program is currently maximized. If the window is maximized, the method returns true; otherwise, it returns false.
Returns
Section titled “Returns”True if the window is maximized, false otherwise.
See also: UOperatingSystemBaseProgram
See also: UOperatingSystemBaseProgram::ParentWindow
See also: UOperatingSystemBaseProgram::ParentWindow::IsMaximized
References
Section titled “References”GetSaveSlotName
Section titled “GetSaveSlotName”virtual const
virtual FString GetSaveSlotName() constDefined in OperatingSystemBaseProgram.h:677 Retrieves the name of the save slot for the operating system program.
This method returns the name of the save slot for the operating system program. If the program has a blueprint implementation of K2_GetSaveSlotName, that will be used to retrieve the save slot name. If the blueprint implementation returns a non-empty string, that string will be returned. Otherwise, the save slot name will be generated using the program’s identifier and the unique ID of the parent device.
Returns
Section titled “Returns”The name of the save slot for the operating system program.
See also: UOperatingSystemBaseProgram::K2_GetSaveSlotName()
See also: UOperatingSystemBaseProgram::Identifier
See also: UOperatingSystemBaseProgram::ParentOS
See also: UOperatingSystemBaseProgram::ParentDevice
See also: UOperatingSystemBaseProgram::ParentDeviceActor
References
Section titled “References”Reimplemented by
Section titled “Reimplemented by”GetWindowPosition
Section titled “GetWindowPosition”const
TOptional< FVector2D > GetWindowPosition() constDefined in OperatingSystemBaseProgram.h:687 Retrieves the position of the window associated with the operating system program.
If the program has a parent window, the method will call the GetWindowPosition() method of the parent window and return the result. If the program does not have a parent window, the method returns an empty optional value.
Returns
Section titled “Returns”The position of the window associated with the program, or an empty optional value if the program does not have a parent window.
References
Section titled “References”GetParentPartition
Section titled “GetParentPartition”const
TWeakObjectPtr< UOperatingSystemPartition > GetParentPartition() constDefined in OperatingSystemBaseProgram.h:700 Get the parent partition of the current operating system program.
This method returns a weak pointer to the parent partition of the program. The parent partition represents the operating system partition to which the program belongs.
To access the properties or call functions of the parent partition, you can use the returned weak pointer.
Returns
Section titled “Returns”A weak pointer to the parent partition of the program.
See also: UOperatingSystemPartition
References
Section titled “References”GetIconWidgetClass
Section titled “GetIconWidgetClass”const
TSoftClassPtr< UOperatingSystemProgramIconWidget > GetIconWidgetClass() constDefined in OperatingSystemBaseProgram.h:710 Retrieves the class of the icon widget for the operating system program.
This method returns the class of the widget that represents the icon of the operating system program. The widget class is a subclass of UOperatingSystemProgramIconWidget.
Returns
Section titled “Returns”A soft class pointer to the widget class for the program icon.
Referenced by
Section titled “Referenced by”References
Section titled “References”GetWidgetClass
Section titled “GetWidgetClass”const
TSoftClassPtr< UOperatingSystemProgramWidget > GetWidgetClass() constDefined in OperatingSystemBaseProgram.h:719 Retrieves the widget class associated with the operating system base program. This method returns the widget class that should be used to create the program widget for the specific program.
Returns
Section titled “Returns”The widget class that should be used to create the program widget. Returns nullptr if no widget class is defined.
See also: UOperatingSystemProgramWidget
References
Section titled “References”GetSettingsClass
Section titled “GetSettingsClass”const
TSoftClassPtr< UOperatingSystemProgramSettings > GetSettingsClass() constDefined in OperatingSystemBaseProgram.h:728 Get the settings class associated with this program. This method returns the class type of the settings object specific to this program.
Returns
Section titled “Returns”The class type of the settings object specific to this program.
See also: UOperatingSystemProgramSettings
References
Section titled “References”GetDataClass
Section titled “GetDataClass”const
TSoftClassPtr< UOperatingSystemProgramData > GetDataClass() constDefined in OperatingSystemBaseProgram.h:739 Retrieves the data class associated with the program.
This function returns a TSoftClassPtr<UOperatingSystemProgramData> which represents the data class associated with the program. The data class stores the program’s data and provides functionality for manipulating and accessing the data.
Returns
Section titled “Returns”TSoftClassPtr<UOperatingSystemProgramData> - A soft reference to the data class associated with the program.
See also: UOperatingSystemProgramData
References
Section titled “References”GetTaskbarButtonClass
Section titled “GetTaskbarButtonClass”const
TSoftClassPtr< UOperatingSystemTaskbarButton > GetTaskbarButtonClass() constDefined in OperatingSystemBaseProgram.h:750 Retrieves the taskbar button class associated with the program.
This method retrieves the taskbar button class associated with the program. It returns a soft object pointer to the taskbar button class.
Returns
Section titled “Returns”A soft object pointer to the taskbar button class. If the program’s taskbar button class is null, the method returns nullptr.
See also: UOperatingSystemTaskbarButton
Referenced by
Section titled “Referenced by”References
Section titled “References”GetSettings
Section titled “GetSettings”const
TWeakObjectPtr< UOperatingSystemProgramSettings > GetSettings() constDefined in OperatingSystemBaseProgram.h:765 Get the settings object for the program.
This method returns the settings object associated with the program. The settings object contains various properties and configurations specific to the program.
Returns
Section titled “Returns”A weak pointer to the settings object. Use TWeakObjectPtr<T> to handle the object safely. The returned pointer will be null if no settings object has been assigned.
See also: UOperatingSystemProgramSettings
Referenced by
Section titled “Referenced by”BringToFrontCaptureNowChangeCurrentPathChangeCurrentUserCheckRootPasswordClearHistoryCloseProgramCreateDataObjCreateIconWidgetCreateProgramCreateSettingsDestroyActiveCommandFOperatingSystemStoreProgramDataGetAllCCTV_ActorsGetAverageRatingGetCommandGetCurrentDirectoryPathGetCurrentLayoutGetLastWindowPositionGetNextCommandFromHistoryGetPreviousCommandFromHistoryGetSaveSlotNameGetWindowPositionHasFlagHasRepositoryInternal_FindAdditionalCommandsInternal_GetCurrentAverageRatingInternal_GetSaveFileInternal_LoadProgramSettingsInternal_OnAudioPlaybackChangedInternal_OnAudioPlayStateChangedInternal_OnThemeChangedInternal_StartInternal_TryCreateSaveFileInternal_ValidateIsCompatibleWithOSIsRunningIsStoreItemFreeIsValidMessageReceivedFromCommandOnOpenFileOnOpenFileOnProgramWindowStateChangedOnStartOnStartOnValidateOnValidateOnValidateOpenFileoperator==ProcessCommandPromptRootPasswordPromptUserContinueSaveSettingsSetCaptureMethodSetCaptureSpeedSetLayoutSetParentPartitionSetPausedSetSelectedCameraSetVolumeMultiplierStartProgramSubmitRatingUOperatingSystemAudioPlayerUOperatingSystemCCTVProgramUOperatingSystemStoreUOperatingSystemVideoPlayerVerifyUserPrompt
References
Section titled “References”GetDataObj
Section titled “GetDataObj”const
TWeakObjectPtr< UOperatingSystemProgramData > GetDataObj() constDefined in OperatingSystemBaseProgram.h:779 Retrieves the data object associated with the operating system program.
This function returns the data object associated with the operating system program. The data object stores information specific to the program, such as program settings, state, and other relevant data.
Returns
Section titled “Returns”A weak object pointer to the program’s data object.
See also: UOperatingSystemProgramData
References
Section titled “References”GetTaskbarButton
Section titled “GetTaskbarButton”const
TWeakObjectPtr< UOperatingSystemTaskbarButton > GetTaskbarButton() constDefined in OperatingSystemBaseProgram.h:794 Retrieves the taskbar button associated with the program.
This method returns a pointer to the taskbar button associated with the program. If the program does not have a taskbar button, the method returns nullptr.
Returns
Section titled “Returns”A pointer to the taskbar button associated with the program. If the program does not have a taskbar button, the method returns nullptr.
See also: UOperatingSystemTaskbarButton
References
Section titled “References”GetProgramWidget
Section titled “GetProgramWidget”const
UOperatingSystemProgramWidget * GetProgramWidget() constDefined in OperatingSystemBaseProgram.h:802 Returns the program widget associated with the operating system program.
Returns
Section titled “Returns”The program widget instance for the operating system program.
See also: UOperatingSystemProgramWidget
Referenced by
Section titled “Referenced by”References
Section titled “References”CreateDataObj
Section titled “CreateDataObj”void CreateDataObj(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:804
References
Section titled “References”bRequiresDataDataClassDataObjGetSettingsMAKE_ERRORParentOS
GetSettings
Section titled “GetSettings”const inline
template<classT> inline T * GetSettings() constDefined in OperatingSystemBaseProgram.h:821 Get the settings object of type T.
This method returns the settings object of type T associated with the program. It is important that T is derived from UOperatingSystemProgramSettings. If T is not derived from UOperatingSystemProgramSettings, a compilation error will occur.
Returns
Section titled “Returns”A pointer to the settings object of type T.
Only use this method if you are certain that the settings object of type T exists. Otherwise, it may result in unexpected behavior.
See also: UOperatingSystemProgramSettings
GetDataObj
Section titled “GetDataObj”const inline
template<classT> inline T * GetDataObj() constDefined in OperatingSystemBaseProgram.h:838 Returns the data object associated with the program.
This method returns a pointer to the data object associated with the program. The data object is of type T, which must be derived from UOperatingSystemProgramData. If T is not derived from UOperatingSystemProgramData, a static_assert will trigger and an error message will be displayed.
Returns
Section titled “Returns”A pointer to the data object of type T associated with the program.
See also: UOperatingSystemProgramData
const inline
template<classT> inline T * GetAs() constDefined in OperatingSystemBaseProgram.h:851 Returns const program casted to given type.
Parameters
Section titled “Parameters”TTarget program that is derived from UOperatingSystemBaseProgram
Returns
Section titled “Returns”const casted program.
inline
template<classT> inline T * GetAs()Defined in OperatingSystemBaseProgram.h:864 Returns program casted to given type.
Parameters
Section titled “Parameters”TTarget program that is derived from UOperatingSystemBaseProgram
Returns
Section titled “Returns”Casted program.
GetProgramName
Section titled “GetProgramName”const inline
inline FString GetProgramName() constDefined in OperatingSystemBaseProgram.h:875 Returns the program name as a FString.
Returns
Section titled “Returns”The program name as a FString.
Referenced by
Section titled “Referenced by”References
Section titled “References”GetIdentifier
Section titled “GetIdentifier”const inline
inline FName GetIdentifier() constDefined in OperatingSystemBaseProgram.h:883 Returns the identifier of the program. The identifier serves as a unique identification for the program.
Returns
Section titled “Returns”The identifier of the program.
Referenced by
Section titled “Referenced by”IsSingleInstanceProgram
Section titled “IsSingleInstanceProgram”const inline
inline bool IsSingleInstanceProgram() constDefined in OperatingSystemBaseProgram.h:893 Returns a boolean value indicating whether the program is a single instance program. A single instance program is a program that allows only one instance to run at a time.
Returns
Section titled “Returns”True if the program is a single instance program, false otherwise.
See also: UOperatingSystemBaseProgram
IsSystemInstalledProgram
Section titled “IsSystemInstalledProgram”const inline
inline bool IsSystemInstalledProgram() constDefined in OperatingSystemBaseProgram.h:900 Returns a boolean value indicating whether the program is installed on the system. If the program is installed, it will return true; otherwise, it will return false.
GetProcessID
Section titled “GetProcessID”const inline
inline uint32 GetProcessID() constDefined in OperatingSystemBaseProgram.h:908 Retrieves the process ID of the current program. This method allows you to obtain the unique process ID of the program.
Returns
Section titled “Returns”The process ID of the program.
GetSpaceRequiredInMB
Section titled “GetSpaceRequiredInMB”const inline
inline float GetSpaceRequiredInMB() constDefined in OperatingSystemBaseProgram.h:916 Get the space required by the program in megabytes. This method returns the space required by the program in megabytes.
Returns
Section titled “Returns”The space required by the program in megabytes.
References
Section titled “References”ShouldRememberLastWindowPosition
Section titled “ShouldRememberLastWindowPosition”const inline
inline bool ShouldRememberLastWindowPosition() constDefined in OperatingSystemBaseProgram.h:926 Indicates whether the program should remember the last window position.
This method returns a boolean value indicating whether the program should remember the last window position or not. If the value is true, the program should remember the last window position, otherwise it should not.
Returns
Section titled “Returns”true if the program should remember the last window position, false otherwise.
IsSetToRunOnStartup
Section titled “IsSetToRunOnStartup”const inline
inline bool IsSetToRunOnStartup() constDefined in OperatingSystemBaseProgram.h:931 Indicates whether this program should run at system startup.
GetCloseMethod
Section titled “GetCloseMethod”const inline
inline EOperatingSystemProgramCloseMethod GetCloseMethod() constDefined in OperatingSystemBaseProgram.h:944 Returns the close method of the operating system program.
This method returns the close method of the operating system program. The close method determines how the program will be closed or terminated. It is an enumerated value of type EOperatingSystemProgramCloseMethod.
Returns
Section titled “Returns”The close method of the operating system program.
See also: EOperatingSystemProgramCloseMethod
Public Static Methods
Section titled “Public Static Methods”| Return | Name | Description |
|---|---|---|
UOperatingSystemBaseProgram * | CreateProgram static | Creates a program instance. |
bool | IsStoreItemFree static | Checks if a store item is free. |
CreateProgram
Section titled “CreateProgram”static
static UOperatingSystemBaseProgram * CreateProgram(TWeakObjectPtr< UOperatingSystem > OwningOS, constTSoftClassPtr< UOperatingSystemBaseProgram > & ProgramClass, FGenericError & OutError, constbool bInstalledWithOS = false)Defined in OperatingSystemBaseProgram.h:286 Creates a program instance.
Parameters
Section titled “Parameters”-
OwningOSOperating System that will own the program. -
ProgramClassThe class of the program to create. -
OutErrorThe error that occurred during program creation. -
bInstalledWithOSWhether the program is installed with the operating system.
Returns
Section titled “Returns”The created program instance if successful, nullptr otherwise.
Referenced by
Section titled “Referenced by”References
Section titled “References”ApplicationGetSettingsMAKE_ERRORNEW_SOFT_OBJOS_LOG
IsStoreItemFree
Section titled “IsStoreItemFree”static
static bool IsStoreItemFree(constFOperatingSystemStoreProgramData & ProgramData)Defined in OperatingSystemBaseProgram.h:301 Checks if a store item is free.
This function takes a [FOperatingSystemStoreProgramData](/api-reference/operating-system-simulator/data/foperatingsystemstoreprogramdata/#foperatingsystemstoreprogramdata) object as input and checks if the program associated with it is free. It returns true if the program is free, and false otherwise.
Parameters
Section titled “Parameters”ProgramDataThe store program data to check.
Returns
Section titled “Returns”bool True if the program is free, false otherwise.
References
Section titled “References”Protected Attributes
Section titled “Protected Attributes”| Return | Name | Description |
|---|---|---|
FText | Name | Name of this program. |
FText | Author | The company or individual who created this program. |
FText | Description | A simple description for this program. Typically used on store apps. |
FName | Identifier | A unique identifier (UID) for this program. Useful for terminal commands. |
FOperatingSystemVersion | Version | Program version |
FText | StoreDisplayName | Only for store app. Overrides the name to show on store. If this is unset, Name property is used. |
FText | StoreType | Only for store app. What category or type is this program? Example: Entertainment, Productivity, Financial, Game, Utilities, Tool etc. |
float | StorePrice | Only for store app. What price should be displayed on store. Set to 0 to make this free. |
FGameplayTagContainer | SupportedOperatingSystems | If this container is empty, it is assumed all Operating Systems are supported. |
uint8 | bRequireMinOperatingSystemVersion | |
FOperatingSystemVersion | MinOperatingSystemVersion | If enabled, this program will not install/run on an Operating System less than this version. |
TSoftObjectPtr< UObject > | IconObject | Obvious right? C’mon its just an Icon. What you need a tooltip for ¯(ツ)/¯ |
float | SpaceRequiredInMB | How much space does this program consume once installed. |
TSoftClassPtr< UOperatingSystemProgramIconWidget > | IconWidgetClass | Program specific icon widget class that will be used instead of the default one set in Project Settings -> Operating System -> Settings category. Typically, you don’t have to override this. |
TSoftClassPtr< UOperatingSystemProgramWidget > | WidgetClass | Widget associated with this program. |
EOperatingSystemProgramCloseMethod | CloseMethod | Determines how the program should close. For a phone type of device, typically this should be set to Background. |
EOperatingSystemProgramSaveMethod | SaveMethod | Determines when this program saves. |
TSoftClassPtr< UOperatingSystemProgramSettings > | SettingsClass | An optional class where you can save custom settings for this program. Example: Customizable options for a browser. |
TSoftClassPtr< UOperatingSystemProgramData > | DataClass | |
uint8 | bRunOnStartup | Setting this to true will make the program run automatically when the operating system starts. |
uint8 | bRequiresData | If true, then this program must have a valid data class set and the data object must return ShouldCreate true (by default it is). If not, program will not create. |
uint8 | bAddToDesktop | If true, add this program to the desktop after install. |
uint8 | bCreateNotification | If true, add a notification to the Operating System that this program installed. |
uint8 | bSingleInstanceOnly | If true, only one instance of this program is allowed to run. |
uint8 | bCanRunOnPortableDevice | If true, this program can run on portable device too. |
uint8 | bCreateSettingsBeforeStarting | Some programs might need access to its settings class before they are started. For example, to determine if the program itself should start automatically when os is started. In this case, you need to enable this. @See: K2_OnSettingsLoad |
uint8 | bRememberLastWindowPosition | Set to true if the window position should be saved and restored automatically. |
uint8 | bAllowDragging | Allows the user to drag the window of this program. |
uint8 | bAllowResizing | Allows the draggable window of this program to be resized by user. |
uint8 | bOverrideWindowSize | Disables auto determining and set the window size as set by Override Window Size variable. |
FVector2D | OverrideWindowSize | Forcefully set a window size instead of auto-determining |
FVector2D | MinimumWindowResize | If non zero, window can only resize upto this value. Resizing will not go lower than this. |
EOperatingSystemWindowStartupState | StartWindowState | Set the startup window state. |
TSoftClassPtr< UDraggableWindow > | OverrideWindowClass | If not null, then use this class as draggable window when starting this program. If null, new window class should be set inside UOperatingSystemWidget::K2_CreateNewWindow |
TSoftClassPtr< UOperatingSystemTaskbarButton > | TaskbarButtonClass | Program specific taskbar button class that will be used instead of the default taskbar button class set in Project Settings -> Operating System -> Settings category. Typically, you don’t have to set this. |
TWeakObjectPtr< UOperatingSystemPartition > | ParentPartition |
FText NameDefined in OperatingSystemBaseProgram.h:66 Name of this program.
Referenced by
Section titled “Referenced by”CloseProgramCreateIconWidgetInternal_LoadProgramSettingsInternal_ValidateIsCompatibleWithOSOnValidate
Author
Section titled “Author”FText AuthorDefined in OperatingSystemBaseProgram.h:70 The company or individual who created this program.
Description
Section titled “Description”FText DescriptionDefined in OperatingSystemBaseProgram.h:74 A simple description for this program. Typically used on store apps.
Referenced by
Section titled “Referenced by”Identifier
Section titled “Identifier”FName IdentifierDefined in OperatingSystemBaseProgram.h:78 A unique identifier (UID) for this program. Useful for terminal commands.
Referenced by
Section titled “Referenced by”GetSaveSlotNameGetSaveSlotNameInternal_ValidateUOperatingSystemAudioPlayerUOperatingSystemCCTVProgramUOperatingSystemStoreUOperatingSystemVideoPlayer
Version
Section titled “Version”FOperatingSystemVersion VersionDefined in OperatingSystemBaseProgram.h:82 Program version
Referenced by
Section titled “Referenced by”StoreDisplayName
Section titled “StoreDisplayName”FText StoreDisplayNameDefined in OperatingSystemBaseProgram.h:86 Only for store app. Overrides the name to show on store. If this is unset, Name property is used.
StoreType
Section titled “StoreType”FText StoreTypeDefined in OperatingSystemBaseProgram.h:90 Only for store app. What category or type is this program? Example: Entertainment, Productivity, Financial, Game, Utilities, Tool etc.
StorePrice
Section titled “StorePrice”float StorePriceDefined in OperatingSystemBaseProgram.h:94 Only for store app. What price should be displayed on store. Set to 0 to make this free.
Referenced by
Section titled “Referenced by”SupportedOperatingSystems
Section titled “SupportedOperatingSystems”FGameplayTagContainer SupportedOperatingSystemsDefined in OperatingSystemBaseProgram.h:98 If this container is empty, it is assumed all Operating Systems are supported.
Referenced by
Section titled “Referenced by”bRequireMinOperatingSystemVersion
Section titled “bRequireMinOperatingSystemVersion”uint8 bRequireMinOperatingSystemVersionDefined in OperatingSystemBaseProgram.h:101
Referenced by
Section titled “Referenced by”MinOperatingSystemVersion
Section titled “MinOperatingSystemVersion”FOperatingSystemVersion MinOperatingSystemVersionDefined in OperatingSystemBaseProgram.h:105 If enabled, this program will not install/run on an Operating System less than this version.
Referenced by
Section titled “Referenced by”IconObject
Section titled “IconObject”TSoftObjectPtr< UObject > IconObjectDefined in OperatingSystemBaseProgram.h:109 Obvious right? C’mon its just an Icon. What you need a tooltip for ¯(ツ)/¯
Referenced by
Section titled “Referenced by”SpaceRequiredInMB
Section titled “SpaceRequiredInMB”float SpaceRequiredInMBDefined in OperatingSystemBaseProgram.h:113 How much space does this program consume once installed.
Referenced by
Section titled “Referenced by”Internal_ValidateUOperatingSystemAudioPlayerUOperatingSystemCCTVProgramUOperatingSystemStoreUOperatingSystemVideoPlayer
IconWidgetClass
Section titled “IconWidgetClass”TSoftClassPtr< UOperatingSystemProgramIconWidget > IconWidgetClassDefined in OperatingSystemBaseProgram.h:119 Program specific icon widget class that will be used instead of the default one set in Project Settings -> Operating System -> Settings category. Typically, you don’t have to override this.
Referenced by
Section titled “Referenced by”WidgetClass
Section titled “WidgetClass”TSoftClassPtr< UOperatingSystemProgramWidget > WidgetClassDefined in OperatingSystemBaseProgram.h:123 Widget associated with this program.
Referenced by
Section titled “Referenced by”CloseMethod
Section titled “CloseMethod”EOperatingSystemProgramCloseMethod CloseMethodDefined in OperatingSystemBaseProgram.h:127 Determines how the program should close. For a phone type of device, typically this should be set to Background.
SaveMethod
Section titled “SaveMethod”EOperatingSystemProgramSaveMethod SaveMethodDefined in OperatingSystemBaseProgram.h:131 Determines when this program saves.
Referenced by
Section titled “Referenced by”CanSaveSettingsCloseProgramInternal_LoadProgramSettingsUOperatingSystemAudioPlayerUOperatingSystemCCTVProgram
SettingsClass
Section titled “SettingsClass”TSoftClassPtr< UOperatingSystemProgramSettings > SettingsClassDefined in OperatingSystemBaseProgram.h:135 An optional class where you can save custom settings for this program. Example: Customizable options for a browser.
Referenced by
Section titled “Referenced by”DataClass
Section titled “DataClass”TSoftClassPtr< UOperatingSystemProgramData > DataClassDefined in OperatingSystemBaseProgram.h:138
Referenced by
Section titled “Referenced by”CreateDataObjGetDataClassInternal_ValidateOnValidateUOperatingSystemCCTVProgramUOperatingSystemStoreUOperatingSystemVideoPlayer
bRunOnStartup
Section titled “bRunOnStartup”uint8 bRunOnStartupDefined in OperatingSystemBaseProgram.h:142 Setting this to true will make the program run automatically when the operating system starts.
bRequiresData
Section titled “bRequiresData”uint8 bRequiresDataDefined in OperatingSystemBaseProgram.h:146 If true, then this program must have a valid data class set and the data object must return ShouldCreate true (by default it is). If not, program will not create.
Referenced by
Section titled “Referenced by”CreateDataObjInternal_ValidateUOperatingSystemCCTVProgramUOperatingSystemStoreUOperatingSystemVideoPlayer
bAddToDesktop
Section titled “bAddToDesktop”uint8 bAddToDesktopDefined in OperatingSystemBaseProgram.h:150 If true, add this program to the desktop after install.
Referenced by
Section titled “Referenced by”bCreateNotification
Section titled “bCreateNotification”uint8 bCreateNotificationDefined in OperatingSystemBaseProgram.h:154 If true, add a notification to the Operating System that this program installed.
bSingleInstanceOnly
Section titled “bSingleInstanceOnly”uint8 bSingleInstanceOnlyDefined in OperatingSystemBaseProgram.h:158 If true, only one instance of this program is allowed to run.
Referenced by
Section titled “Referenced by”bCanRunOnPortableDevice
Section titled “bCanRunOnPortableDevice”uint8 bCanRunOnPortableDeviceDefined in OperatingSystemBaseProgram.h:162 If true, this program can run on portable device too.
Referenced by
Section titled “Referenced by”bCreateSettingsBeforeStarting
Section titled “bCreateSettingsBeforeStarting”uint8 bCreateSettingsBeforeStartingDefined in OperatingSystemBaseProgram.h:169 Some programs might need access to its settings class before they are started. For example, to determine if the program itself should start automatically when os is started. In this case, you need to enable this. @See: K2_OnSettingsLoad
Referenced by
Section titled “Referenced by”bRememberLastWindowPosition
Section titled “bRememberLastWindowPosition”uint8 bRememberLastWindowPositionDefined in OperatingSystemBaseProgram.h:173 Set to true if the window position should be saved and restored automatically.
bAllowDragging
Section titled “bAllowDragging”uint8 bAllowDraggingDefined in OperatingSystemBaseProgram.h:177 Allows the user to drag the window of this program.
bAllowResizing
Section titled “bAllowResizing”uint8 bAllowResizingDefined in OperatingSystemBaseProgram.h:181 Allows the draggable window of this program to be resized by user.
Referenced by
Section titled “Referenced by”bOverrideWindowSize
Section titled “bOverrideWindowSize”uint8 bOverrideWindowSizeDefined in OperatingSystemBaseProgram.h:185 Disables auto determining and set the window size as set by Override Window Size variable.
OverrideWindowSize
Section titled “OverrideWindowSize”FVector2D OverrideWindowSizeDefined in OperatingSystemBaseProgram.h:189 Forcefully set a window size instead of auto-determining
MinimumWindowResize
Section titled “MinimumWindowResize”FVector2D MinimumWindowResizeDefined in OperatingSystemBaseProgram.h:193 If non zero, window can only resize upto this value. Resizing will not go lower than this.
StartWindowState
Section titled “StartWindowState”EOperatingSystemWindowStartupState StartWindowStateDefined in OperatingSystemBaseProgram.h:197 Set the startup window state.
Referenced by
Section titled “Referenced by”OverrideWindowClass
Section titled “OverrideWindowClass”TSoftClassPtr< UDraggableWindow > OverrideWindowClassDefined in OperatingSystemBaseProgram.h:201 If not null, then use this class as draggable window when starting this program. If null, new window class should be set inside UOperatingSystemWidget::K2_CreateNewWindow
TaskbarButtonClass
Section titled “TaskbarButtonClass”TSoftClassPtr< UOperatingSystemTaskbarButton > TaskbarButtonClassDefined in OperatingSystemBaseProgram.h:207 Program specific taskbar button class that will be used instead of the default taskbar button class set in Project Settings -> Operating System -> Settings category. Typically, you don’t have to set this.
Referenced by
Section titled “Referenced by”ParentPartition
Section titled “ParentPartition”TWeakObjectPtr< UOperatingSystemPartition > ParentPartitionDefined in OperatingSystemBaseProgram.h:261
Referenced by
Section titled “Referenced by”Protected Methods
Section titled “Protected Methods”| Return | Name | Description |
|---|---|---|
void | OnValidate virtual const inline | OnValidate method for validating program-specific logic. |
void | OnStart virtual inline | Called when the program starts. It should be overridden in derived classes to provide the necessary functionality for the specific program. |
void | OnClose virtual inline | Called when the program is requested to be closed. It can be overridden by derived classes to perform necessary cleanup operations before the program is closed. The function receives an FGenericError& object as a parameter, which can be used to report any error that occurred during the closing process. |
void | OnOpenFile virtual inline | Called when a file is opened in the operating system program. It provides the target file that was opened, as well as an output error parameter for reporting any errors that occurred during the file opening process. |
void | OnThemeChanged virtual inline | Virtual method called when the theme is changed. |
void | K2_OnCreate | Implementable event called when the program is created. |
void | K2_OnInstall | UFunction declaration for the blueprint implementable event K2_OnInstall. |
FGenericError | K2_OnStart | A function that is called when the operating system program starts. |
void | K2_OnClose | BlueprintImplementableEvent for closing the operating system program. |
void | K2_OnSettingsLoad | Blueprint event called when settings are loaded. |
void | K2_OnOpenFile | Implementable event triggered when a file is opened. This event is called before calling ProgramWidget->OpenFile. |
void | K2_OnValidate const | Implementable event triggered when validating this program. If you set the Output Error return value to something valid, this program will not be created at all. |
FString | K2_GetSaveSlotName const | Retrieves the save slot name. |
OnValidate
Section titled “OnValidate”virtual const inline
virtual inline void OnValidate(FGenericError & OutError) constDefined in OperatingSystemBaseProgram.h:490 OnValidate method for validating program-specific logic.
This method is a virtual function that can be overridden by derived classes to perform additional validation specific to the program’s requirements. The method takes an FGenericError& parameter, which can be used to report any validation errors encountered during the validation process.
Parameters
Section titled “Parameters”OutErrorThe error object used to report any validation errors.
See also: FGenericError
Referenced by
Section titled “Referenced by”Reimplemented by
Section titled “Reimplemented by”OnStart
Section titled “OnStart”virtual inline
virtual inline void OnStart(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:499 Called when the program starts. It should be overridden in derived classes to provide the necessary functionality for the specific program.
Parameters
Section titled “Parameters”OutErrorA reference to the FGenericError object, used to report any errors that occur during startup.
See also: FGenericError
Referenced by
Section titled “Referenced by”Reimplemented by
Section titled “Reimplemented by”OnClose
Section titled “OnClose”virtual inline
virtual inline void OnClose(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:510 Called when the program is requested to be closed. It can be overridden by derived classes to perform necessary cleanup operations before the program is closed. The function receives an FGenericError& object as a parameter, which can be used to report any error that occurred during the closing process.
Parameters
Section titled “Parameters”OutErrorThe error object to report any error that occurred during the closing process.
See also: FGenericError
Referenced by
Section titled “Referenced by”Reimplemented by
Section titled “Reimplemented by”OnOpenFile
Section titled “OnOpenFile”virtual inline
virtual inline void OnOpenFile(UOperatingSystemFile * TargetFile, FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:524 Called when a file is opened in the operating system program. It provides the target file that was opened, as well as an output error parameter for reporting any errors that occurred during the file opening process.
Parameters
Section titled “Parameters”-
TargetFileThe pointer to the UOperatingSystemFile object representing the opened file. -
OutErrorThe reference to the FGenericError object for reporting any errors occurred during the file opening process.
DO NOT call this function directly. Use UOperatingSystemStatics::OpenFile function instead.
See also: UOperatingSystemFile
See also: FGenericError
Referenced by
Section titled “Referenced by”Reimplemented by
Section titled “Reimplemented by”OnThemeChanged
Section titled “OnThemeChanged”virtual inline
virtual inline void OnThemeChanged(UOperatingSystemSettingModule_Theme * ThemePayload)Defined in OperatingSystemBaseProgram.h:534 Virtual method called when the theme is changed.
This method is called when the theme is changed. It can be overridden by derived classes to handle theme change events.
Parameters
Section titled “Parameters”ThemePayloadA pointer to the UOperatingSystemSettingModule_Theme object that represents the new
Referenced by
Section titled “Referenced by”K2_OnCreate
Section titled “K2_OnCreate”void K2_OnCreate()Defined in OperatingSystemBaseProgram.h:540 Implementable event called when the program is created.
K2_OnInstall
Section titled “K2_OnInstall”void K2_OnInstall()Defined in OperatingSystemBaseProgram.h:549
UFunction declaration for the blueprint implementable event K2_OnInstall.
This function should be used to handle the installation logic for the operating system program. It is a blueprint implementable event, which means it can be overridden and implemented in blueprint classes.
K2_OnStart
Section titled “K2_OnStart”FGenericError K2_OnStart()Defined in OperatingSystemBaseProgram.h:563 A function that is called when the operating system program starts.
This function is a blueprint implementable event. It is called when the operating system program is started. It returns an object of type FGenericError.
Returns
Section titled “Returns”FGenericError - The result of the function call.
K2_OnClose
Section titled “K2_OnClose”void K2_OnClose()Defined in OperatingSystemBaseProgram.h:573 BlueprintImplementableEvent for closing the operating system program.
This event is called when the operating system program needs to be closed.
See also: K2_OnClose()
Referenced by
Section titled “Referenced by”K2_OnSettingsLoad
Section titled “K2_OnSettingsLoad”void K2_OnSettingsLoad(UOperatingSystemProgramSettings * LoadedSettings)Defined in OperatingSystemBaseProgram.h:583 Blueprint event called when settings are loaded.
It is called when settings are loaded for an operating system program.
Parameters
Section titled “Parameters”LoadedSettingsThe loaded settings object.
Referenced by
Section titled “Referenced by”K2_OnOpenFile
Section titled “K2_OnOpenFile”void K2_OnOpenFile(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:592 Implementable event triggered when a file is opened. This event is called before calling ProgramWidget->OpenFile.
This event can be implemented in Blueprint to handle the opening of a file.
Referenced by
Section titled “Referenced by”K2_OnValidate
Section titled “K2_OnValidate”const
void K2_OnValidate(FGenericError & OutError) constDefined in OperatingSystemBaseProgram.h:601 Implementable event triggered when validating this program. If you set the Output Error return value to something valid, this program will not be created at all.
Parameters
Section titled “Parameters”OutErrorOutputs error.
Referenced by
Section titled “Referenced by”K2_GetSaveSlotName
Section titled “K2_GetSaveSlotName”const
FString K2_GetSaveSlotName() constDefined in OperatingSystemBaseProgram.h:614 Retrieves the save slot name.
This function is a Blueprint implementable event that allows getting the save slot name in Unreal Engine. It returns a FString object representing the name of the save slot.
Returns
Section titled “Returns”FString - The save slot name.
See also: K2_GetSaveSlotName
Referenced by
Section titled “Referenced by”Private Attributes
Section titled “Private Attributes”| Return | Name | Description |
|---|---|---|
uint8 | bIsSystemInstalledProgram | True if this program was installed by default when installing Operating System. |
uint8 | bHasBlueprintOnCreate | |
uint8 | bHasBlueprintOnInstall | |
uint8 | bHasBlueprintOnStart | |
uint8 | bHasBlueprintOnClose | |
uint8 | bHasBlueprintOnSettingsLoad | |
uint8 | bHasBlueprintOnOpenFile | |
uint8 | bHasBlueprintGetSaveSlotName | |
uint8 | bHasBlueprintOnValidate | |
TObjectPtr< UOperatingSystemProgramWidget > | ProgramWidget | The main widget that represents this program |
TObjectPtr< UOperatingSystemProgramSettings > | Settings | Settings object associated with this program. Only valid if you have provided a settings class. |
TObjectPtr< UOperatingSystemProgramData > | DataObj | Data object associated with this program. Only valid if you have provided a data class. |
TObjectPtr< UOperatingSystemFile > | ChildFile | The file that was opened by this program (if any). |
TWeakObjectPtr< UOperatingSystem > | ParentOS | Operating System that owns this program. |
TObjectPtr< UDraggableWindow > | ParentWindow | Window that this program is currently being displayed in. |
TObjectPtr< UOperatingSystemTaskbarButton > | TaskbarButton | Points to the taskbar button object. Only valid if the taskbar button class is provided. |
int32 | ProcessID | |
TObjectPtr< UOperatingSystemProgramIconWidget > | CachedIconWidget |
bIsSystemInstalledProgram
Section titled “bIsSystemInstalledProgram”uint8 bIsSystemInstalledProgramDefined in OperatingSystemBaseProgram.h:213 True if this program was installed by default when installing Operating System.
Referenced by
Section titled “Referenced by”bHasBlueprintOnCreate
Section titled “bHasBlueprintOnCreate”uint8 bHasBlueprintOnCreateDefined in OperatingSystemBaseProgram.h:215
Section titled “Defined in OperatingSystemBaseProgram.h:215”bHasBlueprintOnInstall
Section titled “bHasBlueprintOnInstall”uint8 bHasBlueprintOnInstallDefined in OperatingSystemBaseProgram.h:216
Section titled “Defined in OperatingSystemBaseProgram.h:216”bHasBlueprintOnStart
Section titled “bHasBlueprintOnStart”uint8 bHasBlueprintOnStartDefined in OperatingSystemBaseProgram.h:217
Section titled “Defined in OperatingSystemBaseProgram.h:217”bHasBlueprintOnClose
Section titled “bHasBlueprintOnClose”uint8 bHasBlueprintOnCloseDefined in OperatingSystemBaseProgram.h:218
Referenced by
Section titled “Referenced by”bHasBlueprintOnSettingsLoad
Section titled “bHasBlueprintOnSettingsLoad”uint8 bHasBlueprintOnSettingsLoadDefined in OperatingSystemBaseProgram.h:219
Referenced by
Section titled “Referenced by”bHasBlueprintOnOpenFile
Section titled “bHasBlueprintOnOpenFile”uint8 bHasBlueprintOnOpenFileDefined in OperatingSystemBaseProgram.h:220
Referenced by
Section titled “Referenced by”bHasBlueprintGetSaveSlotName
Section titled “bHasBlueprintGetSaveSlotName”uint8 bHasBlueprintGetSaveSlotNameDefined in OperatingSystemBaseProgram.h:221
Referenced by
Section titled “Referenced by”bHasBlueprintOnValidate
Section titled “bHasBlueprintOnValidate”uint8 bHasBlueprintOnValidateDefined in OperatingSystemBaseProgram.h:222
Referenced by
Section titled “Referenced by”ProgramWidget
Section titled “ProgramWidget”TObjectPtr< UOperatingSystemProgramWidget > ProgramWidgetDefined in OperatingSystemBaseProgram.h:226 The main widget that represents this program
Referenced by
Section titled “Referenced by”Settings
Section titled “Settings”TObjectPtr< UOperatingSystemProgramSettings > SettingsDefined in OperatingSystemBaseProgram.h:230 Settings object associated with this program. Only valid if you have provided a settings class.
Referenced by
Section titled “Referenced by”DataObj
Section titled “DataObj”TObjectPtr< UOperatingSystemProgramData > DataObjDefined in OperatingSystemBaseProgram.h:234 Data object associated with this program. Only valid if you have provided a data class.
Referenced by
Section titled “Referenced by”ChildFile
Section titled “ChildFile”TObjectPtr< UOperatingSystemFile > ChildFileDefined in OperatingSystemBaseProgram.h:238 The file that was opened by this program (if any).
Referenced by
Section titled “Referenced by”ParentOS
Section titled “ParentOS”TWeakObjectPtr< UOperatingSystem > ParentOSDefined in OperatingSystemBaseProgram.h:242 Operating System that owns this program.
Referenced by
Section titled “Referenced by”CloseProgramCreateDataObjGetOperatingSystemGetSaveSlotNameInternal_StartIsRunningOpenFileStartProgram
ParentWindow
Section titled “ParentWindow”TObjectPtr< UDraggableWindow > ParentWindowDefined in OperatingSystemBaseProgram.h:246 Window that this program is currently being displayed in.
Referenced by
Section titled “Referenced by”TaskbarButton
Section titled “TaskbarButton”TObjectPtr< UOperatingSystemTaskbarButton > TaskbarButtonDefined in OperatingSystemBaseProgram.h:250 Points to the taskbar button object. Only valid if the taskbar button class is provided.
Referenced by
Section titled “Referenced by”ProcessID
Section titled “ProcessID”int32 ProcessIDDefined in OperatingSystemBaseProgram.h:253
Referenced by
Section titled “Referenced by”CachedIconWidget
Section titled “CachedIconWidget”TObjectPtr< UOperatingSystemProgramIconWidget > CachedIconWidgetDefined in OperatingSystemBaseProgram.h:256
Referenced by
Section titled “Referenced by”Private Methods
Section titled “Private Methods”| Return | Name | Description |
|---|---|---|
void | Internal_Start | Starts the operating system program. |
void | Internal_Validate const | Validates the internal properties of the operating system program. |
void | Internal_LoadProgramSettings | Loads the program settings. |
void | Internal_OnThemeChanged | Internal function called when the theme is changed. |
Internal_Start
Section titled “Internal_Start”void Internal_Start(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:429 Starts the operating system program.
This method is called to start the operating system program. It performs necessary initialization and invokes the OnStart method.
If the operating system program has a settings class and a theme setting module, it listens for theme change events and invokes the Internal_OnThemeChanged method to handle theme change events.
Parameters
Section titled “Parameters”OutErrorA reference to the FGenericError object that will be filled with any error messages encountered during startup.
See also: UOperatingSystemBaseProgram::OnStart
See also: UOperatingSystemBaseProgram::Internal_OnThemeChanged
References
Section titled “References”Internal_Validate
Section titled “Internal_Validate”const
void Internal_Validate(FGenericError & OutError) constDefined in OperatingSystemBaseProgram.h:441 Validates the internal properties of the operating system program.
This method checks if the name, identifier, version, minimum operating system version, icon, space required, icon widget class, widget class, and data class (if required) are set correctly. If any of the properties is invalid, an appropriate error message is returned in the OutError parameter.
Parameters
Section titled “Parameters”OutErrorThe output parameter that stores the error message if any validation fails.
References
Section titled “References”bHasBlueprintOnValidatebRequireMinOperatingSystemVersionbRequiresDataDataClassGetSettingsIconObjectIdentifierIsValidK2_OnValidateMAKE_ERRORMinOperatingSystemVersionNameOnValidateSpaceRequiredInMBVersionWidgetClass
Internal_LoadProgramSettings
Section titled “Internal_LoadProgramSettings”void Internal_LoadProgramSettings(FGenericError & OutError)Defined in OperatingSystemBaseProgram.h:459 Loads the program settings.
This method loads the saved program settings. If the settings already exist, they are marked as garbage and set to nullptr. The method then attempts to load the settings using the UOperatingSystemProgramSettings::LoadSettings method. If the settings are loaded successfully, a log message is printed and the K2_OnSettingsLoad method is called if bHasBlueprintOnSettingsLoad is true. If the settings cannot be loaded, and the SaveMethod is not EOperatingSystemProgramSaveMethod::DoNotSave, the method attempts to create new settings using the UOperatingSystemProgramSettings::CreateSettings method and the provided SettingsClass. If the creation fails, an OutError parameter is set with the error message.
Parameters
Section titled “Parameters”OutErrorThe error object to be populated with an error message in case the settings creation fails.
See also: UOperatingSystemProgramSettings
References
Section titled “References”bHasBlueprintOnSettingsLoadCreateSettingsDoNotSaveGetSettingsK2_OnSettingsLoadLoadSettingsNameOS_LOG_VERY_VERBOSESaveMethodSettingsSettingsClass
Internal_OnThemeChanged
Section titled “Internal_OnThemeChanged”void Internal_OnThemeChanged(UObject * Payload)Defined in OperatingSystemBaseProgram.h:475 Internal function called when the theme is changed.
This function is called when the theme is changed and it notifies the program about the theme change. It triggers the OnThemeChanged event and updates the program widget’s theme if it is valid.
Parameters
Section titled “Parameters”PayloadThe payload object containing the theme information.
See also: OnThemeChanged
See also: UOperatingSystemSettingModule_Theme
See also: ProgramWidget
See also: UOperatingSystemProgramWidget::ThemeChanged