project:mt:startup:tecdesc
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
project:mt:startup:tecdesc [2023/04/13 10:18] – snarfbur | project:mt:startup:tecdesc [2023/05/23 14:30] (current) – snarfbur | ||
---|---|---|---|
Line 9: | Line 9: | ||
==== Option on startup to start a server ==== | ==== Option on startup to start a server ==== | ||
- | * Check, if we can use already the original | + | * Add startup |
- | * Check, what additional parameters | + | * Add startup property to define how the startup sequence should handle a auto backup file |
+ | * Find the correct place to start the server in the startup sequence (tricky, because there are already threats running) | ||
==== Refactor: UI startup frame ==== | ==== Refactor: UI startup frame ==== | ||
+ | |||
+ | === Best Solution === | ||
* Separate user from system settings, users first | * Separate user from system settings, users first | ||
Line 23: | Line 26: | ||
* Describe keys for advanced options | * Describe keys for advanced options | ||
- | **Note: | + | === Minimum Solution === |
+ | |||
+ | | ||
===== Implementation Decisions ===== | ===== Implementation Decisions ===== | ||
Line 51: | Line 56: | ||
The current UserJvmOptions is therefore a mix of JVM, library and application options and should be refactored. Since it has also a lot of methods to handle the cfg file values, I would at least recommend an renaming. \\ A first closer check shows that this class is mainly used in the PreferenceDialog, | The current UserJvmOptions is therefore a mix of JVM, library and application options and should be refactored. Since it has also a lot of methods to handle the cfg file values, I would at least recommend an renaming. \\ A first closer check shows that this class is mainly used in the PreferenceDialog, | ||
- | ===== Implementation Questions ===== | + | ==== Refactor: UI startup frame ==== |
- | ==== Log vs. MapTool.show...() ==== | + | Analysis of the Option Dialog shows: |
- | When do you want just a log and when should there be a show popup? | + | * All in one Class: |
+ | * Swing | ||
+ | * Generated Code: Tool xxx used | ||
- | Examples: | + | Since Swing is deprecated and I have no experience with the Tool or with JavaFX I will go for the minimum + bug fixing (show the correct values) and maybe add the new values (without the tool). |
- | * | + | ===== Implementation Questions ===== |
- | < | + | |
- | + | ||
- | log.info(" | + | |
- | + | ||
- | * | + | |
- | < | + | |
- | + | ||
- | </ | + | |
==== Naming Conventions ==== | ==== Naming Conventions ==== | ||
Line 87: | Line 86: | ||
==== cmdOption -r -> Exception ==== | ==== cmdOption -r -> Exception ==== | ||
- | To the time the reset method is called, the ' | + | To the time the reset method is called, the ' |
==== cmdOption -w is double defined ==== | ==== cmdOption -w is double defined ==== | ||
- | |||
< | < | ||
+ | |||
cmdOptions.addOption(" | cmdOptions.addOption(" | ||
... | ... | ||
Line 108: | Line 107: | ||
</ | </ | ||
+ | |||
+ | ==== Start-Properties / JvmOptions not Shown under Windows ==== | ||
+ | |||
+ | At least since 1.12.2 the start properties are not shown in the OptionDialog under Windows. | ||
+ | |||
+ | They are also not editable under Windows, even if the file is in a editable directory. | ||
+ | |||
+ | Under Development the hole tab is not shown. That makes development for the dialog hard. | ||
===== Recommended Refactoring Issues ===== | ===== Recommended Refactoring Issues ===== | ||
Line 125: | Line 132: | ||
. | . | ||
- | ==== AppUtil.getDataDirAppClfFile() & UserJvmOptions.copyConfigFile() ==== | + | ==== AppUtil.getDataDirAppCfgFile() & UserJvmOptions.copyConfigFile() ==== |
This is a helper function to copy the original maptool.cfg from the app directory into the ' | This is a helper function to copy the original maptool.cfg from the app directory into the ' | ||
**Conclusion: | **Conclusion: | ||
- | |||
- | ===== MapTool-Sample.cfg ===== | ||
- | |||
- | The Example seems to be out of date. | ||
===== Notes ===== | ===== Notes ===== | ||
Line 142: | Line 145: | ||
Its looks like the current cfg file is not generated during the normal build and it is not accessible from IntelliJ run/debug. Does somebody know, how a cfg file can be used during development? | Its looks like the current cfg file is not generated during the normal build and it is not accessible from IntelliJ run/debug. Does somebody know, how a cfg file can be used during development? | ||
+ | |||
+ | ==== Translations Yes or No ==== | ||
+ | |||
+ | The developer team uses a pragmatic rule: If the information is useful for the user, so he can (re-)act with the information, | ||
+ | |||
+ | === Examples === | ||
+ | |||
+ | == CmdLineOption: | ||
+ | |||
+ | The description is only in English. Maybe you want to use translation encoding? \\ I use the description for the help view, so this is also only in English. | ||
+ | |||
+ | Answer: Yes | ||
+ | |||
+ | == MapTool.showError() == | ||
+ | |||
+ | Should I use a translation here? \\ MapTool.showError(" | ||
+ | |||
+ | Answer: No | ||
+ | |||
+ | ==== Log vs. MapTool.show...() ==== | ||
+ | |||
+ | Use the same rule as for translations and thing about it, if the value of the information is high enough for the user to commit it. The log is just written into the file, the dialog needs interaction! | ||
project/mt/startup/tecdesc.1681373880.txt.gz · Last modified: 2023/04/13 10:18 by snarfbur