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

#pragma once

#include "Framework/Commands/Commands.h"

// Actions that can be invoked in the reference viewer
class FSourcifyEditorCommands : public TCommands<FSourcifyEditorCommands>
{
public:
	FSourcifyEditorCommands();

	// TCommands<> interface
	virtual void RegisterCommands() override;
	// End of TCommands<> interface

	// Shows the reference viewer for the selected assets
	TSharedPtr<FUICommandInfo> ViewReferences;

	// Opens the selected asset in the asset editor
	TSharedPtr<FUICommandInfo> OpenSelectedInAssetEditor;

	// Shows a reference tree for the selected asset
	TSharedPtr<FUICommandInfo> ShowReferenceTree;

	/** Zoom in to fit the selected objects in the window */
	TSharedPtr<FUICommandInfo> ZoomToFit;
};
