<?php
if( !class_exists('gtk')) {
	die('Please load the php-gtk2 module in your php.ini' . "\r\n");
}


class Expander extends GtkWindow
{
	function __construct($parent = null)
	{
		parent::__construct();

		if (@$GLOBALS['framework']) {
			return;
		}

		if ($parent)
			$this->set_screen($parent->get_screen());
		else
			$this->connect_simple('destroy', array('gtk', 'main_quit'));

		$this->set_title(__CLASS__);
		$this->set_position(Gtk::WIN_POS_CENTER);
		$this->set_default_size(-1, 500);
		$this->set_border_width(8);
		
		$this->add($this->__create_box());
		$this->show_all();
	}

	
	
	function __create_box()
	{
		$vbox = new GtkVBox(false, 5);
		$vbox->set_border_width(5);
		
		$label = new GtkLabel();
		$label->set_markup('Expander demo. Click on the triangle for details.');
		$vbox->pack_start($label, false, false, 0);
		
		$expander = new GtkExpander('Details');
		$vbox->pack_start($expander, false, false, 0);
		
		$label2 = new GtkLabel('Details can be shown or hidden');
		$expander->add($label2);
		
		return $vbox;
	}
}

$GLOBALS['class']		= 'Expander';
$GLOBALS['description']	= 'GtkExpander allows to provide additional content that is initially hidden.
This is also known as "disclosure triangle".';

if (!@$GLOBALS['framework']) {
	new Expander();
	Gtk::main();
}

?>