<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.maui-linux.net/index.php?action=history&amp;feed=atom&amp;title=GLibSharp</id>
	<title>GLibSharp - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.maui-linux.net/index.php?action=history&amp;feed=atom&amp;title=GLibSharp"/>
	<link rel="alternate" type="text/html" href="https://wiki.maui-linux.net/index.php?title=GLibSharp&amp;action=history"/>
	<updated>2026-04-09T00:17:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.maui-linux.net/index.php?title=GLibSharp&amp;diff=154&amp;oldid=prev</id>
		<title>Ten: /* See also */</title>
		<link rel="alternate" type="text/html" href="https://wiki.maui-linux.net/index.php?title=GLibSharp&amp;diff=154&amp;oldid=prev"/>
		<updated>2025-10-20T13:05:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;See also&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:05, 20 October 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l78&quot;&gt;Line 78:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 78:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== See also ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== See also ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[GLib]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[GtkSharp]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[GtkSharp]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[GioSharp]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[GioSharp]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l85&quot;&gt;Line 85:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 84:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CairoSharp]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[CairoSharp]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Mono (software)]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Mono (software)]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[.NET (software framework)]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== External links ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== External links ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikimauilinuxnet-wmln:diff:1.41:old-144:rev-154:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Ten</name></author>
	</entry>
	<entry>
		<id>https://wiki.maui-linux.net/index.php?title=GLibSharp&amp;diff=144&amp;oldid=prev</id>
		<title>Ten: Created page with &quot;{{Infobox software | name           = GLibSharp | logo           = GTK_logo.svg | developer      = GNOME Project, Xamarin, and community contributors | released       = {{Start date|2002}} | programming_language = C# | operating_system = Cross-platform | platform       = .NET, Mono | genre          = Utility and core library bindings | license        = GNU Lesser General Public License | website        = [https://github.com/GtkSharp/GtkSharp GitHub repository] }}  &#039;&#039;&#039;GLi...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.maui-linux.net/index.php?title=GLibSharp&amp;diff=144&amp;oldid=prev"/>
		<updated>2025-10-20T10:32:54Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Infobox software | name           = GLibSharp | logo           = GTK_logo.svg | developer      = GNOME Project, Xamarin, and community contributors | released       = {{Start date|2002}} | programming_language = C# | operating_system = Cross-platform | platform       = .NET, Mono | genre          = Utility and core library bindings | license        = GNU Lesser General Public License | website        = [https://github.com/GtkSharp/GtkSharp GitHub repository] }}  &amp;#039;&amp;#039;&amp;#039;GLi...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox software&lt;br /&gt;
| name           = GLibSharp&lt;br /&gt;
| logo           = GTK_logo.svg&lt;br /&gt;
| developer      = GNOME Project, Xamarin, and community contributors&lt;br /&gt;
| released       = {{Start date|2002}}&lt;br /&gt;
| programming_language = C#&lt;br /&gt;
| operating_system = Cross-platform&lt;br /&gt;
| platform       = .NET, Mono&lt;br /&gt;
| genre          = Utility and core library bindings&lt;br /&gt;
| license        = GNU Lesser General Public License&lt;br /&gt;
| website        = [https://github.com/GtkSharp/GtkSharp GitHub repository]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;GLibSharp&amp;#039;&amp;#039;&amp;#039; is a set of [[C Sharp (programming language)|C#]] bindings for the [[GLib]] library, the low-level core utility library of the [[GNOME]] platform.  &lt;br /&gt;
It forms the foundation of the [[GtkSharp]] ecosystem, providing data structures, event loops, object systems, and utilities used by higher-level libraries such as [[GioSharp]], [[GdkSharp]], and [[GtkSharp]] itself.&lt;br /&gt;
&lt;br /&gt;
== Overview of GLib ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;GLib&amp;#039;&amp;#039;&amp;#039; is a fundamental library that underpins much of the GNOME software stack.  &lt;br /&gt;
It provides essential building blocks for application development, including data types, containers, event loops, threads, and the [[GObject]] type system that enables object-oriented programming in C.&lt;br /&gt;
&lt;br /&gt;
Key features of GLib include:&lt;br /&gt;
* Core data types (lists, hash tables, arrays, strings, variants)  &lt;br /&gt;
* The [[GObject]] object and signal system  &lt;br /&gt;
* Main event loop and asynchronous task handling  &lt;br /&gt;
* Threading, synchronization, and atomic operations  &lt;br /&gt;
* Portable file, path, and environment utilities  &lt;br /&gt;
* Internationalization and error handling support  &lt;br /&gt;
&lt;br /&gt;
Nearly all GNOME and GTK libraries depend on GLib as their base layer.&lt;br /&gt;
&lt;br /&gt;
== GLibSharp ==&lt;br /&gt;
GLibSharp provides managed .NET bindings for the GLib library.  &lt;br /&gt;
It enables developers to interact with GLib’s data structures and object system from within C#, while also providing the foundation upon which all other GtkSharp bindings are built.&lt;br /&gt;
&lt;br /&gt;
Using GLibSharp, developers can:&lt;br /&gt;
* Create and use GObjects with C# classes and inheritance  &lt;br /&gt;
* Connect and emit signals in an event-driven model  &lt;br /&gt;
* Work with GLib data types such as GList, GHashTable, and GVariant  &lt;br /&gt;
* Manage main loops and asynchronous callbacks  &lt;br /&gt;
* Interoperate with native GLib-based code and libraries  &lt;br /&gt;
&lt;br /&gt;
GLibSharp maps the GLib and GObject APIs into idiomatic C# constructs, maintaining compatibility with the underlying type system while exposing familiar managed patterns.&lt;br /&gt;
&lt;br /&gt;
== Role in GtkSharp ==&lt;br /&gt;
GLibSharp is the base dependency for all other bindings in the GtkSharp suite:&lt;br /&gt;
* [[GioSharp]] – Builds on GLibSharp to provide file, stream, and network services.  &lt;br /&gt;
* [[GdkSharp]] – Uses GLibSharp for signals and event loops.  &lt;br /&gt;
* [[CairoSharp]] – Integrates with GLib types for object management.  &lt;br /&gt;
* [[AtkSharp]] – Relies on GLibSharp for object inheritance and property binding.  &lt;br /&gt;
* [[GtkSharp]] – The main widget toolkit, which depends on GLibSharp for almost all of its internals.  &lt;br /&gt;
&lt;br /&gt;
Without GLibSharp, none of the other GtkSharp components could function, as they all depend on GLib’s type and signal systems.&lt;br /&gt;
&lt;br /&gt;
== Version compatibility ==&lt;br /&gt;
GLibSharp has evolved alongside GTK and GLib:&lt;br /&gt;
* **GLibSharp 2.x** – Used with GTK 2 and early Mono environments  &lt;br /&gt;
* **GLibSharp 3.x** – Updated for GTK 3 and GLib 2.40+  &lt;br /&gt;
* **GLibSharp 4.x** – Planned for GTK 4 and modern .NET 6+ runtimes  &lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
A minimal example of using GLibSharp’s main loop:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using GLib;&lt;br /&gt;
&lt;br /&gt;
public class Example&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        MainLoop loop = new MainLoop();&lt;br /&gt;
        Timeout.Add(1000, () =&amp;gt; { &lt;br /&gt;
            Console.WriteLine(&amp;quot;Tick...&amp;quot;);&lt;br /&gt;
            return true; &lt;br /&gt;
        });&lt;br /&gt;
        loop.Run();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[GLib]]&lt;br /&gt;
* [[GtkSharp]]&lt;br /&gt;
* [[GioSharp]]&lt;br /&gt;
* [[GdkSharp]]&lt;br /&gt;
* [[AtkSharp]]&lt;br /&gt;
* [[CairoSharp]]&lt;br /&gt;
* [[Mono (software)]]&lt;br /&gt;
* [[.NET (software framework)]]&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [https://github.com/GtkSharp/GtkSharp Official GtkSharp repository on GitHub]&lt;br /&gt;
* [https://docs.gtk.org/glib/ Official GLib documentation]&lt;br /&gt;
* [https://www.mono-project.com/docs/gui/gtksharp/ Gtk# documentation (Mono Project)]&lt;br /&gt;
&lt;br /&gt;
[[Category:GTK]]&lt;br /&gt;
[[Category:GLib]]&lt;br /&gt;
[[Category:Free software programmed in C Sharp]]&lt;br /&gt;
[[Category:Mono (software)]]&lt;br /&gt;
[[Category:Cross-platform software]]&lt;br /&gt;
[[Category:Graphical user interface toolkits]]&lt;br /&gt;
[[Category:System libraries]]&lt;/div&gt;</summary>
		<author><name>Ten</name></author>
	</entry>
</feed>