MT Showcase SDK
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
FloatingItem.hpp
1 #pragma once
2 
3 #include <Export.hpp>
4 
5 #include <MultiWidgets/Widget.hpp>
6 
7 namespace Showcase
8 {
11  class SHOWCASE_API FloatingItem : public MultiWidgets::Widget
12  {
13  public:
14  FloatingItem() {}
15  virtual ~FloatingItem() {}
16 
17  virtual float collisionRadius() const = 0;
19  virtual float openCollisionRadius() const = 0;
20 
24  virtual void open() = 0;
28  virtual void close() = 0;
29 
30  virtual bool isOpen() = 0;
31 
34  virtual void setParentNodeCenterLocation(const Nimble::Vector2 & loc) = 0;
35 
36  virtual void setShowName(bool show) = 0;
37 
40  virtual bool active() const = 0;
41  virtual void setActive(bool active) = 0;
42 
46  virtual float order() const = 0;
47 
50  virtual void setOrder(float order) = 0;
51  };
52  INTRUSIVE_PTR_TYPEDEF(FloatingItem);
53 
54 
55  //---------------------------------------------------------------------
56 
57  class SHOWCASE_API Connector : public MultiWidgets::Widget
58  {
59  public:
60  Connector() {}
61  virtual ~Connector() {}
62 
63  virtual void open() = 0;
64  virtual void close() = 0;
65 
66  virtual void setPoints(const Nimble::Vector2 start, const Nimble::Vector2 & end) = 0;
67  };
68  INTRUSIVE_PTR_TYPEDEF(Connector);
69 }