<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xmlns:xi="http://www.w3.org/2001/XInclude" type="guide" style="task" id="grid.vala" xml:lang="ca">
  <info>
  <title type="text">Grid (Vala)</title>
    <link type="guide" xref="beginner.vala#layout"/>
    <link type="seealso" xref="button.vala"/>
    <link type="seealso" xref="progressbar.vala"/>
    <revision version="0.1" date="2012-05-04" status="draft"/>

    <credit type="author copyright">
      <name>Tiffany Antopolski</name>
      <email its:translate="no">tiffany.antopolski@gmail.com</email>
      <years>2012</years>
    </credit>

    <desc>Pack widgets in rows and columns</desc>
  </info>

  <title>Grid widget</title>
  <media type="image" mime="image/png" src="media/grid.png"/>
  <p>A button widget connected to a progress bar.</p>

<code mime="text/x-csharp" style="numbered">public class MyWindow : Gtk.ApplicationWindow {

	Gtk.Widget progress_bar;

	internal MyWindow (MyApplication app) {
		Object (application: app, title: "Grid Example");
		var grid = new Gtk.Grid();
		progress_bar = new Gtk.ProgressBar ();
		progress_bar.show ();

		var button = new Gtk.Button.with_label ("Button");
		button.clicked.connect (on_button_click);
		button.show ();

		this.add(grid);
		grid.attach(button, 0, 1, 1, 1);
		grid.attach_next_to (progress_bar, button, Gtk.PositionType.BOTTOM, 1, 1);
		grid.show ();
	}

	void on_button_click (Gtk.Button button) {
		(progress_bar as Gtk.ProgressBar).pulse ();
	}
}

public class MyApplication : Gtk.Application {
	protected override void activate () {

		new MyWindow (this).show ();
	}

	internal MyApplication () {
		Object (application_id: "org.example.MyApplication");

	}
}

public int main (string[] args) {
	return new MyApplication ().run (args);
}
</code>
<p>
  In this sample we used the following:
</p>
<list>
  <item><p><link href="http://www.valadoc.org/gtk+-3.0/Gtk.Grid.html">Gtk.Grid</link></p></item>
</list>
</page>
