Difference between revisions of "System Data Config"
Cholmondely (talk | contribs) (Added Links) |
Cholmondely (talk | contribs) (Oops!) |
||
Line 1: | Line 1: | ||
[[File:F7 screen (Vanilla game).png|thumb|right|320px|Before improvement with System Data Config]] | [[File:F7 screen (Vanilla game).png|thumb|right|320px|Before improvement with System Data Config]] | ||
[[File:F7 screen (oxp'd) .png|thumb|right|320px|After improvement with System Data Config - and sundry other oxp's!]] | [[File:F7 screen (oxp'd) .png|thumb|right|320px|After improvement with System Data Config - and sundry other oxp's!]] | ||
− | + | There are 2 OXPs detailed on this page. Both improve the use of the F7 screen | |
− | ==Overview== | + | ==Overview: System Data Config== |
This OXP is a utility designed to help OXP authors make use of the upper part of the [[F7 page (data on "system")|F7 screen]], where the statistics about the currently selected star system are displayed. | This OXP is a utility designed to help OXP authors make use of the upper part of the [[F7 page (data on "system")|F7 screen]], where the statistics about the currently selected star system are displayed. | ||
Line 44: | Line 44: | ||
This function removes a worldscript/callback function name from the list of callbacks. | This function removes a worldscript/callback function name from the list of callbacks. | ||
− | ==Compressed F7 Layout== | + | ==Overview: Compressed F7 Layout== |
As an example of what can be achieved with this OXP, the Compressed F7 Layout OXP removes all the blank lines between entries on the F7 screen, compressing the data. It also moves information from [[Distant Suns]] and [[Explorers'_Club_OXP|Explorers Club]] into this section. [[image:F7screenlayout.png|center|500px]] | As an example of what can be achieved with this OXP, the Compressed F7 Layout OXP removes all the blank lines between entries on the F7 screen, compressing the data. It also moves information from [[Distant Suns]] and [[Explorers'_Club_OXP|Explorers Club]] into this section. [[image:F7screenlayout.png|center|500px]] | ||
You can download this OXP here: [[Media:CompressedF7Layout.oxz|CompressedF7Layout.oxz]] v1.3 (downloaded {{#downloads:CompressedF7Layout.oxz}} times). | You can download this OXP here: [[Media:CompressedF7Layout.oxz|CompressedF7Layout.oxz]] v1.3 (downloaded {{#downloads:CompressedF7Layout.oxz}} times). | ||
Line 76: | Line 76: | ||
==Links== | ==Links== | ||
*[[F7 page (data on "system")]] details the F7 screen and the oxp's which affect it. | *[[F7 page (data on "system")]] details the F7 screen and the oxp's which affect it. | ||
− | |||
*[[Combo F7 Layout]] is an equivalent to both this and System Data Config which is specially tailored to the [[Strangers World]] suite of OXPs which add much more information to the F7 screen | *[[Combo F7 Layout]] is an equivalent to both this and System Data Config which is specially tailored to the [[Strangers World]] suite of OXPs which add much more information to the F7 screen | ||
Revision as of 14:22, 24 February 2023
There are 2 OXPs detailed on this page. Both improve the use of the F7 screen
Contents
Overview: System Data Config
This OXP is a utility designed to help OXP authors make use of the upper part of the F7 screen, where the statistics about the currently selected star system are displayed.
A new feature added in Oolite v1.85/6 allows the layout of the F7 screen to be completely customised. However, given the number of OXP's that will want to make use of this extra space, there was a need to make the process of adding information to the screen a little more democratic. This OXP aims to provide an centralised interface OXP's can use to make the most of this new feature.
Note: This OXP will only work with Oolite v1.85ff.
Methodology
This OXP offers the following interfaces to OXP's:
systemDataLineOwner
worldScripts.SystemDataConfig.systemDataLineOwner(linenumber : int);
Returns the current owner of a particular data line.
systemDataLineText
worldScripts.SystemDataConfig.systemDataLineText(linenumber : int);
Returns the current text of a particular data line.
setSystemDataLine
worldScripts.SystemDataControl.setSystemDataLine(linenumber : int, text : string [, owner : string]);
Sets the text, and optionally the owner, of a particular data line
resetSystemDataLine
worldScripts.SystemDataControl.resetSystemDataLine(linenumber : int);
Resets the text and owner of a particular data line to be blank.
addChangeCallback
worldScripts.SystemDataControl.addChangeCallback(worldScriptName : string, callbackFunctionName : string);
In order for an OXP to make changes to the F7 screen before it's displayed, two events must be used: guiScreenWillChange (monitoring for when the guiScreen is about to be GUI_SCREEN_SYSTEM_DATA), and infoSystemWillChange. However, because the order in which these events are fired for each OXP is hard to determine, it's quite possible for an OXP's events to be fired after the events within this OXP, which means that updated data might not be displayed.
To work around this issue, OXP's can register a callback function using this call. Then, when those events are triggered for this OXP's, all the callbacks will be executed before the data is displayed, ensuring that the correct data is shown on the screen.
removeChangeCallback
worldScripts.SystemDataControl.removeChangeCallback(worldScriptName : string, callbackFunctionName : string);
This function removes a worldscript/callback function name from the list of callbacks.
Overview: Compressed F7 Layout
As an example of what can be achieved with this OXP, the Compressed F7 Layout OXP removes all the blank lines between entries on the F7 screen, compressing the data. It also moves information from Distant Suns and Explorers Club into this section.
You can download this OXP here: CompressedF7Layout.oxz v1.3 (downloaded 206 times).
Download
Download SystemDataConfig.oxz v0.9 (downloaded 244 times).
Download SystemDataConfig.zip v0.9 (extract OXP folder to AddOns)
License
This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 4.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
Version History
0.9
- Fixed issue with formatting distance text when there is no route from the source to target destinations.
0.8
- Corrections to manifest.plist file.
0.7
- Fixed issue with distance to unreachable systems sometimes having too many decimal places.
0.6
- Fixed issue with incorrect TL being shown for systems.
0.5
- Added some documentation and a readme.txt file.
0.4
- Initial public release
Links
- F7 page (data on "system") details the F7 screen and the oxp's which affect it.
- Combo F7 Layout is an equivalent to both this and System Data Config which is specially tailored to the Strangers World suite of OXPs which add much more information to the F7 screen
Quick Facts
Version | Released | License | Features | Category | Author(s) | Feedback |
---|---|---|---|---|---|---|
0.9 | 2020-06-29 | CC BY-NC-SA 4.0 | Utilities | Misc OXPs | phkb | Oolite BB |