1. EDDB plugin tracked this for keeping the Station link text up to date.
* So moved it to monitor.state['SystemPopulation'].
* PLUGINS.md updated to cite this.
* PLUGINS.md also updated to note state entries that are set to None if
remote multi-crew is detected.
1. EDDB plugin needs to track the system name, but we're moving all of that
into monitor.py.
2. monitor.py was tracking this in monitor.system, but it needs to be in
monitor.state['SystemName'] in order for plugins to access it.
So, move monitor.system to monitor.state['SystemName'] and update all uses.
* Typod '.status' instead of 'state'.
* Bring in some sanity-checks and comments from eddn.py to monitor.py.
* Have a 'pass' elif for 'supercruiseentry' so as to comment why we do NOT
use this to blank out body state.
* Bring in the 'if we exit to main menu, blank body state' from eddn.py.
* Remove checks from eddn.py that are now in monitor.py.
* Have a disctinct 'docked' event check in eddn.py for triggering the
"Now we're docked, so the Delay sending until docked is satisfied"
sending of messages.
This had mostly been done already, now it's complete.
*If* any plugin is, still, using `monitor.planet` then they get to keep
the broken pieces because it's not included in PLUGINS.md#Available-imports.
* Minor grammar edit only in PLUGINS.md (I was checking if it explicitly
stated what data is expected in the synthetic 'StartUp' event, it doesn't).
* First changes to move some monitor properties into the monitor.state
dictionary. This is for system or body data.
* Re-factored the generation of 'StartUp' event into
`EDLogs.synthesize_startup_event()`. It's done in two places, so was
anti-DRY.
* In general any bulk setting of system & body data is now done in the
same order for comparison clarity.
* A little of the location tracking has been duplicated from plugins/eddn.py.
This is with a view to switching *it* to using the state version.
This *should* allow for easy setup to work on any XDG-compliant desktop
environment. Just run `scripts/linux-setup.sh` and it will:
1. Determine the 'root' directory of the EDMarketConnector source you're
using.
2. Check you have `${HOME}/bin` in PATH and it exists as a directory.
3. Copy `scripts/edmarketconnector.sh` to there, replacing the string
`EDMC_PATH` with the 'root' directory.
4. Copy .png (icon) and .desktop files into ~/.local/share/... locations.
Then the desktop environment should have a menu entry for
"E:D Market Connector", which attempts to run `edmarketconnector`, which
should now be the shell script present in ${HOME}/bin.
1. `io.edcd.EDMarketConnector.desktop` based on the flathub one, but with
reference to v1.5 of the spec (linked in a file comment).
2. As the Icon is specified using `io.edcd.EDMarketConnector`, not only
`EDMarketConnector`, renamed the .png file and updated the single code
reference to it.
It was observed that some text in the EDMC-Canonn plugin was wrapping in
this branch when the same text doesn't in `develop. So, tweaked the
plugin_frame setup to match the main UI frame setup:
* `tk.NSEW` not `tk.EW` - didn't fix the problem, but we should match this.
* `.columnconfigure(1, weight=1)` - this actually fixed the problem.
These are used in the non-default themes, as the OS ones are hidden and
replaced by them.
They're created after the rest of the main UI, so come last in the 'children'
list.
* eddn: Needs to find status text, although really there should be a helper
function for this.
* Removed commented out references to same in edsm and inara.
As we're experimenting with per-plugin frames up a level `parent.children`
would need to be `parent.parent.children`, but this way it will Just Work
without knowledge of the hierarchy.