Skip to content

Instantly share code, notes, and snippets.

λ joel-desktop GWTP → λ git master → mvn clean install
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] GWT-Platform
[INFO] GWTP Build Tools
[INFO] GWTP Core
[INFO] GWTP Clients common
[INFO] GWTP MVP shared
@Pacane
Pacane / ComputerHackedEvent
Last active August 29, 2015 14:21
ComputerHackedEvent
public class ComputerHackedEvent extends GwtEvent<ComputerHackedEvent.ComputerHackedHandler> {
public interface ComputerHackedHandler extends EventHandler {
void onSystemHacked(ComputerHackedEvent event);
}
public static final Type<ComputerHackedHandler> TYPE = new Type<>();
private final String hackerName;
public ComputerHackedEvent(String hackerName) {
@Pacane
Pacane / HackerView
Last active August 29, 2015 14:21
HackerView
public class HackerView extends ViewWithUiHandlers<HackerUiHandlers>
implements HackerPresenter.MyView {
interface Binder extends UiBinder<Widget, HackerView> {
}
@UiField
Button hackThePlanet;
@Inject
HackerView(Binder binder) {
@Pacane
Pacane / HackerPresenter
Last active August 29, 2015 14:21
HackerPresenter
public class HackerPresenter extends PresenterWidget<MyView>
implements HackerUiHandlers {
public interface MyView extends View, HasUiHandlers<HackerUiHandlers> {
}
private final String hackerName;
@Inject
HackerPresenter(
EventBus eventBus,
@Pacane
Pacane / ComputerPresenter
Last active August 29, 2015 14:21
ComputerPresenter
public class ComputerPresenter extends PresenterWidget<MyView>
implements ComputerHackedEvent.ComputerHackedHandler {
public interface MyView extends View {
void setComputerName(String computerName);
void displayStatus(String computerName, String hackerName);
}
private final String computerName;
@Pacane
Pacane / RootPresenter
Last active August 29, 2015 14:21
RootPresenter
public class RootPresenter extends Presenter<RootPresenter.MyView, RootPresenter.MyProxy> {
interface MyView extends View {
}
@ProxyStandard
@NameToken(NameTokens.home)
interface MyProxy extends ProxyPlace<RootPresenter> {
}
public static final Object SLOT_COMPUTERS = new Object();
@Pacane
Pacane / RootView
Last active August 29, 2015 14:21
RootView
public class RootView extends ViewImpl
implements RootPresenter.MyView {
interface Binder extends UiBinder<Widget, RootView> {
}
@UiField
HTMLPanel computers;
@UiField
HTMLPanel hackers;
@Pacane
Pacane / HasComputerHandlers
Last active August 29, 2015 14:21
HasComputerHandlers
import com.google.web.bindery.event.shared.HandlerRegistration;
public interface HasComputerHackedHandlers {
HandlerRegistration addComputerHackedHandler(ComputerHackedEvent.ComputerHackedHandler handler, Object source);
}
@Pacane
Pacane / HandlerImpl
Last active August 29, 2015 14:21
HandlerImpl
public HandlerRegistration addComputerHackedHandler(ComputerHackedEvent.ComputerHackedHandler handler, Object source) {
HandlerRegistration hr = getEventBus().addHandlerToSource(ComputerHackedEvent.TYPE, source, handler);
registerHandler(hr);
return hr;
}
@Pacane
Pacane / Differences
Last active August 29, 2015 14:21
Differences
// GWT
eventBus.addHandler(eventType, handler)
eventBus.addHandlerToSource(eventType, source, handler)
eventBus.fireEvent(event)
eventBus.fireEventFromSource(event, source)
// GWTP
presenterWidget.addHandler(eventType, handler) // deprecated
presenterWidget.addRegisteredHandler(eventType, handler)