/**
 * File:        pkg_layout.ycp
 * Package:     
 * Authors:     Gabriele Strattner <gs@suse.de>
 *
 * Purpose:
 *
 * ncurses layout for package selection
 *
 * $Id: pkg_layout.ycp 15300 2004-03-03 14:55:46Z gs $
 */
{
    textdomain "packages";

    return `VBox( `VSpacing(0.3),
		  `HBox( `HSpacing(0.3),
			 // label of the Filter menu ( keep it short ) - filters out a set of packages
			 `Left(`MenuButton( `opt(`key_F4), _( "&Filter" ),
					    // begin: menu items of the filter menu
					    // please note: use unique hotkeys until end:
					    [`item( `id("groups"), 	_( "&RPM Groups" ) ),
					     `item( `id("selections"), 	_( "Se&lections" ) ),
					     `item( `id("search"), 	_( "&Search" ) ),
					     `item( `id("installed"),	_( "Installed &Packages" ) ),
					     `item( `id("whatif"), 	_( "&Installation Summary" ) ),
					     // end: menu items of the filter menu
					     `item( `id("updatelist"),	_( "&Update List" ) ) ]
					    )),
			 // label Actions menu ( keep it short ) - actions to change status of a package
			 `Left(`MenuButton( `opt(`key_F5), _( "A&ctions" ),
					    // Please note: add an appropriate number of whitespaces to get a well
					    // formated menu (the [ ]s should be in one column) and use unique hotkeys until end:
					    // begin: Actions menu, toggle the status, e.g. change from installed to delete
					    [`item( `id("toggle"), 	_( "&Toggle    [SPACE]" ) ),
					     // select the package for installation
					     `item( `id("select"), 	_( "&Select      [+]" ) ),
					     // delete the package
					     `item( `id("delete"), 	_( "&Delete      [-]" ) ),
					     // update the package
					     `item( `id("update"), 	_( "&Update      [>]" ) ),
					     // set package status to 'Taboo', i.e. never install this package
					     `item( `id("tabooOn"), 	_( "Taboo &Yes   [!]" ) ),
					     // reset the status 'Taboo' 
					     `item( `id("tabooOff"), 	_( "Taboo &No    [-]" ) ),
					     // install the source package (SRPM)
					     `item( `id("sourceYes"), 	_( "&Install Sources (SRPM)" ) ),
					     // don't install sources
					     `item( `id("sourceNo"), 	_( "D&o Not Install Sources" ) ),
					     // end: Actions menu, set status of all packages (title of a submenu)
					     `menu( _( "All Listed &Packages" ),
						    [
						     // begin: submenu items actions concerning all packages
						     // please note: use unique hotkeys until end:
						     `item(`id("selall"),   _( "&Install All" )  ),
						     `item(`id("deselall"), _( "Do &Not Install Any" ) ),
						     `item(`id("delall"),   _( "&Delete All" ) ),
						     `item(`id("dontdel"),  _( "Do Not D&elete Any" ) ),
						     `item(`id("updall"),   _( "&Update All" )   ),
						      // end: submenu items: actions concerning all packages
						     `item(`id("dontupd"),  _( "Do Not Update and &Keep Installed" ) )
						     ]
						    )
					     ]
					     )),
			 // label Information menu ( keep it short! )
			 `Left(`MenuButton( `opt(`key_F6), _( "&Information" ),
					    // begin: menu items of the info menu
					    // please note: use unique hotkeys until end:
					    [`item( `id("pkginfo"), 	_( "&Package Info" ) ),
					     `item( `id("longdescr"), 	_( "&Long Description" ) ),
					     `item( `id("versions"), 	_( "&Versions" ) ),
					     `item( `id("files"), 	_( "&File List" ) ),
					     // end: menu items of the info menu
					     `item( `id("relations"), 	_( "Package &Relations" ) ) ]
					    )),
			 // label Etc. menu ( keep it short! )
			 `Left(`ReplacePoint(`id(`replacemenu), `MenuButton( `opt(`key_F7), _( "&Etc." ),
									    // menu item of the Etc. menu
									    [`menu( _( "&Dependencies" ),
										    // menu items of the Etc./Dependencies submenu
										    [`item( `id("showdeps"), _( "    &Check Dependencies Now" ) ),
										     `item( `id("autodeps"), _( "[X] &Automatic Dependency Check" ) ) ]
										    ),
									      // menu item of the Etc. menu
									     `menu( _( "&Selections" ),
										    // menu item of the Etc./Selections submenu
										    [`item( `id("save"), _( "S&ave Selection" ) ),
										     `item( `id("load"), _( "&Load Selection" ) ) ]
										    )
									     ]
									    )
					     )
			       ),
			 `HSpacing(0.3)
					   
			 ),
		  `VSpacing(0.3),
		  `VWeight( 50, `HBox(`HSpacing(0.3),
				      `PkgSpecial( `id("packages"), `opt(`notify), "pkgTable" ), 
				      `HSpacing(0.3)
				      )
			    ),
		  // label text - keep it short
		  `HBox( `HWeight(1, `HBox(`Label( _( "Filter: " ) ),
					   `Label( `id("filter"), "........................." ),
					   `HSpacing( 0.1 )
					   )
				  ),
			 // label text - keep it short (use abbreviation if necessary)
			 `HWeight(1, `HBox(`Label( _( "Required Disk Space: " ) ),
					   `Label( `id("diskspace"), "         " ),
					   `HSpacing( 0.1 )
					   )
				  )
			 ),
		  `VBox(`VWeight( 40, `ReplacePoint( `id(`replaceinfo),
						     `RichText( `id("description")," ")
						     )
				  ),
			`VWeight( 5, `HBox(
					   // label help menu 
					   `HBox(`MenuButton(`opt(`key_F1), _( "&Help" ),
							     // menu items of the help menu
							     [`item( `id("help_general"), _( "&General Help" ) ),
							      `item( `id("help_status"),  _( "Help on &Package Status" ) ),
							      `item( `id("help_search"),  _( "Help on &Search" ) ),
							      `item( `id("help_update"),  _( "Help on &Upate" ) ) ]
							     ),
						 `HWeight(1,`HStretch()),
						 // button label - keep it short
						 `PushButton(`id("search"), `opt(`key_F2), _( "&Search" ) ),
						 `HWeight(1, `HStretch()),
						 // button label - keep it short! (max. 15 chars -- use abbreviation)
						 `PushButton(`id("diskinfo"), `opt(`key_F3), _( "&Disk Usage" ) ),
					 	 `HWeight(1,`HStretch())
						 ),
					   `HSpacing(5.0),
					   // button label - keep it short
					   `HBox( `Right( `PushButton(`id("cancel"), `opt(`key_F9) ,_( "&Cancel" ) ) ),
						  // button label - keep it short
						  `Right( `PushButton(`id("ok"), `opt(`key_F10), _( "&Accept" ) ) )
						  )
					   )
				  )
			)
		  );
}
