<Type Name="Global" FullName="Gtk.Global">
  <TypeSignature Language="C#" Value="public class Global" Maintainer="auto" />
  <AssemblyInfo>
    <AssemblyName>gtk-sharp</AssemblyName>
    <AssemblyPublicKey>
    </AssemblyPublicKey>
    <AssemblyVersion>2.12.0.0</AssemblyVersion>
  </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>
  <Docs>
    <summary>Global API elements for <see cref="N:Gtk" /></summary>
    <remarks>This class contains all the methods which are not directly attributable to a specific type.</remarks>
  </Docs>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName="DisableSetlocale">
      <MemberSignature Language="C#" Value="public static void DisableSetlocale ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Disables automatic user locale usage.</summary>
        <remarks>Only use this if you want to set a specific locale for your program other than the default user locale, or if you want to set different values for different locale categories.  Most applications will not need to use this.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetEventWidget">
      <MemberSignature Language="C#" Value="public static Gtk.Widget GetEventWidget (Gdk.Event evnt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.Widget</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="evnt" Type="Gdk.Event" />
      </Parameters>
      <Docs>
        <summary>Gets the widget associated with an event.</summary>
        <param name="evnt">a <see cref="T:Gdk.Event" /></param>
        <returns>the <see cref="T:Gtk.Widget" /> that originally received <paramref name="evnt" />, or <see langword="null" />.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="CheckVersion">
      <MemberSignature Language="C#" Value="public static string CheckVersion (uint required_major, uint required_minor, uint required_micro);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="required_major" Type="System.UInt32" />
        <Parameter Name="required_minor" Type="System.UInt32" />
        <Parameter Name="required_micro" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <summary>Check if a version is compatible with the currently loaded Gtk library.</summary>
        <param name="required_major">a <see cref="T:System.UInt32" /></param>
        <param name="required_minor">a <see cref="T:System.UInt32" /></param>
        <param name="required_micro">a <see cref="T:System.UInt32" /></param>
        <returns>
          <see langword="null" /> if the version is supported, or an error string describing the mismatch.</returns>
        <remarks>This is typically only used by modules which want to check if they are compatible with the currently loaded version of Gtk+.</remarks>
      </Docs>
    </Member>
    <Member MemberName="PropagateEvent">
      <MemberSignature Language="C#" Value="public static void PropagateEvent (Gtk.Widget widget, Gdk.Event evnt);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="widget" Type="Gtk.Widget" />
        <Parameter Name="evnt" Type="Gdk.Event" />
      </Parameters>
      <Docs>
        <summary>Propagate an event from one widget to another.</summary>
        <param name="widget">
          <see cref="T:Gtk.Widget" /> to propagate event to.</param>
        <param name="evnt">
          <see cref="T:Gdk.Event" /> to propagate.</param>
        <remarks>This function should be rarely used, look into event handler overriding instead.</remarks>
      </Docs>
    </Member>
    <Member MemberName="BindingsActivate">
      <MemberSignature Language="C#" Value="public static bool BindingsActivate (Gtk.Object objekt, uint keyval, Gdk.ModifierType modifiers);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="objekt" Type="Gtk.Object" />
        <Parameter Name="keyval" Type="System.UInt32" />
        <Parameter Name="modifiers" Type="Gdk.ModifierType" />
      </Parameters>
      <Docs>
        <summary>Activates a registered key binding.</summary>
        <param name="objekt">the <see cref="T:Gtk.Object" /> to activate bindings on.</param>
        <param name="keyval">a <see cref="T:System.UInt32" /> representing the <see cref="N:Gdk" /> key value to activate.</param>
        <param name="modifiers">a <see cref="T:Gdk.ModifierType" /> representing any Ctrl, Meta, or Shift modifiers to the key value.</param>
        <returns>a <see cref="T:System.Boolean" /> indicating whether a binding was activated.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="SetLocale">
      <MemberSignature Language="C#" Value="public static string SetLocale ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Sets the current locale according to the application environment.</summary>
        <returns>a <see cref="T:System.String" /> corresponding to the locale set.</returns>
        <remarks>This is equivalent to the C standard library call - setlocale (LC_ALL, ""), but also takes care of setup of the windowing environment used by <see cref="N:Gdk" />. <see cref="M:Gtk.Application.Init" /> automatically does this, so it is not normally necessary for applications to call this method.</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Global ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Do not use.</summary>
        <remarks>There are no instance members for this class.  This constructor will be marked Obsolete and possibly removed in future versions.</remarks>
      </Docs>
    </Member>
    <Member MemberName="DefaultLanguage">
      <MemberSignature Language="C#" Value="public static Pango.Language DefaultLanguage { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Pango.Language</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The current default language for this application.</summary>
        <value>a <see cref="T:Pango.Language" /></value>
        <remarks>This value can change during the life of a program, and is based on the current locale.  It contains information such as the text direction of the current language.</remarks>
      </Docs>
    </Member>
    <Member MemberName="CurrentEvent">
      <MemberSignature Language="C#" Value="public static Gdk.Event CurrentEvent { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gdk.Event</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>Obtains a copy of the event currently being processed by Gtk#.</summary>
        <value>a <see cref="T:Gdk.Event" /></value>
        <remarks>For example, if you get a <see cref="E:Gtk.Button.Clicked" /> event from <see cref="T:Gtk.Button" />, the current event will be the <see cref="T:Gdk.EventButton" /> that triggered the <see cref="E:Gtk.Button.Clicked" /> signal.  If there is no current event, the function returns <see langword="null" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="CurrentEventTime">
      <MemberSignature Language="C#" Value="public static uint CurrentEventTime { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>Returns a <see cref="T:System.UInt32" /> representing the unix time of the current event.</summary>
        <value>Returns the unix time for the current event.</value>
        <remarks>None.</remarks>
      </Docs>
    </Member>
    <Member MemberName="RgbToHsv">
      <MemberSignature Language="C#" Value="public static void RgbToHsv (double r, double g, double b, out double h, out double s, out double v);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="r" Type="System.Double" />
        <Parameter Name="g" Type="System.Double" />
        <Parameter Name="b" Type="System.Double" />
        <Parameter Name="h" Type="System.Double&amp;" RefType="out" />
        <Parameter Name="s" Type="System.Double&amp;" RefType="out" />
        <Parameter Name="v" Type="System.Double&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Converts a Red/Green/Blue color value to a Hue/Saturation/Value color value.</summary>
        <param name="r">the red component of the color as a <see cref="T:System.Double" /></param>
        <param name="g">the green component of the color as a <see cref="T:System.Double" /></param>
        <param name="b">the blue component of the color as a <see cref="T:System.Double" /></param>
        <param name="h">the resulting hue of the color as a <see cref="T:System.Double&amp;" /></param>
        <param name="s">the resulting saturation of the color as a <see cref="T:System.Double&amp;" /></param>
        <param name="v">the resulting value of the color as a <see cref="T:System.Double&amp;" /></param>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetCurrentEventState">
      <MemberSignature Language="C#" Value="public static bool GetCurrentEventState (out Gdk.ModifierType state);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="state" Type="Gdk.ModifierType&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Gets the state field of the current event.</summary>
        <param name="state">a <see cref="T:Gdk.ModifierType&amp;" /> to store the state in if one exists.</param>
        <returns>
          <see langword="true" /> if there is a current <see cref="T:Gdk.Event" /> and it has a state field, otherwise <see langword="false" />.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="EventsPending">
      <MemberSignature Language="C#" Value="public static bool EventsPending { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Checks if any events are pending.</summary>
        <value>a <see cref="T:System.Boolean" /></value>
        <remarks>This can be used to update the GUI and invoke timeouts etc. while doing some time intensive computation.

<example><code lang="C#">
	/* computation going on */
...
        while (Gtk.Global.EventsPending)
	{
	  Gtk.Application.RunIteration ();
	}
...
	/* computation continued */
  </code></example></remarks>
      </Docs>
    </Member>
    <Member MemberName="PaintString">
      <MemberSignature Language="C#" Value="public static void PaintString (Gtk.Style style, Gdk.Window window, Gtk.StateType state_type, Gdk.Rectangle area, Gtk.Widget widget, string detail, int x, int y, string str1ng);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="style" Type="Gtk.Style" />
        <Parameter Name="window" Type="Gdk.Window" />
        <Parameter Name="state_type" Type="Gtk.StateType" />
        <Parameter Name="area" Type="Gdk.Rectangle" />
        <Parameter Name="widget" Type="Gtk.Widget" />
        <Parameter Name="detail" Type="System.String" />
        <Parameter Name="x" Type="System.Int32" />
        <Parameter Name="y" Type="System.Int32" />
        <Parameter Name="str1ng" Type="System.String" />
      </Parameters>
      <Docs>
        <summary>Deprecated. Do not use.</summary>
        <param name="style">a <see cref="T:Gtk.Style" /></param>
        <param name="window">a <see cref="T:Gdk.Window" /></param>
        <param name="state_type">a <see cref="T:System.Int32" />, a state</param>
        <param name="area">a <see cref="T:Gdk.Rectangle" />, a clip rectangle</param>
        <param name="widget">a <see cref="T:Gtk.Widget" />, the widget</param>
        <param name="detail">a <see cref="T:System.String" />, a style detail</param>
        <param name="x">a <see cref="T:System.Int32" />, Y origin</param>
        <param name="y">a <see cref="T:System.Int32" />, Y origin</param>
        <param name="str1ng">a <see cref="T:System.String" />, the string to draw</param>
        <remarks>Draws a text string on <paramref name="window" /> with the given parameters.</remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="ParseArgs">
      <MemberSignature Language="C#" Value="public static bool ParseArgs (out int argc, string argv);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="argc" Type="System.Int32&amp;" RefType="out" />
        <Parameter Name="argv" Type="System.String" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="argc">a <see cref="T:System.Int32" /></param>
        <param name="argv">a <see cref="T:System.String" /></param>
        <returns>a <see cref="T:System.Boolean" /></returns>
        <remarks>To be added</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
    </Member>
    <Member MemberName="AlternativeDialogButtonOrder">
      <MemberSignature Language="C#" Value="public static bool AlternativeDialogButtonOrder (Gdk.Screen screen);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="screen" Type="Gdk.Screen" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="screen">a <see cref="T:Gdk.Screen" /></param>
        <returns>a <see cref="T:System.Boolean" /></returns>
        <remarks>To be added</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
    </Member>
  </Members>
</Type>
