/* Copyright (C) 2023 The gtkmm Development Team
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
 */

#include <gtk/gtk.h>

namespace Gtk
{
void SymbolicPaintable::snapshot_symbolic(const Glib::RefPtr<Gdk::Snapshot>& snapshot,
  double width, double height, const std::vector<Gdk::RGBA>& colors)
{
  gtk_symbolic_paintable_snapshot_symbolic(gobj(), Glib::unwrap(snapshot), width, height,
    Glib::ArrayHandler<Gdk::RGBA, Gdk::RGBATraits>::vector_to_array(colors).data(),
    colors.size());
}

void SymbolicPaintable::snapshot_with_weight(const Glib::RefPtr<Gdk::Snapshot>& snapshot,
  double width, double height, const std::vector<Gdk::RGBA>& colors, double weight)
{
  gtk_symbolic_paintable_snapshot_with_weight(gobj(), Glib::unwrap(snapshot), width, height,
    Glib::ArrayHandler<Gdk::RGBA, Gdk::RGBATraits>::vector_to_array(colors).data(),
    colors.size(), weight);
}

} // namespace Gtk
