diff --git a/README.md b/README.md index 7d87d79..ca28f49 100644 --- a/README.md +++ b/README.md @@ -92,5 +92,3 @@ the following classifiers are supported: `win`, `linux`, `mac`, `win-x86`, `linu ## License The Automata Constructor is licensed under the Apache-2.0 license, as detailed in the [LICENSE](LICENSE) file. - - diff --git a/src/main/kotlin/automaton/constructor/controller/algorithms/HellingsAlgoController.kt b/src/main/kotlin/automaton/constructor/controller/algorithms/HellingsAlgoController.kt index c2f5b2f..c405358 100644 --- a/src/main/kotlin/automaton/constructor/controller/algorithms/HellingsAlgoController.kt +++ b/src/main/kotlin/automaton/constructor/controller/algorithms/HellingsAlgoController.kt @@ -43,7 +43,8 @@ class HellingsAlgoController( it.rightSide.size == 1 && it.rightSide[0] is Terminal && it.rightSide[0].getSymbol() == transition.propetiesText } productions.forEach { - val newHellingsTransition = HellingsTransition(it.leftSide, transition.source, + val newHellingsTransition = HellingsTransition( + it.leftSide, transition.source, transition.target, SimpleBooleanProperty(false) ) currentTransitions.add(newHellingsTransition) @@ -52,7 +53,8 @@ class HellingsAlgoController( } if (grammar.productions.any { it.leftSide == grammar.initialNonterminal && it.rightSide.isEmpty() }) { openedAutomaton.vertices.forEach { - val newHellingsTransition = HellingsTransition(grammar.initialNonterminal, it, it, + val newHellingsTransition = HellingsTransition( + grammar.initialNonterminal, it, it, SimpleBooleanProperty(false) ) currentTransitions.add(newHellingsTransition) @@ -66,10 +68,12 @@ class HellingsAlgoController( val allTransitions = observableListOf() prepareForExecution(currentTransitions, allTransitions) - val hellingsAlgoExecutionWindow = find(mapOf( - HellingsAlgoExecutionView::currentTransitions to currentTransitions, - HellingsAlgoExecutionView::allTransitions to allTransitions - )).apply { title = I18N.messages.getString("HellingsAlgorithm.Execution.Title") } + val hellingsAlgoExecutionWindow = find( + mapOf( + HellingsAlgoExecutionView::currentTransitions to currentTransitions, + HellingsAlgoExecutionView::allTransitions to allTransitions + ) + ).apply { title = I18N.messages.getString("HellingsAlgorithm.Execution.Title") } hellingsAlgoExecutionWindow.openWindow() find(mapOf(CFGView::grammar to grammar)).apply { title = I18N.messages.getString("CFGView.Title") diff --git a/src/main/kotlin/automaton/constructor/view/AutomatonBasicVertexView.kt b/src/main/kotlin/automaton/constructor/view/AutomatonBasicVertexView.kt index 31deb62..abe84d4 100644 --- a/src/main/kotlin/automaton/constructor/view/AutomatonBasicVertexView.kt +++ b/src/main/kotlin/automaton/constructor/view/AutomatonBasicVertexView.kt @@ -1,17 +1,11 @@ package automaton.constructor.view import automaton.constructor.model.element.AutomatonVertex -import automaton.constructor.model.element.BuildingBlock -import automaton.constructor.model.module.hasProblems -import automaton.constructor.model.module.hasProblemsBinding import automaton.constructor.utils.I18N import automaton.constructor.utils.Setting import automaton.constructor.utils.SettingGroup -import javafx.beans.property.SimpleIntegerProperty -import javafx.beans.property.SimpleStringProperty import javafx.scene.control.CheckBox import javafx.scene.control.TextField -import javafx.scene.paint.Color import tornadofx.* open class AutomatonBasicVertexView(val vertex: AutomatonVertex) : AutomatonElementView(vertex) { diff --git a/src/main/kotlin/automaton/constructor/view/AutomatonView.kt b/src/main/kotlin/automaton/constructor/view/AutomatonView.kt index 0363262..d0e6a55 100644 --- a/src/main/kotlin/automaton/constructor/view/AutomatonView.kt +++ b/src/main/kotlin/automaton/constructor/view/AutomatonView.kt @@ -95,14 +95,18 @@ class AutomatonView(val automaton: Automaton, automatonViewContext: AutomatonVie label { isWrapText = true layoutXProperty().bind(this@AutomatonView.widthProperty() - widthProperty() - 10.0) - maxWidthProperty().bind(this@AutomatonView.widthProperty() - settingsEditor.widthProperty() - 20.0) + val tabWidth = 700.0 + maxWidthProperty().bind(this@AutomatonView.widthProperty() - tabWidth - 20.0) + maxHeight = 30.0 font = Font.font(16.0) textProperty().bind(automaton.descriptionBinding) visibleWhen(automaton.isOutputOfTransformationProperty.booleanBinding { it == null }) } label { layoutXProperty().bind(this@AutomatonView.widthProperty() - widthProperty() - 10.0) - layoutYProperty().bind(this@AutomatonView.heightProperty() - heightProperty()) + layoutYProperty().bind(this@AutomatonView.heightProperty() - heightProperty() - 45.0) + val buttonsWidth = 700.0 + maxWidthProperty().bind(this@AutomatonView.widthProperty() - buttonsWidth - 20.0) font = Font.font(16.0) textFill = Color.DARKRED textAlignment = TextAlignment.RIGHT