Top Description Fields Constructors Methods
org.jabref.gui.slr

public Class ManageStudyDefinitionView

extends BaseDialog<SlrStudyAndDirectory>
Class Inheritance
Imports
java.io.IOException, java.nio.file.Files, .Path, java.util.Optional, .StringJoiner, java.util.function.Consumer, java.util.stream.Stream, javafx.beans.binding.Bindings, javafx.beans.property.SimpleStringProperty, javafx.fxml.FXML, javafx.scene.Node, javafx.scene.control.Button, .ButtonType, .Label, .TableColumn, .TableView, .TextField, .Tooltip, javafx.scene.control.cell.CheckBoxTableCell, .TextFieldTableCell, javafx.scene.input.KeyCode, .MouseButton, org.jabref.gui.DialogService, org.jabref.gui.icon.IconTheme, org.jabref.gui.theme.ThemeManager, org.jabref.gui.util.BaseDialog, .DirectoryDialogConfiguration, .ValueTableCellFactory, .ViewModelTableRowFactory, org.jabref.logic.l10n.Localization, org.jabref.model.study.Study, org.jabref.preferences.PreferencesService, com.airhacks.afterburner.views.ViewLoader, jakarta.inject.Inject, org.slf4j.Logger, .LoggerFactory

This class controls the user interface of the study definition management dialog. The UI elements and their layout are defined in the FXML file.

Field Summary

Modifier and TypeField and Description
private TextField
private TextField
private TextField
private TableColumn<String, String>
private TableColumn<String, String>
private TableView<String>
private TableColumn<StudyCatalogItem, String>
private TableColumn<StudyCatalogItem, Boolean>
private TableView<StudyCatalogItem>
private DialogService
private Label
private Label
private static final Logger
private final Path
private PreferencesService
private TableColumn<String, String>
private TableColumn<String, String>
private TableView<String>
private TableColumn<String, String>
private TableColumn<String, String>
private TableView<String>
private ButtonType
private Button
private final Optional<Study>
private TextField
private TextField
private ThemeManager
private ManageStudyDefinitionViewModel

Constructor Summary

AccessConstructor and Description
public
ManageStudyDefinitionView(Path
This directory is proposed in the file chooser
pathToStudyDataDirectory
)

This is used to create a new study

public
ManageStudyDefinitionView(Study
the study to edit
study
,
Path
the directory of the study
studyDirectory
)

This is used to edit an existing study.

Method Summary

Modifier and TypeMethod and Description
private void
private void
private void
private void
private void
private void
private void
private void
public void
private void
setupCellFactories(TableColumn<String, String> contentColumn, TableColumn<String, String> actionColumn, Consumer<String> removeAction)

private void
setupCommonPropertiesForTables(Node addControl, Runnable addAction, TableColumn<?, String> contentColumn, TableColumn<?, String> actionColumn)

private void
setupSaveSurveyButton(boolean isEdit)

private void

Field Detail

addAuthorback to summary
private TextField addAuthor
Annotations
@FXML
addQueryback to summary
private TextField addQuery
Annotations
@FXML
addResearchQuestionback to summary
private TextField addResearchQuestion
Annotations
@FXML
authorsActionColumnback to summary
private TableColumn<String, String> authorsActionColumn
Annotations
@FXML
authorsColumnback to summary
private TableColumn<String, String> authorsColumn
Annotations
@FXML
authorTableViewback to summary
private TableView<String> authorTableView
Annotations
@FXML
catalogColumnback to summary
private TableColumn<StudyCatalogItem, String> catalogColumn
Annotations
@FXML
catalogEnabledColumnback to summary
private TableColumn<StudyCatalogItem, Boolean> catalogEnabledColumn
Annotations
@FXML
catalogTableback to summary
private TableView<StudyCatalogItem> catalogTable
Annotations
@FXML
dialogServiceback to summary
private DialogService dialogService
Annotations
@Inject
directoryWarningback to summary
private Label directoryWarning
Annotations
@FXML
helpIconback to summary
private Label helpIcon
Annotations
@FXML
LOGGERback to summary
private static final Logger LOGGER
pathToStudyDataDirectoryback to summary
private final Path pathToStudyDataDirectory
prefsback to summary
private PreferencesService prefs
Annotations
@Inject
queriesActionColumnback to summary
private TableColumn<String, String> queriesActionColumn
Annotations
@FXML
queriesColumnback to summary
private TableColumn<String, String> queriesColumn
Annotations
@FXML
queryTableViewback to summary
private TableView<String> queryTableView
Annotations
@FXML
questionsActionColumnback to summary
private TableColumn<String, String> questionsActionColumn
Annotations
@FXML
questionsColumnback to summary
private TableColumn<String, String> questionsColumn
Annotations
@FXML
questionTableViewback to summary
private TableView<String> questionTableView
Annotations
@FXML
saveSurveyButtonTypeback to summary
private ButtonType saveSurveyButtonType
Annotations
@FXML
selectStudyDirectoryback to summary
private Button selectStudyDirectory
Annotations
@FXML
studyback to summary
private final Optional<Study> study
studyDirectoryback to summary
private TextField studyDirectory
Annotations
@FXML
studyTitleback to summary
private TextField studyTitle
Annotations
@FXML
themeManagerback to summary
private ThemeManager themeManager
Annotations
@Inject
viewModelback to summary
private ManageStudyDefinitionViewModel viewModel

Constructor Detail

ManageStudyDefinitionViewback to summary
public ManageStudyDefinitionView(Path pathToStudyDataDirectory)

This is used to create a new study

Parameters
pathToStudyDataDirectory:Path

This directory is proposed in the file chooser

ManageStudyDefinitionViewback to summary
public ManageStudyDefinitionView(Study study, Path studyDirectory)

This is used to edit an existing study.

Parameters
study:Study

the study to edit

studyDirectory:Path

the directory of the study

Method Detail

addAuthorback to summary
private void addAuthor()
Annotations
@FXML
addQueryback to summary
private void addQuery()
Annotations
@FXML
addResearchQuestionback to summary
private void addResearchQuestion()
Annotations
@FXML
initAuthorTabback to summary
private void initAuthorTab()
initCatalogsTabback to summary
private void initCatalogsTab()
initializeback to summary
private void initialize()
Annotations
@FXML
initQueriesTabback to summary
private void initQueriesTab()
initQuestionsTabback to summary
private void initQuestionsTab()
selectStudyDirectoryback to summary
public void selectStudyDirectory()
Annotations
@FXML
setupCellFactoriesback to summary
private void setupCellFactories(TableColumn<String, String> contentColumn, TableColumn<String, String> actionColumn, Consumer<String> removeAction)
setupCommonPropertiesForTablesback to summary
private void setupCommonPropertiesForTables(Node addControl, Runnable addAction, TableColumn<?, String> contentColumn, TableColumn<?, String> actionColumn)
setupSaveSurveyButtonback to summary
private void setupSaveSurveyButton(boolean isEdit)
updateDirectoryWarningback to summary
private void updateDirectoryWarning(Path directory)