!8 fix: #I7UE5B 修复新建文件后自动保存失效的问题
Merge pull request !8 from songdragon/fix-I7UE5B
This commit is contained in:
commit
020ee7008e
@ -23,9 +23,8 @@ public class LunchApp extends Application {
|
|||||||
private static final ExecutorService threadPool = Executors.newCachedThreadPool();
|
private static final ExecutorService threadPool = Executors.newCachedThreadPool();
|
||||||
public static boolean isRelevance = true;
|
public static boolean isRelevance = true;
|
||||||
|
|
||||||
|
Controller controller = Controller.getInstance();
|
||||||
Scene scene;
|
Scene scene;
|
||||||
Controller controller = new Controller();
|
|
||||||
|
|
||||||
View view;
|
View view;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -7,8 +7,6 @@ import org.jcnc.jnotepad.ui.LineNumberTextArea;
|
|||||||
import org.jcnc.jnotepad.controller.manager.Controller;
|
import org.jcnc.jnotepad.controller.manager.Controller;
|
||||||
import org.jcnc.jnotepad.view.manager.ViewManager;
|
import org.jcnc.jnotepad.view.manager.ViewManager;
|
||||||
|
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
import static org.jcnc.jnotepad.view.manager.ViewManager.tabPane;
|
import static org.jcnc.jnotepad.view.manager.ViewManager.tabPane;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -25,7 +23,7 @@ public class NewFile implements EventHandler<ActionEvent> {
|
|||||||
@Override
|
@Override
|
||||||
public void handle(ActionEvent event) {
|
public void handle(ActionEvent event) {
|
||||||
// 获取控制器
|
// 获取控制器
|
||||||
Controller controller = new Controller();
|
Controller controller = Controller.getInstance();
|
||||||
|
|
||||||
LineNumberTextArea lineNumberTextArea = new LineNumberTextArea();
|
LineNumberTextArea lineNumberTextArea = new LineNumberTextArea();
|
||||||
|
|
||||||
@ -38,6 +36,9 @@ public class NewFile implements EventHandler<ActionEvent> {
|
|||||||
"-fx-border-color:white ;-fx-background-color:white;"
|
"-fx-border-color:white ;-fx-background-color:white;"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
//TODO: refactor:统一TextArea新建、绑定监听器入口
|
||||||
|
// 增加autoSave监听器绑定
|
||||||
|
controller.autoSave(textArea);
|
||||||
|
|
||||||
// 创建一个新的Tab页
|
// 创建一个新的Tab页
|
||||||
Tab tab = new Tab("新建文本 " + ++ViewManager.tabIndex);
|
Tab tab = new Tab("新建文本 " + ++ViewManager.tabIndex);
|
||||||
|
|||||||
@ -26,7 +26,7 @@ public class OpenFile implements EventHandler<ActionEvent> {
|
|||||||
@Override
|
@Override
|
||||||
public void handle(ActionEvent event) {
|
public void handle(ActionEvent event) {
|
||||||
// 获取控制器
|
// 获取控制器
|
||||||
Controller controller = new Controller();
|
Controller controller = Controller.getInstance();
|
||||||
// 创建文件选择器
|
// 创建文件选择器
|
||||||
FileChooser fileChooser = new FileChooser();
|
FileChooser fileChooser = new FileChooser();
|
||||||
// 显示文件选择对话框,并获取选中的文件
|
// 显示文件选择对话框,并获取选中的文件
|
||||||
|
|||||||
@ -25,6 +25,16 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class Controller implements ControllerInterface {
|
public class Controller implements ControllerInterface {
|
||||||
|
|
||||||
|
private static final Controller INSTANCE = new Controller();
|
||||||
|
|
||||||
|
private Controller() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Controller getInstance() {
|
||||||
|
return INSTANCE;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 打开关联文件并创建文本区域。
|
* 打开关联文件并创建文本区域。
|
||||||
*
|
*
|
||||||
|
|||||||
@ -17,17 +17,17 @@ public class View {
|
|||||||
|
|
||||||
public void initItem() {
|
public void initItem() {
|
||||||
// 初始化菜单项的事件处理器
|
// 初始化菜单项的事件处理器
|
||||||
EventHandler<ActionEvent> newFileEventHandler = new Controller().getNewFileEventHandler(new LineNumberTextArea());
|
EventHandler<ActionEvent> newFileEventHandler = Controller.getInstance().getNewFileEventHandler(new LineNumberTextArea());
|
||||||
newItem.setOnAction(newFileEventHandler);
|
newItem.setOnAction(newFileEventHandler);
|
||||||
EventHandler<ActionEvent> openFileEventHandler = new Controller().getOpenFileEventHandler();
|
EventHandler<ActionEvent> openFileEventHandler = Controller.getInstance().getOpenFileEventHandler();
|
||||||
openItem.setOnAction(openFileEventHandler);
|
openItem.setOnAction(openFileEventHandler);
|
||||||
EventHandler<ActionEvent> saveAsFileEventHandler = new Controller().getSaveAsFileEventHandler();
|
EventHandler<ActionEvent> saveAsFileEventHandler = Controller.getInstance().getSaveAsFileEventHandler();
|
||||||
saveAsItem.setOnAction(saveAsFileEventHandler);
|
saveAsItem.setOnAction(saveAsFileEventHandler);
|
||||||
lineFeedItem.setOnAction(new Controller().getLineFeedEventHandler(new LineNumberTextArea()));
|
lineFeedItem.setOnAction(Controller.getInstance().getLineFeedEventHandler(new LineNumberTextArea()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void initTabPane() {
|
public void initTabPane() {
|
||||||
new Controller().initTabPane();
|
Controller.getInstance().initTabPane();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 初始化快捷键
|
// 初始化快捷键
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user