2011-03-31 3 views
1

Je crée une application GWT en utilisant le modèle MVP. J'ai une page d'index qui utilise DockLayoutPanel. J'ai vue et présentateur pour chaque section de dockLayoutPanel (ex: NorthView et NorthPresenter). J'ai quatre boutons dans le panneau central (NorthBtn, EastBtn, WestBtn, SouthBtn). onCliquez sur l'un des boutons que l'interface utilisateur doit modifier dans la section correspondante de dockLayoutPanel.Motif GWT MVP - modifier différentes parties de la page sur un événement

Point d'entrée Classe:

@Override 
public void onModuleLoad() { 
    RPCServiceAsync rpcService = GWT.create(RPCService.class); 
    HandlerManager eventBus = new HandlerManager(null); 
    AppController appViewer = new AppController(rpcService, eventBus); 

    appViewer.go(RootLayoutPanel.get()); 
} 

classe AppController a la logique pour logique de gestion de gestion et des événements de l'histoire. (de Google article -. Pour gérer la logique qui est pas spécifique à un présentateur et réside à la place à la couche d'application, nous allons introduire le composant AppController)

Par exemple, onClick d'un EastBtn dans le panneau central, j'ajouter un nouveau jeton d'historique, "east", et onValueChange() méthode est appelée. Le présentateur et vue respectif est créé, et dire Eastview EastPresenter:

  1. Comment puis-je mettre à jour les EastPanel existants avec le groupe nouvellement créé (comme je n'ai pas la poignée du vieux panneau)?
  2. Si l'utilisateur a la page après bookmarked le bouton clic et revisite la page avec lien marque-page, le flux atteindrait méthode onValueChange et créer Eastview et EastPanel. Mais, comment le reste de la page peut-il être recréé et EastPanel mis à jour?

Répondre

Questions connexes