3
3
import javax .swing .*;
4
4
import java .awt .*;
5
5
import java .awt .event .*;
6
- import java .util .*;
6
+
7
+ import javax .swing .event .ChangeEvent ;
8
+ import javax .swing .event .ChangeListener ;
7
9
8
10
public class Sorting extends Main {
9
11
// Object of the SortingAlgorithm, which includes the sorting algorithms
@@ -30,26 +32,26 @@ public class Sorting extends Main {
30
32
pPanel2 .setLayout (new BorderLayout ());
31
33
32
34
// Buttons
33
- jbtRandomize = new JButton ("Randomize" );//create button
34
- jbtMerge = new JButton ("Merge Sort" );//create button
35
- jbtBubble = new JButton ("Bubble Sort" );//create button
36
- jbtInsertion = new JButton ("Insertion Sort" );//create button
37
- jbtSelection = new JButton ("Selection Sort" );//create button
38
- jbtStart = new JButton ("Start" );//create button
35
+ jbtRandomize = new JButton ("Randomize" );
36
+ jbtMerge = new JButton ("Merge Sort" );
37
+ jbtBubble = new JButton ("Bubble Sort" );
38
+ jbtInsertion = new JButton ("Insertion Sort" );
39
+ jbtSelection = new JButton ("Selection Sort" );
40
+ jbtStart = new JButton ("Start" );
39
41
jbtStart .setBackground (Color .GRAY );
40
42
41
- // Progress bar
42
- // jb1 = new JProgressBar(0,100);
43
- // jb1.setValue(rand.nextInt(100));
44
- // jb1.setStringPainted(true);
43
+ // Slider
44
+ JSlider slider = new JSlider (0 , 100 , 0 );
45
+ slider .setPreferredSize (new Dimension (150 , 30 ));
45
46
46
47
// Adding elements to pPanel1
47
- pPanel1 .add (jbtRandomize ); pPanel1 . add ( jbtStart );
48
+ pPanel1 .add (jbtRandomize );
48
49
pPanel1 .add (jbtMerge ); pPanel1 .add (jbtSelection ); pPanel1 .add (jbtBubble ); pPanel1 .add (jbtInsertion );
50
+ // pPanel1.add(jbtStart);
51
+ pPanel1 .add (slider , BorderLayout .WEST );
49
52
50
53
// Adding elements to pPanel2
51
54
pPanel2 .add (sortAlgo , BorderLayout .CENTER );
52
- // pPanel2.add(jb1, BorderLayout.WEST);
53
55
54
56
// Register listener, event handling
55
57
ListenerClass listener = new ListenerClass ();
@@ -63,6 +65,13 @@ public class Sorting extends Main {
63
65
// Add Panels to the Main JFrame
64
66
add (pPanel1 , BorderLayout .NORTH );
65
67
add (pPanel2 , BorderLayout .CENTER );
68
+
69
+ // Slider settings
70
+ slider .addChangeListener (new ChangeListener () {
71
+ public void stateChanged (ChangeEvent event ) {
72
+ int value = slider .getValue ();
73
+ }
74
+ });
66
75
}
67
76
68
77
class ListenerClass implements ActionListener {
@@ -73,17 +82,16 @@ public void actionPerformed(ActionEvent e) {
73
82
sortAlgo .initShuffler ();
74
83
}
75
84
else if (e .getSource () == jbtMerge ) {
76
- System .out .println ("jbtMerge button clicked" );
85
+ sortAlgo .mergeSort (); // Bubble sort algotithm
86
+ sortAlgo .initShuffler (); // shuffling
77
87
}
78
88
else if (e .getSource () == jbtBubble ) {
79
89
sortAlgo .bubbleSort (); // Bubble sort algotithm
80
90
sortAlgo .initShuffler (); // shuffling
81
- System .out .println ("jbtBubble button clicked" );
82
91
}
83
92
else if (e .getSource () == jbtInsertion ) {
84
93
sortAlgo .insertionSort (); // Insertion algotithm
85
94
sortAlgo .initShuffler (); // shuffling
86
- System .out .println ("jbtInsertion button clicked" );
87
95
}
88
96
else if (e .getSource () == jbtSelection ) {
89
97
System .out .println ("jbtSelection button clicked" );
0 commit comments