#pragma once #include "interfaces/cursor.hpp" #include "interfaces/window.hpp" #include #include enum StatusLineSection { A = 0, B = 1, C = 2, D = 3, E = 4, F = 5 }; // NOLINTNEXTLINE(cppcoreguidelines-special-member-functions) class IStatusLine { public: virtual ~IStatusLine() noexcept = default; virtual void initialize_background() noexcept = 0; virtual void set_status( const StatusLineSection §ion, const std::string_view &status, std::size_t start = 1UL ) noexcept = 0; virtual void set_section_length(const StatusLineSection §ion, uint32_t length) noexcept = 0; }; using IStatusLineFactory = yacppdic::Factory( const std::shared_ptr &cursor_controller, const std::shared_ptr &window )>;