Java Code Examples for javax.swing.text.DefaultEditorKit#downAction()

The following examples show how to use javax.swing.text.DefaultEditorKit#downAction() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: EditorPaneTesting.java    From netbeans with Apache License 2.0 4 votes vote down vote up
/**
 * Move/select caret left/right/up/down by directions WEST/EAST/NORTH/SOUTH from SwingConstants.
 *
 * @param context
 * @param direction
 * @throws Exception
 */
public static void moveOrSelect(Context context, int direction, boolean select) throws Exception {
    JEditorPane pane = context.getInstance(JEditorPane.class);
    String actionName;
    String directionName;
    String debugDirection;
    switch (direction) {
        case SwingConstants.WEST:
            actionName = select ? DefaultEditorKit.selectionBackwardAction : DefaultEditorKit.backwardAction;
            directionName = "left";
            debugDirection = "SwingConstants.WEST";
            break;
        case SwingConstants.EAST:
            actionName = select ? DefaultEditorKit.selectionForwardAction : DefaultEditorKit.forwardAction;
            directionName = "right";
            debugDirection = "SwingConstants.EAST";
            break;
        case SwingConstants.NORTH:
            actionName = select ? DefaultEditorKit.selectionUpAction : DefaultEditorKit.upAction;
            directionName = "up";
            debugDirection = "SwingConstants.NORTH";
            break;
        case SwingConstants.SOUTH:
            actionName = select ? DefaultEditorKit.selectionDownAction : DefaultEditorKit.downAction;
            directionName = "down";
            debugDirection = "SwingConstants.SOUTH";
            break;
        default:
            throw new IllegalStateException("Invalid direction=" + direction); // NOI18N
    }
    StringBuilder sb = null;
    if (context.isLogOp()) {
        sb = context.logOpBuilder();
        sb.append(select ? "Selection" : "Cursor").append(' ').append(directionName).append("\n");
        debugCaret(sb, pane).append(" => ");
        sb.append("moveOrSelect(context, ").append(debugDirection).append(", ").append(select).append(")");
        sb.append(" => "); // Fill in after action gets performed
    }
    performAction(context, pane, actionName, null, false);
    if (context.isLogOp()) {
        debugCaret(sb, pane);
        context.logOp(sb);
    }
}