Menu Horizontal Dinâmico em ExtJs Usando Json

0 respostas
metaller

Boa Tarde Pessoal

Aqui na empresa usamos ExtJs + Json + Stripes e foi feito um menu usando a Ext.tree que le um objeto Json que uma Action popula e monta o Treeview baseado nos dados contidos nesse objeto. A função em ExtJs para esse Treeview é assim e funciona:

var menu = new Ext.tree.TreePanel({
	loader: new Ext.tree.TreeLoader({
		url:'menu/Menu.action',
		requestMethod:'GET',
		baseParams:{format:'json'}
	}),
	rootVisible: false,
	listeners: {
            dblclick: function(n) {
       		if (n.attributes.url && n.attributes.url != 'null') {
       			fwkLoadPage(n.attributes.url);
       		}
            }
        },
        tbar: new Ext.Toolbar({
	        items:[{
			tooltip: 'Home',
			iconCls: 'home',
			handler: function(){ fwkLoadPage('pages/home/home_welcome.jsp');}
			}, {
	   	        tooltip: 'Sair',
		        iconCls: 'logout',
			handler: function(){ document.location.href = 'pages/home/logout.jsp'; }
			}, {
			tooltip: 'Expand All',
			iconCls: 'plus',
			handler: function(){ menu.expandAll();}
			}, {
			iconCls: 'minus',
			tooltip: 'Collapse All',
			handler: function(){ menu.collapseAll();}
			}
		]})
});

No entanto me pediram pra fazer o menu de forma horizontal como este exemplo:

http://www.extjs.com/deploy/dev/examples/menu/menus.html

Só que olhando o código desse exemplo no site do ExtJs, ele usa o Ext.menu.Menu e não tem o Ext.tree.TreeLoader que dispõe de um loader que faz a função de leitura do objeto Json para renderização do menu.

Eu precisava de algo assim:

loader: new Ext.tree.TreeLoader({
	url:'menu/Menu.action',
	requestMethod:'GET',
	baseParams:{format:'json'}

Só que não tem esse loader para o Ext.menu.Menu. Então como eu vou ler o objeto Json para poder renderizar?

Alguém com algum conhecimento em ExtJs pode me dar um Help?

Agradeço desde já!

Abraço

Criado 11 de setembro de 2009
Respostas 0
Participantes 1