I would recommend both of you take a look in
http://gwt-mvp-sample.googlecode.com
It's an implementation and sample application using the MVP pattern.
I'm working on a new version and I will publish it as soon as
possible.

Best regards,
Eduardo S. Nunes

On Mon, Aug 17, 2009 at 5:23 PM, Alen Vrecko<[email protected]> wrote:
>
> I am in a similar situation. Have some displays containing other
> displays. I am also using setters. But this is what I am experimenting
> with:
>
> I have a Document editing UI that takes a file browser ui (each
> document can have corresponding files) and a single file upload ui.
> This is how it looks like:
>
> // other presenters are injected
> DocumentEditor(Presenter) is ctor injected with
> +FileBrowserPresenter
> +SingleFileUploadPresenter
> +RpcService
> +EventBus
>
> // the presenter is injected with the presenter
> DocumentEditorWidget is ctor injected with
> +DocumentEditorPresenter
> +SingleFileUploadWidget // created via new
> +FileBrowserWidget // created via new
>
> that is right. I made the widget have a strong dependency on the
> presenter. I see the Presenter/View a wholesome unit. Where logic from
> the UI has been factored out in the presenter.
>
> This is different from what is presented at the slides
>
> PhoneEditWidget phoneEditWidget = new PhoneEditWidget();
> PhoneEditor phoneEditor = new PhoneEditor(phoneEditWidget,
>  rpcService);
>
> I am doing
>
> PhoneEditor phoneEditor = new PhoneEditor(phoneEditWidget,
>  rpcService);
> PhoneEditWidget phoneEditWidget = new PhoneEditWidget(phoneEditor);
>
> I can then do
>
> @Inject Provider<DocumentEditorWidget> documentEditors;
> panel.add(documentEditors.get());
>
> with no problems.
>
> the bindDisplay and display of DocumentEditor look like
>
> public static interface Display{
>   ...
>   FileBrowser.Display getFileBrowser();
>   SingleFileUpload.Display getUpload();
> }
>
> public void bindDisplay(Display display) {
>   ...
>   fileBrowserPresenter.bindDisplay(display.getFileBrowser());
>   uploadPresenter.bindDisplay(display.getUpload());
> }
>
> I can't really call this a best practice. Will see what the code will
> tell me after some more time. Am also interested in what other people
> are doing.
>
> Cheers
> Alen
> >
>



-- 
Eduardo S. Nunes
http://e-nunes.com.br

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-guice?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to