
org.jrebirth.af.sample.ui.SampleController Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sample Show documentation
Show all versions of sample Show documentation
Built with JRebirth Framework
package org.jrebirth.af.sample.ui;
import javafx.scene.input.MouseEvent;
import org.jrebirth.af.api.exception.CoreException;
import org.jrebirth.af.core.ui.AbstractController;
import org.jrebirth.af.core.ui.adapter.DefaultMouseAdapter;
import org.jrebirth.af.core.wave.Builders;
import org.jrebirth.af.sample.command.SampleCommand;
import org.jrebirth.af.sample.command.SamplePoolCommand;
import org.jrebirth.af.sample.command.SampleUICommand;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* The class SampleController.
*
* @author
*/
public final class SampleController extends AbstractController {
/** The class logger. */
private static final Logger LOGGER = LoggerFactory.getLogger(SampleController.class);
/**
* Default Constructor.
*
* @param view the view to control
*
* @throws CoreException if an error occurred while creating event handlers
*/
public SampleController(final SampleView view) throws CoreException {
super(view);
}
/**
* {@inheritDoc}
*/
@Override
protected void initEventAdapters() throws CoreException {
// Manage Ui Command Button
linkCommand(getView().getUiCommand(), MouseEvent.MOUSE_CLICKED, SampleUICommand.class);
// Use the inner class
addAdapter(new SampleMouseAdapter());
}
/**
* {@inheritDoc}
*/
@Override
protected void initEventHandlers() throws CoreException {
// Listen events
// Manage Pooled Command Button
getView().getPooledCommand().setOnMouseClicked(getHandler(MouseEvent.MOUSE_CLICKED));
}
/**
* Manage Mouse click of widget that have annotation.
*
* @param event the mouse event
*/
void onMouseClicked(final MouseEvent event) {
LOGGER.debug("MouseClicked => Call Sample Command");
// Manage Default Command Button
getModel().getCommand(SampleCommand.class).run();
}
/**
* The class SampleMouseAdapter.
*/
private class SampleMouseAdapter extends DefaultMouseAdapter {
@Override
public void mouseClicked(final MouseEvent mouseEvent) {
super.mouseClicked(mouseEvent);
LOGGER.debug("MouseClicked => Call Sample Pool Command");
getModel().sendWave(Builders.callCommand(SamplePoolCommand.class));
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy