Search in sources :

Example 1 with SelectWorkspaceView

use of com.kyj.fx.voeditor.visual.component.popup.SelectWorkspaceView 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));
    }
}
Also used : BorderPane(javafx.scene.layout.BorderPane) ResultDialog(com.kyj.fx.voeditor.visual.component.ResultDialog) SelectWorkspaceView(com.kyj.fx.voeditor.visual.component.popup.SelectWorkspaceView) Scene(javafx.scene.Scene) File(java.io.File) IOException(java.io.IOException)

Example 2 with SelectWorkspaceView

use of com.kyj.fx.voeditor.visual.component.popup.SelectWorkspaceView in project Gargoyle by callakrsos.

the class SystemLayoutViewController method menuSwitchWorkspaceOnAction.

@FXML
public void menuSwitchWorkspaceOnAction(ActionEvent e) throws IOException {
    SelectWorkspaceView view = new SelectWorkspaceView();
    ResultDialog<Object> show = view.showAndWait();
    if (show != null && ResultDialog.OK == show.getStatus()) {
        String baseDir = ResourceLoader.getInstance().get(ResourceLoader.BASE_DIR);
        selectDirFile = new File(baseDir);
        treeProjectFile.setRoot(createNewTree(selectDirFile));
        treeProjectFile.setShowRoot(false);
        // 2016-10-14 kyj Resource 리로팅
        SharedMemory.init();
    //TODO 열러있던 탭을 모두 close, 이 처리가 되기전에 열려있는 창에대한 문구 표시 필요
    //			tabPanWorkspace.getTabs().clear();
    }
}
Also used : SelectWorkspaceView(com.kyj.fx.voeditor.visual.component.popup.SelectWorkspaceView) File(java.io.File) FXML(javafx.fxml.FXML)

Aggregations

SelectWorkspaceView (com.kyj.fx.voeditor.visual.component.popup.SelectWorkspaceView)2 File (java.io.File)2 ResultDialog (com.kyj.fx.voeditor.visual.component.ResultDialog)1 IOException (java.io.IOException)1 FXML (javafx.fxml.FXML)1 Scene (javafx.scene.Scene)1 BorderPane (javafx.scene.layout.BorderPane)1