Commit Graph

56 Commits

Author SHA1 Message Date
3613306bba Fix miscellaneous oddities around the class reference (part 5) 2025-06-06 15:21:25 +02:00
13f642d959 Replace XML codeblock spaces with tabs 2025-06-06 14:35:38 +02:00
1ca5bc2d04 Doc: Add "required" qualifier to methods 2025-06-05 21:41:07 +08:00
457299449d Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00
845c925b67 Add support for export plugins to modify the Android prebuilt manifest 2025-03-14 16:05:09 -07:00
2cf5461b7d Merge pull request #94092 from allenwp/editor-export-plugin-docs-94045
`EditorExportPlugin` docs: Workaround for customized texture behavior
2024-11-11 14:17:58 -06:00
9d25cf76f2 Improve _begin_customize_scenes description 2024-10-17 20:36:32 +05:30
c6e994bf6d EditorExportPlugin docs: Workaround for #94045. Describes behaviour of customizing texture resources.
The list of types that should not be both customized and skipped was created through trial-and-error with the following import types:

- AnimationLibrary
- BitMap
- Translation
- CompressedCubemap
- CompressedCubemapArray
- FontFile
- FontFile
- FontFile
- RDShaderFile
- Image
- AudioStreamMP3
- AudioStreamWAV
- ArrayMesh
- PackedScene
- CompressedTexture2D
- CompressedTexture2DArray
- CompressedTexture3D
- AtlasTexture
- AudioStreamOggVorbis

The reason `skip()` should not be called is because the original resource will now point to the `.ctex` (or equivalent) file of the resource that replaced it. In this scenario, the `.ctex` file that was initially referenced by the original resource will no longer be included in the project.

Co-authored-by: Tomek <kobewi4e@gmail.com>
2024-09-30 09:20:56 -04:00
7a909896f7 Expose get_export_option_visibility to editor plugins 2024-09-29 15:05:05 -07:00
07e986f728 Allow adding custom export platforms using scripts / GDExtension. 2024-08-28 10:29:01 +03:00
8e6596629a EditorExportPlugin: Call _export_file for all resource types
- Alternate fix to #67844 that calls `_export_file` for all resource types instead of implementing `skip()` for customize functions.
- Fixes #93823.
- Moved logic surrounding "Skip" and "Keep" imported files to happen before resource customization. Fixes #93825.
- Also fixes an issue that I suspect might exist where progress bars during export were incorrect due to imported files in the project that are configured as "Keep" or "Skip".
2024-07-04 23:35:32 -04:00
262e5db785 Revert "Allow skipping imported resource files from export"
This reverts commit 398892ccc0.
2024-07-03 09:54:03 -04:00
32f0b252cd Updated documentation for new EditorExportPlugin behaviour.
This behaviour was introduced in #90365. This also fixes some inconsistencies in the docs and adds clarification of how the _export_file function works.
2024-07-02 11:56:16 -04:00
398892ccc0 Allow skipping imported resource files from export 2024-04-08 12:26:24 +02:00
ac88acde6f Allow export plugins to override export option values 2024-02-14 10:51:16 -06:00
cc0eebd9d8 Validate code tags for class and member references
This commit also adds means to manually disable warnings
in `code` tags where it's a false positive with the new
`skip-lint` attribute.

Warnings are now enabled on CI to prevent future errors.
2023-10-03 15:48:31 +02:00
faaf27f284 Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
c4b5161ed1 Fix invalid use of markdown syntax in classref
Also:
* changed `[b]true[/b]` to `[code]true[/code]`
* use `[i]` for mathematical constant "e"
* use `[b]` for button text & menu item text
* improve markups about "tap1" and "tap2" in AudioEffectDelay
2023-08-01 22:44:31 +08:00
d17811c814 Re-architect how Android plugins are packaged and handled at export time
The previous packaging format for Godot Android plugins consisted of the plugin's `gdap` config file accompanied by binaries defined in the `gdap` file.
This format is now deprecated (starting with Godot 4.2), and instead Godot Android plugins are now packaged as `EditorExportPlugin` plugins.

The `EditorExportPlugin` class has been updated with the following methods to provide the necessary set of functionality:
- `_supports_platform`: returns true if the plugin supports the given platform
- `_get_android_dependencies`: retrieve the set of android dependencies (e.g: `org.godot.example:my-plugin:0.0.0`) provided by the plugin
- `_get_android_dependencies_maven_repos`: retrieve the urls of the maven repos for the provided android dependencies
- `_get_android_libraries`: retrieve the local paths of the android libraries (AAR files) provided by the plugin
- `_get_android_manifest_activity_element_contents`: update the contents of the `<activity>` element in the generated Android manifest
- `_get_android_manifest_application_element_contents`: update the contents of the `<application>` element in the generated Android manifest
- `_get_android_manifest_element_contents`: update the contents of the `<manifest>` element in the generated Android manifest
2023-07-18 19:14:53 +02:00
df1d354d36 Clarify EditorExportPlugin::add_file only remaps in _export_file 2023-07-11 09:27:21 +08:00
81064cc239 Doctool: Remove version attribute from XML header
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
346f1ab86b Bump version to 4.2-dev
Keep on waitin'
2023-07-05 22:07:03 +02:00
6963e84b58 Allow EditorExportPlugins to provide export options 2023-04-07 19:18:00 +02:00
1c1524a651 Bump version to 4.1-dev
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
24589d7ca3 Improve documentation of EditorExportPlugin 2023-02-27 11:54:01 +01:00
2e167ca943 Bind EditorExportPlugin::_get_export_features 2023-02-07 23:14:20 +01:00
ef17c4668a Add support for scene/resource customization in export plugins
EditorExportPlugin adds a set of callbacks to allow customizing scenes, resources or subresources in all files exported:
* Can take scene files, resource files and subresources in all of them.
* Uses a cache for the converted files if nothing changes, so this work only happens if a file is modified.
* Uses hashing to differentiate export configuration caches.
* Removed the previous conversion code to binary, as this one uses existing stuff.

This API is useful in several scenarios:
* Needed by the "server" export platform to get rid of textures, meshes, audio, etc.
* Needed by text to binary converters.
* Needed by eventual optimizations such as shader precompiling on export, mesh merging and optimization, etc.

This is a draft, feedback is very welcome.
2022-09-01 11:16:00 +02:00
ea2192b99e [doc] Use "param" instead of "code" to refer to parameters (6) 2022-08-12 12:07:53 -04:00
c5d7115038 Rename the argument tag to param in XML documentation 2022-08-08 22:34:31 +03:00
8823eae328 Rename OSX to macOS and iPhoneOS to iOS. 2022-07-21 09:37:52 +03:00
98d0af7d5c Implement GDExtension export plugin. 2022-03-16 11:16:19 +02:00
b68dd2e189 Add an XML schema for documentation
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.
2022-02-15 00:03:31 +01:00
5e0e4f209a OSX: Add signing of directory structure in Library when exporting for OSX.
OSX: Add exporting of folder structure in PlugIns when exporting for OSX.
2021-12-28 14:39:42 +01:00
7515af8c25 Improve docs about plugin registration 2021-10-17 01:52:36 +02:00
d54f2ad7ca Don't generate empty doc sections and reduce code duplication 2021-09-20 20:59:33 -05:00
7adf4cc9b5 doc: Use self-closing tags for return and argument
For the time being we don't support writing a description for those, preferring
having all details in the method's description.

Using self-closing tags saves half the lines, and prevents contributors from
thinking that they should write the argument or return documentation there.
2021-07-30 15:29:52 +02:00
04688b92ff Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
8b231aff28 Complete documentation of EditorExportPlugin 2020-12-29 13:46:14 +01:00
ee03e39da7 doc: Sync classref with current source 2020-08-31 11:25:11 +02:00
1661309d59 iOS Export: Add a method to embed a framework
By default 'add_ios_framework' would not embed a framework to save previous behavior.
New 'add_ios_embedded_framework' would embed framework on export.
2020-08-19 14:35:54 +03:00
d9a560d783 doc: Sync classref with current source 2020-04-03 10:11:23 +02:00
e103f21a40 Add LOTS of missing docs 2020-03-13 16:35:03 +01:00
213a85521d doc: Sync classref with current source
Handle removal of Pool*Array types and other recent changes.
2020-02-18 14:02:02 +01:00
57e27683ba Update docs to version 4.0 2020-01-31 17:15:41 -08:00
2d20fc39aa doc: Drop unused 'category' property from header
We already removed it from the online docs with #35132.

Currently it can only be "Built-In Types" (Variant types) or "Core"
(everything else), which is of limited use.

We might also want to consider dropping it from `ClassDB` altogether
in Godot 4.0.
2020-01-26 16:02:39 +01:00
aebca30c43 Fixed virtual method not showing up in autocomplete and docs 2019-05-23 22:31:02 +01:00
6af69f851a doc: Drop unused <demos> tag 2019-04-19 11:03:46 +02:00
39c868171e doc: Bump version to 3.2 2019-04-01 12:33:56 +02:00
3fa77b3172 doc: Remove status from hardcoded version string
It has no practical use case and just generates noise for each alpha, beta, etc.
2018-02-27 13:40:49 +01:00
3c7a39b40c doc: Update version string in header 2018-02-19 10:46:33 +01:00