// Copyright (c) 2024 Codemongous LLC. All Rights Reserved.

#pragma once

#include "ISCW_UUserDefinedStructEditorData.h"
#include "SCW_UObject.h"

class UUserDefinedStructEditorData;

namespace Sourcify
{
	class SCW_UUserDefinedStructEditorData : public SCW_UObject, public virtual ISCW_UUserDefinedStructEditorData
	{
	public:
		SCW_UUserDefinedStructEditorData(UUserDefinedStructEditorData* InUserDefinedStructEditorData);

		UUserDefinedStructEditorData* ToUUserDefinedStructEditorData() const;

		virtual wstring GetToolTip() const override;

		virtual vector<ISCW_FStructVariableDescriptionPtr> GetVariablesDescriptions() const override;

	protected:
		UUserDefinedStructEditorData* UserDefinedStructEditorData;
	};
} // namespace Sourcify