Skip to content

Commit cb3850f

Browse files
Merge pull request #466 from JordanMartinez/makeFXMLReady
Make areas FXML ready via "@NamedArg(parameterName)"
2 parents 9d7651d + 7a1151e commit cb3850f

5 files changed

Lines changed: 58 additions & 38 deletions

File tree

richtextfx/src/main/java/org/fxmisc/richtext/CodeArea.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
import java.util.Collection;
55

6+
import javafx.beans.NamedArg;
67
import org.fxmisc.richtext.model.EditableStyledDocument;
78
import org.fxmisc.richtext.model.StyledText;
89

@@ -23,7 +24,7 @@ public class CodeArea extends StyleClassedTextArea {
2324
setUseInitialStyleForInsertion(true);
2425
}
2526

26-
public CodeArea(EditableStyledDocument<Collection<String>, StyledText<Collection<String>>, Collection<String>> document) {
27+
public CodeArea(@NamedArg("document") EditableStyledDocument<Collection<String>, StyledText<Collection<String>>, Collection<String>> document) {
2728
super(document, false);
2829
}
2930

@@ -37,7 +38,7 @@ public CodeArea() {
3738
*
3839
* @param text Initial text content.
3940
*/
40-
public CodeArea(String text) {
41+
public CodeArea(@NamedArg("text") String text) {
4142
this();
4243

4344
appendText(text);

richtextfx/src/main/java/org/fxmisc/richtext/GenericStyledArea.java

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.util.function.UnaryOperator;
2323
import java.util.stream.Stream;
2424

25+
import javafx.beans.NamedArg;
2526
import javafx.beans.binding.Binding;
2627
import javafx.beans.binding.Bindings;
2728
import javafx.beans.binding.ObjectBinding;
@@ -502,15 +503,20 @@ public Optional<Tuple2<Codec<PS>, Codec<SEG>>> getStyleCodecs() {
502503
* @param nodeFactory A function which is used to create the JavaFX scene nodes for a
503504
* particular segment.
504505
*/
505-
public GenericStyledArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyParagraphStyle,
506-
S initialTextStyle, TextOps<SEG, S> segmentOps,
507-
Function<SEG, Node> nodeFactory) {
506+
public GenericStyledArea(@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
507+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
508+
@NamedArg("initialTextStyle") S initialTextStyle,
509+
@NamedArg("segmentOps") TextOps<SEG, S> segmentOps,
510+
@NamedArg("nodeFactory") Function<SEG, Node> nodeFactory) {
508511
this(initialParagraphStyle, applyParagraphStyle, initialTextStyle, segmentOps, true, nodeFactory);
509512
}
510513

511-
public GenericStyledArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyParagraphStyle,
512-
S initialTextStyle, TextOps<SEG, S> segmentOps,
513-
boolean preserveStyle, Function<SEG, Node> nodeFactory) {
514+
public GenericStyledArea(@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
515+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
516+
@NamedArg("initialTextStyle") S initialTextStyle,
517+
@NamedArg("segmentOps") TextOps<SEG, S> segmentOps,
518+
@NamedArg("preserveStyle") boolean preserveStyle,
519+
@NamedArg("nodeFactory") Function<SEG, Node> nodeFactory) {
514520
this(initialParagraphStyle, applyParagraphStyle, initialTextStyle,
515521
new GenericEditableStyledDocument<>(initialParagraphStyle, initialTextStyle, segmentOps), segmentOps, preserveStyle, nodeFactory);
516522
}
@@ -521,30 +527,30 @@ public GenericStyledArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> appl
521527
* shares the same {@link EditableStyledDocument}.
522528
*/
523529
public GenericStyledArea(
524-
PS initialParagraphStyle,
525-
BiConsumer<TextFlow, PS> applyParagraphStyle,
526-
S initialTextStyle,
527-
EditableStyledDocument<PS, SEG, S> document,
528-
TextOps<SEG, S> textOps,
529-
Function<SEG, Node> nodeFactory) {
530-
this(initialParagraphStyle, applyParagraphStyle, initialTextStyle, document, textOps, true, nodeFactory);
530+
@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
531+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
532+
@NamedArg("initialTextStyle") S initialTextStyle,
533+
@NamedArg("document") EditableStyledDocument<PS, SEG, S> document,
534+
@NamedArg("segmentOps") TextOps<SEG, S> segmentOps,
535+
@NamedArg("nodeFactory") Function<SEG, Node> nodeFactory) {
536+
this(initialParagraphStyle, applyParagraphStyle, initialTextStyle, document, segmentOps, true, nodeFactory);
531537

532538
}
533539

534540
public GenericStyledArea(
535-
PS initialParagraphStyle,
536-
BiConsumer<TextFlow, PS> applyParagraphStyle,
537-
S initialTextStyle,
538-
EditableStyledDocument<PS, SEG, S> document,
539-
TextOps<SEG, S> textOps,
540-
boolean preserveStyle,
541-
Function<SEG, Node> nodeFactory) {
541+
@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
542+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
543+
@NamedArg("initialTextStyle") S initialTextStyle,
544+
@NamedArg("document") EditableStyledDocument<PS, SEG, S> document,
545+
@NamedArg("segmentOps") TextOps<SEG, S> segmentOps,
546+
@NamedArg("preserveStyle") boolean preserveStyle,
547+
@NamedArg("nodeFactory") Function<SEG, Node> nodeFactory) {
542548
this.initialTextStyle = initialTextStyle;
543549
this.initialParagraphStyle = initialParagraphStyle;
544550
this.preserveStyle = preserveStyle;
545551
this.content = document;
546552
this.applyParagraphStyle = applyParagraphStyle;
547-
this.segmentOps = textOps;
553+
this.segmentOps = segmentOps;
548554

549555
undoManager = preserveStyle
550556
? createRichUndoManager(UndoManagerFactory.unlimitedHistoryFactory())

richtextfx/src/main/java/org/fxmisc/richtext/InlineCssTextArea.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package org.fxmisc.richtext;
22

33

4+
import javafx.beans.NamedArg;
45
import javafx.scene.text.TextFlow;
56

67
import org.fxmisc.richtext.model.Codec;
@@ -17,7 +18,7 @@ public InlineCssTextArea() {
1718
this(new SimpleEditableStyledDocument<>("", ""));
1819
}
1920

20-
public InlineCssTextArea(EditableStyledDocument<String, StyledText<String>, String> document) {
21+
public InlineCssTextArea(@NamedArg("document") EditableStyledDocument<String, StyledText<String>, String> document) {
2122
super(
2223
"", TextFlow::setStyle,
2324
"", TextExt::setStyle,
@@ -32,7 +33,7 @@ public InlineCssTextArea(EditableStyledDocument<String, StyledText<String>, Stri
3233
*
3334
* @param text Initial text content.
3435
*/
35-
public InlineCssTextArea(String text) {
36+
public InlineCssTextArea(@NamedArg("text") String text) {
3637
this();
3738

3839
replaceText(0, 0, text);

richtextfx/src/main/java/org/fxmisc/richtext/StyleClassedTextArea.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.util.Collection;
44
import java.util.Collections;
55

6+
import javafx.beans.NamedArg;
67
import org.fxmisc.richtext.model.Codec;
78
import org.fxmisc.richtext.model.EditableStyledDocument;
89
import org.fxmisc.richtext.model.SimpleEditableStyledDocument;
@@ -13,7 +14,8 @@
1314
*/
1415
public class StyleClassedTextArea extends StyledTextArea<Collection<String>, Collection<String>> {
1516

16-
public StyleClassedTextArea(EditableStyledDocument<Collection<String>, StyledText<Collection<String>>, Collection<String>> document, boolean preserveStyle) {
17+
public StyleClassedTextArea(@NamedArg("document") EditableStyledDocument<Collection<String>, StyledText<Collection<String>>, Collection<String>> document,
18+
@NamedArg("preserveStyle") boolean preserveStyle) {
1719
super(Collections.<String>emptyList(),
1820
(paragraph, styleClasses) -> paragraph.getStyleClass().addAll(styleClasses),
1921
Collections.<String>emptyList(),
@@ -26,7 +28,7 @@ public StyleClassedTextArea(EditableStyledDocument<Collection<String>, StyledTex
2628
StyledText.codec(Codec.collectionCodec(Codec.STRING_CODEC))
2729
);
2830
}
29-
public StyleClassedTextArea(boolean preserveStyle) {
31+
public StyleClassedTextArea(@NamedArg("preserveStyle") boolean preserveStyle) {
3032
this(
3133
new SimpleEditableStyledDocument<>(
3234
Collections.<String>emptyList(), Collections.<String>emptyList()

richtextfx/src/main/java/org/fxmisc/richtext/StyledTextArea.java

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import java.util.function.BiConsumer;
44

5+
import javafx.beans.NamedArg;
56
import javafx.geometry.VPos;
67
import javafx.scene.Node;
78
import javafx.scene.text.TextFlow;
@@ -61,25 +62,32 @@
6162
*/
6263
public class StyledTextArea<PS, S> extends GenericStyledArea<PS, StyledText<S>, S> {
6364

64-
public StyledTextArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyParagraphStyle,
65-
S initialTextStyle, BiConsumer<? super TextExt, S> applyStyle,
66-
EditableStyledDocument<PS, StyledText<S>, S> document, boolean preserveStyle) {
65+
public StyledTextArea(@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
66+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
67+
@NamedArg("initialTextStyle") S initialTextStyle,
68+
@NamedArg("applyStyle") BiConsumer<? super TextExt, S> applyStyle,
69+
@NamedArg("document") EditableStyledDocument<PS, StyledText<S>, S> document,
70+
@NamedArg("preserveStyle") boolean preserveStyle) {
6771
super(initialParagraphStyle, applyParagraphStyle,
6872
initialTextStyle,
6973
document, StyledText.textOps(), preserveStyle,
7074
seg -> createStyledTextNode(seg, StyledText.textOps(), applyStyle));
7175
}
7276

73-
public StyledTextArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyParagraphStyle,
74-
S initialTextStyle, BiConsumer<? super TextExt, S> applyStyle,
75-
EditableStyledDocument<PS, StyledText<S>, S> document) {
77+
public StyledTextArea(@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
78+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
79+
@NamedArg("initialTextStyle") S initialTextStyle,
80+
@NamedArg("applyStyle") BiConsumer<? super TextExt, S> applyStyle,
81+
@NamedArg("document") EditableStyledDocument<PS, StyledText<S>, S> document) {
7682
this(initialParagraphStyle, applyParagraphStyle,
7783
initialTextStyle, applyStyle, document, true);
7884
}
7985

80-
public StyledTextArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyParagraphStyle,
81-
S initialTextStyle, BiConsumer<? super TextExt, S> applyStyle,
82-
boolean preserveStyle) {
86+
public StyledTextArea(@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
87+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
88+
@NamedArg("initialTextStyle") S initialTextStyle,
89+
@NamedArg("applyStyle") BiConsumer<? super TextExt, S> applyStyle,
90+
@NamedArg("preserveStyle") boolean preserveStyle) {
8391
this(
8492
initialParagraphStyle,
8593
applyParagraphStyle,
@@ -89,8 +97,10 @@ public StyledTextArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyPa
8997
preserveStyle);
9098
}
9199

92-
public StyledTextArea(PS initialParagraphStyle, BiConsumer<TextFlow, PS> applyParagraphStyle,
93-
S initialTextStyle, BiConsumer<? super TextExt, S> applyStyle) {
100+
public StyledTextArea(@NamedArg("initialParagraphStyle") PS initialParagraphStyle,
101+
@NamedArg("applyParagraphStyle") BiConsumer<TextFlow, PS> applyParagraphStyle,
102+
@NamedArg("initialTextStyle") S initialTextStyle,
103+
@NamedArg("applyStyle") BiConsumer<? super TextExt, S> applyStyle) {
94104
this(initialParagraphStyle, applyParagraphStyle,
95105
initialTextStyle, applyStyle, true);
96106
}

0 commit comments

Comments
 (0)