/*
 * Ext JS Library 2.0 Alpha 1
 * Copyright(c) 2006-2007, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://extjs.com/license
 */

Example = new Ext.app.App({
    init :function(){
        Ext.QuickTips.init();
    },

    getModules : function(){
        return [
                new Example.ComplexWindow()
				//new Example.GridWindow(),
                //new Example.TabWindow(),
               	//new Example.AccordionWindow(),
                //new Example.BogusMenuModule(),
				//new Example.BogusModule()
                
            ];
    }
});





// Array data for the grid
Ext.grid.dummyData = [
    ['3m Co',71.72,0.02,0.03,'9/1 12:00am'],
    ['Alcoa Inc',29.01,0.42,1.47,'9/1 12:00am'],
    ['Altria Group Inc',83.81,0.28,0.34,'9/1 12:00am'],
    ['American Express Company',52.55,0.01,0.02,'9/1 12:00am'],
    ['American International Group, Inc.',64.13,0.31,0.49,'9/1 12:00am'],
    ['AT&T Inc.',31.61,-0.48,-1.54,'9/1 12:00am'],
    ['Boeing Co.',75.43,0.53,0.71,'9/1 12:00am'],
    ['Caterpillar Inc.',67.27,0.92,1.39,'9/1 12:00am'],
    ['Citigroup, Inc.',49.37,0.02,0.04,'9/1 12:00am'],
    ['E.I. du Pont de Nemours and Company',40.48,0.51,1.28,'9/1 12:00am'],
    ['Exxon Mobil Corp',68.1,-0.43,-0.64,'9/1 12:00am'],
    ['General Electric Company',34.14,-0.08,-0.23,'9/1 12:00am'],
    ['General Motors Corporation',30.27,1.09,3.74,'9/1 12:00am'],
    ['Hewlett-Packard Co.',36.53,-0.03,-0.08,'9/1 12:00am'],
    ['Honeywell Intl Inc',38.77,0.05,0.13,'9/1 12:00am'],
    ['Intel Corporation',19.88,0.31,1.58,'9/1 12:00am'],
    ['International Business Machines',81.41,0.44,0.54,'9/1 12:00am'],
    ['Johnson & Johnson',64.72,0.06,0.09,'9/1 12:00am'],
    ['JP Morgan & Chase & Co',45.73,0.07,0.15,'9/1 12:00am'],
    ['McDonald\'s Corporation',36.76,0.86,2.40,'9/1 12:00am'],
    ['Merck & Co., Inc.',40.96,0.41,1.01,'9/1 12:00am'],
    ['Microsoft Corporation',25.84,0.14,0.54,'9/1 12:00am'],
    ['Pfizer Inc',27.96,0.4,1.45,'9/1 12:00am'],
    ['The Coca-Cola Company',45.07,0.26,0.58,'9/1 12:00am'],
    ['The Home Depot, Inc.',34.64,0.35,1.02,'9/1 12:00am'],
    ['The Procter & Gamble Company',61.91,0.01,0.02,'9/1 12:00am'],
    ['United Technologies Corporation',63.26,0.55,0.88,'9/1 12:00am'],
    ['Verizon Communications',35.57,0.39,1.11,'9/1 12:00am'],
    ['Wal-Mart Stores, Inc.',45.45,0.73,1.63,'9/1 12:00am'],
    ['Walt Disney Company (The) (Holding Company)',29.89,0.24,0.81,'9/1 12:00am']
];


Example.ComplexWindow = Ext.extend(Ext.app.Module, {
    
	init : function(){
        this.launcher = {
            text: 'Complex Window',
            iconCls:'icon-grid',
            handler : this.createWindow,
            scope: this
        }
		ComplexWindow = this; //Cheating
    },

    createWindow : function(){
		function onButtonClick(btn){
			Ext.example.msg('Button Click','You clicked the "{0}" button.', btn.text);
		}
	
		function onItemClick(item){
			Ext.example.msg('Menu Click', 'You clicked the "{0}" menu item.', item.text);
		}
	
		function onItemCheck(item, checked){
			Ext.example.msg('Item Check', 'You {1} the "{0}" menu item.', item.text, checked ? 'checked' : 'unchecked');
		}
	
		function onItemToggle(item, pressed){
			Ext.example.msg('Button Toggled', 'Button "{0}" was toggled to {1}.', item.text, pressed);
		}
		var desktop = this.app.getDesktop();
        var win = desktop.getWindow('complex-win');
        if(!win){
			
			var tb = new Ext.Toolbar();
			var tabs = new Ext.TabPanel({
					region: 'center',
					margins:'3 3 3 0', 
					activeTab: 0,
					minTabWidth: 75,
					tabWidth:100,					
					enableTabScroll:true,
					tbar: tb,
					resizeTabs:true,
					defaults:{autoScroll:true},
		
					items:[{
						title: 'Siete  1',
						contentEl: 'siete1html',
						closable: true
					}]
				});
			var tabNo=1;
	
			// Panel for the west
			var nav = new Ext.Panel({
				title: 'Accordion',
				region: 'west',
				rootVisible:false,
				lines:false,
				autoScroll:true,
				animCollapse:true,
				animate: true,
				collapseMode:'mini',
				layout: 'accordion',
				layoutConfig:{
					animate:true
				},
				split: true,
				width: 200,
				collapsible: true,
				margins:'3 0 3 3',
				cmargins:'3 3 3 3',
				items:[{
					title: 'Item 1',
					contentEl: 'accordion1'
				},{
					title: 'Item 2',
					html: 'Item 2',
					contentEl: 'accordion2'
				},{
					title: 'Item 3',
					contentEl: 'accordion3'
				}]
			});

			var grid = new Ext.grid.PropertyGrid({
				border: false,
				closable: true,
				layout: 'fit',
				source: {
					//"(name)": "Properties Grid",
					"grouping": false,
					"autoFitColumns": true,
					"productionQuality": false,
					"created": new Date(Date.parse('10/15/2006')),
					"tested": false,
					"version": .01,
					"borderWidth": 1
				}
			});	
	
	
			var gridPanel = new Ext.Panel({
				title: 'Grid Panel',
				rootVisible:false,
				lines:false,
				autoScroll:true,
				animCollapse:true,
				animate: true,
				collapseMode:'mini',
				region: 'east',
				split: true,
				layout: 'fit',
				width: 200,
				collapsible: true,
				margins:'3 3 3 -3',
				cmargins:'3 3 3 0',
				items: [ grid ]
			});			
	
			
			
			win = desktop.createWindow({
                id: 'complex-win',
                title:'Complex Window',
                width:740,
                height:480,
                x:10,
                y:10,
                shim:false,
                animCollapse:true,
                constrainHeader:true,
				plain:true,
                layout: 'border',
                items: [nav, tabs, gridPanel]
            });
			tb.add({
				text: 'New Tab',
				cls: 'x-btn-text-icon bmenu', // icon and text class			   
				icon : 'images/silk_icons/icons/application_add.png',
				handler :  function () {
					tabNo++;
				  	tabs.add ({
						title: 'Seite ' + tabNo,
						html: 'Seite ' + tabNo,
						closable: true
					})
				}
			});
			tb.addSeparator();


			// add a combobox to the toolbar
			var store = new Ext.data.SimpleStore({
				fields: ['zoom'],
				data : [ ['10 %'], ['20 %'], ['50 %'], ['100 %'] ] 
			});
			var combo = new Ext.form.ComboBox({
				store: store,
				displayField:'zoom',
				typeAhead: true,
				mode: 'local',
				triggerAction: 'all',
				emptyText:'Zoom',
				selectOnFocus:true,
				width: 100
			});
			tb.addField(combo);
        }
        win.maximize();
		win.show();
    }
});

