override fun getTemplateFiller()

in code/platform/src/main/kotlin/org/fbme/ide/platform/projectWizard/Iec61499ProjectTemplate.kt [44:70]


    override fun getTemplateFiller(): TemplateFiller {
        return TemplateFiller { project ->
            val moduleName = settings.moduleName
            val moduleLocation = settings.moduleLocation
            StartupManager.getInstance(project.project).registerPostStartupActivity {
                project.modelAccess.executeCommand {
                    val solution = NewModuleUtil.createSolution(moduleName, moduleLocation, project)
                    val root = solution.modelRoots.iterator().next() as DefaultModelRoot
                    val model = try {
                        val fullModelName = if (stereotype == null) moduleName else "$moduleName@$stereotype"
                        root.createModel(SModelName(fullModelName), null, DST, TYPE)
                    } catch (e: ModelCannotBeCreatedException) {
                        throw RuntimeException("Model can not be created", e)
                    }
                    val repository = PlatformRepositoryProvider.getInstance(project)
                    val initialElement = initModel(project.project, repository, model)
                    model.module.declaredDependencies
                    val initialNode = initialElement.node
                    project.repository.modelAccess.runReadInEDT {
                        val navigationSupport = NavigationSupport.getInstance()
                        navigationSupport.openNode(project, initialNode, true, false)
                        navigationSupport.selectInTree(project, initialNode, false)
                    }
                }
            }
        }
    }