Loading...
Searching...
No Matches
Core.h
Go to the documentation of this file.
1//
2// Created by Dave Smith on 10/4/25.
3//
4
5#ifndef UICOMPONENTBASE_H
6#define UICOMPONENTBASE_H
7
8#include <SFML/Graphics.hpp>
9
18#include <iostream>
19#include <list>
20
27
29
30namespace ml
31{
55 class Core : public virtual Subscribable,
56 public virtual Flaggable,
57 public virtual Positionable,
58 public virtual Clickable,
59 public virtual Hoverable,
60 public virtual Focusable,
61 public virtual Keyable,
62 public virtual Scrollable,
63 // public virtual Draggable,
64 public virtual Updatable,
65 public Unsubscribable
66
67 {
68 public:
69 virtual ~Core();
70
81 };
82
83} // namespace ml
84
85#endif // UICOMPONENTBASE_H
Virtual base class for all Malena framework objects.
Definition Core.h:67
virtual sf::RenderStates getRenderStates() const
Returns the SFML render states to use when drawing this object.
Definition Core.h:80
virtual ~Core()
Trait that provides system-level boolean flag management.
Definition Flaggable.h:49
Trait that adds keyboard-focus and blur callbacks to any Core object.
Definition Focusable.h:42
Trait that adds mouse-hover and mouse-leave callbacks to any Core object.
Definition Hoverable.h:43
Trait that adds keyboard-input callbacks to any Core object.
Definition Keyable.h:51
Trait that provides position, bounds, and animated movement.
Trait that adds mouse-wheel and raw mouse-button callbacks to any Core object.
Definition Scrollable.h:51
Trait that allows a component to subscribe to and publish framework events.
Trait that gives components the ability to unsubscribe from events.
Trait that adds per-frame update and window lifecycle callbacks to any Core object.
Definition Updatable.h:57
Definition Component.h:18