(root)/
glib-2.79.0/
gobject/
gsignalgroup.h
       1  /* GObject - GLib Type, Object, Parameter and Signal Library
       2   *
       3   * Copyright (C) 2015-2022 Christian Hergert <christian@hergert.me>
       4   * Copyright (C) 2015 Garrett Regier <garrettregier@gmail.com>
       5   *
       6   * This library is free software; you can redistribute it and/or
       7   * modify it under the terms of the GNU Lesser General Public
       8   * License as published by the Free Software Foundation; either
       9   * version 2.1 of the License, or (at your option) any later version.
      10   *
      11   * This library is distributed in the hope that it will be useful,
      12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
      13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      14   * Lesser General Public License for more details.
      15   *
      16   * You should have received a copy of the GNU Lesser General
      17   * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
      18   *
      19   * SPDX-License-Identifier: LGPL-2.1-or-later
      20   */
      21  
      22  #ifndef __G_SIGNAL_GROUP_H__
      23  #define __G_SIGNAL_GROUP_H__
      24  
      25  #if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION)
      26  #error "Only <glib-object.h> can be included directly."
      27  #endif
      28  
      29  #include <glib.h>
      30  #include <gobject/gobject.h>
      31  #include <gobject/gsignal.h>
      32  
      33  G_BEGIN_DECLS
      34  
      35  #define G_SIGNAL_GROUP(obj)    (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_SIGNAL_GROUP, GSignalGroup))
      36  #define G_IS_SIGNAL_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_SIGNAL_GROUP))
      37  #define G_TYPE_SIGNAL_GROUP    (g_signal_group_get_type())
      38  
      39  typedef struct _GSignalGroup GSignalGroup;
      40  
      41  GOBJECT_AVAILABLE_IN_2_72
      42  GType         g_signal_group_get_type        (void) G_GNUC_CONST;
      43  GOBJECT_AVAILABLE_IN_2_72
      44  GSignalGroup *g_signal_group_new             (GType           target_type);
      45  GOBJECT_AVAILABLE_IN_2_72
      46  void          g_signal_group_set_target      (GSignalGroup   *self,
      47                                                gpointer        target);
      48  GOBJECT_AVAILABLE_IN_2_72
      49  gpointer      g_signal_group_dup_target      (GSignalGroup   *self);
      50  GOBJECT_AVAILABLE_IN_2_72
      51  void          g_signal_group_block           (GSignalGroup   *self);
      52  GOBJECT_AVAILABLE_IN_2_72
      53  void          g_signal_group_unblock         (GSignalGroup   *self);
      54  GOBJECT_AVAILABLE_IN_2_74
      55  void          g_signal_group_connect_closure (GSignalGroup   *self,
      56                                                const gchar    *detailed_signal,
      57                                                GClosure       *closure,
      58                                                gboolean        after);
      59  GOBJECT_AVAILABLE_IN_2_72
      60  void          g_signal_group_connect_object  (GSignalGroup   *self,
      61                                                const gchar    *detailed_signal,
      62                                                GCallback       c_handler,
      63                                                gpointer        object,
      64                                                GConnectFlags   flags);
      65  GOBJECT_AVAILABLE_IN_2_72
      66  void          g_signal_group_connect_data    (GSignalGroup   *self,
      67                                                const gchar    *detailed_signal,
      68                                                GCallback       c_handler,
      69                                                gpointer        data,
      70                                                GClosureNotify  notify,
      71                                                GConnectFlags   flags);
      72  GOBJECT_AVAILABLE_IN_2_72
      73  void          g_signal_group_connect         (GSignalGroup   *self,
      74                                                const gchar    *detailed_signal,
      75                                                GCallback       c_handler,
      76                                                gpointer        data);
      77  GOBJECT_AVAILABLE_IN_2_72
      78  void          g_signal_group_connect_after   (GSignalGroup   *self,
      79                                                const gchar    *detailed_signal,
      80                                                GCallback       c_handler,
      81                                                gpointer        data);
      82  GOBJECT_AVAILABLE_IN_2_72
      83  void          g_signal_group_connect_swapped (GSignalGroup   *self,
      84                                                const gchar    *detailed_signal,
      85                                                GCallback       c_handler,
      86                                                gpointer        data);
      87  
      88  G_END_DECLS
      89  
      90  #endif /* __G_SIGNAL_GROUP_H__ */