Criando um editor de texto

Eai galera é o seguinte. Queria fazer um editor de texto mas bem rustico mesmo. Na verdade não sei se chamaria de editor hehehe. Eu coloquei um JTextArea e três JButton, um pra copiar, um pra colar, e outro pra recortar. Eles são meio inutil eu percebi isso por que o JTextArea aceita copiar como crtl+c recortar com crtl+x e colar com crtl+v… Mas eu queria é me acostumar com eventos de JButton. Então, não to conseguindo acerta o evento do botão colar. O código tá assim:

if(event.getSource()==colar){
				if(texto==null){
				}
				else{
					if(formulario.getSelectedText()==null){
						text = formulario.getText();
						formulario.setText(text+texto);
					}
					else {
						formulario.cut();
						text = formulario.getText();
						formulario.setText(text+texto);
					}
				}
			}

Acho que fiz o pior caminho… e desse jeito tem falhas por exemplo se eu recorto alguma palavra que está no começo do JTextArea, quando vou colar ele cola no final e não na onde o meu cursor está posicionado. Que métodos eu uso pra que ele funcione corretamente?