/* LIBPIKA - The PIKA Library * Copyright (C) 1995-1997 Peter Mattis and Spencer Kimball * * pikachannel.c * * 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 3 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 * Library 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 * . */ #include "config.h" #include "pika.h" G_DEFINE_TYPE (PikaChannel, pika_channel, PIKA_TYPE_DRAWABLE) #define parent_class pika_drawable_parent_class static void pika_channel_class_init (PikaChannelClass *klass) { } static void pika_channel_init (PikaChannel *channel) { } /** * pika_channel_get_by_id: * @channel_id: The channel id. * * Returns a #PikaChannel representing @channel_id. This function * calls pika_item_get_by_id() and returns the item if it is channel * or %NULL otherwise. * * Returns: (nullable) (transfer none): a #PikaChannel for @channel_id * or %NULL if @channel_id does not represent a valid * channel. The object belongs to libpika and you must not * modify or unref it. * * Since: 3.0 **/ PikaChannel * pika_channel_get_by_id (gint32 channel_id) { PikaItem *item = pika_item_get_by_id (channel_id); if (PIKA_IS_CHANNEL (item)) return (PikaChannel *) item; return NULL; } /** * pika_channel_new: * @image: The image to which to add the channel. * @name: The channel name. * @width: The channel width. * @height: The channel height. * @opacity: The channel opacity. * @color: The channel compositing color. * * Create a new channel. * * This procedure creates a new channel with the specified width and * height. Name, opacity, and color are also supplied parameters. The * new channel still needs to be added to the image, as this is not * automatic. Add the new channel with the pika_image_insert_channel() * command. Other attributes such as channel show masked, should be * set with explicit procedure calls. The channel's contents are * undefined initially. * * Returns: (transfer none): The newly created channel. * The object belongs to libpika and you should not free it. */ PikaChannel * pika_channel_new (PikaImage *image, const gchar *name, guint width, guint height, gdouble opacity, const PikaRGB *color) { return _pika_channel_new (image, width, height, name, opacity, color); }