package org.osm2world.viewer.control.actions;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import org.osm2world.viewer.model.Data;
import org.osm2world.viewer.model.RenderOptions;
import org.osm2world.viewer.view.ViewerFrame;
public class ToggleBackfaceCullingAction extends AbstractAction {
private static final long serialVersionUID = 3993313015641228064L;
private final ViewerFrame viewerFrame;
private final Data data;
private final RenderOptions renderOptions;
public ToggleBackfaceCullingAction(ViewerFrame viewerFrame, Data data,
RenderOptions renderOptions) {
super("Backface culling");
putValue(SHORT_DESCRIPTION, "Switches backface culling on and off");
putValue(SELECTED_KEY, renderOptions.isBackfaceCulling());
this.viewerFrame = viewerFrame;
this.data = data;
this.renderOptions = renderOptions;
}
@Override
public void actionPerformed(ActionEvent e) {
renderOptions.setBackfaceCulling(!renderOptions.isBackfaceCulling());
putValue(SELECTED_KEY, renderOptions.isBackfaceCulling());
}
}