17class ArrangerObjectMuteFunctionality :
public QObject
20 Q_PROPERTY (
bool muted READ muted WRITE setMuted NOTIFY mutedChanged)
24 ArrangerObjectMuteFunctionality (QObject * parent =
nullptr) noexcept
28 ~ArrangerObjectMuteFunctionality ()
override =
default;
29 Z_DISABLE_COPY_MOVE (ArrangerObjectMuteFunctionality)
34 bool muted ()
const {
return muted_; }
35 void setMuted (
bool muted)
40 Q_EMIT mutedChanged (muted);
43 Q_SIGNAL
void mutedChanged (
bool muted);
49template <
typename RegionT>
51RegionImpl<RegionT>::get_muted (
bool check_parent)
const
55 if constexpr (is_laned ())
57 auto &lane = get_derived ().get_lane ();
58 if (lane.is_effectively_muted ())
67 friend void init_from (
68 ArrangerObjectMuteFunctionality &obj,
69 const ArrangerObjectMuteFunctionality &other,
72 obj.muted_ = other.muted_;
75 static constexpr std::string_view kMutedKey =
"muted";
77 to_json (nlohmann::json &j,
const ArrangerObjectMuteFunctionality &
object)
79 j[kMutedKey] =
object.muted_;
82 from_json (
const nlohmann::json &j, ArrangerObjectMuteFunctionality &
object)
84 j.at (kMutedKey).get_to (
object.muted_);
85 Q_EMIT
object.mutedChanged (
object.muted_);
92 BOOST_DESCRIBE_CLASS (ArrangerObjectMuteFunctionality, (), (), (), (muted_))