Skip to content

Commit

Permalink
Add a way to get autoloads through the api (#1131)
Browse files Browse the repository at this point in the history
* add autoloads to api

* A name Dilemma, There are 2 autoloads for ImportApi

* add docstring
  • Loading branch information
Variable-ind authored Nov 9, 2024
1 parent d289235 commit af703d4
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions src/Autoload/ExtensionsApi.gd
Original file line number Diff line number Diff line change
Expand Up @@ -381,6 +381,10 @@ class PanelAPI:

## Gives access to theme related functions.
class ThemeAPI:
## Returns the Themes autoload. Allows interacting with themes on a more deeper level.
func autoload() -> Themes:
return Themes

## Adds the [param theme] to [code]Edit -> Preferences -> Interface -> Themes[/code].
func add_theme(theme: Theme) -> void:
Themes.add_theme(theme)
Expand Down Expand Up @@ -438,6 +442,10 @@ class ToolAPI:
# gdlint: ignore=constant-name
const LayerTypes := Global.LayerTypes

## Returns the Tools autoload. Allows interacting with tools on a more deeper level.
func autoload() -> Tools:
return Tools

## Adds a tool to pixelorama with name [param tool_name] (without spaces),
## display name [param display_name], tool scene [param scene], layers that the tool works
## on [param layer_types] defined by [constant LayerTypes],
Expand Down Expand Up @@ -678,6 +686,11 @@ class ExportAPI:
# gdlint: ignore=constant-name
const ExportTab := Export.ExportTab

## Returns the Export autoload.
## Allows interacting with the export workflow on a more deeper level.
func autoload() -> Export:
return Export

## [param format_info] has keys: [code]extension[/code] and [code]description[/code]
## whose values are of type [String] e.g:[codeblock]
## format_info = {"extension": ".gif", "description": "GIF Image"}
Expand Down Expand Up @@ -730,6 +743,15 @@ class ExportAPI:

## Gives access to adding custom import options.
class ImportAPI:
## Returns the OpenSave autoload. Contains code to handle file loading.
## It also contains code to handle project saving (.pxo)
func open_save_autoload() -> OpenSave:
return OpenSave

## Returns the Import autoload. Manages import of brushes and patterns.
func import_autoload() -> Import:
return Import

## [param import_scene] is a scene preload that will be instanced and added to "import options"
## section of pixelorama's import dialogs and will appear whenever [param import_name] is
## chosen from import menu.
Expand Down Expand Up @@ -757,6 +779,10 @@ class ImportAPI:

## Gives access to palette related stuff.
class PaletteAPI:
## Returns the Palettes autoload. Allows interacting with palettes on a more deeper level.
func autoload() -> Palettes:
return Palettes

## Creates and adds a new [Palette] with name [param palette_name] containing [param data].
## [param data] is a [Dictionary] containing the palette information.
## An example of [code]data[/code] will be:[codeblock]
Expand Down

0 comments on commit af703d4

Please sign in to comment.