MVP с GWTP: ведущий выходит из пропорции - PullRequest
0 голосов
/ 06 декабря 2011

У меня есть представление, которое содержит меню, оно позволяет просматривать 5 различных разделов в зависимости от того, где вы нажимаете.Когда вы нажимаете, вы не меняете страницу, вы скрываете другие разделы и показывает тот, который вы просили.Требуется, чтобы все происходило в одном и том же месте.

В представлении все просто и чисто, поскольку каждый раздел представляет собой отдельный класс и визуально они взаимоисключающие.Я получаю доступ к элементам управления каждого раздела, "получая" сам раздел

. В Presenter происходит беспорядок, мне приходится регистрировать обработчики в методе onBind () для всех 5 разделов этого единственного класса Presenter,и вся логика событий также идет туда, обработчики событий начинают конфликтовать с похожими именами.

Как мне сломать Presenter, как я поступаю с представлениями?

посмотреть пример

public interface MyView extends View { 

    public DeviceSettings getDeviceSection();       

    public Reports getReportsSection(); 

    public License getLicenseSection(); 

    public Support getSupportSection();

}

1 Ответ

1 голос
/ 06 декабря 2011

Вы можете создать PresenterWidgets / Views для каждого из ваших разделов, а затем добавить их в свой MainPresenter.
Вы добавляете обработчики в свое меню, а затем в зависимости от того, что нажимаете, просто добавляете / удаляете соответствующий PresenterWidget в свой слот контента.
Вы можете ознакомиться с примером вложенного докладчика .

...