use of com.kyj.fx.voeditor.visual.component.ResultDialog in project Gargoyle by callakrsos.
the class SelectWorkspaceView method btnOkOnMouseClick.
@FXML
public void btnOkOnMouseClick(MouseEvent e) {
String workspaceDir = txtWorkspace.getText();
if (workspaceDir == null || workspaceDir.isEmpty()) {
DialogUtil.showMessageDialog("경로가 비어있습니다.");
return;
}
File workspaceFile = new File(workspaceDir);
if (workspaceFile.isFile()) {
DialogUtil.showMessageDialog("파일의 유형이 잘못되었습니다. 디렉토리를 선택하세요.");
return;
}
if (!workspaceFile.exists()) {
try {
FileUtils.forceMkdir(workspaceFile);
} catch (IOException e1) {
DialogUtil.showMessageDialog("디렉토리 생성에 실패하였습니다.");
return;
}
}
ResourceLoader.getInstance().put(ResourceLoader.BASE_DIR, workspaceFile.getAbsolutePath());
result = new ResultDialog();
result.setStatus(ResultDialog.OK);
close();
}
use of com.kyj.fx.voeditor.visual.component.ResultDialog in project Gargoyle by callakrsos.
the class SystemLayoutViewController method treeProjectFileOnKeyPressed.
/********************************
* 작성일 : 2016. 6. 11. 작성자 : KYJ
*
* 트리 키 클릭 이벤트
*
* @param event
********************************/
public void treeProjectFileOnKeyPressed(KeyEvent event) {
if (event.getCode() == KeyCode.R && event.isControlDown() && event.isShiftDown() && !event.isAltDown()) {
try {
GagoyleWorkspaceOpenResourceView resourceView = new GagoyleWorkspaceOpenResourceView();
ResultDialog<File> show = resourceView.show();
File data = show.getData();
if (data != null && data.exists()) {
TreeItem<FileWrapper> search = search(data);
treeProjectFile.getSelectionModel().select(search);
treeProjectFile.getFocusModel().focus(treeProjectFile.getSelectionModel().getSelectedIndex());
treeProjectFile.scrollTo(treeProjectFile.getSelectionModel().getSelectedIndex());
openFile(data);
}
} catch (Exception e) {
LOGGER.error(ValueUtil.toString(e));
}
} else if (event.getCode() == KeyCode.DELETE && !event.isControlDown() && !event.isShiftDown() && !event.isAltDown()) {
//이벤트 발생시킴.
ActionEvent.fireEvent(tail -> tail.append((event1, tail1) -> {
deleteFileMenuItemOnAction((ActionEvent) event1);
return event1;
}), new ActionEvent());
} else if (KeyCode.F5 == event.getCode()) {
TreeItem<FileWrapper> selectedItem = treeProjectFile.getSelectionModel().getSelectedItem();
if (selectedItem != null)
refleshWorkspaceTreeItem(selectedItem);
}
}
use of com.kyj.fx.voeditor.visual.component.ResultDialog in project Gargoyle by callakrsos.
the class Main method start.
// public Main() {
//
//
// }
@Override
public void start(Stage primaryStage) throws IOException {
// 초기화 처리
callInitializers();
// setApplicationUncaughtExceptionHandler();
// 어플리케이션 타이틀 지정
primaryStage.setTitle(APPLICATION_TITLE);
// 화면 중앙 위치.
primaryStage.centerOnScreen();
// 메인 스테이지 클로즈 이벤트 구현.
primaryStage.setOnCloseRequest(onPrimaryStageCloseRequest);
/* [시작 ]초기 워크스페이스 선택 지정. */
String baseDir = ResourceLoader.getInstance().get(ResourceLoader.BASE_DIR);
if (baseDir == null || baseDir.isEmpty() || !new File(baseDir).exists()) {
SelectWorkspaceView selectWorkspaceView = new SelectWorkspaceView();
@SuppressWarnings("rawtypes") ResultDialog show = selectWorkspaceView.showAndWait();
if (ResultDialog.CANCEL == show.getStatus()) {
Platform.exit();
return;
}
}
try {
// 예상치 못한 에외에 대한 대비 로직구현.
setApplicationUncaughtExceptionHandler();
// 클래스 로딩같은 어플리케이션이 메모리에 로딩됨과 동기에 무거운 처리를 비동기로 로딩하는 로직이 구현되있음.
SharedMemory.init();
// PrimaryStage를 공유변수로 지정하기 위한 로직 처리.
SharedMemory.setPrimaryStage(primaryStage);
// Main Application을 로드
BorderPane mainParent = setNewRootView();
Scene scene = new Scene(mainParent, 1280, 900);
// SkinManager.getInstance().resetSkin();
scene.getStylesheets().add(SkinManager.getInstance().getSkin());
scene.getStylesheets().add(SkinManager.getInstance().getButtonSkin());
primaryStage.setScene(scene);
primaryStage.show();
} catch (Exception e) {
LOGGER.error(ValueUtil.toString(e));
}
}
use of com.kyj.fx.voeditor.visual.component.ResultDialog in project Gargoyle by callakrsos.
the class SelectWorkspaceView method btnCancelOnMouseClick.
/**
* 취소버튼 클릭 이벤트
*
* @Date 2015. 10. 17.
* @param e
* @User KYJ
*/
@FXML
public void btnCancelOnMouseClick(MouseEvent e) {
result = new ResultDialog();
result.setStatus(ResultDialog.CANCEL);
close();
}
Aggregations