TuPrologIDEBuilder

data class TuPrologIDEBuilder: Any

NOTE (customTabs: If a CustomTab.tab has a Tab.id that is already existing in the IDE, it substitutes the existing Tab instead of being added to the tab list.

Fields

Name Description
val stage: Stage
var title: String
var icon: Image
var onClose: ()->Boolean
var onAbout: ()->Unit
var stylesheets: List<String>
var customLibraries: List<AliasedLibrary>
var customTabs: List<CustomTab>

Constructors

<init>

constructor(stage: Stage, title: String, icon: Image, onClose: ()->Boolean, onAbout: ()->Unit, stylesheets: List<String>, customLibraries: List<AliasedLibrary>, customTabs: List<CustomTab>)

NOTE (customTabs: If a CustomTab.tab has a Tab.id that is already existing in the IDE, it substitutes the existing Tab instead of being added to the tab list.

Parameters

Name Description
stage: Stage
title: String
icon: Image
onClose: ()->Boolean
onAbout: ()->Unit
stylesheets: List<String>
customLibraries: List<AliasedLibrary>
customTabs: List<CustomTab>

Methods

title

fun title(title: String): apply { this.title = title }

Parameters

Name Description
title: String

ReturnValue

Name Description
apply { this.title = title }

icon

fun icon(icon: Image): apply { this.icon = icon }

Parameters

Name Description
icon: Image

ReturnValue

Name Description
apply { this.icon = icon }

onClose

fun onClose(onClose: ()->Boolean): apply { this.onClose = onClose }

Parameters

Name Description
onClose: ()->Boolean

ReturnValue

Name Description
apply { this.onClose = onClose }

onAbout

fun onAbout(onAbout: ()->Unit): apply { this.onAbout = onAbout }

Parameters

Name Description
onAbout: ()->Unit

ReturnValue

Name Description
apply { this.onAbout = onAbout }

stylesheets

fun stylesheets(stylesheets: Iterable<String>): apply { this.stylesheets = stylesheets.toList() }

Parameters

Name Description
stylesheets: Iterable<String>

ReturnValue

Name Description
apply { this.stylesheets = stylesheets.toList() }

stylesheet

fun stylesheet(stylesheet: String): apply { this.stylesheets += stylesheet }

Parameters

Name Description
stylesheet: String

ReturnValue

Name Description
apply { this.stylesheets += stylesheet }

customLibraries

fun customLibraries(customLibraries: Iterable<AliasedLibrary>): apply { this.customLibraries = customLibraries.toList() }

Parameters

Name Description
customLibraries: Iterable<AliasedLibrary>

ReturnValue

Name Description
apply { this.customLibraries = customLibraries.toList() }

customLibrary

fun customLibrary(customLibrary: AliasedLibrary): apply { this.customLibraries += customLibrary }

Parameters

Name Description
customLibrary: AliasedLibrary

ReturnValue

Name Description
apply { this.customLibraries += customLibrary }

customTabs

fun customTabs(customTabs: Iterable<CustomTab>): apply { this.customTabs = customTabs.toList() }

Parameters

Name Description
customTabs: Iterable<CustomTab>

ReturnValue

Name Description
apply { this.customTabs = customTabs.toList() }

customTab

fun customTab(customTab: CustomTab): apply { this.customTabs += customTab }

Parameters

Name Description
customTab: CustomTab

ReturnValue

Name Description
apply { this.customTabs += customTab }

customTab

fun customTab(tab: Tab, modelConfigurator: ModelConfigurator): customTab(CustomTab(tab, modelConfigurator))

Parameters

Name Description
tab: Tab
modelConfigurator: ModelConfigurator

ReturnValue

Name Description
customTab(CustomTab(tab, modelConfigurator))

customTab

fun customTab(tab: Tab): customTab(tab) { /* do nothing */ }

Parameters

Name Description
tab: Tab

ReturnValue

Name Description
customTab(tab) { /* do nothing */ }

show

fun show()

ReturnValue

Name Description
Unit

CompanionObject

TuPrologIDEBuilder

data class TuPrologIDEBuilder: Any

NOTE (customTabs: If a CustomTab.tab has a Tab.id that is already existing in the IDE, it substitutes the existing Tab instead of being added to the tab list.

Methods

showConfirmationDialog

fun showConfirmationDialog(title: String, header: String, content: String): Boolean

Parameters

Name Description
title: String
header: String
content: String

ReturnValue

Name Description
Boolean

showExitConfirmationDialog

fun showExitConfirmationDialog(what: String): Boolean

Parameters

Name Description
what: String

ReturnValue

Name Description
Boolean

showAboutDialog

fun showAboutDialog(what: String, version: String, image: Image, width: Double, height: Double): ( what: String, version: String = Info.VERSION, image: Image = TUPROLOG_LOGO, width: Double = TUPROLOG_LOGO.width * 0.3, height: Double = TUPROLOG_LOGO.height * 0.3 )

Parameters

Name Description
what: String
version: String
image: Image
width: Double
height: Double

ReturnValue

Name Description
( what: String, version: String = Info.VERSION, image: Image = TUPROLOG_LOGO, width: Double = TUPROLOG_LOGO.width * 0.3, height: Double = TUPROLOG_LOGO.height * 0.3 )