<Type Name="SignalAttribute" FullName="GLib.SignalAttribute">
  <TypeSignature Language="C#" Maintainer="auto" Value="public sealed class SignalAttribute : Attribute" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi serializable sealed beforefieldinit SignalAttribute extends System.Attribute" />
  <AssemblyInfo>
    <AssemblyName>glib-sharp</AssemblyName>
    <AssemblyPublicKey>
    </AssemblyPublicKey>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.Attribute</BaseTypeName>
  </Base>
  <Interfaces />
  <Attributes>
    <Attribute>
      <AttributeName>System.AttributeUsage(System.AttributeTargets.Event, Inherited=false)</AttributeName>
    </Attribute>
  </Attributes>
  <Docs>
    <summary>Marks events generated from <see cref="T:GLib.Object" /> signals</summary>
    <remarks>
      <para>
This attribute indentifies events generated from <see cref="N:GLib" /> signals and allows obtaining its original name.
</para>
      <example>
        <code lang="C#">
[GLib.Signal("destroy")]
public event System.EventHandler Destroyed {  add; remove; }
</code>
      </example>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public SignalAttribute (string cname);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string cname) cil managed" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="cname" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="cname">a <see cref="T:System.String" /> containing the C name of the signal.</param>
        <summary>Public Constructor.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="CName">
      <MemberSignature Language="C#" Value="public string CName { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance string CName" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The C name of the signal.</summary>
        <value>the C name of the signal as a <see cref="T:System.String" /></value>
        <remarks />
      </Docs>
    </Member>
  </Members>
</Type>
