alright, so i slowed down a bit and looked a little closer at things. I've managed to get a shared view with extended presenter working by doing this:
public class BaseAccountPresenter extends Presenter< BaseAccountPresenter.MyView, BaseAccountPresenter.MyProxy > implements BaseAccountUiHandlers
{
public interface MyView extends View, HasUiHandlers< BaseAccountUiHandlers >
{}
@ProxyStandard
@NameToken( BaseNameTokens.personal )
public interface MyProxy extends ProxyPlace< BaseAccountPresenter >
{}
@Inject
public BaseAccountPresenter( final EventBus eventBus, final MyView view, final MyProxy proxy )
...
}
public class AppAccountPresenter extends BaseAccountPresenter
{
@Inject public AppAccountPresenter( final EventBus eventBus, final AppAccountPresenter.MyView view, final AppAccountPresenter.MyProxy proxy )
{
super( eventBus, view, proxy );
}
}
public class AppModule extends AbstractPresenterModule
{
@Override
protected void configure()
{
bind( PlaceManager.class ).to( AppPlaceManager.class ).in( Singleton.class );
bindPresenter( BaseAccountPresenter.class, AppAccountPresenter.class, AppAccountPresenter.MyProxy.class ); bindSharedView( AppAccountPresenter.MyView.class, BaseAccountView.class ); }}Is that a valid configuration?
My question now is, what do i do if i want to extend BaseAccountView with AppAccountView? For example, i want to create a new AppAccountView that extends BaseAccountView but in AppAccountView add an additional data entry field.
It's unclear to me how to create the AppAccountView due to the Binder interface. The BaseAccountView is pretty simple but due to the UiHandlers there is some code in there i'd rather not have to copy/paste. Do i simply have no other option but to create AppAccountView w/o it extending BaseAccountView?