Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Myra WebTools - CodeEditor.java

CodeEditor.java

Caricato da: Ht-never
Scarica il programma completo

  1. import java.awt.event.ActionEvent;
  2. import java.awt.event.ActionListener;
  3. import java.awt.event.KeyEvent;
  4. import java.awt.event.KeyListener;
  5. import javax.swing.*;
  6. import javax.swing.text.StyledEditorKit;
  7. @SuppressWarnings({"serial","unused"})
  8. public class CodeEditor extends JPanel implements ActionListener {
  9.         JButton salva = new JButton("Save Code");
  10.         JEditorPane field = new JEditorPane();
  11.         public CodeEditor() {
  12.                 setLayout(null);
  13.                 setLayoutDisposement();
  14.                 add(field);add(salva);
  15.                 salva.addActionListener(this);
  16.         field.addKeyListener(new CodeKeyListener());
  17.                 ClipboardPopupMenu pop = ClipboardPopupMenu.install(field);
  18.                 pop = ClipboardPopupMenu.parsePopupMenu(pop);
  19.         }
  20.         public void setLayoutDisposement() {
  21.                 field.setEditorKit(new StyledEditorKit());
  22.                 field.setBounds(20,30,650,440);
  23.                 salva.setBounds(20,475,650,40);
  24.         }
  25.         public void actionPerformed(ActionEvent e) {
  26.                 SaveFileWindow save;
  27.                 save = new SaveFileWindow(field.getText(),true);
  28.         }
  29.         public class CodeKeyListener implements KeyListener {
  30.                 int level = 0;
  31.                 public void keyPressed(KeyEvent k) {
  32.                 }
  33.                 public void keyReleased(KeyEvent k) {
  34.                 }
  35.                 public void keyTyped(KeyEvent k) {
  36.                         if(k.getKeyChar()=='{')
  37.                                 level=level+2;
  38.                         if(k.getKeyChar()=='}')
  39.                                 level=level-2;
  40.                         if(k.getKeyChar()=='\n') {
  41.                                 if(level>0) {
  42.                                         int temp = level;
  43.                                         String space = "";
  44.                                         while(level >= 0) {
  45.                                                 space = space + " ";
  46.                                                 level--;
  47.                                         }
  48.                                         level = temp;
  49.                                         field.setText(field.getText()+space);
  50.                                 }
  51.                         }
  52.                 }
  53.         }
  54. }