Reimplementation of other signs (,/*() etc.) in ngrams.
This commit is contained in:
@@ -8,7 +8,6 @@ import javafx.collections.ObservableList;
|
||||
import javafx.concurrent.Task;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.*;
|
||||
import javafx.scene.layout.Pane;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
@@ -17,6 +16,7 @@ import org.controlsfx.control.CheckComboBox;
|
||||
import java.io.File;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import static alg.XML_processing.readXML;
|
||||
@@ -49,6 +49,10 @@ public class OneWordAnalysisTab {
|
||||
private CheckBox displayTaxonomyChB;
|
||||
private boolean displayTaxonomy;
|
||||
|
||||
@FXML
|
||||
private CheckBox writeMsdAtTheEndChB;
|
||||
private boolean writeMsdAtTheEnd;
|
||||
|
||||
@FXML
|
||||
private ComboBox<String> calculateForCB;
|
||||
private CalculateFor calculateFor;
|
||||
@@ -96,6 +100,7 @@ public class OneWordAnalysisTab {
|
||||
private static final ObservableList<String> alsoVisualizeItemsWord = FXCollections.observableArrayList("lema", "besedna vrsta", "oblikoskladenjska oznaka");
|
||||
private static final ObservableList<String> alsoVisualizeItemsWordGos = FXCollections.observableArrayList("lema", "besedna vrsta", "oblikoskladenjska oznaka", "normalizirana različnica");
|
||||
private static final ObservableList<String> alsoVisualizeItemsNormalizedWord = FXCollections.observableArrayList("lema", "besedna vrsta", "oblikoskladenjska oznaka");
|
||||
private static final ObservableList<String> alsoVisualizeItemsMsd = FXCollections.observableArrayList("besedna vrsta");
|
||||
private static final ObservableList<String> alsoVisualizeItemsEmpty = FXCollections.observableArrayList();
|
||||
|
||||
// TODO: pass observables for taxonomy based on header scan
|
||||
@@ -107,6 +112,8 @@ public class OneWordAnalysisTab {
|
||||
currentMode = MODE.WORD;
|
||||
toggleMode(currentMode);
|
||||
|
||||
AtomicBoolean writeMsdAtTheEndEnableCalculateFor = new AtomicBoolean(false);
|
||||
|
||||
// calculateForCB
|
||||
calculateForCB.valueProperty().addListener((observable, oldValue, newValue) -> {
|
||||
calculateFor = CalculateFor.factory(newValue);
|
||||
@@ -121,9 +128,22 @@ public class OneWordAnalysisTab {
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsWord);
|
||||
} else if(newValue.equals("normalizirana različnica")) {
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsNormalizedWord);
|
||||
} else if(newValue.equals("oblikoskladenjska oznaka")) {
|
||||
writeMsdAtTheEndEnableCalculateFor.set(true);
|
||||
writeMsdAtTheEndChB.setDisable(false);
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsMsd);
|
||||
}else {
|
||||
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsEmpty);
|
||||
}
|
||||
|
||||
if (!newValue.equals("oblikoskladenjska oznaka")){
|
||||
writeMsdAtTheEnd = false;
|
||||
writeMsdAtTheEndChB.setSelected(false);
|
||||
writeMsdAtTheEndChB.setDisable(true);
|
||||
writeMsdAtTheEndEnableCalculateFor.set(false);
|
||||
}
|
||||
|
||||
alsoVisualizeCCB.getCheckModel().getCheckedItems().addListener((ListChangeListener<String>) c -> {
|
||||
alsoVisualize = new ArrayList<>();
|
||||
ObservableList<String> checkedItems = alsoVisualizeCCB.getCheckModel().getCheckedItems();
|
||||
@@ -177,6 +197,13 @@ public class OneWordAnalysisTab {
|
||||
alsoVisualize = new ArrayList<>();
|
||||
ObservableList<String> checkedItems = alsoVisualizeCCB.getCheckModel().getCheckedItems();
|
||||
alsoVisualize.addAll(checkedItems);
|
||||
if (checkedItems.contains("oblikoskladenjska oznaka") || writeMsdAtTheEndEnableCalculateFor.get()){
|
||||
writeMsdAtTheEndChB.setDisable(false);
|
||||
} else {
|
||||
writeMsdAtTheEnd = false;
|
||||
writeMsdAtTheEndChB.setSelected(false);
|
||||
writeMsdAtTheEndChB.setDisable(true);
|
||||
}
|
||||
logger.info(String.format("Selected also visualize items: %s", StringUtils.join(checkedItems, ",")));
|
||||
});
|
||||
alsoVisualizeCCB.getCheckModel().clearChecks();
|
||||
@@ -204,6 +231,15 @@ public class OneWordAnalysisTab {
|
||||
});
|
||||
displayTaxonomyChB.setTooltip(new Tooltip(TOOLTIP_readDisplayTaxonomyChB));
|
||||
|
||||
writeMsdAtTheEnd = false;
|
||||
writeMsdAtTheEndChB.setDisable(true);
|
||||
// set
|
||||
writeMsdAtTheEndChB.selectedProperty().addListener((observable, oldValue, newValue) -> {
|
||||
writeMsdAtTheEnd = newValue;
|
||||
logger.info("write msd at the end: ", writeMsdAtTheEnd);
|
||||
});
|
||||
// writeMsdAtTheEndChB.setTooltip(new Tooltip(TOOLTIP_readDisplayTaxonomyChB));
|
||||
|
||||
// set default values
|
||||
minimalOccurrencesTF.setText("1");
|
||||
minimalOccurrences = 1;
|
||||
@@ -390,6 +426,7 @@ public class OneWordAnalysisTab {
|
||||
filter.setMultipleKeys(alsoVisualize);
|
||||
filter.setMinimalOccurrences(minimalOccurrences);
|
||||
filter.setMinimalTaxonomy(minimalTaxonomy);
|
||||
filter.setWriteMsdAtTheEnd(writeMsdAtTheEnd);
|
||||
|
||||
String message = Validation.validateForStringLevel(filter);
|
||||
if (message == null) {
|
||||
|
||||
@@ -124,6 +124,7 @@ public class StringAnalysisTabNew2 {
|
||||
private static final ObservableList<String> alsoVisualizeItemsWord = FXCollections.observableArrayList("lema", "besedna vrsta", "oblikoskladenjska oznaka");
|
||||
private static final ObservableList<String> alsoVisualizeItemsWordGos = FXCollections.observableArrayList("lema", "besedna vrsta", "oblikoskladenjska oznaka", "normalizirana različnica");
|
||||
private static final ObservableList<String> alsoVisualizeItemsNormalizedWord = FXCollections.observableArrayList("lema", "besedna vrsta", "oblikoskladenjska oznaka");
|
||||
private static final ObservableList<String> alsoVisualizeItemsMsd = FXCollections.observableArrayList("besedna vrsta");
|
||||
private static final ObservableList<String> alsoVisualizeItemsEmpty = FXCollections.observableArrayList();
|
||||
|
||||
|
||||
@@ -169,7 +170,7 @@ public class StringAnalysisTabNew2 {
|
||||
minimalTaxonomyTF.setText("1");
|
||||
minimalTaxonomy = 1;
|
||||
|
||||
notePunctuations = true;
|
||||
notePunctuations = false;
|
||||
// set
|
||||
notePunctuationsChB.selectedProperty().addListener((observable, oldValue, newValue) -> {
|
||||
notePunctuations = newValue;
|
||||
@@ -199,6 +200,8 @@ public class StringAnalysisTabNew2 {
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsWord);
|
||||
} else if(newValue.equals("normalizirana različnica")) {
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsNormalizedWord);
|
||||
}else if(newValue.equals("oblikoskladenjska oznaka")) {
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsMsd);
|
||||
}else {
|
||||
alsoVisualizeCCB.getItems().setAll(alsoVisualizeItemsEmpty);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user