Skip to content

Commit 8fcb63b

Browse files
committed
Implemented some basic code syntax highlighting thing
1 parent 6cbbb85 commit 8fcb63b

2 files changed

Lines changed: 49 additions & 6 deletions

File tree

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,42 @@
11
package de.littlerolf.sav.gui;
22

3+
import java.awt.BorderLayout;
4+
5+
import javax.swing.JEditorPane;
36
import javax.swing.JFrame;
7+
import javax.swing.JMenu;
8+
import javax.swing.JMenuBar;
9+
import javax.swing.JMenuItem;
10+
import javax.swing.JScrollPane;
411

512
public class CodeEditorFrame extends JFrame {
613

714
/**
815
*
916
*/
1017
private static final long serialVersionUID = 738669143009851723L;
18+
private JEditorPane codeEditor = new JEditorPane();
19+
20+
public CodeEditorFrame() {
21+
setTitle("Code Editor");
22+
getContentPane().setLayout(new BorderLayout());
23+
24+
JScrollPane scrPane = new JScrollPane(codeEditor);
25+
getContentPane().add(scrPane, BorderLayout.CENTER);
26+
getContentPane().doLayout();
27+
codeEditor.setContentType("text/java");
28+
codeEditor.setText("public static void main(String[] args) {\n}");
29+
30+
setSize(800, 600);
31+
32+
JMenuBar menuBar = new JMenuBar();
33+
setJMenuBar(menuBar);
34+
35+
JMenu mnDatei = new JMenu("Datei");
36+
menuBar.add(mnDatei);
37+
38+
JMenuItem mntmSpeichern = new JMenuItem("Speichern");
39+
mnDatei.add(mntmSpeichern);
1140

41+
}
1242
}

src/de/littlerolf/sav/gui/SAVFrame.java

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,14 @@
1212
import javax.swing.UIManager;
1313
import javax.swing.UnsupportedLookAndFeelException;
1414

15+
import jsyntaxpane.DefaultSyntaxKit;
16+
1517
public class SAVFrame extends JFrame {
1618
public SAVFrame() {
1719
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
1820
setResizable(false);
1921
setTitle("SortAlgorithmVisualizer");
20-
setSize(800, 400);
22+
setSize(906, 400);
2123
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
2224
this.setLocation(dim.width / 2 - this.getSize().width / 2, dim.height
2325
/ 2 - this.getSize().height / 2);
@@ -32,23 +34,23 @@ public SAVFrame() {
3234
getContentPane().add(btnAbspielen);
3335

3436
JComboBox comboBox = new JComboBox();
35-
comboBox.setBounds(596, 333, 178, 20);
37+
comboBox.setBounds(596, 333, 294, 20);
3638
getContentPane().add(comboBox);
3739

3840
JSlider slider = new JSlider();
3941
slider.setBounds(430, 332, 156, 23);
4042
getContentPane().add(slider);
4143

4244
JLabel lblGeschwindigkeit = new JLabel("Geschwindigkeit:");
43-
lblGeschwindigkeit.setBounds(430, 294, 89, 14);
45+
lblGeschwindigkeit.setBounds(430, 307, 89, 14);
4446
getContentPane().add(lblGeschwindigkeit);
4547

4648
JLabel lblImplementation = new JLabel("Implementation:");
47-
lblImplementation.setBounds(596, 294, 89, 14);
49+
lblImplementation.setBounds(596, 307, 89, 14);
4850
getContentPane().add(lblImplementation);
4951

5052
JLabel lblKontrolle = new JLabel("Kontrolle:");
51-
lblKontrolle.setBounds(10, 294, 89, 14);
53+
lblKontrolle.setBounds(10, 307, 89, 14);
5254
getContentPane().add(lblKontrolle);
5355

5456
JLabel lblSchritte = new JLabel("Schritte:");
@@ -80,14 +82,24 @@ public SAVFrame() {
8082
getContentPane().add(lblSpeed);
8183

8284
JScrollPane scrollPane = new JScrollPane();
83-
scrollPane.setBounds(10, 11, 774, 272);
85+
scrollPane.setBounds(10, 11, 880, 272);
8486
getContentPane().add(scrollPane);
8587

8688
SAVHistoryComponent historyComponent = new SAVHistoryComponent();
8789
scrollPane.setViewportView(historyComponent);
90+
91+
JButton btnNew = new JButton("Neu...");
92+
btnNew.setBounds(710, 303, 75, 23);
93+
getContentPane().add(btnNew);
94+
95+
JButton btnEdit = new JButton("Bearbeiten...");
96+
btnEdit.setBounds(787, 303, 103, 23);
97+
getContentPane().add(btnEdit);
8898
}
8999

90100
public static void main(String[] args) {
101+
DefaultSyntaxKit.initKit();
102+
91103
try {
92104
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
93105
} catch (UnsupportedLookAndFeelException e) {
@@ -96,6 +108,7 @@ public static void main(String[] args) {
96108
} catch (IllegalAccessException e) {
97109
}
98110
new SAVFrame().setVisible(true);
111+
new CodeEditorFrame().setVisible(true);
99112
}
100113

101114
/**

0 commit comments

Comments
 (0)