diff options
| author | Felix Morgner <felix.morgner@gmail.com> | 2024-07-16 10:02:47 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@gmail.com> | 2024-07-16 10:02:47 +0200 |
| commit | 5bb826fa63b2b2d6f7b8bca354fa4a1606781dc3 (patch) | |
| tree | fdff35f04a92965e7044ef84133d93280fac11b7 /domain/include | |
| parent | 4e3b7165738d6d3648af70553da7fa2096606eb3 (diff) | |
| download | turns-5bb826fa63b2b2d6f7b8bca354fa4a1606781dc3.tar.xz turns-5bb826fa63b2b2d6f7b8bca354fa4a1606781dc3.zip | |
turns: implement basic disposition integration
Diffstat (limited to 'domain/include')
| -rw-r--r-- | domain/include/turns/domain/participant.hpp | 12 | ||||
| -rw-r--r-- | domain/include/turns/domain/turn_order.hpp | 3 |
2 files changed, 12 insertions, 3 deletions
diff --git a/domain/include/turns/domain/participant.hpp b/domain/include/turns/domain/participant.hpp index 3f249d5..d845c77 100644 --- a/domain/include/turns/domain/participant.hpp +++ b/domain/include/turns/domain/participant.hpp @@ -1,6 +1,8 @@ #ifndef TURNS_DOMAIN_PARTICIPANT_HPP #define TURNS_DOMAIN_PARTICIPANT_HPP +#include "turns/domain/disposition.hpp" + #include <compare> #include <glibmm/object.h> @@ -14,12 +16,17 @@ namespace turns::domain struct participant : Glib::Object { - auto static create(Glib::ustring name, float priority) -> Glib::RefPtr<participant>; + auto static create(Glib::ustring name, float priority, disposition disposition) -> Glib::RefPtr<participant>; - participant(Glib::ustring name, float priority); + participant(Glib::ustring name, float priority, disposition disposition); auto operator<=>(participant const & other) const noexcept -> std::partial_ordering; + auto property_disposition() -> Glib::PropertyProxy<disposition>; + auto property_disposition() const -> Glib::PropertyProxy_ReadOnly<disposition>; + auto get_disposition() const noexcept -> disposition; + auto set_disposition(disposition value) -> void; + auto property_name() -> Glib::PropertyProxy<Glib::ustring>; auto property_name() const -> Glib::PropertyProxy_ReadOnly<Glib::ustring>; auto get_name() const -> Glib::ustring; @@ -31,6 +38,7 @@ namespace turns::domain auto set_priority(float value) -> void; private: + Glib::Property<disposition> m_disposition; Glib::Property<Glib::ustring> m_name; Glib::Property<float> m_priority; }; diff --git a/domain/include/turns/domain/turn_order.hpp b/domain/include/turns/domain/turn_order.hpp index ba9bc3a..d7f8821 100644 --- a/domain/include/turns/domain/turn_order.hpp +++ b/domain/include/turns/domain/turn_order.hpp @@ -1,6 +1,7 @@ #ifndef TURNS_DOMAIN_TURN_ORDER_HPP #define TURNS_DOMAIN_TURN_ORDER_HPP +#include "turns/domain/disposition.hpp" #include "turns/domain/participant.hpp" #include <giomm/liststore.h> @@ -20,7 +21,7 @@ namespace turns::domain auto static create() -> Glib::RefPtr<turn_order>; auto append(Glib::RefPtr<participant> item) -> void; - auto append(Glib::ustring const & name, float priority) -> void; + auto append(Glib::ustring const & name, float priority, disposition disposition) -> void; auto remove(Glib::RefPtr<participant> item) -> void; private: |
