ACF $AcfVersion:0$
IDraggable.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5#include <istd/IPolymorphic.h>
6
7#include <i2d/CVector2d.h>
8
9
10namespace iview
11{
12
13
17class IDraggable: virtual public istd::IPolymorphic
18{
19public:
24 virtual void BeginDrag(const istd::CIndex2d& reference) = 0;
25
30 virtual void SetDragPosition(const istd::CIndex2d& position) = 0;
31
35 virtual void EndDrag() = 0;
36
40 virtual bool IsDraggable() const = 0;
41};
42
43
44} // namespace iview
45
46
47
48
Index implementation for addressing elements in 2D-space.
Definition CIndex2d.h:21
Base interface for all used interfaces and implementations.
Common interface for all, you can drag.
Definition IDraggable.h:18
virtual void SetDragPosition(const istd::CIndex2d &position)=0
Set new drag position.
virtual void BeginDrag(const istd::CIndex2d &reference)=0
Called before dragging is begin.
virtual void EndDrag()=0
Called after dragging.
virtual bool IsDraggable() const =0
Check if drag is enabled.
In this library is defined 2D view concept and standard visualisation objects.