b68dd2e189
This makes it easier to spot syntax errors when editing the class reference. The schema is referenced locally so validation can still work offline. Each class XML's schema conformance is also checked on GitHub Actions.
124 lines
6 KiB
XML
124 lines
6 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="EditorExportPlugin" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
|
|
<brief_description>
|
|
A script that is executed when exporting the project.
|
|
</brief_description>
|
|
<description>
|
|
[EditorExportPlugin]s are automatically invoked whenever the user exports the project. Their most common use is to determine what files are being included in the exported project. For each plugin, [method _export_begin] is called at the beginning of the export process and then [method _export_file] is called for each exported file.
|
|
To use [EditorExportPlugin], register it using the [method EditorPlugin.add_export_plugin] method first.
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="_export_begin" qualifiers="virtual">
|
|
<return type="void" />
|
|
<argument index="0" name="features" type="PackedStringArray" />
|
|
<argument index="1" name="is_debug" type="bool" />
|
|
<argument index="2" name="path" type="String" />
|
|
<argument index="3" name="flags" type="int" />
|
|
<description>
|
|
Virtual method to be overridden by the user. It is called when the export starts and provides all information about the export. [code]features[/code] is the list of features for the export, [code]is_debug[/code] is [code]true[/code] for debug builds, [code]path[/code] is the target path for the exported project. [code]flags[/code] is only used when running a runnable profile, e.g. when using native run on Android.
|
|
</description>
|
|
</method>
|
|
<method name="_export_end" qualifiers="virtual">
|
|
<return type="void" />
|
|
<description>
|
|
Virtual method to be overridden by the user. Called when the export is finished.
|
|
</description>
|
|
</method>
|
|
<method name="_export_file" qualifiers="virtual">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<argument index="1" name="type" type="String" />
|
|
<argument index="2" name="features" type="PackedStringArray" />
|
|
<description>
|
|
Virtual method to be overridden by the user. Called for each exported file, providing arguments that can be used to identify the file. [code]path[/code] is the path of the file, [code]type[/code] is the [Resource] represented by the file (e.g. [PackedScene]) and [code]features[/code] is the list of features for the export.
|
|
Calling [method skip] inside this callback will make the file not included in the export.
|
|
</description>
|
|
</method>
|
|
<method name="add_file">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<argument index="1" name="file" type="PackedByteArray" />
|
|
<argument index="2" name="remap" type="bool" />
|
|
<description>
|
|
Adds a custom file to be exported. [code]path[/code] is the virtual path that can be used to load the file, [code]file[/code] is the binary data of the file. If [code]remap[/code] is [code]true[/code], file will not be exported, but instead remapped to the given [code]path[/code].
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_bundle_file">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<description>
|
|
Adds an iOS bundle file from the given [code]path[/code] to the exported project.
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_cpp_code">
|
|
<return type="void" />
|
|
<argument index="0" name="code" type="String" />
|
|
<description>
|
|
Adds a C++ code to the iOS export. The final code is created from the code appended by each active export plugin.
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_embedded_framework">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<description>
|
|
Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's Xcode project and embeds it into resulting binary.
|
|
[b]Note:[/b] For static libraries (*.a) works in same way as [code]add_ios_framework[/code].
|
|
This method should not be used for System libraries as they are already present on the device.
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_framework">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<description>
|
|
Adds a static library (*.a) or dynamic library (*.dylib, *.framework) to Linking Phase in iOS's Xcode project.
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_linker_flags">
|
|
<return type="void" />
|
|
<argument index="0" name="flags" type="String" />
|
|
<description>
|
|
Adds linker flags for the iOS export.
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_plist_content">
|
|
<return type="void" />
|
|
<argument index="0" name="plist_content" type="String" />
|
|
<description>
|
|
Adds content for iOS Property List files.
|
|
</description>
|
|
</method>
|
|
<method name="add_ios_project_static_lib">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<description>
|
|
Adds a static lib from the given [code]path[/code] to the iOS project.
|
|
</description>
|
|
</method>
|
|
<method name="add_osx_plugin_file">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<description>
|
|
Adds file or directory matching [code]path[/code] to [code]PlugIns[/code] directory of macOS app bundle.
|
|
[b]Note:[/b] This is useful only for macOS exports.
|
|
</description>
|
|
</method>
|
|
<method name="add_shared_object">
|
|
<return type="void" />
|
|
<argument index="0" name="path" type="String" />
|
|
<argument index="1" name="tags" type="PackedStringArray" />
|
|
<description>
|
|
Adds a shared object or a directory containing only shared objects with the given [code]tags[/code] and destination [code]path[/code].
|
|
[b]Note:[/b] In case of macOS exports, those shared objects will be added to [code]Frameworks[/code] directory of app bundle.
|
|
In case of a directory code-sign will error if you place non code object in directory.
|
|
</description>
|
|
</method>
|
|
<method name="skip">
|
|
<return type="void" />
|
|
<description>
|
|
To be called inside [method _export_file]. Skips the current file, so it's not included in the export.
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
</class>
|