diff options
| author | 2023-09-26 00:33:48 +0300 | |
|---|---|---|
| committer | 2023-09-25 22:33:48 +0100 | |
| commit | 9c7e24b8afb952a1ae80a9806d0349d3f7be597c (patch) | |
| tree | 7da9f3d21b27257609b931c5745d85bab77c697a /enigma-swing/src/main/java | |
| parent | Index more class references (#531) (diff) | |
| download | enigma-9c7e24b8afb952a1ae80a9806d0349d3f7be597c.tar.gz enigma-9c7e24b8afb952a1ae80a9806d0349d3f7be597c.tar.xz enigma-9c7e24b8afb952a1ae80a9806d0349d3f7be597c.zip | |
Fix documenting constructors (again) (#530)
* Fix not being able to save javadoc on constructors
* Fix existing javadoc not showing in the edit dialog on constructors
The new logic was modelled after EnigmaDumper, which uses EntryMapping
to access the comments.
* Add comments about the fix
Diffstat (limited to 'enigma-swing/src/main/java')
| -rw-r--r-- | enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java b/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java index cbbdddef..0ecec6c0 100644 --- a/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java +++ b/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java | |||
| @@ -38,6 +38,7 @@ import cuchaz.enigma.gui.elements.ValidatableTextArea; | |||
| 38 | import cuchaz.enigma.gui.util.GuiUtil; | 38 | import cuchaz.enigma.gui.util.GuiUtil; |
| 39 | import cuchaz.enigma.gui.util.ScaleUtil; | 39 | import cuchaz.enigma.gui.util.ScaleUtil; |
| 40 | import cuchaz.enigma.translation.mapping.EntryChange; | 40 | import cuchaz.enigma.translation.mapping.EntryChange; |
| 41 | import cuchaz.enigma.translation.mapping.EntryMapping; | ||
| 41 | import cuchaz.enigma.translation.representation.entry.Entry; | 42 | import cuchaz.enigma.translation.representation.entry.Entry; |
| 42 | import cuchaz.enigma.utils.I18n; | 43 | import cuchaz.enigma.utils.I18n; |
| 43 | import cuchaz.enigma.utils.validation.ValidationContext; | 44 | import cuchaz.enigma.utils.validation.ValidationContext; |
| @@ -195,10 +196,13 @@ public class JavadocDialog { | |||
| 195 | } | 196 | } |
| 196 | 197 | ||
| 197 | public static void show(JFrame parent, GuiController controller, EntryReference<Entry<?>, Entry<?>> entry) { | 198 | public static void show(JFrame parent, GuiController controller, EntryReference<Entry<?>, Entry<?>> entry) { |
| 198 | EntryReference<Entry<?>, Entry<?>> translatedReference = controller.project.getMapper().deobfuscate(entry); | 199 | // Get the existing text through the mapping as it works for all entries, including constructors. |
| 199 | String text = Strings.nullToEmpty(translatedReference.entry.getJavadocs()); | 200 | EntryMapping mapping = controller.project.getMapper().getDeobfMapping(entry.entry); |
| 201 | String text = Strings.nullToEmpty(mapping.javadoc()); | ||
| 200 | 202 | ||
| 201 | JavadocDialog dialog = new JavadocDialog(parent, controller, entry.getNameableEntry(), text); | 203 | // Note: entry.entry is used instead of getNameableEntry() to include constructors, |
| 204 | // which can be documented. | ||
| 205 | JavadocDialog dialog = new JavadocDialog(parent, controller, entry.entry, text); | ||
| 202 | //dialog.ui.doLayout(); | 206 | //dialog.ui.doLayout(); |
| 203 | dialog.ui.setVisible(true); | 207 | dialog.ui.setVisible(true); |
| 204 | dialog.text.grabFocus(); | 208 | dialog.text.grabFocus(); |