<Type Name="Key" FullName="Gtk.Key">
  <TypeSignature Language="C#" Value="public class Key" Maintainer="auto" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit Key extends System.Object" />
  <AssemblyInfo>
    <AssemblyName>gtk-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.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <summary>An object for keys that are independent of keyboard focus--- global hotkeys, which execute <see cref="T:Gtk.KeySnoopFunc" /> functions.</summary>
    <remarks />
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Key ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Default constructor.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="SnooperInstall">
      <MemberSignature Language="C#" Value="public static uint SnooperInstall (Gtk.KeySnoopFunc snooper);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig unsigned int32 SnooperInstall(class Gtk.KeySnoopFunc snooper) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="snooper" Type="Gtk.KeySnoopFunc" />
      </Parameters>
      <Docs>
        <param name="snooper">a <see cref="T:Gtk.KeySnoopFunc" /></param>
        <summary>Install a snooper function.</summary>
        <returns>a <see cref="T:System.UInt32" />, the snooper handler id.</returns>
        <remarks>Code that uses this method should hold onto the return value, as it's necessary to disable the key.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SnooperRemove">
      <MemberSignature Language="C#" Value="public static void SnooperRemove (uint snooper_handler_id);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig void SnooperRemove(unsigned int32 snooper_handler_id) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="snooper_handler_id" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <param name="snooper_handler_id">a <see cref="T:System.UInt32" /></param>
        <summary>Remove a snooper with id <paramref name="snooper_handler_id" /></summary>
        <remarks />
      </Docs>
    </Member>
  </Members>
</Type>