0

GWT 2.4とMVPを使用して、ページに到達した方法に応じて、上部がデータセットの読み取り専用プレゼンターまたはそのデータのエディター間で交換できるプレゼンターがあります。

GWTPを使用せずに、これら2つのプレゼンターと基礎となるビューをどのように交換できますか?

現在、クラスは次のようになっています。

public class MainPagePresenter implements Presenter, MainPageView.Presenter, ParentPresenter {

    private MainPageViewview;
    private final ClientFactory clientFactory;
    private StaticDataPresenter staticPresenter;
    private SomeOtherPresenter otherPresenter;


}

StaticDataPresenterを、StaticDataPresenterまたは編集可能なDynamicDataPresenterのいずれかを保持できる構造にしたいと思います。

ご入力いただきありがとうございます。

4

3 に答える 3

1
public interface DataPresenter {
  void handleEdit();
}

public class StaticDataPresenter implements DataPresenter {
  @Override
  public void handleEdit() {
    // Do nothing.
  }
}

public class DynamicDataPresenter implements DataPresenter {
  @Override
  public void handleEdit() {
    // Do something.
  }
}

public class MainPagePresenter implements Presenter, MainPageView.Presenter, ParentPresenter {

  private MainPageView view;
  private final ClientFactory clientFactory;
  private DataPresenter dataPresenter;
  private SomeOtherPresenter otherPresenter;

  ...

  public void switchDataPresenter(DataPresenter dataPresenter) {
    this.dataPresenter = dataPresenter;
    DataPresenterView dataPresenterView = view.dataPresenterView();
    dataPresenterView.setPresenter(dataPresenter);
  }    
}
于 2012-04-21T15:16:16.633 に答える
1

MainPageViewには、StaticDataPresenterのビューとSomeOtherPresenterのビューの両方を含むDeckPanelを含めることができます。

MainPagePresenterは、必要に応じて表示内容を切り替えるようにMainPageViewに指示できます。

于 2012-04-21T16:44:15.823 に答える
0

最終的には、両方のエディターをページに配置してから、プレゼンターの表示のオンとオフを切り替えました。

あなたの提案をありがとう。彼らが助けました。

于 2012-05-18T14:45:17.723 に答える