Gridarta Editor
InsertChar.java
Go to the documentation of this file.
1 /*
2  * InputHandler.java - Manages key bindings and executes actions
3  * Copyright (C) 1999 Slava Pestov
4  * Copyright (C) 2000-2023 The Gridarta Developers.
5  *
6  * You may use and modify this package for any purpose. Redistribution is
7  * permitted, in both source and binary form, provided that this notice
8  * remains intact in all source distributions of this package.
9  */
10 
11 package net.sf.gridarta.textedit.textarea.actions;
12 
13 import java.awt.event.ActionEvent;
14 import java.awt.event.ActionListener;
18 
19 public class InsertChar implements ActionListener, NonRepeatable {
20 
21  @Override
22  public void actionPerformed(final ActionEvent e) {
23  final JEditTextArea textArea = InputHandler.getTextArea(e);
24  final String str = e.getActionCommand();
25  final int repeatCount = textArea.getInputHandler().getRepeatCount();
26 
27  if (textArea.isEditable()) {
28  final StringBuilder buf = new StringBuilder();
29  for (int i = 0; i < repeatCount; i++) {
30  buf.append(str);
31  }
32  textArea.overwriteSetSelectedText(buf.toString());
33  } else {
34  textArea.getToolkit().beep();
35  }
36  }
37 
38 }
net.sf.gridarta.textedit.textarea
net.sf.gridarta
net.sf.gridarta.textedit.textarea.InputHandler.getTextArea
static JEditTextArea getTextArea(final EventObject evt)
Definition: InputHandler.java:144
net.sf.gridarta.textedit.textarea.JEditTextArea.overwriteSetSelectedText
void overwriteSetSelectedText(@NotNull final String str)
Definition: JEditTextArea.java:758
net.sf
net.sf.gridarta.textedit.textarea.JEditTextArea
Definition: JEditTextArea.java:91
net.sf.gridarta.textedit.textarea.InputHandler.getRepeatCount
int getRepeatCount()
Definition: InputHandler.java:83
net.sf.gridarta.textedit
net.sf.gridarta.textedit.textarea.actions.InsertChar
Definition: InsertChar.java:19
net
net.sf.gridarta.textedit.textarea.JEditTextArea.isEditable
boolean isEditable()
Definition: JEditTextArea.java:730
net.sf.gridarta.textedit.textarea.InputHandler.NonRepeatable
Definition: InputHandler.java:200
net.sf.gridarta.textedit.textarea.InputHandler
Definition: InputHandler.java:36
net.sf.gridarta.textedit.textarea.JEditTextArea.getInputHandler
InputHandler getInputHandler()
Definition: JEditTextArea.java:264
net.sf.gridarta.textedit.textarea.actions.InsertChar.actionPerformed
void actionPerformed(final ActionEvent e)
Definition: InsertChar.java:22