MainMenu.java
2.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
package cryptor;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.security.GeneralSecurityException;
import java.text.SimpleDateFormat;
import java.util.Date;
class MainMenu extends Frame {
Button bRegister;
Button bOpen;
Button bViewLog;
Button bDelete;
MainMenu(String title, String ID, String PW){
//Frame(String title)을 호출한다.
super(title);
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
String folderDir = ".\\" + ID + "\\Decrypted";
File folder = new File(folderDir);
deleteDirectory(folder, ID, PW);
dispose();
System.exit(0);
}
});
bRegister = new Button("Register Files");
bOpen = new Button("Open Encrypted Files");
bViewLog = new Button("View Logs");
bDelete = new Button("Delete Encrypted Files");
//OK버튼과 TextField에 이벤트처리를 위한 Listener를 추가해준다.
bRegister.addActionListener(e -> {
EncryptWindow f = new EncryptWindow(title, ID, PW);
});
bOpen.addActionListener(e -> {
DecryptWindow f = new DecryptWindow(title, ID, PW);
});
bViewLog.addActionListener(e -> {
LogWindow f = new LogWindow(title, ID, PW);
});
bDelete.addActionListener(e -> {
DeleteEncypted f = new DeleteEncypted(title, ID, PW);
});
//LayoutManager를 FlowLayout으로
setLayout(new GridLayout(4,1));
//생성한 component들을 Frame에 포함시킨다.
add(bRegister);
add(bOpen);
add(bViewLog);
add(bDelete);
setSize(450,400);
this.setLocationRelativeTo(null);
//화면이 보이게 한다.
setVisible(true);
}
public static void main(String args[]){
MainMenu f = new MainMenu("Main", "user1", "12345678");
}
public static boolean deleteDirectory(File path, String userId, String userPW) {
if(!path.exists()) {
return false;
}
File[] files = path.listFiles();
for (File file : files) {
if (file.isDirectory()) {
deleteDirectory(file, userId, userPW);
} else {
file.delete();
}
}
return path.delete();
}
}