-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Convert/rework rest of the Swing Dialogs to javafx #3861
Comments
This is an excellent opportunity for new developers to make a relatively easy first contribution. |
Perhaps I could start by working on Quality -> Find unlinked files. Could you provide me with a little more information on what exactly needs to be done? Anything that would be of help. |
Good to hear @jssander! The general aim is to convert these dialogs to the "new" UI technology JavaFX while at the same time improving the user experience/work flow. Do you already have experience with JavaFX? |
Hey @tobiasdiez, I am new to this project but I'm learning JavaFX now and will start converting the dialogs. I will also take a look at the placement of the buttons that you mentioned. |
@gsweetwood Nice to hear that you are interested in contributing to JabRef! Since @jssander expressed interest in converting the "Find unlinked files" dialog and he already has some experience with the code of this dialog, it is probably best to leave this conversion to him (if you have not yet started). But you are lucky and there are still a few others dialogs that needs attention. As a good start, I would recommend the three dialogs under "Edit" (with the "Manage keywords" being the most complicated of those). |
Great, thanks for the recommendation. I'll start there. |
Hey @tobiasdiez, I noticed that the examples you gave ("Options > Manage journal abbreviations") have controller, view, and view model classes. I'm working on Edit-> Set/Clear/Append Rename Fields, which is currently handled with just one class. Do you want me to create the classes like the example or to just modify the existing class? |
@gsweetwood Yes, please use the new separation in view and view model (often called MVVM pattern). More details can be found in our wiki: https://github.com/JabRef/jabref/wiki/Code---JavaFX. In practice, you can still reuse most of the logic (as part of the view model class) but often need to rewrite most of the view/controller. (And please base your code on the maintable-beta branch, there we made some major changes also to the structure - mainly merging the controller and the view). Thanks! |
…alog to javafx (#4264) * issue_3861 * issue #3861 * Revise append database dialog * Move replace string dialog to new package (and remove duplicate JavaFX conversion) * Revise mass set field dialog * Revise mass set field dialog * Move mass set field dialog * Revise group dialog * Revise group dialog * Fix checkstyle * Update JabRef_en.properties * Update JabRef_en.properties * Update AppendDatabaseDialog.java Co-authored-by: Tobias Diez <5037600+tobiasdiez@users.noreply.github.com>
@tobiasdiez @Siedlerchr I hope this is a good place to post! I am starting to rework the custom exporter dialog into JavaFX, and I am starting by making the table. I looked at the manage journal abbreviations table (in MVVM) to see how to create and populate a table in JavaFX. But I can’t seem to find where the tables are populated. I know lines 85-91 in Abe |
@NorwayMaple Have a look at my open office PR, https://github.com/JabRef/jabref/pull/4341/files#diff-4317bc1b0fd381bbd7695f882fbdd323R32 You then would create an Observable list with the data model objects and expose that property and bind it to the tablle |
Hello this would be the first contribution I make to an open source project. Is there something you'd suggest I do? Im also starting working with JavaFx but have a pretty good understanding of Java |
Hey, thanks for your interest. You could transform the manage protected terms dialog to JavaFX. You can create the layout with scene builder (the fxml). For some general information about dialogs with javafx have a look at our wiki. |
I have created a PR with some architecture tests to display, where Swing is still used. #4894 |
This issue serves as point to see which dialogs need to be migrated and which need to be converted:
@JabRef/developers please have a look at that list and see if I maybe missed some
Some of the dialogs are very easy to convert and could be nice beginner tasks
Still need to be converted to MVVM (not a beginner task):
The text was updated successfully, but these errors were encountered: