viewImplImports = new ImportManager();
viewImplMethods = new StringBuffer();
if (isCodeSplit()){
// We add the async method required by the presenter to get the view
MethodWithArgs method = new MethodWithArgs("void async" + getViewName() + "Ready(" + getViewName() + " v) Called when the asynchronously created view is ready");
addPresenterMethod(method);
addPresenterImport(getExtendedClassImport());
}
if (getUsesRunContextItemHasValue()){
viewImplImports.addImport("org.dmd.mvw.client.mvw.generated.mvw.MvwRunContextIF", "Using run context items");
for(RunContextItem rci: getUsesRunContextItemIterable()){
rci.addUsageImplImports(viewImplImports);
}
}
// Explicit event handling
if (getLocalHasValue()){
for(Event event: getLocalIterable()){
event.firedLocally(this);
viewImplMethods.append(event.getViewLocalMethod());
presenterInterface.append(" public void on" + event.getEventName() + event.getArgVector() + ";\n\n");
for(String imp: event.getImportThisIterable()){
viewImports.addImport(imp, "Required by " + event.getEventName());
viewImplImports.addImport(imp, "Required by " + event.getEventName());
}
}
}
if (isWidget()){
viewImplImports.addImport("com.google.gwt.user.client.ui.IsWidget", "Implements IsWidget");
}
if (getBroadcastHasValue()){
for(Event event: getBroadcastIterable()){
event.firedBy(this);
viewImplMethods.append(event.getViewBroadcastMethod());
event.addImport(viewImplImports);
presenterInterface.append(" public void on" + event.getEventName() + event.getArgVector() + ";\n\n");
for(String imp: event.getImportThisIterable()){
viewImports.addImport(imp, "Required by " + event.getEventName());
event.addImport(viewImplImports);
}
}
}
if (getBroadcastOnlyHasValue()){
for(Event event: getBroadcastOnlyIterable()){
event.firedBy(this);
viewImplMethods.append(event.getViewBroadcastOnlyMethod());
event.addImport(viewImplImports);
// for(String imp: event.getImportThisIterable()){
// viewImports.addImport(imp, "Required by " + event.getEventName());
// }
}
}
if (getViewImportHasValue()){
for(String imp: getViewImportIterable()){
viewImports.addImport(imp, "View import");
// viewImplImports.addImport(imp, "View import");
}
}
if (getPresenterMethodHasValue()){
for(MethodWithArgs method: getPresenterMethodIterable()){
if (method.getComment().length() > 0){
presenterInterface.append(" /** \n");
presenterInterface.append(" * " + method.getComment() + "\n");
presenterInterface.append(" */ \n");
}
presenterInterface.append(" " + method.getSignature() + ";\n\n");
}
}
if (getPresenterImportHasValue()){
for(String imp: getPresenterImportIterable()){
viewImports.addImport(imp, "View import");
}
}
if (getSharedImportHasValue()){
for(String imp: getSharedImportIterable()){
viewImports.addImport(imp, "Shared import");
viewImplImports.addImport(imp, "Shared import");
}
}
// if (getUsesRunContextItemHasValue()){
// for(RunContextItem rci: getUsesRunContextItemIterable()){
//
// }
// }
if (getViewMethodHasValue()){
for(MethodWithArgs method: getViewMethodIterable()){
if (method.getComment().length() > 0){
viewInterface.append(" /** \n");
viewInterface.append(" * " + method.getComment() + "\n");
viewInterface.append(" */ \n");
}
viewInterface.append(" public " + method.getSignature() + ";\n\n");
}
}
}