2011-10-28 10 views
2

複雑なビューでmvpを使用することに関して質問があります。 と仮定、我々は次のように定型デザイン(ListWidget)と、いくつかのウィジェットを持っている:
GWTのMVP。複雑なビュー

コントロールボタンは、これは、(ここでは、我々は特定のエントリを編集することができContentPanel(データと普通のCellTable)とDetailsPanelの切り替えのための機能を提供しますないモーダルダイアログ)

DetailsPanel、順番に、持っている。この構造

ボタン1は、ボタン2は、ボタン3のみDetailsPanelに対処する必要があり、その内容はTOTTする必要がありますので、ActionPanel(ActionPanelウィザードのいくつかの種類を変更しますButton1、Button2、またはButton3をクリックした後に変更されます)、Buttons SaveとCancelは、ListWidgetに戻る必要があります。

  1. 上記の機能を実装するためにはどのようなアプローチをとるべきですか?
  2. 2つの異なるActivityManagersをマスターコンテキストで使用する必要がありますか?
  3. ListWidgetの依存パネルへのメッセージを管理してブロードキャストする方法は? (ビューにハンドラを配置し、いくつかのアクションでイベントを内部のeventBusにプッシュすることはできますか? たとえば、DetailsPanelにアイテムを保存すると、PreviewPanelが変更され、このアイテムはCellTableにフォーカスされるはずです)など
  4. 2つの異なるActivityManagersでパターンを使用する必要があります。

ありがとう、誰かが私を助けてくれることを願っています。

+0

https://groups.google.com/group/google-web-toolkit/browse_thread/thread/2812e1b15a2a98a6?hl=de 多分それはあなたがあなた自身の質問に答えるしたい場合は、お気軽にしてください誰か – Denis

+0

を助けますそうする!しかし、少なくとも、リンクされたテキストのポイントを説明してください(リンクが途切れると、コンテキストが提供されていなければ答えもあります)。 –

答えて

1

私はあなたの質問に答えていますが、まず簡単な説明をしてから、あなたの質問をしっかりと説明します。フレームワークレベルで

、あなたはValueChangeHandlerを実装するクラスを持つことができ、コントローラは、あなたがHistory.newItem("NameOfAction")と歴史に置く値の変更ハンドラ

どれnewItemがValueChangeHandlerいるの実装を呼び出します実装されたと仮定しHistory.addValueChangeHandler(controller);を使用して歴史上のことを設定しますこの場合には、あなたが

String token = event.getValue(); 
if (token.equals("NameOfAction")) { 
    Call Appropriate presenter 
} 

今度は、FRAMの第二部の話を聞かせすることができますValueChangeHandlerの実装内で今controller だろうework、プレゼンター、およびビューの実装。私はRootPanelがすべてのUIウィジェットのコンテナであると仮定しています。あなたは、プレゼンターがデータを取得し、私はビューを作成し、発表者へ渡していますお知らせアクションごとに個別のプレゼンター

presenter = new ActionPresenter(rpc, eventbus, new ActionView())

を作成し、データとビューを構築することができます。あなたは後でコンテナをプレゼンターに渡して、UIにすべてを表示することができます。

今すぐあなたの具体的な質問について

  1. MVPここにあなたの最善の策だろうMVP here上の記事は
  2. かなり良いです、私はあなたのコンテナ限り2つのアクティビティマネージャを使用する理由が表示されませんそれらのウィジェットは同じです
  3. イベントバスが理想的でしょう。私はあなたが

たマネージャーに入れたい正確に何の詳細が必要になりますが、イベントにデータを渡すために持っている場合は、メインクラスの静的フィールドのようなセッション変数は、サーバあなたの目的
  • だろう、この情報がお役に立てば幸い!

  • 関連する問題