<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.sugarlabs.org/index.php?action=history&amp;feed=atom&amp;title=Activity_Team%2FCreating_Activity_Using_Mono</id>
	<title>Activity Team/Creating Activity Using Mono - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sugarlabs.org/index.php?action=history&amp;feed=atom&amp;title=Activity_Team%2FCreating_Activity_Using_Mono"/>
	<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;action=history"/>
	<updated>2026-05-14T10:54:37Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=47028&amp;oldid=prev</id>
		<title>Patrol: moved Walter is a wanker 10/Creating Activity Using Mono to Activity Team/Creating Activity Using Mono over redirect: revert</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=47028&amp;oldid=prev"/>
		<updated>2010-02-24T01:43:30Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/index.php?title=Walter_is_a_wanker_10/Creating_Activity_Using_Mono&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Walter is a wanker 10/Creating Activity Using Mono (page does not exist)&quot;&gt;Walter is a wanker 10/Creating Activity Using Mono&lt;/a&gt; to &lt;a href=&quot;/go/Activity_Team/Creating_Activity_Using_Mono&quot; title=&quot;Activity Team/Creating Activity Using Mono&quot;&gt;Activity Team/Creating Activity Using Mono&lt;/a&gt; over redirect: revert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:43, 23 February 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Patrol</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=46289&amp;oldid=prev</id>
		<title>Page move vandal: moved Activity Team/Creating Activity Using Mono to Walter is a wanker 10/Creating Activity Using Mono:&amp;#32;Walter is a wanker</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=46289&amp;oldid=prev"/>
		<updated>2010-02-24T00:20:04Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/go/Activity_Team/Creating_Activity_Using_Mono&quot; title=&quot;Activity Team/Creating Activity Using Mono&quot;&gt;Activity Team/Creating Activity Using Mono&lt;/a&gt; to &lt;a href=&quot;/index.php?title=Walter_is_a_wanker_10/Creating_Activity_Using_Mono&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Walter is a wanker 10/Creating Activity Using Mono (page does not exist)&quot;&gt;Walter is a wanker 10/Creating Activity Using Mono&lt;/a&gt;: Walter is a wanker&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:20, 23 February 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Page move vandal</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=36097&amp;oldid=prev</id>
		<title>Dfarning: moved Create your first activity using Mono to Activity Team/Creating Activity Using Mono</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=36097&amp;oldid=prev"/>
		<updated>2009-08-30T20:25:11Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/index.php?title=Create_your_first_activity_using_Mono&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Create your first activity using Mono (page does not exist)&quot;&gt;Create your first activity using Mono&lt;/a&gt; to &lt;a href=&quot;/go/Activity_Team/Creating_Activity_Using_Mono&quot; title=&quot;Activity Team/Creating Activity Using Mono&quot;&gt;Activity Team/Creating Activity Using Mono&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:25, 30 August 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Dfarning</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=19475&amp;oldid=prev</id>
		<title>Llaske at 20:35, 12 February 2009</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=19475&amp;oldid=prev"/>
		<updated>2009-02-12T20:35:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;amp;diff=19475&amp;amp;oldid=19471&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Llaske</name></author>
	</entry>
	<entry>
		<id>https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=19471&amp;oldid=prev</id>
		<title>Llaske: New page: The objective of this Lab is to develop a new Sugar activity using C# and Mono. You will learn consecutively how to use MonoDevelop to write the source code of your activity, build a packa...</title>
		<link rel="alternate" type="text/html" href="https://wiki.sugarlabs.org/index.php?title=Activity_Team/Creating_Activity_Using_Mono&amp;diff=19471&amp;oldid=prev"/>
		<updated>2009-02-12T20:21:41Z</updated>

		<summary type="html">&lt;p&gt;New page: The objective of this Lab is to develop a new Sugar activity using C# and Mono. You will learn consecutively how to use MonoDevelop to write the source code of your activity, build a packa...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The objective of this Lab is to develop a new Sugar activity using C# and Mono. You will learn consecutively how to use MonoDevelop to write the source code of your activity, build a package, test your activity on Sugar and on a XO.&lt;br /&gt;
&lt;br /&gt;
= Step 1: Create your MonoDevelop project =&lt;br /&gt;
&lt;br /&gt;
* Launch MonoDevelop (Applications/Programming/MonoDevelop)&lt;br /&gt;
* Create a new solution (File/New Solution…)&lt;br /&gt;
* Choose a &amp;quot;C# / Gtk# 2.0 Project&amp;quot; template. Fill the form with &amp;quot;LabActivity&amp;quot; as name. Uncheck the &amp;quot;Create separate Solution Directory&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[Image:Lab1_1.png|400px]]&lt;br /&gt;
&lt;br /&gt;
* Click the &amp;quot;Forward&amp;quot; button.&lt;br /&gt;
* In the next window, don&amp;#039;t change any option. Don&amp;#039;t change the Gtk# version suggested. Don&amp;#039;t check any checkbox. Then click on &amp;quot;OK&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
The solution is now created. We&amp;#039;re going to setup it.&lt;br /&gt;
&lt;br /&gt;
* Add reference on Sugar. Right click on References, &amp;quot;Edit References…&amp;quot;, choose the &amp;quot;.Net Assemblies&amp;quot; sheet. Select &amp;quot;Sugar.dll&amp;quot; in the &amp;quot;/home/user/Prerequisites&amp;quot; directory. Click on the &amp;quot;+Add&amp;quot; button then OK.&lt;br /&gt;
&lt;br /&gt;
[[Image:Lab1_2.png|400px]]&lt;br /&gt;
&lt;br /&gt;
* Remove the file &amp;quot;Main.cs&amp;quot; from the solution: right click on the  Main.cs file, then choose &amp;quot;Remove&amp;quot; and check the &amp;quot;Delete from disk&amp;quot; box.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Step 2: Create a simple Window =&lt;br /&gt;
&lt;br /&gt;
* Update the content of the file MainWindow.cs like below. Note than this file is available on the &amp;quot;/home/user/LabSource/lab1/step2&amp;quot; directory.&lt;br /&gt;
&lt;br /&gt;
 	using System;&lt;br /&gt;
 	using System.Collections;&lt;br /&gt;
 	using Gtk;&lt;br /&gt;
 	using Sugar;&lt;br /&gt;
 	&lt;br /&gt;
 	namespace LabActivity&lt;br /&gt;
 	{&lt;br /&gt;
 		public class MainWindow : Sugar.Window&lt;br /&gt;
 		{	&lt;br /&gt;
 			public new static string activityId=&amp;quot;&amp;quot;;&lt;br /&gt;
 			public new static string bundleId=&amp;quot;&amp;quot;;&lt;br /&gt;
 	&lt;br /&gt;
 			public MainWindow(string activityId, string bundleId) : base(&amp;quot;Lab&amp;quot;,activityId, bundleId)&lt;br /&gt;
 			{&lt;br /&gt;
 				this.SetDefaultSize(400, 400);&lt;br /&gt;
 				this.Maximize();&lt;br /&gt;
 				this.DeleteEvent += new DeleteEventHandler(OnMainWindowDelete);&lt;br /&gt;
 	&lt;br /&gt;
 				VBox vbox=new VBox();&lt;br /&gt;
 				vbox.BorderWidth = 8;&lt;br /&gt;
 				Label _text = new Label(&amp;quot;Hello Lab Activity&amp;quot;);&lt;br /&gt;
 				vbox.Add(_text);&lt;br /&gt;
 				Button _button = new Button();&lt;br /&gt;
 				_button.Label = &amp;quot;Quit&amp;quot;;&lt;br /&gt;
 				_button.Clicked += new EventHandler(OnClick);&lt;br /&gt;
 				vbox.Add(_button);&lt;br /&gt;
 			&lt;br /&gt;
 				this.Add(vbox);&lt;br /&gt;
 	&lt;br /&gt;
 				ShowAll();&lt;br /&gt;
 			}&lt;br /&gt;
 		&lt;br /&gt;
 			void OnMainWindowDelete (object sender, DeleteEventArgs a)&lt;br /&gt;
 			{&lt;br /&gt;
 				Application.Quit();&lt;br /&gt;
 				a.RetVal = true;&lt;br /&gt;
 			}&lt;br /&gt;
 			&lt;br /&gt;
 			void OnClick(object sender, EventArgs a)&lt;br /&gt;
 			{&lt;br /&gt;
 				Application.Quit();&lt;br /&gt;
 			}&lt;br /&gt;
 		&lt;br /&gt;
 			public static void Main(string[] args)&lt;br /&gt;
 			{&lt;br /&gt;
 				System.Console.Out.WriteLine(&amp;quot;Lab Activity for OLPC&amp;quot;);&lt;br /&gt;
 				&lt;br /&gt;
 				if (args.Length&amp;gt;0) {&lt;br /&gt;
 					IEnumerator en= args.GetEnumerator();&lt;br /&gt;
 					while (en.MoveNext()) {&lt;br /&gt;
  						if (en.Current.ToString().Equals(&amp;quot;-s ugarActivityId&amp;quot;)) { &lt;br /&gt;
 			 				if (en.MoveNext()) {&lt;br /&gt;
 								activityId=en.Current.ToString();&lt;br /&gt;
 							}&lt;br /&gt;
 						}&lt;br /&gt;
 						if (en.Current.ToString().Equals(&amp;quot;-sugarBundleId&amp;quot;)) {&lt;br /&gt;
 							if (en.MoveNext()) {&lt;br /&gt;
 								bundleId=en.Current.ToString();&lt;br /&gt;
 							}&lt;br /&gt;
 						}&lt;br /&gt;
 					}&lt;br /&gt;
 				}		&lt;br /&gt;
 				&lt;br /&gt;
 				Application.Init();&lt;br /&gt;
 				new MainWindow(activityId, bundleId);&lt;br /&gt;
 				Application.Run();&lt;br /&gt;
 			}&lt;br /&gt;
 	&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
&lt;br /&gt;
* Save the file: &amp;quot;File/Save&amp;quot;&lt;br /&gt;
* Open the &amp;quot;User Interface&amp;quot; part of the solution, remove the file &amp;quot;LabActivity.MainWindow&amp;quot;: right clic, choose &amp;quot;Delete&amp;quot;, UNCHECK THE BOX &amp;quot;Also remove the &amp;#039;MainWindow.cs&amp;#039;. &lt;br /&gt;
* Launch the build &amp;quot;Project/Build Solution&amp;quot;&lt;br /&gt;
* You don&amp;#039;t any any error. Don&amp;#039;t run the project for the moment.&lt;br /&gt;
&lt;br /&gt;
Then copy libraries need to run the activity:&lt;br /&gt;
* Open a Terminal window (Applications/Accessories/Terminal).&lt;br /&gt;
* Change path to the binary directory (in /home/user/LabActivity/bin/Debug). &lt;br /&gt;
* Create a new subdirectory named &amp;quot;bin&amp;quot; using command &amp;quot;mkdir bin&amp;quot;. Change path to this new directory.&lt;br /&gt;
* Copy in this directory all the shared libraries (.so) found in the &amp;quot;/home/user/Prerequisites&amp;quot; directory. For example with the command &amp;quot;cp /home/user/Prerequisites/*.so .&amp;quot;:&lt;br /&gt;
** libgdksharpglue-2.so&lt;br /&gt;
** libgladesharpglue-2.so&lt;br /&gt;
** libglibsharpglue-2.so&lt;br /&gt;
** libgtksharpglue-2.so&lt;br /&gt;
** libMonoPosixHelper.so&lt;br /&gt;
** libpangosharpglue-2.so&lt;br /&gt;
** uiX11Util.so&lt;br /&gt;
* Run the new application: &amp;quot;Project/Run&amp;quot;, you should obtain this:&lt;br /&gt;
&lt;br /&gt;
[[Image:Lab1_3.png|500px]]&lt;br /&gt;
&lt;br /&gt;
* Click on the button to quit.&lt;/div&gt;</summary>
		<author><name>Llaske</name></author>
	</entry>
</feed>