package org.kie.workbench.common.screens.explorer.client;
import javax.enterprise.event.Observes;
import javax.inject.Inject;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import org.guvnor.common.services.project.context.ProjectContextChangeEvent;
import org.gwtbootstrap3.client.ui.Button;
import org.gwtbootstrap3.client.ui.constants.ButtonSize;
import org.kie.workbench.common.screens.explorer.client.resources.i18n.ProjectExplorerConstants;
import org.uberfire.client.mvp.PlaceManager;
import org.uberfire.workbench.model.menu.impl.BaseMenuCustom;
public class ProjectScreenMenuItem
extends BaseMenuCustom {
private PlaceManager placeManager;
private Button view;
public ProjectScreenMenuItem() {
}
@Inject
public ProjectScreenMenuItem( final PlaceManager placeManager ) {
this.placeManager = placeManager;
}
public void onProjectContextChanged( @Observes final ProjectContextChangeEvent event ) {
this.setEnabled( (event.getProject() != null) );
}
@Override
public Object build() {
view = new Button();
view.setSize( ButtonSize.SMALL );
view.setText( ProjectExplorerConstants.INSTANCE.openProjectEditor() );
view.addClickHandler( new ClickHandler() {
@Override
public void onClick( ClickEvent event ) {
placeManager.goTo( "projectScreen" );
}
} );
return view;
}
@Override
public boolean isEnabled() {
return view.isEnabled();
}
}