You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Code/Editor/Include/IGizmoManager.h

35 lines
880 B
C++

/*
* Copyright (c) Contributors to the Open 3D Engine Project.
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
*
* SPDX-License-Identifier: Apache-2.0 OR MIT
*
*/
#ifndef CRYINCLUDE_EDITOR_INCLUDE_IGIZMOMANAGER_H
#define CRYINCLUDE_EDITOR_INCLUDE_IGIZMOMANAGER_H
#pragma once
class CGizmo;
struct DisplayContext;
struct HitContext;
/** GizmoManager manages set of currently active Gizmo objects.
*/
struct IGizmoManager
{
virtual ~IGizmoManager() = default;
virtual void AddGizmo(CGizmo* gizmo) = 0;
virtual void RemoveGizmo(CGizmo* gizmo) = 0;
virtual int GetGizmoCount() const = 0;
virtual CGizmo* GetGizmoByIndex(int nIndex) const = 0;
virtual void Display(DisplayContext& dc) = 0;
virtual bool HitTest(HitContext& hc) = 0;
};
#endif // CRYINCLUDE_EDITOR_INCLUDE_IGIZMOMANAGER_H