/*
Copyright 2011-2016 Google Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package com.google.security.zynamics.zylib.gui.zygraph.editmode;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBackgroundClickedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBackgroundClickedRightAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBackgroundDraggedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBackgroundDraggedRightAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBackgroundPressedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBackgroundPressedRightAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBendClickedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBendEnterAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBendExitAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBendHoverAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultBendPressedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultEdgeClickedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultEdgeClickedRightAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultEdgeHoverAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultEdgeLabelHoverAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultEdgePressedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultEdgePressedRightAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodeClickedMiddleAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodeEditAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodeEditEnterAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodeEditExitAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodeHoverAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodePressedLeftAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodePressedMiddleAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.actions.CDefaultNodePressedRightAction;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.states.CBackgroundClickedLeftState;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.states.CBackgroundClickedRightState;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.states.CBackgroundDraggedLeftState;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.states.CBackgroundDraggedRightState;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.states.CBackgroundPressedLeftState;
import com.google.security.zynamics.zylib.gui.zygraph.editmode.states.CBackgroundPressedRightState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.edges.ZyGraphEdge;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultEdgeEnterAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultEdgeExitAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultEdgeLabelEnterAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultEdgeLabelExitAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultNodeClickedLeftAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultNodeClickedRightAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultNodeDraggedLeftAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultNodeEnterAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.actions.CDefaultNodeExitAction;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CBendClickedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CBendEnterState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CBendExitState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CBendHoverState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CBendPressedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeClickedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeClickedRightState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeEnterState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeExitState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeHoverState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeLabelEnterState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeLabelExitState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgeLabelHoverState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgePressedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CEdgePressedRightState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeClickedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeClickedMiddleState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeClickedRightState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeDraggedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeEditEnterState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeEditExitState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeEditState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeEnterState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeExitState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodeHoverState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodePressedLeftState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodePressedMiddleState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.editmode.states.CNodePressedRightState;
import com.google.security.zynamics.zylib.yfileswrap.gui.zygraph.nodes.ZyGraphNode;
/**
* This class provides the default action handlers that are executed when mouse state changes are
* executed.
*/
public class CDefaultActionFactory<NodeType extends ZyGraphNode<?>, EdgeType extends ZyGraphEdge<?, ?, ?>>
implements IStateActionFactory<NodeType, EdgeType> {
@Override
public IStateAction<CBackgroundClickedLeftState<NodeType>> createBackgroundClickedLeftAction() {
return new CDefaultBackgroundClickedLeftAction<NodeType>();
}
@Override
public IStateAction<CBackgroundClickedRightState<NodeType>> createBackgroundClickedRightAction() {
return new CDefaultBackgroundClickedRightAction<NodeType>();
}
@Override
public IStateAction<CBackgroundDraggedLeftState> createBackgroundDraggedLeftAction() {
return new CDefaultBackgroundDraggedLeftAction();
}
@Override
public IStateAction<CBackgroundDraggedRightState> createBackgroundDraggedRightAction() {
return new CDefaultBackgroundDraggedRightAction();
}
@Override
public IStateAction<CBackgroundPressedLeftState> createBackgroundPressedLeftAction() {
return new CDefaultBackgroundPressedLeftAction();
}
@Override
public IStateAction<CBackgroundPressedRightState> createBackgroundPressedRightAction() {
return new CDefaultBackgroundPressedRightAction();
}
@Override
public IStateAction<CBendClickedLeftState> createBendClickedLeftAction() {
return new CDefaultBendClickedLeftAction();
}
@Override
public IStateAction<CBendEnterState> createBendEnterAction() {
return new CDefaultBendEnterAction();
}
@Override
public IStateAction<CBendExitState> createBendExitAction() {
return new CDefaultBendExitAction();
}
@Override
public IStateAction<CBendHoverState> createBendHoverAction() {
return new CDefaultBendHoverAction();
}
@Override
public IStateAction<CBendPressedLeftState> createBendPressedLeftAction() {
return new CDefaultBendPressedLeftAction();
}
@Override
public IStateAction<CEdgeClickedLeftState> createEdgeClickedLeftAction() {
return new CDefaultEdgeClickedLeftAction();
}
@Override
public IStateAction<CEdgeClickedRightState<NodeType, EdgeType>> createEdgeClickedRightAction() {
return new CDefaultEdgeClickedRightAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CEdgeEnterState> createEdgeEnterAction() {
return new CDefaultEdgeEnterAction();
}
@Override
public IStateAction<CEdgeExitState> createEdgeExitAction() {
return new CDefaultEdgeExitAction();
}
@Override
public IStateAction<CEdgeHoverState> createEdgeHoverAction() {
return new CDefaultEdgeHoverAction();
}
@Override
public IStateAction<CEdgeLabelEnterState<NodeType, EdgeType>> createEdgeLabelEnterAction() {
return new CDefaultEdgeLabelEnterAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CEdgeLabelExitState<NodeType, EdgeType>> createEdgeLabelExitAction() {
return new CDefaultEdgeLabelExitAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CEdgeLabelHoverState> createEdgeLabelHoverAction() {
return new CDefaultEdgeLabelHoverAction();
}
@Override
public IStateAction<CEdgePressedLeftState> createEdgePressedLeftAction() {
return new CDefaultEdgePressedLeftAction();
}
@Override
public IStateAction<CEdgePressedRightState> createEdgePressedRightAction() {
return new CDefaultEdgePressedRightAction();
}
@Override
public IStateAction<CNodeClickedLeftState<NodeType, EdgeType>> createNodeClickedLeftAction() {
return new CDefaultNodeClickedLeftAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodeClickedMiddleState> createNodeClickedMiddleAction() {
return new CDefaultNodeClickedMiddleAction();
}
@Override
public IStateAction<CNodeClickedRightState<NodeType, EdgeType>> createNodeClickedRightAction() {
return new CDefaultNodeClickedRightAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodeDraggedLeftState<NodeType, EdgeType>> createNodeDraggedLeftAction() {
return new CDefaultNodeDraggedLeftAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodeEditState> createNodeEditAction() {
return new CDefaultNodeEditAction();
}
@Override
public IStateAction<CNodeEditEnterState> createNodeEditEnterAction() {
return new CDefaultNodeEditEnterAction();
}
@Override
public IStateAction<CNodeEditExitState> createNodeEditExitAction() {
return new CDefaultNodeEditExitAction();
}
@Override
public IStateAction<CNodeEnterState<NodeType, EdgeType>> createNodeEnterAction() {
return new CDefaultNodeEnterAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodeExitState<NodeType, EdgeType>> createNodeExitAction() {
return new CDefaultNodeExitAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodeHoverState<NodeType, EdgeType>> createNodeHoverAction() {
return new CDefaultNodeHoverAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodePressedLeftState<NodeType, EdgeType>> createNodePressedLeftAction() {
return new CDefaultNodePressedLeftAction<NodeType, EdgeType>();
}
@Override
public IStateAction<CNodePressedMiddleState> createNodePressedMiddleAction() {
return new CDefaultNodePressedMiddleAction();
}
@Override
public IStateAction<CNodePressedRightState> createNodePressedRightAction() {
return new CDefaultNodePressedRightAction();
}
}