<?php
require_once('MenuBar.inc');
//header('content-type: text/plain');
$menu = new MenuBar();
$menu->createFromFile('menudef.xml');
/*
$xmlStr = <<<XML
<?xml version='1.0' encoding='iso-8859-1'?>
<!DOCTYPE menubar SYSTEM 'menudef.dtd'>
<menubar>
<menu display='_File' icon='icon1.jpg' tearoff='false'>
<item display='_Open' icon='Gtk::STOCK_OPEN' />
<item display='_Save' icon='Gtk::STOCK_SAVE' />
<item display='_Close' icon='Gtk::STOCK_CLOSE' />
<separator />
<item display='_Quit' icon='Gtk::STOCK_QUIT' />
</menu>
<menu display='_Edit' tearoff='true'>
<item display='_Cut' icon='Gtk::STOCK_CUT' />
<item display='C_opy' icon='Gtk::STOCK_COPY' />
<item display='_Paste' icon='Gtk::STOCK_PASTE' />
<separator />
<menu display='Submenu' icon='icon1.jpg' tearoff='true'>
<item display='SubmenuItem' icon='icon1.jpg' />
</menu>
<item display='_MyPersonaItem' icon='icon1.jpg' />
</menu>
</menubar>
XML;
$menu->createFromString($xmlStr);
*/
$window = new GtkWindow();
$window->add($menu);
$window->show_all();
$window->connect_simple('destroy', array('Gtk', 'main_quit'));
$open = $menu->getWidget('open');
$open->connect_simple('activate', 'onActivate', 'open');
$save = $menu->getWidget('save');
$save->connect_simple('activate', 'onActivate', 'save');
$close = $menu->getWidget('close');
$close->connect_simple('activate', 'onActivate', 'close');
$quit = $menu->getWidget('quit');
$quit->connect_simple('activate', 'exitApp');
$cut = $menu->getWidget('cut');
$cut->connect_simple('activate', 'onActivate', 'cut');
$copy = $menu->getWidget('copy');
$copy->connect_simple('activate', 'onActivate', 'copy');
$paste = $menu->getWidget('paste');
$paste->connect_simple('activate', 'onActivate', 'paste');
$personal = $menu->getWidget('personal');
$personal->connect_simple('activate', 'onActivate', 'personal');
$submenu = $menu->getWidget('submenuitem');
$submenu->connect_simple('activate', 'onActivate', 'submenuItem');
function onActivate($name) {
echo 'The widget '$name' was activatedn';
}
function exitApp() {
echo 'Closing applicationn';
Gtk::main_quit();
}
Gtk::main();
?>