package scoutmgr.client.event;

import com.google.gwt.event.shared.EventHandler;
import com.google.gwt.event.shared.GwtEvent;
import javax.annotation.Nonnull;
import scoutmgr.client.view.model.ScoutViewModel;

public class ScoutClickEvent
  extends GwtEvent<ScoutClickEvent.Handler>
{
  public interface Handler
    extends EventHandler
  {
    void onScoutClicked( @Nonnull ScoutClickEvent event );
  }

  public static final GwtEvent.Type<Handler> TYPE = new GwtEvent.Type<>();
  private ScoutViewModel _scoutViewModel;

  public ScoutClickEvent( @Nonnull final ScoutViewModel scoutViewModel )
  {
    _scoutViewModel = scoutViewModel;
  }

  @Nonnull
  public ScoutViewModel getScoutViewModel()
  {
    return _scoutViewModel;
  }

  @Override
  public GwtEvent.Type<Handler> getAssociatedType()
  {
    return TYPE;
  }

  @Override
  protected void dispatch( final Handler handler )
  {
    handler.onScoutClicked( this );
  }

  public String toDebugString()
  {
    return toString();
  }

  public String toString()
  {
    return "Scout Clicked[" + "Event=" + _scoutViewModel.getDisplayString() + "]";
  }
}

@@ -119,16 +119,72 @@
 tEvent;%0A
+import com.google.gwt.event.shared.HandlerRegistration;%0A
 import j
@@ -334,16 +334,293 @@
 dler%3E%0A%7B%0A
+  public static void fire( final com.google.gwt.event.shared.HasHandlers source, final ScoutViewModel model )%0A  %7B%0A    source.fireEvent( new ScoutClickEvent( model ) );%0A  %7D%0A%0A  public interface HasHandlers%0A  %7B%0A    HandlerRegistration addScoutClickEventHandler( Handler h );%0A  %7D%0A%0A
   public
@@ -1385,20 +1385,20 @@
 ed%5B%22 + %22
-Even
+Scou
 t=%22 + _s

Enhance ScoutClickEvent as per suggestions on GWPT page