2009-07-27 3 views
0

Salut tout ceci est ma première question ici! Je fais juste mes premiers pas avec (Ext-) GWT. Je suis en train de tester les librairies Ext-GWT et vraiment: elles sont absolument géniales! Maintenant ma question: Est-il possible de faire une sorte de "clear-Portal" ou "cacher tous les portlets" pour un portail défini? Ou ai-je toujours effacé manuellement le portail comme dans mon exemple de code ci-dessus? Mon exemple de code ressemble à ceci:Portail EXT-GWT: Comment obtenir tous les portlets?

//define the Portal, 2 columns, each 50% auf width, with borders and Backgroundcolor 
portal = new Portal(2); 
portal.setBorders(true); 
portal.setStyleAttribute("backgroundColor", "white"); 
portal.setColumnWidth(0, .50); 
portal.setColumnWidth(1, .50); 

//define a Portlet for showing all Users 
portletUser = new Portlet(); 
portletUser.setHeading("Benutzer"); 
configPanel(portletUser); 
portletUser.setLayout(new FitLayout()); 
CompUserList compUserList = new CompUserList(); 
portletUser.add(compUserList); 
portletUser.setHeight(250); 

//define a Portlet for showing all Vehicles 
portletVehicles = new Portlet(); 
portletVehicles.setHeading("Fahrzeuge"); 
configPanel(portletVehicles); 
portletVehicles.setLayout(new FitLayout()); 
CompVehicleList compVehicleList = new CompVehicleList(); 
portletVehicles.add(compVehicleList); 
portletVehicles.setHeight(250); 

//define a portlet for showing all countries 
portletCountries = new Portlet(); 
portletCountries.setHeading("Länder"); 
configPanel(portletCountries); 
portletCountries.setLayout(new FitLayout()); 
CompCountryList compCountryList = new CompCountryList(); 
portletCountries.add(compCountryList); 
portletCountries.setHeight(250); 

//add both Portlets to Portal 
portal.add(portletUser, 0); 
portal.add(portletVehicles, 1); 

Alors d'abord de tout cela fonctionne très bien et ressemble beaucoup :-)

J'ai maintenant un bouton dans un menu accordeon. Le Listener sur ce bouton devrait cacher tous les portlets dans le portail (à ce moment son et la portletUser portletVehicles), puis ajouter un autre portlet (par exemple les portletCountries):

portletUser.hide(); 
portletVehicles.hide(); 
portal.add(portletCountries, 0) 

Question de nouveau au-dessus ;-) Est-il possible de faire une sorte de "clear-Portal" ou de "masquer tous les portlets" pour un portail défini? Ou ai-je toujours effacé manuellement le portail comme dans mon exemple de code ci-dessus?

Quelle est la meilleure pratique pour cette fonctionnalité?

Merci à tous pour vos conseils!

Lars.

Répondre

0

Je ne l'ai pas utilisé Ext-GWT - mais en regardant le Javadoc pour Portal, il y a deux choses que je voudrais essayer:

for (LayoutContainer c : portal.getItems()) { 
    c.hide(); 
} 

ou, plus généralement, envelopper un portail dans votre propre classe qui enregistre les Portlets qui sont dans le Portail - alors vous pouvez obtenir une Liste plutôt qu'une Liste.

Questions connexes