update to v1.2.0 一些细节优化

This commit is contained in:
kohgylw 2023-12-24 12:10:28 +08:00
parent e0cc5a5440
commit 6c98aa6511
22 changed files with 37 additions and 60 deletions

View File

@ -211,5 +211,4 @@ test.auth.xxx=ucd
注:这是为了防止使用者先将某个文件从一个原本不具备删除权限的文件夹内移动的一个具备删除权限的文件夹内再将其删除的恶意操作。
【已完成】新增文件夹体积计算功能:当访问者打开文件夹的“详细信息...”模态框时,系统将实时统计该文件夹的内容总体积,之后将结果显示在该界面上供用户查看。
【待实现】新增导入账户设置:当执行“导入”操作时,可以使用指定账户来为它们设置“创建者”。
【待实现】优化剪切复制操作:如果执行粘贴时已剪切或复制的文件不再存在,那么在提示后自动清除剪切或复制的文件记录,将剪切或复制显示恢复到初始状态。
【待实现】优化服务器端UI如果开启了https协议则将端口号显示为https的端口号。
【待实现】优化剪切复制操作:如果执行粘贴时已剪切或复制的文件不再存在,那么在提示后自动清除剪切或复制的文件记录,将剪切或复制显示恢复到初始状态。

View File

@ -28,7 +28,7 @@ import kohgylw.kiftd.ui.callback.*;
public class UIRunner {
private static UIRunner ui;
// 实例化图形界面并显示它同时将图形界面的各个操作与服务器控制器对应起来
private UIRunner() throws Exception {
Printer.init(true);
@ -41,7 +41,6 @@ public class UIRunner {
@Override
public boolean getServerStatus() {
// TODO 自动生成的方法存根
return ctl.started();
}
@ -93,7 +92,6 @@ public class UIRunner {
return fsps;
}
@Override
public LogLevel getInitLogLevel() {
return ConfigureReader.instance().getInitLogLevel();
@ -154,7 +152,7 @@ public class UIRunner {
*
* @author 青阳龙野(kohgylw)
* @return kohgylw.kiftd.mc.UIRunner 本启动器唯一实例
* @throws Exception
* @throws Exception
*/
public static UIRunner build() throws Exception {
if (UIRunner.ui == null) {

View File

@ -489,10 +489,10 @@ public class FileBlockUtil {
fm.deleteById(node.getFileId());
} else {
// 文件体积校对
long size = Long.parseLong(node.getFileSize());
if (block.length() != size) {
String correctSize = getFileSize(block.length());
if (!node.getFileSize().equals(correctSize)) {
// 如果记录的文件体积与实际体积不符则更正文件体积
node.setFileSize(Long.toString(block.length()));
node.setFileSize(correctSize);
fm.update(node);
}
}

View File

@ -16,14 +16,14 @@ import kohgylw.kiftd.util.file_system_manager.FileSystemManager;
public class FSProgressDialog extends KiftdDynamicWindow {
private JDialog window;//窗体
private static JLabel message;//显示的文本信息
private static JProgressBar pBar;//进度条
private static JButton cancel;//取消按钮
private JDialog window;// 窗体
private static JLabel message;// 显示的文本信息
private static JProgressBar pBar;// 进度条
private static JButton cancel;// 取消按钮
private static boolean listen;// 是否继续监听
private FSProgressDialog() {
setUIFont();//自动设置字体大小
setUIFont();// 自动设置字体大小
(window = new JDialog(FSViewer.window, "执行中...")).setModal(true);
window.setSize(380, 120);
window.setLocation(200, 200);
@ -31,38 +31,31 @@ public class FSProgressDialog extends KiftdDynamicWindow {
window.addWindowListener(new WindowListener() {
@Override
public void windowOpened(WindowEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void windowIconified(WindowEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void windowClosing(WindowEvent e) {
// TODO 自动生成的方法存根
canncel();
}
@Override
public void windowClosed(WindowEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void windowActivated(WindowEvent e) {
// TODO 自动生成的方法存根
}
});
window.setResizable(false);
@ -75,67 +68,76 @@ public class FSProgressDialog extends KiftdDynamicWindow {
JPanel btnBox = new JPanel(new FlowLayout(FlowLayout.RIGHT));
cancel = new JButton("终止");
cancel.setPreferredSize(new Dimension((int) (90 * proportion), (int) (27 * proportion)));
cancel.addActionListener((e)->{
cancel.addActionListener((e) -> {
canncel();
});
btnBox.add(cancel);
//配置组件
// 配置组件
window.add(messageBox);
window.add(pBar);
window.add(btnBox);
//自动适应屏幕分辨率
// 自动适应屏幕分辨率
modifyComponentSize(window);
}
/**
*
* <h2>打开进度监听窗口并开启自动监听线程</h2>
* <p>该方法将显示监听窗口并开启一个针对文件管理器的监听线程用于自动监听进度注意该方法将阻塞线程直到窗口关闭</p>
* <p>
* 该方法将显示监听窗口并开启一个针对文件管理器的监听线程用于自动监听进度注意该方法将阻塞线程直到窗口关闭
* </p>
*
* @author 青阳龙野(kohgylw)
*/
protected void show() {
listen = true;
pBar.setValue(0);
message.setText("请稍候...");
//启动监听线程用于监听进度该线程结束后会自动关闭窗口
Thread lt=new Thread(()->{
// 启动监听线程用于监听进度该线程结束后会自动关闭窗口
Thread lt = new Thread(() -> {
while (listen) {
pBar.setValue(FileSystemManager.per);
message.setText(FileSystemManager.message);
try {
Thread.sleep(16);
} catch (InterruptedException e) {
listen=false;
listen = false;
}
}
window.dispose();
});
lt.start();
window.setVisible(true);//必须先开启监听否则将阻塞线程
window.setVisible(true);// 必须先开启监听否则将阻塞线程
}
/**
*
* <h2>关闭该进度监听窗口</h2>
* <p>在窗口打开后可以随时调用该方法停止其中的监听线程并关闭窗口</p>
* <p>
* 在窗口打开后可以随时调用该方法停止其中的监听线程并关闭窗口
* </p>
*
* @author 青阳龙野(kohgylw)
*/
protected void close() {
listen = false;
}
//终止当前操作
// 终止当前操作
private void canncel() {
if(JOptionPane.showConfirmDialog(window, "操作仍在进行中,确认要立即终止?", "警告", JOptionPane.YES_NO_OPTION)==0) {
if (JOptionPane.showConfirmDialog(window, "操作仍在进行中,确认要立即终止?", "警告", JOptionPane.YES_NO_OPTION) == 0) {
FileSystemManager.getInstance().cannel();
window.dispose();
}
}
/**
*
* <h2>获取一个新的进度窗口</h2>
* <p>通过该方法获取一个新的进度窗口与前几个窗口不同每次进行进度监听操作均应获取新窗口而不能使用前一个</p>
* <p>
* 通过该方法获取一个新的进度窗口与前几个窗口不同每次进行进度监听操作均应获取新窗口而不能使用前一个
* </p>
*
* @author 青阳龙野(kohgylw)
* @return kohgylw.kiftd.ui.module.FSProgressDialog 新的窗口对象
*/

View File

@ -86,31 +86,22 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void mouseReleased(MouseEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void mousePressed(MouseEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void mouseExited(MouseEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void mouseClicked(MouseEvent e) {
// TODO 自动生成的方法存根
if (e.getClickCount() == 2) {
show();
}
@ -120,7 +111,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
exit();
}
});
@ -132,7 +122,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
ServerUIModule.fsv = FSViewer.getInstance();
fsv.show();
} catch (SQLException e1) {
// TODO 自动生成的 catch
JOptionPane.showMessageDialog(window, "错误:无法打开文件,文件系统可能已损坏,您可以尝试重启应用。", "错误",
JOptionPane.ERROR_MESSAGE);
}
@ -145,7 +134,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
show();
}
});
@ -214,13 +202,10 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void removeUpdate(DocumentEvent e) {
// TODO 自动生成的方法存根
}
@Override
public void insertUpdate(DocumentEvent e) {
// TODO 自动生成的方法存根
Thread t = new Thread(() -> {
if (output.getLineCount() >= 1000) {
int end = 0;
@ -237,7 +222,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void changedUpdate(DocumentEvent e) {
// TODO 自动生成的方法存根
output.selectAll();
output.setCaretPosition(output.getSelectedText().length());
output.requestFocus();
@ -257,7 +241,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
start.setEnabled(false);
setting.setEnabled(false);
fileIOUtil.setEnabled(false);
@ -321,7 +304,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
stop.setEnabled(false);
resatrt.setEnabled(false);
fileIOUtil.setEnabled(false);
@ -352,7 +334,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
fileIOUtil.setEnabled(false);
if (filesViewer != null) {
filesViewer.setEnabled(false);
@ -364,7 +345,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
stop.setEnabled(false);
resatrt.setEnabled(false);
fileIOUtil.setEnabled(false);
@ -390,7 +370,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
ServerUIModule.setting.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
ServerUIModule.sw = SettingWindow.getInstance();
Thread t = new Thread(() -> {
sw.show();
@ -408,7 +387,6 @@ public class ServerUIModule extends KiftdDynamicWindow {
ServerUIModule.fsv = FSViewer.getInstance();
fsv.show();
} catch (SQLException e1) {
// TODO 自动生成的 catch
Printer.instance.print("错误:无法读取文件,文件系统可能已经损坏,您可以尝试重启应用。");
}
ServerUIModule.fileIOUtil.setEnabled(true);

View File

@ -1,5 +1,5 @@
#Generated by Maven Integration for Eclipse
#Sat Dec 23 23:26:10 CST 2023
#Sun Dec 24 12:07:00 CST 2023
m2e.projectLocation=/Users/kohgylw/Programs/java_workspace/kiftd
m2e.projectName=kiftd
groupId=kohgylw