/*
 * SPDX-FileCopyrightText: 2026 Maciej Sopyło <me@klh.io>
 * SPDX-License-Identifier: GPL-3.0-or-later
 */

#include "dbus_types.h"

QDBusArgument &operator<<(QDBusArgument &argument, const DBusColor &item)
{
    argument.beginStructure();
    argument << item.color.redF() << item.color.greenF() << item.color.blueF();
    argument.endStructure();

    return argument;
}

const QDBusArgument &operator>>(const QDBusArgument &argument, DBusColor &item)
{
    double red, green, blue;
    argument.beginStructure();
    argument >> red >> green >> blue;
    argument.endStructure();

    item.color.setRgbF(red, green, blue);

    return argument;
}
