diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml new file mode 100644 index 000000000..81e0564fa --- /dev/null +++ b/.github/workflows/docs.yaml @@ -0,0 +1,28 @@ +name: "πŸ“„ Documentation" +on: + push: + branches: + - main +permissions: + contents: write +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Configure Git Credentials + run: | + git config user.name github-actions[bot] + git config user.email 41898282+github-actions[bot]@users.noreply.github.com + - uses: actions/setup-python@v5 + with: + python-version: 3.x + - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + key: mkdocs-material-${{ env.cache_id }} + path: ~/.cache + restore-keys: | + mkdocs-material- + - run: pip install mkdocs-material mkdocs-awesome-nav + - run: mkdocs gh-deploy --force diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 0494b2cda..10d9c1a59 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -14,4 +14,4 @@ jobs: steps: - uses: actions/checkout@v3 - run: | - make in-docker IMAGE_TAG=4.4.1 TARGET='import test GAMESCOPE_CMD=' + make in-docker IMAGE_TAG=4.5.1 TARGET='import docs dist test GAMESCOPE_CMD=' diff --git a/.gitignore b/.gitignore index 517c866f1..4d6ed0ef9 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ settings.mk RyzenAdj .gut_editor_config.json result +target diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 000000000..4adb33d48 --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,18 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-24.04 + tools: + python: "3" + jobs: + pre_install: + - pip install mkdocs-material mkdocs-awesome-nav + +mkdocs: + configuration: mkdocs.yml diff --git a/.releaserc.yaml b/.releaserc.yaml index 00f86b5ab..76c60c692 100644 --- a/.releaserc.yaml +++ b/.releaserc.yaml @@ -35,7 +35,7 @@ plugins: # Execute commands to build the project - - "@semantic-release/exec" - shell: true - prepareCmd: "make in-docker IMAGE_TAG=4.5.1 TARGET='force-import dist update-pkgbuild-hash'" + prepareCmd: "make in-docker IMAGE_TAG=4.5.1 TARGET='force-import docs dist update-pkgbuild-hash'" publishCmd: "echo '${nextRelease.version}' > .version.txt" # Commit the following changes to git after other plugins have run @@ -44,6 +44,8 @@ plugins: - core/global/version.tres - package/rpm/opengamepadui.spec - package/archlinux/PKGBUILD + - docs/class-reference/.nav.yml + - docs/class-reference/*.md # Publish artifacts as a GitHub release - - "@semantic-release/github" diff --git a/Makefile b/Makefile index 7c419f5c1..1ac624295 100644 --- a/Makefile +++ b/Makefile @@ -207,25 +207,38 @@ debug-overlay: $(IMPORT_DIR) ## Run the project in debug mode in gamescope with --position 320,140 res://entrypoint.tscn --overlay-mode -- steam -gamepadui -steamos3 -steampal -steamdeck .PHONY: docs -docs: docs/api/classes/.generated ## Generate docs +docs: docs/api/classes/.generated ## Generate class reference docs docs/api/classes/.generated: $(IMPORT_DIR) $(ALL_GDSCRIPT) - rm -rf docs/api/classes - mkdir -p docs/api/classes + rm -rf $(CACHE_DIR)/docs/api/classes + mkdir -p $(CACHE_DIR)/docs/api/classes + @echo "Generating GDExtension class references" $(GODOT) \ --editor \ --quit \ - --doctool docs/api/classes \ + --doctool $(CACHE_DIR)/docs/api/classes \ --no-docbase \ --gdextension-docs + mv $(CACHE_DIR)/docs/api/classes/doc_classes/*.xml $(CACHE_DIR)/docs/api/classes + rmdir $(CACHE_DIR)/docs/api/classes/doc_classes + @echo "Generating GDScript class references" $(GODOT) \ --editor \ --path $(PWD) \ --quit \ - --doctool docs/api/classes \ + --doctool $(CACHE_DIR)/docs/api/classes \ --no-docbase \ - --gdscript-docs core - rm -rf docs/api/classes/core--* - $(MAKE) -C docs/api rst + --gdscript-docs . + @echo "Removing non-class documentation" + rm $(CACHE_DIR)/docs/api/classes/entrypoint.gd.xml + rm -rf $(CACHE_DIR)/docs/api/classes/core--* + rm -rf $(CACHE_DIR)/docs/api/classes/addons--* + rm -rf $(CACHE_DIR)/docs/api/classes/plugins--* + $(MAKE) docgen + +docgen: + rm -f ./docs/class-reference/*.md + cd ./extensions && \ + cargo run --bin docgen -- ../$(CACHE_DIR)/docs/api/classes ../docs/class-reference .PHONY: inspect inspect: $(IMPORT_DIR) ## Launch Gamescope inspector diff --git a/README.md b/README.md index 3c7c413d2..a02eb8588 100644 --- a/README.md +++ b/README.md @@ -11,11 +11,11 @@ Discord

- OpenGamepadUI screenshot + OpenGamepadUI screenshot

- OpenGamepadUI screenshot - OpenGamepadUI screenshot - OpenGamepadUI screenshot + OpenGamepadUI screenshot + OpenGamepadUI screenshot + OpenGamepadUI screenshot

diff --git a/core/systems/threading/linuxthread_test.gd b/core/systems/threading/linuxthread_test.gd deleted file mode 100644 index 97396e3f2..000000000 --- a/core/systems/threading/linuxthread_test.gd +++ /dev/null @@ -1,10 +0,0 @@ -extends GutTest - - -func test_subreaper_create_process() -> void: - var pid := SubReaper.create_process("sleep", ["1"]) - gut.p("Got reaper PID: " + str(pid)) - - assert_true(OS.is_process_running(pid), "reaper process should be running") - await wait_seconds(2) - assert_false(OS.is_process_running(pid), "reaper process should have exited") diff --git a/docs/.nav.yml b/docs/.nav.yml new file mode 100644 index 000000000..193f56c62 --- /dev/null +++ b/docs/.nav.yml @@ -0,0 +1,4 @@ +nav: + - Home: ./index.md + - ./documentation + - ./class-reference diff --git a/docs/api/.gitignore b/docs/api/.gitignore deleted file mode 100644 index 51b6dc595..000000000 --- a/docs/api/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -_build -classes diff --git a/docs/api/Makefile b/docs/api/Makefile deleted file mode 100644 index 495affdbd..000000000 --- a/docs/api/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -BASEDIR = . -CLASSES = "$(BASEDIR)/classes/" -OUTPUTDIR = $(BASEDIR)/_build -TOOLSDIR = $(BASEDIR)/tools -LANGARG ?= en -LANGCMD = -l $(LANGARG) - -.ONESHELL: - -clean: - rm -rf "$(OUTPUTDIR)" - -doxygen: - rm -rf "$(OUTPUTDIR)/doxygen" - mkdir -p "$(OUTPUTDIR)/doxygen" - doxygen Doxyfile - -rst: - rm -rf "$(OUTPUTDIR)/rst" - mkdir -p "$(OUTPUTDIR)/rst" - python3 "$(TOOLSDIR)/make_rst.py" -o "$(OUTPUTDIR)/rst" "$(LANGCMD)" $(CLASSES) diff --git a/docs/api/tools/.gitignore b/docs/api/tools/.gitignore deleted file mode 100644 index bee8a64b7..000000000 --- a/docs/api/tools/.gitignore +++ /dev/null @@ -1 +0,0 @@ -__pycache__ diff --git a/docs/api/tools/doc_status.py b/docs/api/tools/doc_status.py deleted file mode 100755 index 717a468b3..000000000 --- a/docs/api/tools/doc_status.py +++ /dev/null @@ -1,502 +0,0 @@ -#!/usr/bin/env python3 - -import fnmatch -import os -import sys -import re -import math -import platform -import xml.etree.ElementTree as ET -from typing import Dict, List, Set - -################################################################################ -# Config # -################################################################################ - -flags = { - "c": platform.platform() != "Windows", # Disable by default on windows, since we use ANSI escape codes - "b": False, - "g": False, - "s": False, - "u": False, - "h": False, - "p": False, - "o": True, - "i": False, - "a": True, - "e": False, -} -flag_descriptions = { - "c": "Toggle colors when outputting.", - "b": "Toggle showing only not fully described classes.", - "g": "Toggle showing only completed classes.", - "s": "Toggle showing comments about the status.", - "u": "Toggle URLs to docs.", - "h": "Show help and exit.", - "p": "Toggle showing percentage as well as counts.", - "o": "Toggle overall column.", - "i": "Toggle collapse of class items columns.", - "a": "Toggle showing all items.", - "e": "Toggle hiding empty items.", -} -long_flags = { - "colors": "c", - "use-colors": "c", - "bad": "b", - "only-bad": "b", - "good": "g", - "only-good": "g", - "comments": "s", - "status": "s", - "urls": "u", - "gen-url": "u", - "help": "h", - "percent": "p", - "use-percentages": "p", - "overall": "o", - "use-overall": "o", - "items": "i", - "collapse": "i", - "all": "a", - "empty": "e", -} -table_columns = [ - "name", - "brief_description", - "description", - "methods", - "constants", - "members", - "theme_items", - "signals", - "operators", - "constructors", -] -table_column_names = [ - "Name", - "Brief Desc.", - "Desc.", - "Methods", - "Constants", - "Members", - "Theme Items", - "Signals", - "Operators", - "Constructors", -] -colors = { - "name": [36], # cyan - "part_big_problem": [4, 31], # underline, red - "part_problem": [31], # red - "part_mostly_good": [33], # yellow - "part_good": [32], # green - "url": [4, 34], # underline, blue - "section": [1, 4], # bold, underline - "state_off": [36], # cyan - "state_on": [1, 35], # bold, magenta/plum - "bold": [1], # bold -} -overall_progress_description_weight = 10 - - -################################################################################ -# Utils # -################################################################################ - - -def validate_tag(elem: ET.Element, tag: str) -> None: - if elem.tag != tag: - print('Tag mismatch, expected "' + tag + '", got ' + elem.tag) - sys.exit(255) - - -def color(color: str, string: str) -> str: - if flags["c"] and terminal_supports_color(): - color_format = "" - for code in colors[color]: - color_format += "\033[" + str(code) + "m" - return color_format + string + "\033[0m" - else: - return string - - -ansi_escape = re.compile(r"\x1b[^m]*m") - - -def nonescape_len(s: str) -> int: - return len(ansi_escape.sub("", s)) - - -def terminal_supports_color(): - p = sys.platform - supported_platform = p != "Pocket PC" and (p != "win32" or "ANSICON" in os.environ) - - is_a_tty = hasattr(sys.stdout, "isatty") and sys.stdout.isatty() - if not supported_platform or not is_a_tty: - return False - return True - - -################################################################################ -# Classes # -################################################################################ - - -class ClassStatusProgress: - def __init__(self, described: int = 0, total: int = 0): - self.described: int = described - self.total: int = total - - def __add__(self, other: "ClassStatusProgress"): - return ClassStatusProgress(self.described + other.described, self.total + other.total) - - def increment(self, described: bool): - if described: - self.described += 1 - self.total += 1 - - def is_ok(self): - return self.described >= self.total - - def to_configured_colored_string(self): - if flags["p"]: - return self.to_colored_string("{percent}% ({has}/{total})", "{pad_percent}{pad_described}{s}{pad_total}") - else: - return self.to_colored_string() - - def to_colored_string(self, format: str = "{has}/{total}", pad_format: str = "{pad_described}{s}{pad_total}"): - ratio = float(self.described) / float(self.total) if self.total != 0 else 1 - percent = int(round(100 * ratio)) - s = format.format(has=str(self.described), total=str(self.total), percent=str(percent)) - if self.described >= self.total: - s = color("part_good", s) - elif self.described >= self.total / 4 * 3: - s = color("part_mostly_good", s) - elif self.described > 0: - s = color("part_problem", s) - else: - s = color("part_big_problem", s) - pad_size = max(len(str(self.described)), len(str(self.total))) - pad_described = "".ljust(pad_size - len(str(self.described))) - pad_percent = "".ljust(3 - len(str(percent))) - pad_total = "".ljust(pad_size - len(str(self.total))) - return pad_format.format(pad_described=pad_described, pad_total=pad_total, pad_percent=pad_percent, s=s) - - -class ClassStatus: - def __init__(self, name: str = ""): - self.name: str = name - self.has_brief_description: bool = True - self.has_description: bool = True - self.progresses: Dict[str, ClassStatusProgress] = { - "methods": ClassStatusProgress(), - "constants": ClassStatusProgress(), - "members": ClassStatusProgress(), - "theme_items": ClassStatusProgress(), - "signals": ClassStatusProgress(), - "operators": ClassStatusProgress(), - "constructors": ClassStatusProgress(), - } - - def __add__(self, other: "ClassStatus"): - new_status = ClassStatus() - new_status.name = self.name - new_status.has_brief_description = self.has_brief_description and other.has_brief_description - new_status.has_description = self.has_description and other.has_description - for k in self.progresses: - new_status.progresses[k] = self.progresses[k] + other.progresses[k] - return new_status - - def is_ok(self): - ok = True - ok = ok and self.has_brief_description - ok = ok and self.has_description - for k in self.progresses: - ok = ok and self.progresses[k].is_ok() - return ok - - def is_empty(self): - sum = 0 - for k in self.progresses: - if self.progresses[k].is_ok(): - continue - sum += self.progresses[k].total - return sum < 1 - - def make_output(self) -> Dict[str, str]: - output: Dict[str, str] = {} - output["name"] = color("name", self.name) - - ok_string = color("part_good", "OK") - missing_string = color("part_big_problem", "MISSING") - - output["brief_description"] = ok_string if self.has_brief_description else missing_string - output["description"] = ok_string if self.has_description else missing_string - - description_progress = ClassStatusProgress( - (self.has_brief_description + self.has_description) * overall_progress_description_weight, - 2 * overall_progress_description_weight, - ) - items_progress = ClassStatusProgress() - - for k in ["methods", "constants", "members", "theme_items", "signals", "constructors", "operators"]: - items_progress += self.progresses[k] - output[k] = self.progresses[k].to_configured_colored_string() - - output["items"] = items_progress.to_configured_colored_string() - - output["overall"] = (description_progress + items_progress).to_colored_string( - color("bold", "{percent}%"), "{pad_percent}{s}" - ) - - if self.name.startswith("Total"): - output["url"] = color("url", "https://docs.godotengine.org/en/latest/classes/") - if flags["s"]: - output["comment"] = color("part_good", "ALL OK") - else: - output["url"] = color( - "url", "https://docs.godotengine.org/en/latest/classes/class_{name}.html".format(name=self.name.lower()) - ) - - if flags["s"] and not flags["g"] and self.is_ok(): - output["comment"] = color("part_good", "ALL OK") - - return output - - @staticmethod - def generate_for_class(c: ET.Element): - status = ClassStatus() - status.name = c.attrib["name"] - - for tag in list(c): - len_tag_text = 0 if (tag.text is None) else len(tag.text.strip()) - - if tag.tag == "brief_description": - status.has_brief_description = len_tag_text > 0 - - elif tag.tag == "description": - status.has_description = len_tag_text > 0 - - elif tag.tag in ["methods", "signals", "operators", "constructors"]: - for sub_tag in list(tag): - descr = sub_tag.find("description") - increment = (descr is not None) and (descr.text is not None) and len(descr.text.strip()) > 0 - status.progresses[tag.tag].increment(increment) - elif tag.tag in ["constants", "members", "theme_items"]: - for sub_tag in list(tag): - if not sub_tag.text is None: - status.progresses[tag.tag].increment(len(sub_tag.text.strip()) > 0) - - elif tag.tag in ["tutorials"]: - pass # Ignore those tags for now - - else: - print(tag.tag, tag.attrib) - - return status - - -################################################################################ -# Arguments # -################################################################################ - -input_file_list: List[str] = [] -input_class_list: List[str] = [] -merged_file: str = "" - -for arg in sys.argv[1:]: - try: - if arg.startswith("--"): - flags[long_flags[arg[2:]]] = not flags[long_flags[arg[2:]]] - elif arg.startswith("-"): - for f in arg[1:]: - flags[f] = not flags[f] - elif os.path.isdir(arg): - for f in os.listdir(arg): - if f.endswith(".xml"): - input_file_list.append(os.path.join(arg, f)) - else: - input_class_list.append(arg) - except KeyError: - print("Unknown command line flag: " + arg) - sys.exit(1) - -if flags["i"]: - for r in ["methods", "constants", "members", "signals", "theme_items"]: - index = table_columns.index(r) - del table_column_names[index] - del table_columns[index] - table_column_names.append("Items") - table_columns.append("items") - -if flags["o"] == (not flags["i"]): - table_column_names.append(color("bold", "Overall")) - table_columns.append("overall") - -if flags["u"]: - table_column_names.append("Docs URL") - table_columns.append("url") - - -################################################################################ -# Help # -################################################################################ - -if len(input_file_list) < 1 or flags["h"]: - if not flags["h"]: - print(color("section", "Invalid usage") + ": Please specify a classes directory") - print(color("section", "Usage") + ": doc_status.py [flags] [class names]") - print("\t< and > signify required parameters, while [ and ] signify optional parameters.") - print(color("section", "Available flags") + ":") - possible_synonym_list = list(long_flags) - possible_synonym_list.sort() - flag_list = list(flags) - flag_list.sort() - for flag in flag_list: - synonyms = [color("name", "-" + flag)] - for synonym in possible_synonym_list: - if long_flags[synonym] == flag: - synonyms.append(color("name", "--" + synonym)) - - print( - ( - "{synonyms} (Currently " - + color("state_" + ("on" if flags[flag] else "off"), "{value}") - + ")\n\t{description}" - ).format( - synonyms=", ".join(synonyms), - value=("on" if flags[flag] else "off"), - description=flag_descriptions[flag], - ) - ) - sys.exit(0) - - -################################################################################ -# Parse class list # -################################################################################ - -class_names: List[str] = [] -classes: Dict[str, ET.Element] = {} - -for file in input_file_list: - tree = ET.parse(file) - doc = tree.getroot() - - if doc.attrib["name"] in class_names: - continue - class_names.append(doc.attrib["name"]) - classes[doc.attrib["name"]] = doc - -class_names.sort() - -if len(input_class_list) < 1: - input_class_list = ["*"] - -filtered_classes_set: Set[str] = set() -for pattern in input_class_list: - filtered_classes_set |= set(fnmatch.filter(class_names, pattern)) -filtered_classes = list(filtered_classes_set) -filtered_classes.sort() - -################################################################################ -# Make output table # -################################################################################ - -table = [table_column_names] -table_row_chars = "| - " -table_column_chars = "|" - -total_status = ClassStatus("Total") - -for cn in filtered_classes: - c = classes[cn] - validate_tag(c, "class") - status = ClassStatus.generate_for_class(c) - - total_status = total_status + status - - if (flags["b"] and status.is_ok()) or (flags["g"] and not status.is_ok()) or (not flags["a"]): - continue - - if flags["e"] and status.is_empty(): - continue - - out = status.make_output() - row: List[str] = [] - for column in table_columns: - if column in out: - row.append(out[column]) - else: - row.append("") - - if "comment" in out and out["comment"] != "": - row.append(out["comment"]) - - table.append(row) - - -################################################################################ -# Print output table # -################################################################################ - -if len(table) == 1 and flags["a"]: - print(color("part_big_problem", "No classes suitable for printing!")) - sys.exit(0) - -if len(table) > 2 or not flags["a"]: - total_status.name = "Total = {0}".format(len(table) - 1) - out = total_status.make_output() - row = [] - for column in table_columns: - if column in out: - row.append(out[column]) - else: - row.append("") - table.append(row) - -if flags["a"]: - # Duplicate the headers at the bottom of the table so they can be viewed - # without having to scroll back to the top. - table.append(table_column_names) - -table_column_sizes: List[int] = [] -for row in table: - for cell_i, cell in enumerate(row): - if cell_i >= len(table_column_sizes): - table_column_sizes.append(0) - - table_column_sizes[cell_i] = max(nonescape_len(cell), table_column_sizes[cell_i]) - -divider_string = table_row_chars[0] -for cell_i in range(len(table[0])): - divider_string += ( - table_row_chars[1] + table_row_chars[2] * (table_column_sizes[cell_i]) + table_row_chars[1] + table_row_chars[0] - ) - -for row_i, row in enumerate(table): - row_string = table_column_chars - for cell_i, cell in enumerate(row): - padding_needed = table_column_sizes[cell_i] - nonescape_len(cell) + 2 - if cell_i == 0: - row_string += table_row_chars[3] + cell + table_row_chars[3] * (padding_needed - 1) - else: - row_string += ( - table_row_chars[3] * int(math.floor(float(padding_needed) / 2)) - + cell - + table_row_chars[3] * int(math.ceil(float(padding_needed) / 2)) - ) - row_string += table_column_chars - - print(row_string) - - # Account for the possible double header (if the `a` flag is enabled). - # No need to have a condition for the flag, as this will behave correctly - # if the flag is disabled. - if row_i == 0 or row_i == len(table) - 3 or row_i == len(table) - 2: - print(divider_string) - -print(divider_string) - -if total_status.is_ok() and not flags["g"]: - print("All listed classes are " + color("part_good", "OK") + "!") diff --git a/docs/api/tools/make_rst.py b/docs/api/tools/make_rst.py deleted file mode 100755 index 3c65d2f5b..000000000 --- a/docs/api/tools/make_rst.py +++ /dev/null @@ -1,2264 +0,0 @@ -#!/usr/bin/env python3 - -# This script makes RST files from the XML class reference for use with the online docs. - -import argparse -import os -import platform -import re -import sys -import xml.etree.ElementTree as ET -from collections import OrderedDict -from typing import List, Dict, TextIO, Tuple, Optional, Any, Union - -# Import hardcoded version information from version.py -root_directory = os.path.join(os.path.dirname(os.path.abspath(__file__)), "../../") -sys.path.append(root_directory) # Include the root directory -import version - -# $DOCS_URL/path/to/page.html(#fragment-tag) -GODOT_DOCS_PATTERN = re.compile(r"^\$DOCS_URL/(.*)\.html(#.*)?$") - -# Based on reStructuredText inline markup recognition rules -# https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#inline-markup-recognition-rules -MARKUP_ALLOWED_PRECEDENT = " -:/'\"<([{" -MARKUP_ALLOWED_SUBSEQUENT = " -.,:;!?\\/'\")]}>" - -# Used to translate section headings and other hardcoded strings when required with -# the --lang argument. The BASE_STRINGS list should be synced with what we actually -# write in this script (check `translate()` uses), and also hardcoded in -# `scripts/extract_classes.py` (godotengine/godot-editor-l10n repo) to include them in the source POT file. -BASE_STRINGS = [ - "All classes", - "Globals", - "Nodes", - "Resources", - "Editor-only", - "Other objects", - "Variant types", - "Description", - "Tutorials", - "Properties", - "Constructors", - "Methods", - "Operators", - "Theme Properties", - "Signals", - "Enumerations", - "Constants", - "Annotations", - "Property Descriptions", - "Constructor Descriptions", - "Method Descriptions", - "Operator Descriptions", - "Theme Property Descriptions", - "Inherits:", - "Inherited By:", - "(overrides %s)", - "Default", - "Setter", - "value", - "Getter", - "This method should typically be overridden by the user to have any effect.", - "This method has no side effects. It doesn't modify any of the instance's member variables.", - "This method accepts any number of arguments after the ones described here.", - "This method is used to construct a type.", - "This method doesn't need an instance to be called, so it can be called directly using the class name.", - "This method describes a valid operator to use with this type as left-hand operand.", - "This value is an integer composed as a bitmask of the following flags.", - "There is currently no description for this class. Please help us by :ref:`contributing one `!", - "There is currently no description for this signal. Please help us by :ref:`contributing one `!", - "There is currently no description for this annotation. Please help us by :ref:`contributing one `!", - "There is currently no description for this property. Please help us by :ref:`contributing one `!", - "There is currently no description for this constructor. Please help us by :ref:`contributing one `!", - "There is currently no description for this method. Please help us by :ref:`contributing one `!", - "There is currently no description for this operator. Please help us by :ref:`contributing one `!", - "There is currently no description for this theme property. Please help us by :ref:`contributing one `!", - "There are notable differences when using this API with C#. See :ref:`doc_c_sharp_differences` for more information.", -] -strings_l10n: Dict[str, str] = {} - -STYLES: Dict[str, str] = {} - -CLASS_GROUPS: Dict[str, str] = { - "global": "Globals", - "node": "Nodes", - "resource": "Resources", - "object": "Other objects", - "editor": "Editor-only", - "variant": "Variant types", -} -CLASS_GROUPS_BASE: Dict[str, str] = { - "node": "Node", - "resource": "Resource", - "object": "Object", - "variant": "Variant", -} -# Sync with editor\register_editor_types.cpp -EDITOR_CLASSES: List[str] = [ - "FileSystemDock", - "ScriptCreateDialog", - "ScriptEditor", - "ScriptEditorBase", -] -# Sync with the types mentioned in https://docs.godotengine.org/en/stable/tutorials/scripting/c_sharp/c_sharp_differences.html -CLASSES_WITH_CSHARP_DIFFERENCES: List[str] = [ - "@GlobalScope", - "String", - "NodePath", - "Signal", - "Callable", - "RID", - "Basis", - "Transform2D", - "Transform3D", - "Rect2", - "Rect2i", - "AABB", - "Quaternion", - "Projection", - "Color", - "Array", - "Dictionary", - "PackedByteArray", - "PackedColorArray", - "PackedFloat32Array", - "PackedFloat64Array", - "PackedInt32Array", - "PackedInt64Array", - "PackedStringArray", - "PackedVector2Array", - "PackedVector3Array", - "Variant", -] - - -class State: - def __init__(self) -> None: - self.num_errors = 0 - self.num_warnings = 0 - self.classes: OrderedDict[str, ClassDef] = OrderedDict() - self.current_class: str = "" - - def parse_class(self, class_root: ET.Element, filepath: str) -> None: - class_name = class_root.attrib["name"] - self.current_class = class_name - - class_def = ClassDef(class_name) - self.classes[class_name] = class_def - class_def.filepath = filepath - - inherits = class_root.get("inherits") - if inherits is not None: - class_def.inherits = inherits - - brief_desc = class_root.find("brief_description") - if brief_desc is not None and brief_desc.text: - class_def.brief_description = brief_desc.text - - desc = class_root.find("description") - if desc is not None and desc.text: - class_def.description = desc.text - - properties = class_root.find("members") - if properties is not None: - for property in properties: - assert property.tag == "member" - - property_name = property.attrib["name"] - if property_name in class_def.properties: - print_error(f'{class_name}.xml: Duplicate property "{property_name}".', self) - continue - - type_name = TypeName.from_element(property) - setter = property.get("setter") or None # Use or None so '' gets turned into None. - getter = property.get("getter") or None - default_value = property.get("default") or None - if default_value is not None: - default_value = f"``{default_value}``" - overrides = property.get("overrides") or None - - property_def = PropertyDef( - property_name, type_name, setter, getter, property.text, default_value, overrides - ) - class_def.properties[property_name] = property_def - - constructors = class_root.find("constructors") - if constructors is not None: - for constructor in constructors: - assert constructor.tag == "constructor" - - method_name = constructor.attrib["name"] - qualifiers = constructor.get("qualifiers") - - return_element = constructor.find("return") - if return_element is not None: - return_type = TypeName.from_element(return_element) - else: - return_type = TypeName("void") - - params = self.parse_params(constructor, "constructor") - - desc_element = constructor.find("description") - method_desc = None - if desc_element is not None: - method_desc = desc_element.text - - method_def = MethodDef(method_name, return_type, params, method_desc, qualifiers) - method_def.definition_name = "constructor" - if method_name not in class_def.constructors: - class_def.constructors[method_name] = [] - - class_def.constructors[method_name].append(method_def) - - methods = class_root.find("methods") - if methods is not None: - for method in methods: - assert method.tag == "method" - - method_name = method.attrib["name"] - qualifiers = method.get("qualifiers") - - return_element = method.find("return") - if return_element is not None: - return_type = TypeName.from_element(return_element) - - else: - return_type = TypeName("void") - - params = self.parse_params(method, "method") - - desc_element = method.find("description") - method_desc = None - if desc_element is not None: - method_desc = desc_element.text - - method_def = MethodDef(method_name, return_type, params, method_desc, qualifiers) - if method_name not in class_def.methods: - class_def.methods[method_name] = [] - - class_def.methods[method_name].append(method_def) - - operators = class_root.find("operators") - if operators is not None: - for operator in operators: - assert operator.tag == "operator" - - method_name = operator.attrib["name"] - qualifiers = operator.get("qualifiers") - - return_element = operator.find("return") - if return_element is not None: - return_type = TypeName.from_element(return_element) - - else: - return_type = TypeName("void") - - params = self.parse_params(operator, "operator") - - desc_element = operator.find("description") - method_desc = None - if desc_element is not None: - method_desc = desc_element.text - - method_def = MethodDef(method_name, return_type, params, method_desc, qualifiers) - method_def.definition_name = "operator" - if method_name not in class_def.operators: - class_def.operators[method_name] = [] - - class_def.operators[method_name].append(method_def) - - constants = class_root.find("constants") - if constants is not None: - for constant in constants: - assert constant.tag == "constant" - - constant_name = constant.attrib["name"] - value = constant.attrib["value"] - enum = constant.get("enum") - is_bitfield = constant.get("is_bitfield") == "true" - constant_def = ConstantDef(constant_name, value, constant.text, is_bitfield) - if enum is None: - if constant_name in class_def.constants: - print_error(f'{class_name}.xml: Duplicate constant "{constant_name}".', self) - continue - - class_def.constants[constant_name] = constant_def - - else: - if enum in class_def.enums: - enum_def = class_def.enums[enum] - - else: - enum_def = EnumDef(enum, TypeName("int", enum), is_bitfield) - class_def.enums[enum] = enum_def - - enum_def.values[constant_name] = constant_def - - annotations = class_root.find("annotations") - if annotations is not None: - for annotation in annotations: - assert annotation.tag == "annotation" - - annotation_name = annotation.attrib["name"] - qualifiers = annotation.get("qualifiers") - - params = self.parse_params(annotation, "annotation") - - desc_element = annotation.find("description") - annotation_desc = None - if desc_element is not None: - annotation_desc = desc_element.text - - annotation_def = AnnotationDef(annotation_name, params, annotation_desc, qualifiers) - if annotation_name not in class_def.annotations: - class_def.annotations[annotation_name] = [] - - class_def.annotations[annotation_name].append(annotation_def) - - signals = class_root.find("signals") - if signals is not None: - for signal in signals: - assert signal.tag == "signal" - - signal_name = signal.attrib["name"] - - if signal_name in class_def.signals: - print_error(f'{class_name}.xml: Duplicate signal "{signal_name}".', self) - continue - - params = self.parse_params(signal, "signal") - - desc_element = signal.find("description") - signal_desc = None - if desc_element is not None: - signal_desc = desc_element.text - - signal_def = SignalDef(signal_name, params, signal_desc) - class_def.signals[signal_name] = signal_def - - theme_items = class_root.find("theme_items") - if theme_items is not None: - for theme_item in theme_items: - assert theme_item.tag == "theme_item" - - theme_item_name = theme_item.attrib["name"] - theme_item_data_name = theme_item.attrib["data_type"] - theme_item_id = "{}_{}".format(theme_item_data_name, theme_item_name) - if theme_item_id in class_def.theme_items: - print_error( - f'{class_name}.xml: Duplicate theme item "{theme_item_name}" of type "{theme_item_data_name}".', - self, - ) - continue - - default_value = theme_item.get("default") or None - if default_value is not None: - default_value = f"``{default_value}``" - - theme_item_def = ThemeItemDef( - theme_item_name, - TypeName.from_element(theme_item), - theme_item_data_name, - theme_item.text, - default_value, - ) - class_def.theme_items[theme_item_name] = theme_item_def - - tutorials = class_root.find("tutorials") - if tutorials is not None: - for link in tutorials: - assert link.tag == "link" - - if link.text is not None: - class_def.tutorials.append((link.text.strip(), link.get("title", ""))) - - self.current_class = "" - - def parse_params(self, root: ET.Element, context: str) -> List["ParameterDef"]: - param_elements = root.findall("param") - params: Any = [None] * len(param_elements) - - for param_index, param_element in enumerate(param_elements): - param_name = param_element.attrib["name"] - index = int(param_element.attrib["index"]) - type_name = TypeName.from_element(param_element) - default = param_element.get("default") - - if param_name.strip() == "" or param_name.startswith("_unnamed_arg"): - print_error( - f'{self.current_class}.xml: Empty argument name in {context} "{root.attrib["name"]}" at position {param_index}.', - self, - ) - - params[index] = ParameterDef(param_name, type_name, default) - - cast: List[ParameterDef] = params - - return cast - - def sort_classes(self) -> None: - self.classes = OrderedDict(sorted(self.classes.items(), key=lambda t: t[0].lower())) - - -class TypeName: - def __init__(self, type_name: str, enum: Optional[str] = None, is_bitfield: bool = False) -> None: - self.type_name = type_name - self.enum = enum - self.is_bitfield = is_bitfield - - def to_rst(self, state: State) -> str: - if self.enum is not None: - return make_enum(self.enum, self.is_bitfield, state) - elif self.type_name == "void": - return "void" - else: - return make_type(self.type_name, state) - - @classmethod - def from_element(cls, element: ET.Element) -> "TypeName": - return cls(element.attrib["type"], element.get("enum"), element.get("is_bitfield") == "true") - - -class DefinitionBase: - def __init__( - self, - definition_name: str, - name: str, - ) -> None: - self.definition_name = definition_name - self.name = name - - -class PropertyDef(DefinitionBase): - def __init__( - self, - name: str, - type_name: TypeName, - setter: Optional[str], - getter: Optional[str], - text: Optional[str], - default_value: Optional[str], - overrides: Optional[str], - ) -> None: - super().__init__("property", name) - - self.type_name = type_name - self.setter = setter - self.getter = getter - self.text = text - self.default_value = default_value - self.overrides = overrides - - -class ParameterDef(DefinitionBase): - def __init__(self, name: str, type_name: TypeName, default_value: Optional[str]) -> None: - super().__init__("parameter", name) - - self.type_name = type_name - self.default_value = default_value - - -class SignalDef(DefinitionBase): - def __init__(self, name: str, parameters: List[ParameterDef], description: Optional[str]) -> None: - super().__init__("signal", name) - - self.parameters = parameters - self.description = description - - -class AnnotationDef(DefinitionBase): - def __init__( - self, - name: str, - parameters: List[ParameterDef], - description: Optional[str], - qualifiers: Optional[str], - ) -> None: - super().__init__("annotation", name) - - self.parameters = parameters - self.description = description - self.qualifiers = qualifiers - - -class MethodDef(DefinitionBase): - def __init__( - self, - name: str, - return_type: TypeName, - parameters: List[ParameterDef], - description: Optional[str], - qualifiers: Optional[str], - ) -> None: - super().__init__("method", name) - - self.return_type = return_type - self.parameters = parameters - self.description = description - self.qualifiers = qualifiers - - -class ConstantDef(DefinitionBase): - def __init__(self, name: str, value: str, text: Optional[str], bitfield: bool) -> None: - super().__init__("constant", name) - - self.value = value - self.text = text - self.is_bitfield = bitfield - - -class EnumDef(DefinitionBase): - def __init__(self, name: str, type_name: TypeName, bitfield: bool) -> None: - super().__init__("enum", name) - - self.type_name = type_name - self.values: OrderedDict[str, ConstantDef] = OrderedDict() - self.is_bitfield = bitfield - - -class ThemeItemDef(DefinitionBase): - def __init__( - self, name: str, type_name: TypeName, data_name: str, text: Optional[str], default_value: Optional[str] - ) -> None: - super().__init__("theme item", name) - - self.type_name = type_name - self.data_name = data_name - self.text = text - self.default_value = default_value - - -class ClassDef(DefinitionBase): - def __init__(self, name: str) -> None: - super().__init__("class", name) - - self.constants: OrderedDict[str, ConstantDef] = OrderedDict() - self.enums: OrderedDict[str, EnumDef] = OrderedDict() - self.properties: OrderedDict[str, PropertyDef] = OrderedDict() - self.constructors: OrderedDict[str, List[MethodDef]] = OrderedDict() - self.methods: OrderedDict[str, List[MethodDef]] = OrderedDict() - self.operators: OrderedDict[str, List[MethodDef]] = OrderedDict() - self.signals: OrderedDict[str, SignalDef] = OrderedDict() - self.annotations: OrderedDict[str, List[AnnotationDef]] = OrderedDict() - self.theme_items: OrderedDict[str, ThemeItemDef] = OrderedDict() - self.inherits: Optional[str] = None - self.brief_description: Optional[str] = None - self.description: Optional[str] = None - self.tutorials: List[Tuple[str, str]] = [] - - # Used to match the class with XML source for output filtering purposes. - self.filepath: str = "" - - -# Entry point for the RST generator. -def main() -> None: - # Enable ANSI escape code support on Windows 10 and later (for colored console output). - # - if platform.system().lower() == "windows": - from ctypes import windll, c_int, byref # type: ignore - - stdout_handle = windll.kernel32.GetStdHandle(c_int(-11)) - mode = c_int(0) - windll.kernel32.GetConsoleMode(c_int(stdout_handle), byref(mode)) - mode = c_int(mode.value | 4) - windll.kernel32.SetConsoleMode(c_int(stdout_handle), mode) - - parser = argparse.ArgumentParser() - parser.add_argument("path", nargs="+", help="A path to an XML file or a directory containing XML files to parse.") - parser.add_argument("--filter", default="", help="The filepath pattern for XML files to filter.") - parser.add_argument("--lang", "-l", default="en", help="Language to use for section headings.") - parser.add_argument( - "--color", - action="store_true", - help="If passed, force colored output even if stdout is not a TTY (useful for continuous integration).", - ) - group = parser.add_mutually_exclusive_group() - group.add_argument("--output", "-o", default=".", help="The directory to save output .rst files in.") - group.add_argument( - "--dry-run", - action="store_true", - help="If passed, no output will be generated and XML files are only checked for errors.", - ) - args = parser.parse_args() - - should_color = args.color or (hasattr(sys.stdout, "isatty") and sys.stdout.isatty()) - STYLES["red"] = "\x1b[91m" if should_color else "" - STYLES["green"] = "\x1b[92m" if should_color else "" - STYLES["yellow"] = "\x1b[93m" if should_color else "" - STYLES["bold"] = "\x1b[1m" if should_color else "" - STYLES["regular"] = "\x1b[22m" if should_color else "" - STYLES["reset"] = "\x1b[0m" if should_color else "" - - # Retrieve heading translations for the given language. - if not args.dry_run and args.lang != "en": - lang_file = os.path.join( - os.path.dirname(os.path.realpath(__file__)), "..", "translations", "{}.po".format(args.lang) - ) - if os.path.exists(lang_file): - try: - import polib # type: ignore - except ImportError: - print("Base template strings localization requires `polib`.") - exit(1) - - pofile = polib.pofile(lang_file) - for entry in pofile.translated_entries(): - if entry.msgid in BASE_STRINGS: - strings_l10n[entry.msgid] = entry.msgstr - else: - print(f'No PO file at "{lang_file}" for language "{args.lang}".') - - print("Checking for errors in the XML class reference...") - - file_list: List[str] = [] - - for path in args.path: - # Cut off trailing slashes so os.path.basename doesn't choke. - if path.endswith("/") or path.endswith("\\"): - path = path[:-1] - - if os.path.basename(path) in ["modules", "platform"]: - for subdir, dirs, _ in os.walk(path): - if "doc_classes" in dirs: - doc_dir = os.path.join(subdir, "doc_classes") - class_file_names = (f for f in os.listdir(doc_dir) if f.endswith(".xml")) - file_list += (os.path.join(doc_dir, f) for f in class_file_names) - - elif os.path.isdir(path): - file_list += (os.path.join(path, f) for f in os.listdir(path) if f.endswith(".xml")) - - elif os.path.isfile(path): - if not path.endswith(".xml"): - print(f'Got non-.xml file "{path}" in input, skipping.') - continue - - file_list.append(path) - - classes: Dict[str, Tuple[ET.Element, str]] = {} - state = State() - - for cur_file in file_list: - try: - tree = ET.parse(cur_file) - except ET.ParseError as e: - print_error(f"{cur_file}: Parse error while reading the file: {e}", state) - continue - doc = tree.getroot() - - name = doc.attrib["name"] - if name in classes: - print_error(f'{cur_file}: Duplicate class "{name}".', state) - continue - - classes[name] = (doc, cur_file) - - for name, data in classes.items(): - try: - state.parse_class(data[0], data[1]) - except Exception as e: - print_error(f"{name}.xml: Exception while parsing class: {e}", state) - - state.sort_classes() - - pattern = re.compile(args.filter) - - # Create the output folder recursively if it doesn't already exist. - os.makedirs(args.output, exist_ok=True) - - print("Generating the RST class reference...") - - grouped_classes: Dict[str, List[str]] = {} - - for class_name, class_def in state.classes.items(): - if args.filter and not pattern.search(class_def.filepath): - continue - state.current_class = class_name - make_rst_class(class_def, state, args.dry_run, args.output) - - group_name = get_class_group(class_def, state) - - if group_name not in grouped_classes: - grouped_classes[group_name] = [] - grouped_classes[group_name].append(class_name) - - if is_editor_class(class_def): - if "editor" not in grouped_classes: - grouped_classes["editor"] = [] - grouped_classes["editor"].append(class_name) - - print("") - print("Generating the index file...") - - make_rst_index(grouped_classes, args.dry_run, args.output) - - print("") - - if state.num_warnings >= 2: - print( - f'{STYLES["yellow"]}{state.num_warnings} warnings were found in the class reference XML. Please check the messages above.{STYLES["reset"]}' - ) - elif state.num_warnings == 1: - print( - f'{STYLES["yellow"]}1 warning was found in the class reference XML. Please check the messages above.{STYLES["reset"]}' - ) - - if state.num_errors == 0: - print(f'{STYLES["green"]}No errors found in the class reference XML.{STYLES["reset"]}') - if not args.dry_run: - print(f"Wrote reStructuredText files for each class to: {args.output}") - else: - if state.num_errors >= 2: - print( - f'{STYLES["red"]}{state.num_errors} errors were found in the class reference XML. Please check the messages above.{STYLES["reset"]}' - ) - else: - print( - f'{STYLES["red"]}1 error was found in the class reference XML. Please check the messages above.{STYLES["reset"]}' - ) - exit(1) - - -# Common helpers. - - -def print_error(error: str, state: State) -> None: - print(f'{STYLES["red"]}{STYLES["bold"]}ERROR:{STYLES["regular"]} {error}{STYLES["reset"]}') - state.num_errors += 1 - - -def print_warning(warning: str, state: State) -> None: - print(f'{STYLES["yellow"]}{STYLES["bold"]}WARNING:{STYLES["regular"]} {warning}{STYLES["reset"]}') - state.num_warnings += 1 - - -def translate(string: str) -> str: - """Translate a string based on translations sourced from `doc/translations/*.po` - for a language if defined via the --lang command line argument. - Returns the original string if no translation exists. - """ - return strings_l10n.get(string, string) - - -def get_git_branch() -> str: - if hasattr(version, "docs") and version.docs != "latest": - return version.docs - - return "master" - - -def get_class_group(class_def: ClassDef, state: State) -> str: - group_name = "node" - class_name = class_def.name - - if class_name.startswith("@"): - group_name = "global" - elif class_def.inherits: - inherits = class_def.inherits.strip() - - while inherits in state.classes: - if inherits == "Node": - group_name = "node" - break - if inherits == "Resource": - group_name = "resource" - break - if inherits == "Object": - group_name = "object" - break - - inode = state.classes[inherits].inherits - if inode: - inherits = inode.strip() - else: - break - - # Assume the group - if inherits == "Node": - group_name = "node" - if inherits == "Resource": - group_name = "resource" - if inherits == "Object": - group_name = "object" - if inherits == "RefCounted": - group_name = "object" - - return group_name - - -def is_editor_class(class_def: ClassDef) -> bool: - class_name = class_def.name - - if class_name.startswith("Editor"): - return True - if class_name in EDITOR_CLASSES: - return True - - return False - - -# Generator methods. - - -def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: str) -> None: - class_name = class_def.name - - if dry_run: - f = open(os.devnull, "w", encoding="utf-8") - else: - f = open(os.path.join(output_dir, f"class_{class_name.lower()}.rst"), "w", encoding="utf-8") - - # Remove the "Edit on Github" button from the online docs page. - f.write(":github_url: hide\n\n") - - # Warn contributors not to edit this file directly. - # Also provide links to the source files for reference. - - git_branch = get_git_branch() - source_xml_path = os.path.relpath(class_def.filepath, root_directory).replace("\\", "/") - source_github_url = f"https://github.com/godotengine/godot/tree/{git_branch}/{source_xml_path}" - generator_github_url = f"https://github.com/godotengine/godot/tree/{git_branch}/doc/tools/make_rst.py" - - f.write(".. DO NOT EDIT THIS FILE!!!\n") - f.write(".. Generated automatically from Godot engine sources.\n") - f.write(f".. Generator: {generator_github_url}.\n") - f.write(f".. XML source: {source_github_url}.\n\n") - - # Document reference id and header. - f.write(f".. _class_{class_name}:\n\n") - f.write(make_heading(class_name, "=", False)) - - ### INHERITANCE TREE ### - - # Ascendants - if class_def.inherits: - inherits = class_def.inherits.strip() - f.write(f'**{translate("Inherits:")}** ') - first = True - while inherits in state.classes: - if not first: - f.write(" **<** ") - else: - first = False - - f.write(make_type(inherits, state)) - inode = state.classes[inherits].inherits - if inode: - inherits = inode.strip() - else: - break - - # Assume we inherit from a Godot class if not found - if inherits not in state.classes: - if not first: - f.write(" **<** ") - f.write(make_type(inherits, state)) - - f.write("\n\n") - - # Descendants - inherited: List[str] = [] - for c in state.classes.values(): - if c.inherits and c.inherits.strip() == class_name: - inherited.append(c.name) - - if len(inherited): - f.write(f'**{translate("Inherited By:")}** ') - for i, child in enumerate(inherited): - if i > 0: - f.write(", ") - f.write(make_type(child, state)) - f.write("\n\n") - - ### INTRODUCTION ### - - has_description = False - - # Brief description - if class_def.brief_description is not None and class_def.brief_description.strip() != "": - has_description = True - - f.write(f"{format_text_block(class_def.brief_description.strip(), class_def, state)}\n\n") - - # Class description - if class_def.description is not None and class_def.description.strip() != "": - has_description = True - - f.write(".. rst-class:: classref-introduction-group\n\n") - f.write(make_heading("Description", "-")) - - f.write(f"{format_text_block(class_def.description.strip(), class_def, state)}\n\n") - - if not has_description: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this class. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - if class_def.name in CLASSES_WITH_CSHARP_DIFFERENCES: - f.write(".. note::\n\n\t") - f.write( - translate( - "There are notable differences when using this API with C#. See :ref:`doc_c_sharp_differences` for more information." - ) - + "\n\n" - ) - - # Online tutorials - if len(class_def.tutorials) > 0: - f.write(".. rst-class:: classref-introduction-group\n\n") - f.write(make_heading("Tutorials", "-")) - - for url, title in class_def.tutorials: - f.write(f"- {make_link(url, title)}\n\n") - - ### REFERENCE TABLES ### - - # Reused container for reference tables. - ml: List[Tuple[Optional[str], ...]] = [] - - # Properties reference table - if len(class_def.properties) > 0: - f.write(".. rst-class:: classref-reftable-group\n\n") - f.write(make_heading("Properties", "-")) - - ml = [] - for property_def in class_def.properties.values(): - type_rst = property_def.type_name.to_rst(state) - default = property_def.default_value - if default is not None and property_def.overrides: - ref = f":ref:`{property_def.overrides}`" - # Not using translate() for now as it breaks table formatting. - ml.append((type_rst, property_def.name, f"{default} (overrides {ref})")) - else: - ref = f":ref:`{property_def.name}`" - ml.append((type_rst, ref, default)) - - format_table(f, ml, True) - - # Constructors, Methods, Operators reference tables - if len(class_def.constructors) > 0: - f.write(".. rst-class:: classref-reftable-group\n\n") - f.write(make_heading("Constructors", "-")) - - ml = [] - for method_list in class_def.constructors.values(): - for m in method_list: - ml.append(make_method_signature(class_def, m, "constructor", state)) - - format_table(f, ml) - - if len(class_def.methods) > 0: - f.write(".. rst-class:: classref-reftable-group\n\n") - f.write(make_heading("Methods", "-")) - - ml = [] - for method_list in class_def.methods.values(): - for m in method_list: - ml.append(make_method_signature(class_def, m, "method", state)) - - format_table(f, ml) - - if len(class_def.operators) > 0: - f.write(".. rst-class:: classref-reftable-group\n\n") - f.write(make_heading("Operators", "-")) - - ml = [] - for method_list in class_def.operators.values(): - for m in method_list: - ml.append(make_method_signature(class_def, m, "operator", state)) - - format_table(f, ml) - - # Theme properties reference table - if len(class_def.theme_items) > 0: - f.write(".. rst-class:: classref-reftable-group\n\n") - f.write(make_heading("Theme Properties", "-")) - - ml = [] - for theme_item_def in class_def.theme_items.values(): - ref = f":ref:`{theme_item_def.name}`" - ml.append((theme_item_def.type_name.to_rst(state), ref, theme_item_def.default_value)) - - format_table(f, ml, True) - - ### DETAILED DESCRIPTIONS ### - - # Signal descriptions - if len(class_def.signals) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Signals", "-")) - - index = 0 - - for signal in class_def.signals.values(): - if index != 0: - f.write(make_separator()) - - # Create signal signature and anchor point. - - f.write(f".. _class_{class_name}_signal_{signal.name}:\n\n") - f.write(".. rst-class:: classref-signal\n\n") - - _, signature = make_method_signature(class_def, signal, "", state) - f.write(f"{signature}\n\n") - - # Add signal description, or a call to action if it's missing. - - if signal.description is not None and signal.description.strip() != "": - f.write(f"{format_text_block(signal.description.strip(), signal, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this signal. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - # Enumeration descriptions - if len(class_def.enums) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Enumerations", "-")) - - index = 0 - - for e in class_def.enums.values(): - if index != 0: - f.write(make_separator()) - - # Create enumeration signature and anchor point. - - f.write(f".. _enum_{class_name}_{e.name}:\n\n") - f.write(".. rst-class:: classref-enumeration\n\n") - - if e.is_bitfield: - f.write(f"flags **{e.name}**:\n\n") - else: - f.write(f"enum **{e.name}**:\n\n") - - for value in e.values.values(): - # Also create signature and anchor point for each enum constant. - - f.write(f".. _class_{class_name}_constant_{value.name}:\n\n") - f.write(".. rst-class:: classref-enumeration-constant\n\n") - - f.write(f"{e.type_name.to_rst(state)} **{value.name}** = ``{value.value}``\n\n") - - # Add enum constant description. - - if value.text is not None and value.text.strip() != "": - f.write(f"{format_text_block(value.text.strip(), value, state)}") - - f.write("\n\n") - - index += 1 - - # Constant descriptions - if len(class_def.constants) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Constants", "-")) - - for constant in class_def.constants.values(): - # Create constant signature and anchor point. - - f.write(f".. _class_{class_name}_constant_{constant.name}:\n\n") - f.write(".. rst-class:: classref-constant\n\n") - - f.write(f"**{constant.name}** = ``{constant.value}``\n\n") - - # Add enum constant description. - - if constant.text is not None and constant.text.strip() != "": - f.write(f"{format_text_block(constant.text.strip(), constant, state)}") - - f.write("\n\n") - - # Annotation descriptions - if len(class_def.annotations) > 0: - f.write(make_separator(True)) - f.write(make_heading("Annotations", "-")) - - index = 0 - - for method_list in class_def.annotations.values(): # type: ignore - for i, m in enumerate(method_list): - if index != 0: - f.write(make_separator()) - - # Create annotation signature and anchor point. - - if i == 0: - f.write(f".. _class_{class_name}_annotation_{m.name}:\n\n") - - f.write(".. rst-class:: classref-annotation\n\n") - - _, signature = make_method_signature(class_def, m, "", state) - f.write(f"{signature}\n\n") - - # Add annotation description, or a call to action if it's missing. - - if m.description is not None and m.description.strip() != "": - f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this annotation. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - # Property descriptions - if any(not p.overrides for p in class_def.properties.values()) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Property Descriptions", "-")) - - index = 0 - - for property_def in class_def.properties.values(): - if property_def.overrides: - continue - - if index != 0: - f.write(make_separator()) - - # Create property signature and anchor point. - - f.write(f".. _class_{class_name}_property_{property_def.name}:\n\n") - f.write(".. rst-class:: classref-property\n\n") - - property_default = "" - if property_def.default_value is not None: - property_default = f" = {property_def.default_value}" - f.write(f"{property_def.type_name.to_rst(state)} **{property_def.name}**{property_default}\n\n") - - # Create property setter and getter records. - - property_setget = "" - - if property_def.setter is not None and not property_def.setter.startswith("_"): - property_setter = make_setter_signature(class_def, property_def, state) - property_setget += f"- {property_setter}\n" - - if property_def.getter is not None and not property_def.getter.startswith("_"): - property_getter = make_getter_signature(class_def, property_def, state) - property_setget += f"- {property_getter}\n" - - if property_setget != "": - f.write(".. rst-class:: classref-property-setget\n\n") - f.write(property_setget) - f.write("\n") - - # Add property description, or a call to action if it's missing. - - if property_def.text is not None and property_def.text.strip() != "": - f.write(f"{format_text_block(property_def.text.strip(), property_def, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this property. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - # Constructor, Method, Operator descriptions - if len(class_def.constructors) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Constructor Descriptions", "-")) - - index = 0 - - for method_list in class_def.constructors.values(): - for i, m in enumerate(method_list): - if index != 0: - f.write(make_separator()) - - # Create constructor signature and anchor point. - - if i == 0: - f.write(f".. _class_{class_name}_constructor_{m.name}:\n\n") - - f.write(".. rst-class:: classref-constructor\n\n") - - ret_type, signature = make_method_signature(class_def, m, "", state) - f.write(f"{ret_type} {signature}\n\n") - - # Add constructor description, or a call to action if it's missing. - - if m.description is not None and m.description.strip() != "": - f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this constructor. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - if len(class_def.methods) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Method Descriptions", "-")) - - index = 0 - - for method_list in class_def.methods.values(): - for i, m in enumerate(method_list): - if index != 0: - f.write(make_separator()) - - # Create method signature and anchor point. - - if i == 0: - f.write(f".. _class_{class_name}_method_{m.name}:\n\n") - - f.write(".. rst-class:: classref-method\n\n") - - ret_type, signature = make_method_signature(class_def, m, "", state) - f.write(f"{ret_type} {signature}\n\n") - - # Add method description, or a call to action if it's missing. - - if m.description is not None and m.description.strip() != "": - f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this method. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - if len(class_def.operators) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Operator Descriptions", "-")) - - index = 0 - - for method_list in class_def.operators.values(): - for i, m in enumerate(method_list): - if index != 0: - f.write(make_separator()) - - # Create operator signature and anchor point. - - operator_anchor = f".. _class_{class_name}_operator_{sanitize_operator_name(m.name, state)}" - for parameter in m.parameters: - operator_anchor += f"_{parameter.type_name.type_name}" - operator_anchor += f":\n\n" - f.write(operator_anchor) - - f.write(".. rst-class:: classref-operator\n\n") - - ret_type, signature = make_method_signature(class_def, m, "", state) - f.write(f"{ret_type} {signature}\n\n") - - # Add operator description, or a call to action if it's missing. - - if m.description is not None and m.description.strip() != "": - f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this operator. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - # Theme property descriptions - if len(class_def.theme_items) > 0: - f.write(make_separator(True)) - f.write(".. rst-class:: classref-descriptions-group\n\n") - f.write(make_heading("Theme Property Descriptions", "-")) - - index = 0 - - for theme_item_def in class_def.theme_items.values(): - if index != 0: - f.write(make_separator()) - - # Create theme property signature and anchor point. - - f.write(f".. _class_{class_name}_theme_{theme_item_def.data_name}_{theme_item_def.name}:\n\n") - f.write(".. rst-class:: classref-themeproperty\n\n") - - theme_item_default = "" - if theme_item_def.default_value is not None: - theme_item_default = f" = {theme_item_def.default_value}" - f.write(f"{theme_item_def.type_name.to_rst(state)} **{theme_item_def.name}**{theme_item_default}\n\n") - - # Add theme property description, or a call to action if it's missing. - - if theme_item_def.text is not None and theme_item_def.text.strip() != "": - f.write(f"{format_text_block(theme_item_def.text.strip(), theme_item_def, state)}\n\n") - else: - f.write(".. container:: contribute\n\n\t") - f.write( - translate( - "There is currently no description for this theme property. Please help us by :ref:`contributing one `!" - ) - + "\n\n" - ) - - index += 1 - - f.write(make_footer()) - - -def make_type(klass: str, state: State) -> str: - if klass.find("*") != -1: # Pointer, ignore - return klass - link_type = klass - if link_type.endswith("[]"): # Typed array, strip [] to link to contained type. - link_type = link_type[:-2] - if link_type in state.classes: - return f":ref:`{klass}`" - # Assume failures should link to Godot docs - return f"`{link_type} `_" - #print_error(f'{state.current_class}.xml: Unresolved type "{klass}".', state) - #return klass - - -def make_enum(t: str, is_bitfield: bool, state: State) -> str: - p = t.find(".") - if p >= 0: - c = t[0:p] - e = t[p + 1 :] - # Variant enums live in GlobalScope but still use periods. - if c == "Variant": - c = "@GlobalScope" - e = "Variant." + e - else: - c = state.current_class - e = t - if c in state.classes and e not in state.classes[c].enums: - c = "@GlobalScope" - - if c in state.classes and e in state.classes[c].enums: - if is_bitfield: - if not state.classes[c].enums[e].is_bitfield: - print_error(f'{state.current_class}.xml: Enum "{t}" is not bitfield.', state) - return f"|bitfield|\<:ref:`{e}`\>" - else: - return f":ref:`{e}`" - - # HashingContext.HashType - # https://docs.godotengine.org/en/stable/classes/class_hashingcontext.html#enum-hashingcontext-hashtype - parts = t.split(".") - if len(parts) > 1: - class_name = parts[0] - child = parts[1] - return f"`{t} `_" - - # Assume failures will link to Godot docs - return f"`{t} `_" - - # Don't fail for `Vector3.Axis`, as this enum is a special case which is expected not to be resolved. - if f"{c}.{e}" != "Vector3.Axis": - print_error(f'{state.current_class}.xml: Unresolved enum "{t}".', state) - - return t - - -def make_method_signature( - class_def: ClassDef, definition: Union[AnnotationDef, MethodDef, SignalDef], ref_type: str, state: State -) -> Tuple[str, str]: - ret_type = "" - - if isinstance(definition, MethodDef): - ret_type = definition.return_type.to_rst(state) - - qualifiers = None - if isinstance(definition, (MethodDef, AnnotationDef)): - qualifiers = definition.qualifiers - - out = "" - if isinstance(definition, MethodDef) and ref_type != "": - if ref_type == "operator": - op_name = definition.name.replace("<", "\\<") # So operator "<" gets correctly displayed. - out += f":ref:`{op_name}` " - else: - out += f":ref:`{definition.name}` " - else: - out += f"**{definition.name}** " - - out += "**(**" - for i, arg in enumerate(definition.parameters): - if i > 0: - out += ", " - else: - out += " " - - out += f"{arg.type_name.to_rst(state)} {arg.name}" - - if arg.default_value is not None: - out += f"={arg.default_value}" - - if qualifiers is not None and "vararg" in qualifiers: - if len(definition.parameters) > 0: - out += ", ..." - else: - out += " ..." - - out += " **)**" - - if qualifiers is not None: - # Use substitutions for abbreviations. This is used to display tooltips on hover. - # See `make_footer()` for descriptions. - for qualifier in qualifiers.split(): - out += f" |{qualifier}|" - - return ret_type, out - - -def make_setter_signature(class_def: ClassDef, property_def: PropertyDef, state: State) -> str: - if property_def.setter is None: - return "" - - # If setter is a method available as a method definition, we use that. - if property_def.setter in class_def.methods: - setter = class_def.methods[property_def.setter][0] - # Otherwise we fake it with the information we have available. - else: - setter_params: List[ParameterDef] = [] - setter_params.append(ParameterDef("value", property_def.type_name, None)) - setter = MethodDef(property_def.setter, TypeName("void"), setter_params, None, None) - - ret_type, signature = make_method_signature(class_def, setter, "", state) - return f"{ret_type} {signature}" - - -def make_getter_signature(class_def: ClassDef, property_def: PropertyDef, state: State) -> str: - if property_def.getter is None: - return "" - - # If getter is a method available as a method definition, we use that. - if property_def.getter in class_def.methods: - getter = class_def.methods[property_def.getter][0] - # Otherwise we fake it with the information we have available. - else: - getter_params: List[ParameterDef] = [] - getter = MethodDef(property_def.getter, property_def.type_name, getter_params, None, None) - - ret_type, signature = make_method_signature(class_def, getter, "", state) - return f"{ret_type} {signature}" - - -def make_heading(title: str, underline: str, l10n: bool = True) -> str: - if l10n: - new_title = translate(title) - if new_title != title: - title = new_title - underline *= 2 # Double length to handle wide chars. - return f"{title}\n{(underline * len(title))}\n\n" - - -def make_footer() -> str: - # Generate reusable abbreviation substitutions. - # This way, we avoid bloating the generated rST with duplicate abbreviations. - virtual_msg = translate("This method should typically be overridden by the user to have any effect.") - const_msg = translate("This method has no side effects. It doesn't modify any of the instance's member variables.") - vararg_msg = translate("This method accepts any number of arguments after the ones described here.") - constructor_msg = translate("This method is used to construct a type.") - static_msg = translate( - "This method doesn't need an instance to be called, so it can be called directly using the class name." - ) - operator_msg = translate("This method describes a valid operator to use with this type as left-hand operand.") - bitfield_msg = translate("This value is an integer composed as a bitmask of the following flags.") - - return ( - f".. |virtual| replace:: :abbr:`virtual ({virtual_msg})`\n" - f".. |const| replace:: :abbr:`const ({const_msg})`\n" - f".. |vararg| replace:: :abbr:`vararg ({vararg_msg})`\n" - f".. |constructor| replace:: :abbr:`constructor ({constructor_msg})`\n" - f".. |static| replace:: :abbr:`static ({static_msg})`\n" - f".. |operator| replace:: :abbr:`operator ({operator_msg})`\n" - f".. |bitfield| replace:: :abbr:`BitField ({bitfield_msg})`\n" - ) - - -def make_separator(section_level: bool = False) -> str: - separator_class = "item" - if section_level: - separator_class = "section" - - return f".. rst-class:: classref-{separator_class}-separator\n\n----\n\n" - - -def make_link(url: str, title: str) -> str: - match = GODOT_DOCS_PATTERN.search(url) - if match: - groups = match.groups() - if match.lastindex == 2: - # Doc reference with fragment identifier: emit direct link to section with reference to page, for example: - # `#calling-javascript-from-script in Exporting For Web` - # Or use the title if provided. - if title != "": - return f"`{title} <../{groups[0]}.html{groups[1]}>`__" - return f"`{groups[1]} <../{groups[0]}.html{groups[1]}>`__ in :doc:`../{groups[0]}`" - elif match.lastindex == 1: - # Doc reference, for example: - # `Math` - if title != "": - return f":doc:`{title} <../{groups[0]}>`" - return f":doc:`../{groups[0]}`" - - # External link, for example: - # `http://enet.bespin.org/usergroup0.html` - if title != "": - return f"`{title} <{url}>`__" - return f"`{url} <{url}>`__" - - -def make_rst_index(grouped_classes: Dict[str, List[str]], dry_run: bool, output_dir: str) -> None: - if dry_run: - f = open(os.devnull, "w", encoding="utf-8") - else: - f = open(os.path.join(output_dir, "index.rst"), "w", encoding="utf-8") - - # Remove the "Edit on Github" button from the online docs page. - f.write(":github_url: hide\n\n") - - # Warn contributors not to edit this file directly. - # Also provide links to the source files for reference. - - git_branch = get_git_branch() - generator_github_url = f"https://github.com/godotengine/godot/tree/{git_branch}/doc/tools/make_rst.py" - - f.write(".. DO NOT EDIT THIS FILE!!!\n") - f.write(".. Generated automatically from Godot engine sources.\n") - f.write(f".. Generator: {generator_github_url}.\n\n") - - f.write(".. _doc_class_reference:\n\n") - - main_title = translate("All classes") - f.write(f"{main_title}\n") - f.write(f"{'=' * len(main_title)}\n\n") - - for group_name in CLASS_GROUPS: - if group_name in grouped_classes: - group_title = translate(CLASS_GROUPS[group_name]) - - f.write(f"{group_title}\n") - f.write(f"{'=' * len(group_title)}\n\n") - - f.write(".. toctree::\n") - f.write(" :maxdepth: 1\n") - f.write(f" :name: toc-class-ref-{group_name}s\n") - f.write("\n") - - if group_name in CLASS_GROUPS_BASE: - f.write(f" class_{CLASS_GROUPS_BASE[group_name].lower()}\n") - - for class_name in grouped_classes[group_name]: - if group_name in CLASS_GROUPS_BASE and CLASS_GROUPS_BASE[group_name].lower() == class_name.lower(): - continue - - f.write(f" class_{class_name.lower()}\n") - - f.write("\n") - - -# Formatting helpers. - - -RESERVED_FORMATTING_TAGS = ["i", "b", "u", "code", "kbd", "center", "url", "br"] -RESERVED_CODEBLOCK_TAGS = ["codeblocks", "codeblock", "gdscript", "csharp"] -RESERVED_CROSSLINK_TAGS = ["method", "member", "signal", "constant", "enum", "annotation", "theme_item", "param"] - - -def is_in_tagset(tag_text: str, tagset: List[str]) -> bool: - for tag in tagset: - # Complete match. - if tag_text == tag: - return True - # Tag with arguments. - if tag_text.startswith(tag + " "): - return True - # Tag with arguments, special case for [url]. - if tag_text.startswith(tag + "="): - return True - - return False - - -def format_text_block( - text: str, - context: Union[DefinitionBase, None], - state: State, -) -> str: - # Linebreak + tabs in the XML should become two line breaks unless in a "codeblock" - pos = 0 - while True: - pos = text.find("\n", pos) - if pos == -1: - break - - pre_text = text[:pos] - indent_level = 0 - while pos + 1 < len(text) and text[pos + 1] == "\t": - pos += 1 - indent_level += 1 - post_text = text[pos + 1 :] - - # Handle codeblocks - if ( - post_text.startswith("[codeblock]") - or post_text.startswith("[gdscript]") - or post_text.startswith("[csharp]") - ): - block_type = post_text[1:].split("]")[0] - result = format_codeblock(block_type, post_text, indent_level, state) - if result is None: - return "" - text = f"{pre_text}{result[0]}" - pos += result[1] - indent_level - - # Handle normal text - else: - text = f"{pre_text}\n\n{post_text}" - pos += 2 - indent_level - - next_brac_pos = text.find("[") - text = escape_rst(text, next_brac_pos) - - context_name = format_context_name(context) - - # Handle [tags] - inside_code = False - inside_code_tag = "" - inside_code_tabs = False - pos = 0 - tag_depth = 0 - while True: - pos = text.find("[", pos) - if pos == -1: - break - - endq_pos = text.find("]", pos + 1) - if endq_pos == -1: - break - - pre_text = text[:pos] - post_text = text[endq_pos + 1 :] - tag_text = text[pos + 1 : endq_pos] - - escape_pre = False - escape_post = False - - # Tag is a reference to a class. - if tag_text in state.classes and not inside_code: - if tag_text == state.current_class: - # Don't create a link to the same class, format it as strong emphasis. - tag_text = f"**{tag_text}**" - else: - tag_text = make_type(tag_text, state) - escape_pre = True - escape_post = True - - # Tag is a cross-reference or a formatting directive. - else: - cmd = tag_text - space_pos = tag_text.find(" ") - - # Anything identified as a tag inside of a code block is valid, - # unless it's a matching closing tag. - if inside_code: - # Exiting codeblocks and inline code tags. - - if inside_code_tag == cmd[1:]: - if cmd == "/codeblock" or cmd == "/gdscript" or cmd == "/csharp": - tag_text = "" - tag_depth -= 1 - inside_code = False - # Strip newline if the tag was alone on one - if pre_text[-1] == "\n": - pre_text = pre_text[:-1] - - elif cmd == "/code": - tag_text = "``" - tag_depth -= 1 - inside_code = False - escape_post = True - - else: - if cmd.startswith("/"): - print_warning( - f'{state.current_class}.xml: Potential error inside of a code tag, found a string that looks like a closing tag "[{cmd}]" in {context_name}.', - state, - ) - - tag_text = f"[{tag_text}]" - - # Entering codeblocks and inline code tags. - - elif cmd == "codeblocks": - tag_depth += 1 - tag_text = "\n.. tabs::" - inside_code_tabs = True - elif cmd == "/codeblocks": - tag_depth -= 1 - tag_text = "" - inside_code_tabs = False - - elif cmd == "codeblock" or cmd == "gdscript" or cmd == "csharp": - tag_depth += 1 - - if cmd == "gdscript": - if not inside_code_tabs: - print_error( - f"{state.current_class}.xml: GDScript code block is used outside of [codeblocks] in {context_name}.", - state, - ) - tag_text = "\n .. code-tab:: gdscript\n" - elif cmd == "csharp": - if not inside_code_tabs: - print_error( - f"{state.current_class}.xml: C# code block is used outside of [codeblocks] in {context_name}.", - state, - ) - tag_text = "\n .. code-tab:: csharp\n" - else: - tag_text = "\n::\n" - - inside_code = True - inside_code_tag = cmd - - elif cmd == "code": - tag_text = "``" - tag_depth += 1 - inside_code = True - inside_code_tag = cmd - escape_pre = True - - valid_context = isinstance(context, (MethodDef, SignalDef, AnnotationDef)) - if valid_context: - endcode_pos = text.find("[/code]", endq_pos + 1) - if endcode_pos == -1: - print_error( - f"{state.current_class}.xml: Tag depth mismatch for [code]: no closing [/code] in {context_name}.", - state, - ) - break - - inside_code_text = text[endq_pos + 1 : endcode_pos] - context_params: List[ParameterDef] = context.parameters # type: ignore - for param_def in context_params: - if param_def.name == inside_code_text: - print_warning( - f'{state.current_class}.xml: Potential error inside of a code tag, found a string "{inside_code_text}" that matches one of the parameters in {context_name}.', - state, - ) - break - - # Cross-references to items in this or other class documentation pages. - elif is_in_tagset(cmd, RESERVED_CROSSLINK_TAGS): - link_type: str = "" - link_target: str = "" - if space_pos >= 0: - link_type = tag_text[:space_pos] - link_target = tag_text[space_pos + 1 :].strip() - - if link_target == "": - print_error( - f'{state.current_class}.xml: Empty cross-reference link "{cmd}" in {context_name}.', - state, - ) - tag_text = "" - else: - if ( - cmd.startswith("method") - or cmd.startswith("constructor") - or cmd.startswith("operator") - or cmd.startswith("member") - or cmd.startswith("signal") - or cmd.startswith("annotation") - or cmd.startswith("theme_item") - or cmd.startswith("constant") - ): - if link_target.find(".") != -1: - ss = link_target.split(".") - if len(ss) > 2: - print_error( - f'{state.current_class}.xml: Bad reference "{link_target}" in {context_name}.', - state, - ) - class_param, method_param = ss - - else: - class_param = state.current_class - method_param = link_target - - # Default to the tag command name. This works by default for most tags, - # but member and theme_item have special cases. - ref_type = "_{}".format(link_type) - if link_type == "member": - ref_type = "_property" - - if class_param in state.classes: - class_def = state.classes[class_param] - - if cmd.startswith("method") and method_param not in class_def.methods: - print_error( - f'{state.current_class}.xml: Unresolved method reference "{link_target}" in {context_name}.', - state, - ) - - elif cmd.startswith("constructor") and method_param not in class_def.constructors: - print_error( - f'{state.current_class}.xml: Unresolved constructor reference "{link_target}" in {context_name}.', - state, - ) - - elif cmd.startswith("operator") and method_param not in class_def.operators: - print_error( - f'{state.current_class}.xml: Unresolved operator reference "{link_target}" in {context_name}.', - state, - ) - - elif cmd.startswith("member") and method_param not in class_def.properties: - print_error( - f'{state.current_class}.xml: Unresolved member reference "{link_target}" in {context_name}.', - state, - ) - - elif cmd.startswith("signal") and method_param not in class_def.signals: - print_error( - f'{state.current_class}.xml: Unresolved signal reference "{link_target}" in {context_name}.', - state, - ) - - elif cmd.startswith("annotation") and method_param not in class_def.annotations: - print_error( - f'{state.current_class}.xml: Unresolved annotation reference "{link_target}" in {context_name}.', - state, - ) - - elif cmd.startswith("theme_item"): - if method_param not in class_def.theme_items: - print_error( - f'{state.current_class}.xml: Unresolved theme item reference "{link_target}" in {context_name}.', - state, - ) - else: - # Needs theme data type to be properly linked, which we cannot get without a class. - name = class_def.theme_items[method_param].data_name - ref_type = f"_theme_{name}" - - elif cmd.startswith("constant"): - found = False - - # Search in the current class - search_class_defs = [class_def] - - if link_target.find(".") == -1: - # Also search in @GlobalScope as a last resort if no class was specified - search_class_defs.append(state.classes["@GlobalScope"]) - - for search_class_def in search_class_defs: - if method_param in search_class_def.constants: - class_param = search_class_def.name - found = True - - else: - for enum in search_class_def.enums.values(): - if method_param in enum.values: - class_param = search_class_def.name - found = True - break - - if not found: - print_error( - f'{state.current_class}.xml: Unresolved constant reference "{link_target}" in {context_name}.', - state, - ) - - else: - print_error( - f'{state.current_class}.xml: Unresolved type reference "{class_param}" in method reference "{link_target}" in {context_name}.', - state, - ) - - repl_text = method_param - if class_param != state.current_class: - repl_text = f"{class_param}.{method_param}" - tag_text = f":ref:`{repl_text}`" - escape_pre = True - escape_post = True - - elif cmd.startswith("enum"): - tag_text = make_enum(link_target, False, state) - escape_pre = True - escape_post = True - - elif cmd.startswith("param"): - valid_context = isinstance(context, (MethodDef, SignalDef, AnnotationDef)) - if not valid_context: - print_error( - f'{state.current_class}.xml: Argument reference "{link_target}" used outside of method, signal, or annotation context in {context_name}.', - state, - ) - else: - context_params: List[ParameterDef] = context.parameters # type: ignore - found = False - for param_def in context_params: - if param_def.name == link_target: - found = True - break - if not found: - print_error( - f'{state.current_class}.xml: Unresolved argument reference "{link_target}" in {context_name}.', - state, - ) - - tag_text = f"``{link_target}``" - escape_pre = True - escape_post = True - - # Formatting directives. - - elif is_in_tagset(cmd, ["url"]): - if cmd.startswith("url="): - # URLs are handled in full here as we need to extract the optional link - # title to use `make_link`. - link_url = cmd[4:] - endurl_pos = text.find("[/url]", endq_pos + 1) - if endurl_pos == -1: - print_error( - f"{state.current_class}.xml: Tag depth mismatch for [url]: no closing [/url] in {context_name}.", - state, - ) - break - link_title = text[endq_pos + 1 : endurl_pos] - tag_text = make_link(link_url, link_title) - - pre_text = text[:pos] - post_text = text[endurl_pos + 6 :] - - if pre_text and pre_text[-1] not in MARKUP_ALLOWED_PRECEDENT: - pre_text += "\ " - if post_text and post_text[0] not in MARKUP_ALLOWED_SUBSEQUENT: - post_text = "\ " + post_text - - text = pre_text + tag_text + post_text - pos = len(pre_text) + len(tag_text) - continue - else: - print_error( - f'{state.current_class}.xml: Misformatted [url] tag "{cmd}" in {context_name}.', - state, - ) - - elif cmd == "br": - # Make a new paragraph instead of a linebreak, rst is not so linebreak friendly - tag_text = "\n\n" - # Strip potential leading spaces - while post_text[0] == " ": - post_text = post_text[1:] - - elif cmd == "center" or cmd == "/center": - if cmd == "/center": - tag_depth -= 1 - else: - tag_depth += 1 - tag_text = "" - - elif cmd == "i" or cmd == "/i": - if cmd == "/i": - tag_depth -= 1 - escape_post = True - else: - tag_depth += 1 - escape_pre = True - tag_text = "*" - - elif cmd == "b" or cmd == "/b": - if cmd == "/b": - tag_depth -= 1 - escape_post = True - else: - tag_depth += 1 - escape_pre = True - tag_text = "**" - - elif cmd == "u" or cmd == "/u": - if cmd == "/u": - tag_depth -= 1 - escape_post = True - else: - tag_depth += 1 - escape_pre = True - tag_text = "" - - elif cmd == "kbd" or cmd == "/kbd": - tag_text = "`" - if cmd == "/kbd": - tag_depth -= 1 - escape_post = True - else: - tag_text = ":kbd:" + tag_text - tag_depth += 1 - escape_pre = True - - # Invalid syntax checks. - elif cmd.startswith("/"): - print_error(f'{state.current_class}.xml: Unrecognized closing tag "{cmd}" in {context_name}.', state) - - tag_text = f"[{tag_text}]" - - else: - print_error(f'{state.current_class}.xml: Unrecognized opening tag "{cmd}" in {context_name}.', state) - - tag_text = f"``{tag_text}``" - escape_pre = True - escape_post = True - - # Properly escape things like `[Node]s` - if escape_pre and pre_text and pre_text[-1] not in MARKUP_ALLOWED_PRECEDENT: - pre_text += "\ " - if escape_post and post_text and post_text[0] not in MARKUP_ALLOWED_SUBSEQUENT: - post_text = "\ " + post_text - - next_brac_pos = post_text.find("[", 0) - iter_pos = 0 - while not inside_code: - iter_pos = post_text.find("*", iter_pos, next_brac_pos) - if iter_pos == -1: - break - post_text = f"{post_text[:iter_pos]}\*{post_text[iter_pos + 1 :]}" - iter_pos += 2 - - iter_pos = 0 - while not inside_code: - iter_pos = post_text.find("_", iter_pos, next_brac_pos) - if iter_pos == -1: - break - if not post_text[iter_pos + 1].isalnum(): # don't escape within a snake_case word - post_text = f"{post_text[:iter_pos]}\_{post_text[iter_pos + 1 :]}" - iter_pos += 2 - else: - iter_pos += 1 - - text = pre_text + tag_text + post_text - pos = len(pre_text) + len(tag_text) - - if tag_depth > 0: - print_error( - f"{state.current_class}.xml: Tag depth mismatch: too many (or too few) open/close tags in {context_name}.", - state, - ) - - return text - - -def format_context_name(context: Union[DefinitionBase, None]) -> str: - context_name: str = "unknown context" - if context is not None: - context_name = f'{context.definition_name} "{context.name}" description' - - return context_name - - -def escape_rst(text: str, until_pos: int = -1) -> str: - # Escape \ character, otherwise it ends up as an escape character in rst - pos = 0 - while True: - pos = text.find("\\", pos, until_pos) - if pos == -1: - break - text = f"{text[:pos]}\\\\{text[pos + 1 :]}" - pos += 2 - - # Escape * character to avoid interpreting it as emphasis - pos = 0 - while True: - pos = text.find("*", pos, until_pos) - if pos == -1: - break - text = f"{text[:pos]}\*{text[pos + 1 :]}" - pos += 2 - - # Escape _ character at the end of a word to avoid interpreting it as an inline hyperlink - pos = 0 - while True: - pos = text.find("_", pos, until_pos) - if pos == -1: - break - if not text[pos + 1].isalnum(): # don't escape within a snake_case word - text = f"{text[:pos]}\_{text[pos + 1 :]}" - pos += 2 - else: - pos += 1 - - return text - - -def format_codeblock(code_type: str, post_text: str, indent_level: int, state: State) -> Union[Tuple[str, int], None]: - end_pos = post_text.find("[/" + code_type + "]") - if end_pos == -1: - print_error(f"{state.current_class}.xml: [{code_type}] without a closing tag.", state) - return None - - code_text = post_text[len(f"[{code_type}]") : end_pos] - post_text = post_text[end_pos:] - - # Remove extraneous tabs - code_pos = 0 - while True: - code_pos = code_text.find("\n", code_pos) - if code_pos == -1: - break - - to_skip = 0 - while code_pos + to_skip + 1 < len(code_text) and code_text[code_pos + to_skip + 1] == "\t": - to_skip += 1 - - if to_skip > indent_level: - print_error( - f"{state.current_class}.xml: Four spaces should be used for indentation within [{code_type}].", - state, - ) - - if len(code_text[code_pos + to_skip + 1 :]) == 0: - code_text = f"{code_text[:code_pos]}\n" - code_pos += 1 - else: - code_text = f"{code_text[:code_pos]}\n {code_text[code_pos + to_skip + 1 :]}" - code_pos += 5 - to_skip - return (f"\n[{code_type}]{code_text}{post_text}", len(f"\n[{code_type}]{code_text}")) - - -def format_table(f: TextIO, data: List[Tuple[Optional[str], ...]], remove_empty_columns: bool = False) -> None: - if len(data) == 0: - return - - f.write(".. table::\n") - f.write(" :widths: auto\n\n") - - # Calculate the width of each column first, we will use this information - # to properly format RST-style tables. - column_sizes = [0] * len(data[0]) - for row in data: - for i, text in enumerate(row): - text_length = len(text or "") - if text_length > column_sizes[i]: - column_sizes[i] = text_length - - # Each table row is wrapped in two separators, consecutive rows share the same separator. - # All separators, or rather borders, have the same shape and content. We compose it once, - # then reuse it. - - sep = "" - for size in column_sizes: - if size == 0 and remove_empty_columns: - continue - sep += "+" + "-" * (size + 2) # Content of each cell is padded by 1 on each side. - sep += "+\n" - - # Draw the first separator. - f.write(f" {sep}") - - # Draw each row and close it with a separator. - for row in data: - row_text = "|" - for i, text in enumerate(row): - if column_sizes[i] == 0 and remove_empty_columns: - continue - row_text += f' {(text or "").ljust(column_sizes[i])} |' - row_text += "\n" - - f.write(f" {row_text}") - f.write(f" {sep}") - - f.write("\n") - - -def sanitize_operator_name(dirty_name: str, state: State) -> str: - clear_name = dirty_name.replace("operator ", "") - - if clear_name == "!=": - clear_name = "neq" - elif clear_name == "==": - clear_name = "eq" - - elif clear_name == "<": - clear_name = "lt" - elif clear_name == "<=": - clear_name = "lte" - elif clear_name == ">": - clear_name = "gt" - elif clear_name == ">=": - clear_name = "gte" - - elif clear_name == "+": - clear_name = "sum" - elif clear_name == "-": - clear_name = "dif" - elif clear_name == "*": - clear_name = "mul" - elif clear_name == "/": - clear_name = "div" - elif clear_name == "%": - clear_name = "mod" - elif clear_name == "**": - clear_name = "pow" - - elif clear_name == "unary+": - clear_name = "unplus" - elif clear_name == "unary-": - clear_name = "unminus" - - elif clear_name == "<<": - clear_name = "bwsl" - elif clear_name == ">>": - clear_name = "bwsr" - elif clear_name == "&": - clear_name = "bwand" - elif clear_name == "|": - clear_name = "bwor" - elif clear_name == "^": - clear_name = "bwxor" - elif clear_name == "~": - clear_name = "bwnot" - - elif clear_name == "[]": - clear_name = "idx" - - else: - clear_name = "xxx" - print_error(f'Unsupported operator type "{dirty_name}", please add the missing rule.', state) - - return clear_name - - -if __name__ == "__main__": - main() diff --git a/docs/api/tools/version.py b/docs/api/tools/version.py deleted file mode 100644 index 066d5e1c2..000000000 --- a/docs/api/tools/version.py +++ /dev/null @@ -1 +0,0 @@ -docs = "latest" diff --git a/docs/assets/icon.svg b/docs/assets/icon.svg new file mode 100644 index 000000000..70b92722f --- /dev/null +++ b/docs/assets/icon.svg @@ -0,0 +1,133 @@ + + + + + + + + + + + +image/svg+xmlOpenclipart diff --git a/docs/media/makefile.png b/docs/assets/makefile.png similarity index 100% rename from docs/media/makefile.png rename to docs/assets/makefile.png diff --git a/docs/assets/scene-tree.png b/docs/assets/scene-tree.png new file mode 100644 index 000000000..71373a757 Binary files /dev/null and b/docs/assets/scene-tree.png differ diff --git a/docs/media/screenshot01.png b/docs/assets/screenshot01.png similarity index 100% rename from docs/media/screenshot01.png rename to docs/assets/screenshot01.png diff --git a/docs/media/screenshot02.png b/docs/assets/screenshot02.png similarity index 100% rename from docs/media/screenshot02.png rename to docs/assets/screenshot02.png diff --git a/docs/media/screenshot03.png b/docs/assets/screenshot03.png similarity index 100% rename from docs/media/screenshot03.png rename to docs/assets/screenshot03.png diff --git a/docs/media/screenshot04.png b/docs/assets/screenshot04.png similarity index 100% rename from docs/media/screenshot04.png rename to docs/assets/screenshot04.png diff --git a/docs/class-reference/.nav.yml b/docs/class-reference/.nav.yml new file mode 100644 index 000000000..3c00279ba --- /dev/null +++ b/docs/class-reference/.nav.yml @@ -0,0 +1,234 @@ +nav: + - ./APUDatabase.md + - ./APUEntry.md + - ./ActionStartInputPlumber.md + - ./ActionStartPowerStation.md + - ./ActionTurboTakeover.md + - ./AppLifecycleHook.md + - ./AudioManager.md + - ./BackInputHandler.md + - ./BehaviorNode.md + - ./Bitwise.md + - ./BlockDevice.md + - ./BluetoothAdapter.md + - ./BluetoothDevice.md + - ./BluetoothManager.md + - ./BluezInstance.md + - ./BoxArtManager.md + - ./BoxArtProvider.md + - ./CPU.md + - ./CPUCore.md + - ./Cache.md + - ./CardButton.md + - ./CardButtonSetting.md + - ./CardIconButton.md + - ./CardInputIconButton.md + - ./CardMappingButton.md + - ./CardMappingButtonGroup.md + - ./Command.md + - ./ComponentTextInput.md + - ./CompositeDevice.md + - ./Cpu.md + - ./CpuCore.md + - ./CustomLogger.md + - ./DBusDevice.md + - ./DRMCardInfo.md + - ./DRMCardInfoAMD.md + - ./DRMCardInfoIntel.md + - ./DRMCardPort.md + - ./Dialog.md + - ./DiskManager.md + - ./DisplayManager.md + - ./DisplayManager.BacklightProvider.md + - ./DisplayManager.BrightnessctlBacklight.md + - ./DisplayManager.SteamOsBacklight.md + - ./DriveCard.md + - ./DriveDevice.md + - ./Dropdown.md + - ./Effect.md + - ./EnhancedScrollContainer.md + - ./EventDevice.md + - ./ExpandableCard.md + - ./FadeEffect.md + - ./FifoReader.md + - ./FilesystemDevice.md + - ./FocusGroup.md + - ./FocusGroupSetter.md + - ./FocusManager.md + - ./FocusSetter.md + - ./FocusStack.md + - ./GameCard.md + - ./GamepadDevice.md + - ./GamepadMapper.md + - ./Gamescope.md + - ./GamescopeInstance.md + - ./GamescopeXWayland.md + - ./GitHubClient.md + - ./Gpu.md + - ./GpuCard.md + - ./GpuConnector.md + - ./GrowerEffect.md + - ./GutHookScript.md + - ./GutStringUtils.md + - ./GutTest.md + - ./GutUtils.md + - ./HTTPAPIClient.md + - ./HTTPAPIClient.Response.md + - ./HTTPImageFetcher.md + - ./HandheldIconMapping.md + - ./HandheldPlatform.md + - ./HardwareManager.md + - ./HardwareManager.GPUInfo.md + - ./InputIcon.md + - ./InputIconKeyboardMapping.md + - ./InputIconManager.md + - ./InputIconMapping.md + - ./InputIconProcessor.md + - ./InputManager.md + - ./InputPlumber.md + - ./InputPlumberAxisEvent.md + - ./InputPlumberEvent.md + - ./InputPlumberGamepadEvent.md + - ./InputPlumberGyroEvent.md + - ./InputPlumberInstance.md + - ./InputPlumberMapping.md + - ./InputPlumberMouseEvent.md + - ./InputPlumberMouseMotionEvent.md + - ./InputPlumberProfile.md + - ./InputPlumberTouchEvent.md + - ./InputPlumberTouchMotionEvent.md + - ./InputPlumberTouchpadEvent.md + - ./InputPlumberTriggerEvent.md + - ./InputWatcher.md + - ./InstallLocationCard.md + - ./InstallLocationDialog.md + - ./InstallManager.md + - ./InstallManager.Request.md + - ./InstallOptionDialog.md + - ./InteractiveProcess.md + - ./KeyboardContext.md + - ./KeyboardDevice.md + - ./KeyboardInstance.md + - ./KeyboardKeyConfig.md + - ./KeyboardLayout.md + - ./KeyboardOpener.md + - ./KeyboardRow.md + - ./LaunchManager.md + - ./Launcher.md + - ./LevelIndicator.md + - ./Library.md + - ./Library.InstallLocation.md + - ./Library.InstallOption.md + - ./LibraryDeck.md + - ./LibraryItem.md + - ./LibraryLaunchItem.md + - ./LibraryManager.md + - ./LibraryRefreshState.md + - ./LibraryRefresher.md + - ./Log.md + - ./LogManager.md + - ./MangoApp.md + - ./MouseDevice.md + - ./MultiHTTPRequest.md + - ./NetworkAccessPoint.md + - ./NetworkActiveConnection.md + - ./NetworkDevice.md + - ./NetworkDeviceWireless.md + - ./NetworkIpv4Config.md + - ./NetworkManager.md + - ./NetworkManagerInstance.md + - ./NodeThread.md + - ./Notification.md + - ./NotificationContainer.md + - ./NotificationManager.md + - ./OSPlatform.md + - ./OnScreenKeyboard.md + - ./OverlayContainer.md + - ./OverlayInputManager.md + - ./OverlayProvider.md + - ./PackageVerifier.md + - ./PartitionCard.md + - ./PartitionDevice.md + - ./PerformanceManager.md + - ./PerformanceProfile.md + - ./PipeManager.md + - ./Platform.md + - ./Platform.OSInfo.md + - ./PlatformAction.md + - ./PlatformBazzite.md + - ./PlatformChimeraOS.md + - ./PlatformManjaro.md + - ./PlatformNixOS.md + - ./PlatformProvider.md + - ./PlatformSteamOS.md + - ./PlayAudioEffect.md + - ./Plugin.md + - ./PluginLoader.md + - ./PluginManager.md + - ./PowerManager.md + - ./PowerSaver.md + - ./PowerStation.md + - ./PowerStationInstance.md + - ./ProgressDialog.md + - ./Pty.md + - ./QuickBarCard.md + - ./RaiseEffect.md + - ./Reaper.md + - ./ResourceProcessor.md + - ./ResourceRegistry.md + - ./RunningApp.md + - ./Sandbox.md + - ./SandboxBubblewrap.md + - ./SandboxFirejail.md + - ./ScrollerJoystick.md + - ./SearchBar.md + - ./SelectableText.md + - ./SemanticVersion.md + - ./SettingsManager.md + - ./SharedThread.md + - ./SharedThread.ExecutingTask.md + - ./SharedThread.ScheduledTask.md + - ./SlideEffect.md + - ./SmoothScrollEffect.md + - ./SoftwareUpdater.md + - ./State.md + - ./StateChanger.md + - ./StateMachine.md + - ./StateMachineWatcher.md + - ./StateManager.md + - ./StateUpdater.md + - ./StateWatcher.md + - ./StatesWatcher.md + - ./StatusPanel.md + - ./SteamRemovableMediaManager.md + - ./Store.md + - ./StoreItem.md + - ./StoreItemDetails.md + - ./StoreManager.md + - ./SubReaper.md + - ./TabContainerState.md + - ./TabLabel.md + - ./TabSetter.md + - ./TabsHeader.md + - ./TextSetter.md + - ./ThemeSetter.md + - ./ThemeUtils.md + - ./ThreadGroup.md + - ./ThreadPool.md + - ./ThreadPool.Task.md + - ./Toggle.md + - ./Transition.md + - ./TransitionContainer.md + - ./UDisks2Instance.md + - ./UPowerDevice.md + - ./UPowerInstance.md + - ./UUID.md + - ./UserInterface.md + - ./ValueSlider.md + - ./Vdf.md + - ./Version.md + - ./VisibilityManager.md + - ./WatchdogThread.md + - ./WebsocketRPCClient.md + - ./WifiNetworkTree.md + - ./Xdg.md diff --git a/docs/class-reference/APUDatabase.md b/docs/class-reference/APUDatabase.md new file mode 100644 index 000000000..7d16537c9 --- /dev/null +++ b/docs/class-reference/APUDatabase.md @@ -0,0 +1,93 @@ +# APUDatabase + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [APUEntry[]](../APUEntry) | [apu_list](./#apu_list) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [database_name](./#database_name) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [apu_map](./#apu_map) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [loaded](./#loaded) | false | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [load_db](./#load_db)() | +| [APUEntry](../APUEntry) | [get_apu](./#get_apu)(apu_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `apu_list` + + +[APUEntry[]](../APUEntry) apu_list + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `database_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) database_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `apu_map` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) apu_map + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `loaded` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) loaded = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `load_db()` + + +void **load_db**() + + +Load entries that are set in the APUDatabase resource file into a map. NOTE: This needs to be called after _init() in order for the exported apu_list to be populated. +### `get_apu()` + + +[APUEntry](../APUEntry) **get_apu**(apu_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns an [APUEntry](../APUEntry) of the given APU diff --git a/docs/class-reference/APUEntry.md b/docs/class-reference/APUEntry.md new file mode 100644 index 000000000..1faf63b54 --- /dev/null +++ b/docs/class-reference/APUEntry.md @@ -0,0 +1,57 @@ +# APUEntry + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [model_name](./#model_name) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [min_tdp](./#min_tdp) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [max_tdp](./#max_tdp) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [max_boost](./#max_boost) | | + + + +------------------ + +## Property Descriptions + +### `model_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) model_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `min_tdp` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) min_tdp + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `max_tdp` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) max_tdp + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `max_boost` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) max_boost + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/ActionStartInputPlumber.md b/docs/class-reference/ActionStartInputPlumber.md new file mode 100644 index 000000000..248ef1713 --- /dev/null +++ b/docs/class-reference/ActionStartInputPlumber.md @@ -0,0 +1,25 @@ +# ActionStartInputPlumber + +**Inherits:** [PlatformAction](../PlatformAction) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [execute](./#execute)() | + + +------------------ + +## Method Descriptions + +### `execute()` + + +void **execute**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/ActionStartPowerStation.md b/docs/class-reference/ActionStartPowerStation.md new file mode 100644 index 000000000..374505d94 --- /dev/null +++ b/docs/class-reference/ActionStartPowerStation.md @@ -0,0 +1,25 @@ +# ActionStartPowerStation + +**Inherits:** [PlatformAction](../PlatformAction) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [execute](./#execute)() | + + +------------------ + +## Method Descriptions + +### `execute()` + + +void **execute**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/ActionTurboTakeover.md b/docs/class-reference/ActionTurboTakeover.md new file mode 100644 index 000000000..5c599b232 --- /dev/null +++ b/docs/class-reference/ActionTurboTakeover.md @@ -0,0 +1,25 @@ +# ActionTurboTakeover + +**Inherits:** [PlatformAction](../PlatformAction) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [execute](./#execute)() | + + +------------------ + +## Method Descriptions + +### `execute()` + + +void **execute**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/AppLifecycleHook.md b/docs/class-reference/AppLifecycleHook.md new file mode 100644 index 000000000..c9b85b627 --- /dev/null +++ b/docs/class-reference/AppLifecycleHook.md @@ -0,0 +1,42 @@ +# AppLifecycleHook + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +Base class for executing callbacks at certain points of an app's lifecycle. +## Description + +This class provides an interface for executing arbitrary callbacks at certain points of an application's lifecycle. This can allow [Library](../Library) implementations the ability to execute actions when apps are about to start, have started, or have exited. +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_name](./#get_name)() | +| void | [execute](./#execute)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_type](./#get_type)() | + + +------------------ + +## Method Descriptions + +### `get_name()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_name**() + + +Name of the lifecycle hook +### `execute()` + + +void **execute**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Executes whenever an app from this library reaches the stage in its lifecycle designated by the hook type. E.g. a `PRE_LAUNCH` hook will have this method called whenever an app is about to launch. +### `get_type()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_type**() + + +Returns the hook type, which designates where in the application's lifecycle the hook should be executed. diff --git a/docs/class-reference/AudioManager.md b/docs/class-reference/AudioManager.md new file mode 100644 index 000000000..b6e0bf093 --- /dev/null +++ b/docs/class-reference/AudioManager.md @@ -0,0 +1,106 @@ +# AudioManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Manage system volume and audio devices +## Description + +The AudioManager is responsible for managing the system volume and audio devices if the host supports it. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [current_volume](./#current_volume) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [supports_audio](./#supports_audio)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_volume](./#set_volume)(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [toggle_mute](./#toggle_mute)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_output_device](./#set_output_device)(device: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_current_output_device](./#get_current_output_device)() | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [get_current_volume](./#get_current_volume)() | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_output_devices](./#get_output_devices)() | + + +------------------ + +## Property Descriptions + +### `current_volume` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) current_volume + + +Current volume + + + +------------------ + +## Method Descriptions + +### `supports_audio()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **supports_audio**() + + +Returns true if the system has audio controls we support +### `set_volume()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_volume**(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0) + + +Sets the current audio device volume based on the given value. The volume value should be in the form of a percent where 1.0 equals 100%. The type can be either absolute (default) or relative volume values. + + +```gdscript + + const AudioManager := preload("res://core/global/audio_manager.tres") + ... + AudioManager.set_volume(1.0) # Set volume to 100% + AudioManager.set_volume(-0.06, AudioManager.TYPE.RELATIVE) # Decrease volume by 6% + +``` + + +### `toggle_mute()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **toggle_mute**() + + +Toggles mute on the current audio device +### `set_output_device()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_output_device**(device: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Sets the current output device to the given device +### `get_current_output_device()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_current_output_device**() + + +Returns the currently set output device +### `get_current_volume()` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) **get_current_volume**() + + +Returns the current volume as a percentage. E.g. 0.52 is 52% +### `get_output_devices()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_output_devices**() + + +Returns a list of audio output devices diff --git a/docs/class-reference/BackInputHandler.md b/docs/class-reference/BackInputHandler.md new file mode 100644 index 000000000..44746ae7f --- /dev/null +++ b/docs/class-reference/BackInputHandler.md @@ -0,0 +1,49 @@ +# BackInputHandler + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +DEPRECATED: Use [InputWatcher](../InputWatcher) with [StateUpdater](../StateUpdater) instead +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [State[]](../State) | [process_input_during](./#process_input_during) | [] | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [minimum_states](./#minimum_states) | 1 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +The state machine to use to update when back input is pressed +### `process_input_during` + + +[State[]](../State) process_input_during = [] + + +Pop the state machine when back input is pressed during any of these states +### `minimum_states` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) minimum_states = 1 + + +Minimum number of states in the state machine stack. [BackInputHandler](../BackInputHandler) will not pop the state machine stack beyond this number. +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +Will show logger events with the prefix BackInputHandler + diff --git a/docs/class-reference/BehaviorNode.md b/docs/class-reference/BehaviorNode.md new file mode 100644 index 000000000..8dfb8b949 --- /dev/null +++ b/docs/class-reference/BehaviorNode.md @@ -0,0 +1,28 @@ +# BehaviorNode + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Base class for defining signal-based behavior +## Description + +A [BehaviorNode](../BehaviorNode) is a node that follows a signaling pattern. These nodes can be added as a child of any node and can be configured to listen for and react to signals from its parent. This can allow developers to attach behaviors to nodes in the scene tree from the editor in a compositional way. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | + + + +------------------ + +## Property Descriptions + +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +The signal to connect to on this behavior's parent node. This behavior will execute whenever this signal is fired. + diff --git a/docs/class-reference/Bitwise.md b/docs/class-reference/Bitwise.md new file mode 100644 index 000000000..7ccc8fa36 --- /dev/null +++ b/docs/class-reference/Bitwise.md @@ -0,0 +1,75 @@ +# Bitwise + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [flags](./#flags)(flags: [int[]](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_flag](./#has_flag)(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_flag](./#set_flag)(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_flag_to](./#set_flag_to)(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), enabled: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [clear_flag](./#clear_flag)(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [toggle_flag](./#toggle_flag)(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Method Descriptions + +### `flags()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **flags**(flags: [int[]](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_flag()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_flag**(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_flag()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_flag**(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_flag_to()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_flag_to**(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), enabled: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `clear_flag()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **clear_flag**(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `toggle_flag()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **toggle_flag**(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), flag: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/BlockDevice.md b/docs/class-reference/BlockDevice.md new file mode 100644 index 000000000..24cb39ecd --- /dev/null +++ b/docs/class-reference/BlockDevice.md @@ -0,0 +1,67 @@ +# BlockDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [readable_size](./#readable_size) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [DriveDevice](../DriveDevice) | [get_drive](./#get_drive)() | +| [PartitionDevice[]](../PartitionDevice) | [get_partitions](./#get_partitions)() | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `readable_size` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) readable_size + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_drive()` + + +[DriveDevice](../DriveDevice) **get_drive**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_partitions()` + + +[PartitionDevice[]](../PartitionDevice) **get_partitions**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/BluetoothAdapter.md b/docs/class-reference/BluetoothAdapter.md new file mode 100644 index 000000000..0102e3859 --- /dev/null +++ b/docs/class-reference/BluetoothAdapter.md @@ -0,0 +1,257 @@ +# BluetoothAdapter + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [address](./#address) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [address_type](./#address_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [alias](./#alias) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [class](./#class) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [discoverable](./#discoverable) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [discoverable_timeout](./#discoverable_timeout) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [discovering](./#discovering) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [experimental_features](./#experimental_features) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [manufacturer](./#manufacturer) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [modalias](./#modalias) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [pairable](./#pairable) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [pairable_timeout](./#pairable_timeout) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [power_state](./#power_state) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [powered](./#powered) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [roles](./#roles) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [uuids](./#uuids) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [version](./#version) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_discovery_filters](./#get_discovery_filters)() | +| void | [remove_device](./#remove_device)(device: [BluetoothDevice](../BluetoothDevice)) | +| void | [start_discovery](./#start_discovery)() | +| void | [stop_discovery](./#stop_discovery)() | + + +------------------ + +## Property Descriptions + +### `address` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) address + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `address_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) address_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `alias` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) alias + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `class` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) class + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `discoverable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) discoverable + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `discoverable_timeout` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) discoverable_timeout + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `discovering` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) discovering + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `experimental_features` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) experimental_features + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `manufacturer` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) manufacturer + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `modalias` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) modalias + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pairable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) pairable + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pairable_timeout` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) pairable_timeout + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `power_state` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) power_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `powered` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) powered + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `roles` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) roles + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `uuids` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) uuids + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `version` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) version + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_discovery_filters()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_discovery_filters**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `remove_device()` + + +void **remove_device**(device: [BluetoothDevice](../BluetoothDevice)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `start_discovery()` + + +void **start_discovery**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `stop_discovery()` + + +void **stop_discovery**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/BluetoothDevice.md b/docs/class-reference/BluetoothDevice.md new file mode 100644 index 000000000..252a1733c --- /dev/null +++ b/docs/class-reference/BluetoothDevice.md @@ -0,0 +1,297 @@ +# BluetoothDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [adapter](./#adapter) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [address](./#address) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [address_type](./#address_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [alias](./#alias) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [appearance](./#appearance) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [blocked](./#blocked) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [bonded](./#bonded) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [class](./#class) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [connected](./#connected) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [icon](./#icon) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [legacy_pairing](./#legacy_pairing) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [modalias](./#modalias) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [paired](./#paired) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [rssi](./#rssi) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [services_resolved](./#services_resolved) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [trusted](./#trusted) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [tx_power](./#tx_power) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [uuids](./#uuids) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [wake_allowed](./#wake_allowed) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [cancel_pairing](./#cancel_pairing)() | +| void | [connect_to](./#connect_to)() | +| void | [connect_to_profile](./#connect_to_profile)(uuid: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [disconnect_from](./#disconnect_from)() | +| void | [disconnect_from_profile](./#disconnect_from_profile)(uuid: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [pair](./#pair)() | + + +------------------ + +## Property Descriptions + +### `adapter` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) adapter + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `address` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) address + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `address_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) address_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `alias` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) alias + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `appearance` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) appearance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `blocked` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) blocked + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `bonded` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) bonded + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `class` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) class + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `connected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) connected + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `legacy_pairing` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) legacy_pairing + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `modalias` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) modalias + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `paired` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) paired + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `rssi` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) rssi + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `services_resolved` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) services_resolved + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `trusted` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) trusted + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tx_power` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) tx_power + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `uuids` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) uuids + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `wake_allowed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) wake_allowed + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `cancel_pairing()` + + +void **cancel_pairing**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `connect_to()` + + +void **connect_to**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `connect_to_profile()` + + +void **connect_to_profile**(uuid: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `disconnect_from()` + + +void **disconnect_from**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `disconnect_from_profile()` + + +void **disconnect_from_profile**(uuid: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pair()` + + +void **pair**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/BluetoothManager.md b/docs/class-reference/BluetoothManager.md new file mode 100644 index 000000000..265b2d766 --- /dev/null +++ b/docs/class-reference/BluetoothManager.md @@ -0,0 +1,30 @@ +# BluetoothManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +BluetoothManager interfaces with the bluetooth system +## Description + +This node is used to drive the bluetooth instance forward by calling its 'process()' method every frame to dispatch signals. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [BluezInstance](../BluezInstance) | [instance](./#instance) | load(...) | + + + +------------------ + +## Property Descriptions + +### `instance` + + +[BluezInstance](../BluezInstance) instance = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/BluezInstance.md b/docs/class-reference/BluezInstance.md new file mode 100644 index 000000000..359b68faa --- /dev/null +++ b/docs/class-reference/BluezInstance.md @@ -0,0 +1,55 @@ +# BluezInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [BluetoothAdapter[]](../BluetoothAdapter) | [get_adapters](./#get_adapters)() | +| [BluetoothDevice[]](../BluetoothDevice) | [get_discovered_devices](./#get_discovered_devices)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| void | [process](./#process)() | + + +------------------ + +## Method Descriptions + +### `get_adapters()` + + +[BluetoothAdapter[]](../BluetoothAdapter) **get_adapters**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_discovered_devices()` + + +[BluetoothDevice[]](../BluetoothDevice) **get_discovered_devices**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/BoxArtManager.md b/docs/class-reference/BoxArtManager.md new file mode 100644 index 000000000..67f62994a --- /dev/null +++ b/docs/class-reference/BoxArtManager.md @@ -0,0 +1,115 @@ +# BoxArtManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Fetch and manage artwork from registered [BoxArtProvider](../BoxArtProvider) nodes +## Description + +The BoxArtManager is responsible for managing any number of [BoxArtProvider](../BoxArtProvider) nodes and providing a unified way to fetch box art from multiple sources to any systems that might need them. New box art sources can be created in the core code base or in plugins by implementing/extending the [BoxArtProvider](../BoxArtProvider) class and adding them to the scene. + +With registered box art providers, other systems can request box art from the BoxArtManager, and it will use all available sources to return the best artwork: +```gdscript + + const BoxArtManager := preload("res://core/global/boxart_manager.tres") + ... + var boxart := BoxArtManager.get_boxart(library_item, BoxArtProvider.LAYOUT.LOGO) + +``` + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [get_boxart](./#get_boxart)(item: [LibraryItem](../LibraryItem), kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [get_boxart_or_placeholder](./#get_boxart_or_placeholder)(item: [LibraryItem](../LibraryItem), kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [get_placeholder](./#get_placeholder)(kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [BoxArtProvider](../BoxArtProvider) | [get_provider_by_id](./#get_provider_by_id)(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_providers](./#get_providers)() | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_provider_ids](./#get_provider_ids)() | +| void | [register_provider](./#register_provider)(provider: [BoxArtProvider](../BoxArtProvider)) | +| void | [unregister_provider](./#unregister_provider)(provider: [BoxArtProvider](../BoxArtProvider)) | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_boxart()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **get_boxart**(item: [LibraryItem](../LibraryItem), kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the boxart of the given kind for the given library item. +### `get_boxart_or_placeholder()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **get_boxart_or_placeholder**(item: [LibraryItem](../LibraryItem), kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the boxart of the given kind for the given library item. If one is not found, a placeholder texture will be returned +### `get_placeholder()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **get_placeholder**(kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns a boxart placeholder for the given layout +### `get_provider_by_id()` + + +[BoxArtProvider](../BoxArtProvider) **get_provider_by_id**(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the given boxart implementation by id +### `get_providers()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_providers**() + + +Returns a list of all registered boxart providers +### `get_provider_ids()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_provider_ids**() + + +Returns a list of all registered boxart provider ids +### `register_provider()` + + +void **register_provider**(provider: [BoxArtProvider](../BoxArtProvider)) + + +Registers the given boxart provider with the boxart manager. +### `unregister_provider()` + + +void **unregister_provider**(provider: [BoxArtProvider](../BoxArtProvider)) + + +Unregisters the given boxart provider diff --git a/docs/class-reference/BoxArtProvider.md b/docs/class-reference/BoxArtProvider.md new file mode 100644 index 000000000..1ceaf998d --- /dev/null +++ b/docs/class-reference/BoxArtProvider.md @@ -0,0 +1,90 @@ +# BoxArtProvider + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Base class for BoxArt implementations +## Description + +The BoxArtProvider class provides an interface for providing sources of game artwork. To create a new BoxArtProvider, simply extend this class and implement its methods. When a BoxArtProvider node enters the scene tree, it will automatically register itself with the global [BoxArtManager](../BoxArtManager). When a menu requires showing artwork for a particular game, it will request that artwork from the [BoxArtManager](../BoxArtManager). The manager, in turn, will request artwork from all registered boxart providers until it finds one. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [BoxArtManager](../BoxArtManager) | [BoxArtManager](./#BoxArtManager) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [provider_id](./#provider_id) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [provider_icon](./#provider_icon) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [logger_name](./#logger_name) | provider_id | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [log_level](./#log_level) | 3 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [get_boxart](./#get_boxart)(item: [LibraryItem](../LibraryItem), kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `BoxArtManager` + + +[BoxArtManager](../BoxArtManager) BoxArtManager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `provider_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) provider_id + + +Unique identifier for the boxart provider +### `provider_icon` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) provider_icon + + +Icon for boxart provider +### `logger_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) logger_name = provider_id + + +Logger name used for debug messages +### `log_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) log_level = 3 + + +Log level of the logger. +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_boxart()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **get_boxart**(item: [LibraryItem](../LibraryItem), kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the game artwork as a texture for the given game in the given layout. This method should be overriden in the extending class. diff --git a/docs/class-reference/CPU.md b/docs/class-reference/CPU.md new file mode 100644 index 000000000..628eff8ba --- /dev/null +++ b/docs/class-reference/CPU.md @@ -0,0 +1,107 @@ +# CPU + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Read and manage the system CPU +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [core_count](./#core_count) | get_total_core_count() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor](./#vendor) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [model](./#model) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_enabled_core_count](./#get_enabled_core_count)() | +| [CPUCore](../CPUCore) | [get_core](./#get_core)(num: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [CPUCore[]](../CPUCore) | [get_cores](./#get_cores)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_total_core_count](./#get_total_core_count)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_online_core_count](./#get_online_core_count)() | + + +------------------ + +## Property Descriptions + +### `core_count` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) core_count = get_total_core_count() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `model` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) model + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_enabled_core_count()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_enabled_core_count**() + + +Returns the count of number of enabled CPU cores +### `get_core()` + + +[CPUCore](../CPUCore) **get_core**(num: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns an instance of the given CPU core +### `get_cores()` + + +[CPUCore[]](../CPUCore) **get_cores**() + + +Returns an array of all CPU cores +### `get_total_core_count()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_total_core_count**() + + +Returns the total number of detected CPU cores +### `get_online_core_count()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_online_core_count**() + + +Returns the total number of CPU cores that are online diff --git a/docs/class-reference/CPUCore.md b/docs/class-reference/CPUCore.md new file mode 100644 index 000000000..5715e94de --- /dev/null +++ b/docs/class-reference/CPUCore.md @@ -0,0 +1,55 @@ +# CPUCore + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Instance of a single CPU core +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [path](./#path) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [num](./#num) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [get_online](./#get_online)() | + + +------------------ + +## Property Descriptions + +### `path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) num + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_online()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **get_online**() + + +Returns whether or not the core is online diff --git a/docs/class-reference/Cache.md b/docs/class-reference/Cache.md new file mode 100644 index 000000000..59c38f8ab --- /dev/null +++ b/docs/class-reference/Cache.md @@ -0,0 +1,105 @@ +# Cache + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_cache_dir](./#get_cache_dir)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [delete](./#delete)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [save_json](./#save_json)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), data: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), flush: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [save_data](./#save_data)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), flush: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [save_image](./#save_image)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), texture: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html), image_type: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_json](./#get_json)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_data](./#get_data)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [get_image](./#get_image)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), image_type: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_cached](./#is_cached)(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Method Descriptions + +### `get_cache_dir()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_cache_dir**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `delete()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **delete**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `save_json()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **save_json**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), data: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), flush: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `save_data()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **save_data**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), flush: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `save_image()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **save_image**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), texture: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html), image_type: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_json()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_json**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_data()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_data**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_image()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **get_image**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), image_type: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_cached()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_cached**(folder: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/CardButton.md b/docs/class-reference/CardButton.md new file mode 100644 index 000000000..f75c266b3 --- /dev/null +++ b/docs/class-reference/CardButton.md @@ -0,0 +1,177 @@ +# CardButton + +**Inherits:** [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | false | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Button" | +| [LabelSettings](https://docs.godotengine.org/en/stable/classes/class_labelsettings.html) | [label_settings](./#label_settings) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [horizontal_alignment](./#horizontal_alignment) | 1 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [vertical_alignment](./#vertical_alignment) | 1 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [autowrap_mode](./#autowrap_mode) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [uppercase](./#uppercase) | true | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [highlight_speed](./#highlight_speed) | 0.1 | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [focus_audio](./#focus_audio) | "res://assets/audio/interface/536764__egomassive__toss.ogg" | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [select_audio](./#select_audio) | "res://assets/audio/interface/96127__bmaczero__contact1.ogg" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [click_focuses](./#click_focuses) | false | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [focus_audio_stream](./#focus_audio_stream) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [select_audio_stream](./#select_audio_stream) | load(...) | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | + + + +------------------ + +## Property Descriptions + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Button" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label_settings` + + +[LabelSettings](https://docs.godotengine.org/en/stable/classes/class_labelsettings.html) label_settings + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `horizontal_alignment` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) horizontal_alignment = 1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vertical_alignment` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) vertical_alignment = 1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `autowrap_mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) autowrap_mode + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `uppercase` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) uppercase = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) highlight_speed = 0.1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_audio` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) focus_audio = "res://assets/audio/interface/536764__egomassive__toss.ogg" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `select_audio` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) select_audio = "res://assets/audio/interface/96127__bmaczero__contact1.ogg" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `click_focuses` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) click_focuses = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_audio_stream` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) focus_audio_stream = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `select_audio_stream` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) select_audio_stream = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/CardButtonSetting.md b/docs/class-reference/CardButtonSetting.md new file mode 100644 index 000000000..335ef855a --- /dev/null +++ b/docs/class-reference/CardButtonSetting.md @@ -0,0 +1,127 @@ +# CardButtonSetting + +**Inherits:** [BoxContainer](https://docs.godotengine.org/en/stable/classes/class_boxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Setting" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [separator_visible](./#separator_visible) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_label](./#show_label) | true | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | "" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [button_text](./#button_text) | "Button" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | false | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [description_label](./#description_label) | | +| [CardButton](../CardButton) | [card_button](./#card_button) | | +| [HSeparator](https://docs.godotengine.org/en/stable/classes/class_hseparator.html) | [hsep](./#hsep) | | +| [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) | [panel](./#panel) | | + + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Setting" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `separator_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) separator_visible = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_label` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_label = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description = "" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `button_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) button_text = "Button" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) description_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `card_button` + + +[CardButton](../CardButton) card_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hsep` + + +[HSeparator](https://docs.godotengine.org/en/stable/classes/class_hseparator.html) hsep + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `panel` + + +[PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) panel + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/CardIconButton.md b/docs/class-reference/CardIconButton.md new file mode 100644 index 000000000..4db535d4a --- /dev/null +++ b/docs/class-reference/CardIconButton.md @@ -0,0 +1,107 @@ +# CardIconButton + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [texture](./#texture) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [highlight_speed](./#highlight_speed) | 0.1 | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [focus_audio](./#focus_audio) | "res://assets/audio/interface/536764__egomassive__toss.ogg" | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [select_audio](./#select_audio) | "res://assets/audio/interface/96127__bmaczero__contact1.ogg" | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [focus_audio_stream](./#focus_audio_stream) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [select_audio_stream](./#select_audio_stream) | load(...) | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [icon](./#icon) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | + + + +------------------ + +## Property Descriptions + +### `texture` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) highlight_speed = 0.1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_audio` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) focus_audio = "res://assets/audio/interface/536764__egomassive__toss.ogg" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `select_audio` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) select_audio = "res://assets/audio/interface/96127__bmaczero__contact1.ogg" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_audio_stream` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) focus_audio_stream = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `select_audio_stream` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) select_audio_stream = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/CardInputIconButton.md b/docs/class-reference/CardInputIconButton.md new file mode 100644 index 000000000..8fa16071f --- /dev/null +++ b/docs/class-reference/CardInputIconButton.md @@ -0,0 +1,93 @@ +# CardInputIconButton + +**Inherits:** [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [click_focuses](./#click_focuses) | true | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [InputIcon](../InputIcon) | [input_icon](./#input_icon) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_target_device_icon_mapping](./#set_target_device_icon_mapping)(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_target_icon](./#set_target_icon)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `click_focuses` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) click_focuses = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `input_icon` + + +[InputIcon](../InputIcon) input_icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `set_target_device_icon_mapping()` + + +void **set_target_device_icon_mapping**(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the target input icon's icon mapping +### `set_target_icon()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_target_icon**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Configures the button for the given mappable event. If a path cannot be found, this will return an error. diff --git a/docs/class-reference/CardMappingButton.md b/docs/class-reference/CardMappingButton.md new file mode 100644 index 000000000..4eb80d7dd --- /dev/null +++ b/docs/class-reference/CardMappingButton.md @@ -0,0 +1,215 @@ +# CardMappingButton + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | false | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Button" | +| [LabelSettings](https://docs.godotengine.org/en/stable/classes/class_labelsettings.html) | [label_settings](./#label_settings) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [horizontal_alignment](./#horizontal_alignment) | 1 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [vertical_alignment](./#vertical_alignment) | 1 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [autowrap_mode](./#autowrap_mode) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [uppercase](./#uppercase) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [click_focuses](./#click_focuses) | true | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [source_label](./#source_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [target_label](./#target_label) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | +| [InputIcon](../InputIcon) | [source_icon](./#source_icon) | | +| [InputIcon](../InputIcon) | [target_icon](./#target_icon) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_source_device_icon_mapping](./#set_source_device_icon_mapping)(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_target_device_icon_mapping](./#set_target_device_icon_mapping)(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_source_capability](./#set_source_capability)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| void | [set_target_capability](./#set_target_capability)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_source_icon](./#set_source_icon)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_target_icon](./#set_target_icon)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Button" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label_settings` + + +[LabelSettings](https://docs.godotengine.org/en/stable/classes/class_labelsettings.html) label_settings + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `horizontal_alignment` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) horizontal_alignment = 1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vertical_alignment` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) vertical_alignment = 1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `autowrap_mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) autowrap_mode + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `uppercase` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) uppercase = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `click_focuses` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) click_focuses = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `source_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) source_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `target_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) target_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `source_icon` + + +[InputIcon](../InputIcon) source_icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `target_icon` + + +[InputIcon](../InputIcon) target_icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `set_source_device_icon_mapping()` + + +void **set_source_device_icon_mapping**(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the source input icon's icon mapping +### `set_target_device_icon_mapping()` + + +void **set_target_device_icon_mapping**(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the target input icon's icon mapping +### `set_source_capability()` + + +void **set_source_capability**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Configures the button for the given source capability +### `set_target_capability()` + + +void **set_target_capability**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Configures the button for the given target capability +### `set_source_icon()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_source_icon**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Configures the button for the given mappable event. If a path cannot be found, this will return an error. +### `set_target_icon()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_target_icon**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), direction: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Configures the button for the given mappable event. If a path cannot be found, this will return an error. diff --git a/docs/class-reference/CardMappingButtonGroup.md b/docs/class-reference/CardMappingButtonGroup.md new file mode 100644 index 000000000..71d117e17 --- /dev/null +++ b/docs/class-reference/CardMappingButtonGroup.md @@ -0,0 +1,171 @@ +# CardMappingButtonGroup + +**Inherits:** [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [State](../State) | [change_input_state](./#change_input_state) | | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [button_scene](./#button_scene) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) | [container](./#container) | | +| [FocusGroup](../FocusGroup) | [focus_group](./#focus_group) | | +| [Dropdown](../Dropdown) | [dropdown](./#dropdown) | | +| [ValueSlider](../ValueSlider) | [deadzone](./#deadzone) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_source_device_icon_mapping](./#set_source_device_icon_mapping)(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_target_device_icon_mapping](./#set_target_device_icon_mapping)(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_source_capability](./#set_source_capability)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_callback](./#set_callback)(callback: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_mappings](./#has_mappings)() | +| void | [set_mapping_type](./#set_mapping_type)(mapping_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [set_mappings](./#set_mappings)(mappings: [InputPlumberMapping[]](../InputPlumberMapping)) | +| void | [clear_mapping_buttons](./#clear_mapping_buttons)() | +| void | [update](./#update)() | + + +------------------ + +## Property Descriptions + +### `change_input_state` + + +[State](../State) change_input_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `button_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) button_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `container` + + +[VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_group` + + +[FocusGroup](../FocusGroup) focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dropdown` + + +[Dropdown](../Dropdown) dropdown + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `deadzone` + + +[ValueSlider](../ValueSlider) deadzone + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `set_source_device_icon_mapping()` + + +void **set_source_device_icon_mapping**(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the source input icon's icon mapping +### `set_target_device_icon_mapping()` + + +void **set_target_device_icon_mapping**(mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the target input icon's icon mapping +### `set_source_capability()` + + +void **set_source_capability**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the source capability for this container +### `set_callback()` + + +void **set_callback**(callback: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_mappings()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_mappings**() + + +Returns true if the group has any mappings configured. +### `set_mapping_type()` + + +void **set_mapping_type**(mapping_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Update the group based on the mapping type. +### `set_mappings()` + + +void **set_mappings**(mappings: [InputPlumberMapping[]](../InputPlumberMapping)) + + +Configures the container for the given input mappings. This method assumes that the given mappings are all for the same source event. +### `clear_mapping_buttons()` + + +void **clear_mapping_buttons**() + + +Clear all mapping buttons from the container +### `update()` + + +void **update**() + + +Update the group based on the type diff --git a/docs/class-reference/Command.md b/docs/class-reference/Command.md new file mode 100644 index 000000000..c9fc51b82 --- /dev/null +++ b/docs/class-reference/Command.md @@ -0,0 +1,137 @@ +# Command + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) | [args](./#args) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [code](./#code) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [command](./#command) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [stderr](./#stderr) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [stdout](./#stdout) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [timeout](./#timeout) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [cancel](./#cancel)() | +| [Command](../Command) | [create](./#create)(command: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [String[]](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [execute](./#execute)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [execute_blocking](./#execute_blocking)() | +| void | [process](./#process)(delta: [float](https://docs.godotengine.org/en/stable/classes/class_float.html)) | + + +------------------ + +## Property Descriptions + +### `args` + + +[String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) args + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `code` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) code + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `command` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) command + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `stderr` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) stderr + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `stdout` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) stdout + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `timeout` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) timeout + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `cancel()` + + +void **cancel**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `create()` + + +[Command](../Command) **create**(command: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [String[]](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `execute()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **execute**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `execute_blocking()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **execute_blocking**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**(delta: [float](https://docs.godotengine.org/en/stable/classes/class_float.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/ComponentTextInput.md b/docs/class-reference/ComponentTextInput.md new file mode 100644 index 000000000..706fe722b --- /dev/null +++ b/docs/class-reference/ComponentTextInput.md @@ -0,0 +1,137 @@ +# ComponentTextInput + +**Inherits:** [BoxContainer](https://docs.godotengine.org/en/stable/classes/class_boxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [title](./#title) | "Setting" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | "Description" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [placeholder_text](./#placeholder_text) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [editable](./#editable) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [secret](./#secret) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [enable_osk](./#enable_osk) | true | +| [KeyboardInstance](../KeyboardInstance) | [keyboard](./#keyboard) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [description_label](./#description_label) | | +| [LineEdit](https://docs.godotengine.org/en/stable/classes/class_lineedit.html) | [line_edit](./#line_edit) | | +| [KeyboardContext](../KeyboardContext) | [keyboard_context](./#keyboard_context) | | + + + +------------------ + +## Property Descriptions + +### `title` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) title = "Setting" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description = "Description" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `placeholder_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) placeholder_text + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `editable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) editable = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `secret` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) secret = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `enable_osk` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) enable_osk = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `keyboard` + + +[KeyboardInstance](../KeyboardInstance) keyboard + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) description_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `line_edit` + + +[LineEdit](https://docs.godotengine.org/en/stable/classes/class_lineedit.html) line_edit + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `keyboard_context` + + +[KeyboardContext](../KeyboardContext) keyboard_context + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/CompositeDevice.md b/docs/class-reference/CompositeDevice.md new file mode 100644 index 000000000..a3e38dd40 --- /dev/null +++ b/docs/class-reference/CompositeDevice.md @@ -0,0 +1,177 @@ +# CompositeDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [capabilities](./#capabilities) | | +| [DBusDevice[]](../DBusDevice) | [dbus_devices](./#dbus_devices) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [intercept_mode](./#intercept_mode) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [profile_name](./#profile_name) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [source_device_paths](./#source_device_paths) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [target_capabilities](./#target_capabilities) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_dbus_devices_paths](./#get_dbus_devices_paths)() | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_target_devices](./#get_target_devices)() | +| void | [load_profile_path](./#load_profile_path)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [send_button_chord](./#send_button_chord)(actions: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | +| void | [send_event](./#send_event)(action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [set_intercept_activation](./#set_intercept_activation)(triggers: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), target_event: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_target_devices](./#set_target_devices)(devices: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | + + +------------------ + +## Property Descriptions + +### `capabilities` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) capabilities + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_devices` + + +[DBusDevice[]](../DBusDevice) dbus_devices + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `intercept_mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) intercept_mode + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `profile_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) profile_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `source_device_paths` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) source_device_paths + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `target_capabilities` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) target_capabilities + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_dbus_devices_paths()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_dbus_devices_paths**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_target_devices()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_target_devices**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `load_profile_path()` + + +void **load_profile_path**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `send_button_chord()` + + +void **send_button_chord**(actions: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `send_event()` + + +void **send_event**(action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_intercept_activation()` + + +void **set_intercept_activation**(triggers: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), target_event: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_target_devices()` + + +void **set_target_devices**(devices: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Cpu.md b/docs/class-reference/Cpu.md new file mode 100644 index 000000000..4f0a20172 --- /dev/null +++ b/docs/class-reference/Cpu.md @@ -0,0 +1,107 @@ +# Cpu + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [boost_enabled](./#boost_enabled) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [cores_count](./#cores_count) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [cores_enabled](./#cores_enabled) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [features](./#features) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [smt_enabled](./#smt_enabled) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [CpuCore[]](../CpuCore) | [get_cores](./#get_cores)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_dbus_path](./#get_dbus_path)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_feature](./#has_feature)(flag: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `boost_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) boost_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cores_count` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) cores_count + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cores_enabled` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) cores_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `features` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) features + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `smt_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) smt_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_cores()` + + +[CpuCore[]](../CpuCore) **get_cores**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_dbus_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_dbus_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_feature()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_feature**(flag: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/CpuCore.md b/docs/class-reference/CpuCore.md new file mode 100644 index 000000000..c9efc35e4 --- /dev/null +++ b/docs/class-reference/CpuCore.md @@ -0,0 +1,67 @@ +# CpuCore + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [core_id](./#core_id) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [number](./#number) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [online](./#online) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_dbus_path](./#get_dbus_path)() | + + +------------------ + +## Property Descriptions + +### `core_id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) core_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `number` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) number + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `online` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) online + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_dbus_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_dbus_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/CustomLogger.md b/docs/class-reference/CustomLogger.md new file mode 100644 index 000000000..388878eaf --- /dev/null +++ b/docs/class-reference/CustomLogger.md @@ -0,0 +1,85 @@ +# CustomLogger + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Named logger that can log text with a prefix and a name +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_level](./#set_level)(level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [trace](./#trace)(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [debug](./#debug)(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [info](./#info)(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [warn](./#warn)(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [error](./#error)(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [deprecated](./#deprecated)(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | + + +------------------ + +## Method Descriptions + +### `set_level()` + + +void **set_level**(level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `trace()` + + +void **trace**(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `debug()` + + +void **debug**(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `info()` + + +void **info**(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `warn()` + + +void **warn**(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `error()` + + +void **error**(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), xtra2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra4: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra5: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, xtra6: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `deprecated()` + + +void **deprecated**(message: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/DBusDevice.md b/docs/class-reference/DBusDevice.md new file mode 100644 index 000000000..aff36e81f --- /dev/null +++ b/docs/class-reference/DBusDevice.md @@ -0,0 +1,27 @@ +# DBusDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | + + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/DRMCardInfo.md b/docs/class-reference/DRMCardInfo.md new file mode 100644 index 000000000..4d59606f6 --- /dev/null +++ b/docs/class-reference/DRMCardInfo.md @@ -0,0 +1,162 @@ +# DRMCardInfo + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +GPU card state +## Description + +Represents the data contained in /sys/class/drm/cardX +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor](./#vendor) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor_id](./#vendor_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device](./#device) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_id](./#device_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_type](./#device_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [subdevice](./#subdevice) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [subdevice_id](./#subdevice_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [subvendor_id](./#subvendor_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [revision_id](./#revision_id) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [DRMCardPort](../DRMCardPort) | [get_port](./#get_port)(port_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [DRMCardPort[]](../DRMCardPort) | [get_ports](./#get_ports)() | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [get_clock_limits](./#get_clock_limits)() | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [get_clock_values](./#get_clock_values)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `subdevice` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) subdevice + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `subdevice_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) subdevice_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `subvendor_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) subvendor_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `revision_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) revision_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_port()` + + +[DRMCardPort](../DRMCardPort) **get_port**(port_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns a [DRMCardPort](../DRMCardPort) object for the given port directory (E.g. card1-HDMI-A-1) +### `get_ports()` + + +[DRMCardPort[]](../DRMCardPort) **get_ports**() + + +Returns an array of connectors that are attached to this GPU card +### `get_clock_limits()` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) **get_clock_limits**() + + +Returns the maximum and minimum GPU clock values +### `get_clock_values()` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) **get_clock_values**() + + +Returns the current GPU minimum and maximum clock values diff --git a/docs/class-reference/DRMCardInfoAMD.md b/docs/class-reference/DRMCardInfoAMD.md new file mode 100644 index 000000000..dacae2e53 --- /dev/null +++ b/docs/class-reference/DRMCardInfoAMD.md @@ -0,0 +1,31 @@ +# DRMCardInfoAMD + +**Inherits:** [DRMCardInfo](../DRMCardInfo) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [get_clock_limits](./#get_clock_limits)() | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [get_clock_values](./#get_clock_values)() | + + +------------------ + +## Method Descriptions + +### `get_clock_limits()` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) **get_clock_limits**() + + +Reads the pp_od_clk_voltage from sysfs and returns the OD_RANGE values. This file will be empty if not in "manual" for pp_od_performance_level. +### `get_clock_values()` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) **get_clock_values**() + + +Reads the pp_od_clk_voltage from sysfs and returns the OD_SCLK values. This file will be empty if not in "manual" for pp_od_performance_level. diff --git a/docs/class-reference/DRMCardInfoIntel.md b/docs/class-reference/DRMCardInfoIntel.md new file mode 100644 index 000000000..04312e22d --- /dev/null +++ b/docs/class-reference/DRMCardInfoIntel.md @@ -0,0 +1,31 @@ +# DRMCardInfoIntel + +**Inherits:** [DRMCardInfo](../DRMCardInfo) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [get_clock_limits](./#get_clock_limits)() | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [get_clock_values](./#get_clock_values)() | + + +------------------ + +## Method Descriptions + +### `get_clock_limits()` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) **get_clock_limits**() + + +Reads the following sysfs paths and returns the current and mix/max gpu frequencies. +### `get_clock_values()` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) **get_clock_values**() + + +Returns a vector of the current min/max clock values diff --git a/docs/class-reference/DRMCardPort.md b/docs/class-reference/DRMCardPort.md new file mode 100644 index 000000000..cae1f6205 --- /dev/null +++ b/docs/class-reference/DRMCardPort.md @@ -0,0 +1,152 @@ +# DRMCardPort + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +GPU connector port state +## Description + +Represents the data contained in /sys/class/drm/cardX-YYYY and includes an update function that can be called to update the state of the connector port. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) | [mutex](./#mutex) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [path](./#path) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [connector_id](./#connector_id) | -1 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [enabled](./#enabled) | false | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [modes](./#modes) | PackedStringArray() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [status](./#status) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [dpms](./#dpms) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [update](./#update)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_connector_id](./#get_connector_id)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [get_enabled](./#get_enabled)() | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_modes](./#get_modes)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_status](./#get_status)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [get_dpms](./#get_dpms)() | + + +------------------ + +## Property Descriptions + +### `mutex` + + +[Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) mutex + + +Mutex used for thread safety +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Name of the port. E.g. HDMI-A-1 +### `path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) path + + +Full path to the port. E.g. /sys/class/drm/card1-HDMI-A-1 +### `connector_id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) connector_id = -1 + + +The connector id. E.g. /sys/class/drm/card1-HDMI-A-1/connector_id +### `enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) enabled = false + + +Whether or not the port is enabled +### `modes` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) modes = PackedStringArray() + + +An array of valid modes (E.g. ["1024x768", "1920x1080"](https://docs.godotengine.org/en/stable/classes/class_"1024x768", "1920x1080".html)) +### `status` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) status + + +Status of the port (e.g. "connected") +### `dpms` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) dpms + + +Display power management signaling + + + +------------------ + +## Method Descriptions + +### `update()` + + +void **update**() + + +Updates the properties of the port +### `get_connector_id()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_connector_id**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_enabled()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **get_enabled**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_modes()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_modes**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_status()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_status**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_dpms()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **get_dpms**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Dialog.md b/docs/class-reference/Dialog.md new file mode 100644 index 000000000..92bd5920b --- /dev/null +++ b/docs/class-reference/Dialog.md @@ -0,0 +1,117 @@ +# Dialog + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [confirm_text](./#confirm_text) | "OK" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cancel_text](./#cancel_text) | "Cancel" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [cancel_visible](./#cancel_visible) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [close_on_selected](./#close_on_selected) | true | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [CardButton](../CardButton) | [confirm_button](./#confirm_button) | | +| [CardButton](../CardButton) | [cancel_button](./#cancel_button) | | +| [Effect](../Effect) | [fade_effect](./#fade_effect) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [open](./#open)(return_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", confirm_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", cancel_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text + + +Text to display in the dialog box +### `confirm_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) confirm_text = "OK" + + +Confirm button text +### `cancel_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cancel_text = "Cancel" + + +Cancel button text +### `cancel_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) cancel_visible = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `close_on_selected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) close_on_selected = true + + +Close the dialog when the user selects an option +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `confirm_button` + + +[CardButton](../CardButton) confirm_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cancel_button` + + +[CardButton](../CardButton) cancel_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `fade_effect` + + +[Effect](../Effect) fade_effect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `open()` + + +void **open**(return_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", confirm_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", cancel_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Opens the dialog box with the given settings diff --git a/docs/class-reference/DiskManager.md b/docs/class-reference/DiskManager.md new file mode 100644 index 000000000..a6be55a4f --- /dev/null +++ b/docs/class-reference/DiskManager.md @@ -0,0 +1,27 @@ +# DiskManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [UDisks2Instance](../UDisks2Instance) | [instance](./#instance) | | + + + +------------------ + +## Property Descriptions + +### `instance` + + +[UDisks2Instance](../UDisks2Instance) instance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/DisplayManager.BacklightProvider.md b/docs/class-reference/DisplayManager.BacklightProvider.md new file mode 100644 index 000000000..3ed615392 --- /dev/null +++ b/docs/class-reference/DisplayManager.BacklightProvider.md @@ -0,0 +1,55 @@ +# DisplayManager.BacklightProvider + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +Interface for controlling backlights (e.g. screen brightness) +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_backlights](./#get_backlights)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_max_brightness_value](./#get_max_brightness_value)(_backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_brightness_value](./#get_brightness_value)(_backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [get_brightness](./#get_brightness)(_backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_brightness](./#set_brightness)(_value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), _type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, _backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Method Descriptions + +### `get_backlights()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_backlights**() + + +Returns all available backlights +### `get_max_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_max_brightness_value**(_backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Returns the maximum raw brightness value of the given backlight. If No backlight is passed, then this should return the value for the "main" display. Returns -1 if there is an error fetching the value. +### `get_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_brightness_value**(_backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Returns the current raw brightness value of the given backlight. If no backlight is passed, then this should return the value for the "main" display. Returns -1 if there is an error fetching the value. +### `get_brightness()` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) **get_brightness**(_backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Returns the current brightness level for the given backlight as a percent. Returns -1 if there is an error fetching the value +### `set_brightness()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_brightness**(_value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), _type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, _backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Sets the brightness for the given backlight to the given value as a percentage (e.g. 1.0 is 100% brightness). If no backlight is specified, this should set the value on _all_ discovered backlights. Returns OK if set successfully. diff --git a/docs/class-reference/DisplayManager.BrightnessctlBacklight.md b/docs/class-reference/DisplayManager.BrightnessctlBacklight.md new file mode 100644 index 000000000..11f39af85 --- /dev/null +++ b/docs/class-reference/DisplayManager.BrightnessctlBacklight.md @@ -0,0 +1,87 @@ +# DisplayManager.BrightnessctlBacklight + +**Inherits:** [DisplayManager.BacklightProvider](../DisplayManager.BacklightProvider) + +Brightnessctl implementation of backlight control +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_backlights](./#get_backlights)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_brightness](./#set_brightness)(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [get_brightness](./#get_brightness)(backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_brightness_value](./#get_brightness_value)(backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_max_brightness_value](./#get_max_brightness_value)(backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_backlights()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_backlights**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_brightness()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_brightness**(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_brightness()` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) **get_brightness**(backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_brightness_value**(backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_max_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_max_brightness_value**(backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/DisplayManager.SteamOsBacklight.md b/docs/class-reference/DisplayManager.SteamOsBacklight.md new file mode 100644 index 000000000..7e8c187e5 --- /dev/null +++ b/docs/class-reference/DisplayManager.SteamOsBacklight.md @@ -0,0 +1,87 @@ +# DisplayManager.SteamOsBacklight + +**Inherits:** [DisplayManager.BacklightProvider](../DisplayManager.BacklightProvider) + +SteamOS implementation of backlight control +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_backlights](./#get_backlights)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_brightness](./#set_brightness)(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [get_brightness](./#get_brightness)(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_brightness_value](./#get_brightness_value)(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_max_brightness_value](./#get_max_brightness_value)(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_backlights()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_backlights**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_brightness()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_brightness**(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_brightness()` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) **get_brightness**(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_brightness_value**(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_max_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_max_brightness_value**(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/DisplayManager.md b/docs/class-reference/DisplayManager.md new file mode 100644 index 000000000..3c002c7df --- /dev/null +++ b/docs/class-reference/DisplayManager.md @@ -0,0 +1,108 @@ +# DisplayManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +DisplayManager is responsible for managing display settings +## Description + +Global display manager for managing display settings +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [DisplayManager.BacklightProvider](../DisplayManager.BacklightProvider) | [brightness_provider](./#brightness_provider) | _get_backlight_provider() | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [backlights](./#backlights) | get_backlight_paths() | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [supports_brightness](./#supports_brightness)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_brightness](./#set_brightness)(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [get_brightness](./#get_brightness)(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_brightness_value](./#get_brightness_value)(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_max_brightness_value](./#get_max_brightness_value)(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_backlight_paths](./#get_backlight_paths)() | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `brightness_provider` + + +[DisplayManager.BacklightProvider](../DisplayManager.BacklightProvider) brightness_provider = _get_backlight_provider() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `backlights` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) backlights = get_backlight_paths() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `supports_brightness()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **supports_brightness**() + + +Returns true if OpenGamepadUI has access to adjust brightness +### `set_brightness()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_brightness**(value: [float](https://docs.godotengine.org/en/stable/classes/class_float.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, backlight: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Sets the brightness on all discovered backlights to the given value as a percentage (e.g. 1.0 is 100% brightness) +### `get_brightness()` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) **get_brightness**(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the current brightness level for the given backlight as a percent +### `get_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_brightness_value**(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the current brightness value for the given backlight +### `get_max_brightness_value()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_max_brightness_value**(backlight_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the maximum brightness for the given backlight +### `get_backlight_paths()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_backlight_paths**() + + +Returns a list of all detected backlight devices diff --git a/docs/class-reference/DriveCard.md b/docs/class-reference/DriveCard.md new file mode 100644 index 000000000..1721a1044 --- /dev/null +++ b/docs/class-reference/DriveCard.md @@ -0,0 +1,185 @@ +# DriveCard + +**Inherits:** [MarginContainer](https://docs.godotengine.org/en/stable/classes/class_margincontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SteamRemovableMediaManager](../SteamRemovableMediaManager) | [steam_disks](./#steam_disks) | | +| [NotificationManager](../NotificationManager) | [notification_manager](./#notification_manager) | | +| [BlockDevice](../BlockDevice) | [block_device](./#block_device) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_path](./#device_path) | | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [highlight_tween](./#highlight_tween) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [drive_name_label](./#drive_name_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [drive_size_label](./#drive_size_label) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [drive_icon](./#drive_icon) | | +| [FocusGroup](../FocusGroup) | [drive_focus_group](./#drive_focus_group) | | +| [CardButton](../CardButton) | [format_button](./#format_button) | | +| [HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) | [partitions_container](./#partitions_container) | | +| [FocusGroup](../FocusGroup) | [partitions_focus_group](./#partitions_focus_group) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [log_level](./#log_level) | 3 | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [setup](./#setup)(device: [BlockDevice](../BlockDevice)) | + + +------------------ + +## Property Descriptions + +### `steam_disks` + + +[SteamRemovableMediaManager](../SteamRemovableMediaManager) steam_disks + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `notification_manager` + + +[NotificationManager](../NotificationManager) notification_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `block_device` + + +[BlockDevice](../BlockDevice) block_device + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight_tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) highlight_tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `drive_name_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) drive_name_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `drive_size_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) drive_size_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `drive_icon` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) drive_icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `drive_focus_group` + + +[FocusGroup](../FocusGroup) drive_focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `format_button` + + +[CardButton](../CardButton) format_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `partitions_container` + + +[HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) partitions_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `partitions_focus_group` + + +[FocusGroup](../FocusGroup) partitions_focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `log_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) log_level = 3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `setup()` + + +void **setup**(device: [BlockDevice](../BlockDevice)) + + +Performs _ready fucntionality with the given BlockDevice diff --git a/docs/class-reference/DriveDevice.md b/docs/class-reference/DriveDevice.md new file mode 100644 index 000000000..b7bd91be4 --- /dev/null +++ b/docs/class-reference/DriveDevice.md @@ -0,0 +1,47 @@ +# DriveDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [interface_type](./#interface_type)() | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `interface_type()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **interface_type**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Dropdown.md b/docs/class-reference/Dropdown.md new file mode 100644 index 000000000..bd383a0e9 --- /dev/null +++ b/docs/class-reference/Dropdown.md @@ -0,0 +1,137 @@ +# Dropdown + +**Inherits:** [BoxContainer](https://docs.godotengine.org/en/stable/classes/class_boxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [title](./#title) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [selected](./#selected) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [description_label](./#description_label) | | +| [OptionButton](https://docs.godotengine.org/en/stable/classes/class_optionbutton.html) | [option_button](./#option_button) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [add_item](./#add_item)(text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = -1) | +| void | [clear](./#clear)() | +| void | [select](./#select)(idx: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [set_option_disabled](./#set_option_disabled)(idx: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), is_disabled: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) | + + +------------------ + +## Property Descriptions + +### `title` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) title + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `selected` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) selected + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) description_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `option_button` + + +[OptionButton](https://docs.godotengine.org/en/stable/classes/class_optionbutton.html) option_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `add_item()` + + +void **add_item**(text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = -1) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `clear()` + + +void **clear**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `select()` + + +void **select**(idx: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_option_disabled()` + + +void **set_option_disabled**(idx: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), is_disabled: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Effect.md b/docs/class-reference/Effect.md new file mode 100644 index 000000000..4961089dd --- /dev/null +++ b/docs/class-reference/Effect.md @@ -0,0 +1,28 @@ +# Effect + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Effects are UI functionality that can be attached to nodes and react to signals +## Description + +This class is meant to act as a base class for other effects. Effects listen for a given signal and perform some action when that signal is triggered. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | + + + +------------------ + +## Property Descriptions + +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +Signal on our parent node to connect to + diff --git a/docs/class-reference/EnhancedScrollContainer.md b/docs/class-reference/EnhancedScrollContainer.md new file mode 100644 index 000000000..25177de51 --- /dev/null +++ b/docs/class-reference/EnhancedScrollContainer.md @@ -0,0 +1,27 @@ +# EnhancedScrollContainer + +**Inherits:** [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) | [maximum_size](./#maximum_size) | | + + + +------------------ + +## Property Descriptions + +### `maximum_size` + + +[Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) maximum_size + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/EventDevice.md b/docs/class-reference/EventDevice.md new file mode 100644 index 000000000..2548d2ecb --- /dev/null +++ b/docs/class-reference/EventDevice.md @@ -0,0 +1,77 @@ +# EventDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_path](./#device_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [phys_path](./#phys_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [sysfs_path](./#sysfs_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [unique_id](./#unique_id) | | + + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `phys_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) phys_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `sysfs_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) sysfs_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `unique_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) unique_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/ExpandableCard.md b/docs/class-reference/ExpandableCard.md new file mode 100644 index 000000000..2df7745e1 --- /dev/null +++ b/docs/class-reference/ExpandableCard.md @@ -0,0 +1,97 @@ +# ExpandableCard + +**Inherits:** [Container](https://docs.godotengine.org/en/stable/classes/class_container.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [title](./#title) | "Section" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_toggled](./#is_toggled) | false | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [label](./#label) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [highlight](./#highlight) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [content_container](./#content_container) | | +| [FocusGroupSetter](../FocusGroupSetter) | [focus_group_setter](./#focus_group_setter) | | +| [FocusGroup](../FocusGroup) | [focus_group](./#focus_group) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `title` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) title = "Section" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `is_toggled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_toggled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `content_container` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) content_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_group_setter` + + +[FocusGroupSetter](../FocusGroupSetter) focus_group_setter + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_group` + + +[FocusGroup](../FocusGroup) focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/FadeEffect.md b/docs/class-reference/FadeEffect.md new file mode 100644 index 000000000..b6b8445f5 --- /dev/null +++ b/docs/class-reference/FadeEffect.md @@ -0,0 +1,81 @@ +# FadeEffect + +**Inherits:** [Effect](../Effect) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [target](./#target) | get_parent() | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [fade_speed](./#fade_speed) | 0.1 | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [fade_out_signal](./#fade_out_signal) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [fade_in](./#fade_in)() | +| void | [fade_out](./#fade_out)() | + + +------------------ + +## Property Descriptions + +### `target` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) target = get_parent() + + +The target node to fade the opacity in/out +### `fade_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) fade_speed = 0.1 + + +Fade speed in seconds +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `fade_out_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) fade_out_signal + + +Signal to connect to to trigger a fade out + + + +------------------ + +## Method Descriptions + +### `fade_in()` + + +void **fade_in**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `fade_out()` + + +void **fade_out**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/FifoReader.md b/docs/class-reference/FifoReader.md new file mode 100644 index 000000000..ae9eca341 --- /dev/null +++ b/docs/class-reference/FifoReader.md @@ -0,0 +1,57 @@ +# FifoReader + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_open](./#is_open) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [close](./#close)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [open](./#open)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `is_open` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_open + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `close()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **close**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `open()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **open**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/FilesystemDevice.md b/docs/class-reference/FilesystemDevice.md new file mode 100644 index 000000000..ba9774008 --- /dev/null +++ b/docs/class-reference/FilesystemDevice.md @@ -0,0 +1,47 @@ +# FilesystemDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_mounts](./#get_mounts)() | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_mounts()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_mounts**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/FocusGroup.md b/docs/class-reference/FocusGroup.md new file mode 100644 index 000000000..9ae3f8ee4 --- /dev/null +++ b/docs/class-reference/FocusGroup.md @@ -0,0 +1,174 @@ +# FocusGroup + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Automatically manage focus for Control nodes in a container +## Description + +FocusGroup connects the focus neighbors of all control nodes in the given parent container. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [current_focus](./#current_focus) | | +| [FocusStack](../FocusStack) | [focus_stack](./#focus_stack) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [back_action](./#back_action) | "ogui_east" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [wrap_focus](./#wrap_focus) | true | +| [FocusGroup](../FocusGroup) | [focus_neighbor_bottom](./#focus_neighbor_bottom) | | +| [FocusGroup](../FocusGroup) | [focus_neighbor_top](./#focus_neighbor_top) | | +| [FocusGroup](../FocusGroup) | [focus_neighbor_left](./#focus_neighbor_left) | | +| [FocusGroup](../FocusGroup) | [focus_neighbor_right](./#focus_neighbor_right) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [neighbor_control](./#neighbor_control) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [parent](./#parent) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [recalculate_focus](./#recalculate_focus)() | +| void | [grab_focus](./#grab_focus)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_focused](./#is_focused)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_in_focus_stack](./#is_in_focus_stack)() | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [find_focusable](./#find_focusable)(nodes: [Node[]](https://docs.godotengine.org/en/stable/classes/class_node.html), root: [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) = null) | + + +------------------ + +## Property Descriptions + +### `current_focus` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) current_focus + + +The current focus of the focus group +### `focus_stack` + + +[FocusStack](../FocusStack) focus_stack + + +DEPRECATED: Use [InputWatcher](../InputWatcher) nodes with [FocusSetter](../FocusSetter) to handle back input. Menus with multiple levels of focus groups can be part of a chain of focus +### `back_action` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) back_action = "ogui_east" + + +The InputEvent that will trigger focusing a parent focus group +### `wrap_focus` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) wrap_focus = true + + +Whether or not to wrap around focus chains +### `focus_neighbor_bottom` + + +[FocusGroup](../FocusGroup) focus_neighbor_bottom + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_neighbor_top` + + +[FocusGroup](../FocusGroup) focus_neighbor_top + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_neighbor_left` + + +[FocusGroup](../FocusGroup) focus_neighbor_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_neighbor_right` + + +[FocusGroup](../FocusGroup) focus_neighbor_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `neighbor_control` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) neighbor_control + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `parent` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) parent + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `recalculate_focus()` + + +void **recalculate_focus**() + + +Recalculate the focus neighbors of the container's children +### `grab_focus()` + + +void **grab_focus**() + + +Grab focus on the currently focused node in the group and push this group to the top of the focus stack +### `is_focused()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_focused**() + + +Returns true if this focus group is the currently focus in the focus stack. +### `is_in_focus_stack()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_in_focus_stack**() + + +Returns true if this focus group is anywhere in the focus stack. +### `find_focusable()` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) **find_focusable**(nodes: [Node[]](https://docs.godotengine.org/en/stable/classes/class_node.html), root: [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/FocusGroupSetter.md b/docs/class-reference/FocusGroupSetter.md new file mode 100644 index 000000000..429796c8c --- /dev/null +++ b/docs/class-reference/FocusGroupSetter.md @@ -0,0 +1,45 @@ +# FocusGroupSetter + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [FocusGroup](../FocusGroup) | [target](./#target) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `target` + + +[FocusGroup](../FocusGroup) target + + +The focus group to grab focus on when the given signal is emitted +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/FocusManager.md b/docs/class-reference/FocusManager.md new file mode 100644 index 000000000..252296d4e --- /dev/null +++ b/docs/class-reference/FocusManager.md @@ -0,0 +1,97 @@ +# FocusManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [current_focus](./#current_focus) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [process_input](./#process_input) | false | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [refocus_on](./#refocus_on) | "ogui_east" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [intercept_children_only](./#intercept_children_only) | false | +| [FocusStack](../FocusStack) | [focus_stack](./#focus_stack) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [parent](./#parent) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [recalculate_focus](./#recalculate_focus)() | + + +------------------ + +## Property Descriptions + +### `current_focus` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) current_focus + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `process_input` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) process_input = false + + +If enabled, will intercept input and refocus on the current focus node instead +### `refocus_on` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) refocus_on = "ogui_east" + + +The InputEvent that will trigger refocusing the current focus node +### `intercept_children_only` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) intercept_children_only = false + + +If true, only intercept input and refocus if a descendent node has focus +### `focus_stack` + + +[FocusStack](../FocusStack) focus_stack + + +Menus with multiple levels of focus can be part of a chain of focus +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `parent` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) parent + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `recalculate_focus()` + + +void **recalculate_focus**() + + +Recalculate the focus neighbors of the container's children diff --git a/docs/class-reference/FocusSetter.md b/docs/class-reference/FocusSetter.md new file mode 100644 index 000000000..691413ee6 --- /dev/null +++ b/docs/class-reference/FocusSetter.md @@ -0,0 +1,53 @@ +# FocusSetter + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [target](./#target) | | +| [FocusStack](../FocusStack) | [focus_stack](./#focus_stack) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `target` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) target + + +The node to try and discover the focusable node. +### `focus_stack` + + +[FocusStack](../FocusStack) focus_stack + + +Menus with multiple levels of focus can be part of a chain of focus +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/FocusStack.md b/docs/class-reference/FocusStack.md new file mode 100644 index 000000000..1037ba7d9 --- /dev/null +++ b/docs/class-reference/FocusStack.md @@ -0,0 +1,106 @@ +# FocusStack + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Manages the focus flow using a stack +## Description + +Keeps track of levels of focus through a stack +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [FocusGroup[]](../FocusGroup) | [stack](./#stack) | [] | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [FocusGroup](../FocusGroup) | [current_focus](./#current_focus)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_focused](./#is_focused)(group: [FocusGroup](../FocusGroup)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_in_stack](./#is_in_stack)(group: [FocusGroup](../FocusGroup)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [size](./#size)() | +| void | [push](./#push)(group: [FocusGroup](../FocusGroup)) | +| [FocusGroup](../FocusGroup) | [pop](./#pop)() | +| void | [clear](./#clear)() | + + +------------------ + +## Property Descriptions + +### `stack` + + +[FocusGroup[]](../FocusGroup) stack = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `current_focus()` + + +[FocusGroup](../FocusGroup) **current_focus**() + + +Returns the currently focused focus group +### `is_focused()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_focused**(group: [FocusGroup](../FocusGroup)) + + +Returns whether or not the given focus group is currently focused +### `is_in_stack()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_in_stack**(group: [FocusGroup](../FocusGroup)) + + +Returns true if the given focus group exists anywhere in the stack +### `size()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **size**() + + +Current size of the focus stack +### `push()` + + +void **push**(group: [FocusGroup](../FocusGroup)) + + +Push the given focus group to the top of the focus stack and call its grab_focus method +### `pop()` + + +[FocusGroup](../FocusGroup) **pop**() + + +Remove and return the focus group at the top of the focus stack and call the next focus group's grab_focus method. +### `clear()` + + +void **clear**() + + +Clear the focus stack diff --git a/docs/class-reference/GameCard.md b/docs/class-reference/GameCard.md new file mode 100644 index 000000000..242972d71 --- /dev/null +++ b/docs/class-reference/GameCard.md @@ -0,0 +1,193 @@ +# GameCard + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [BoxArtManager](../BoxArtManager) | [boxart_manager](./#boxart_manager) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_label](./#show_label) | false | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Game Name" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_progress](./#show_progress) | false | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [value](./#value) | 50.0 | +| [LibraryItem](../LibraryItem) | [library_item](./#library_item) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [tapped_count](./#tapped_count) | 0 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [texture](./#texture) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [name_container](./#name_container) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [name_label](./#name_label) | | +| [ProgressBar](https://docs.godotengine.org/en/stable/classes/class_progressbar.html) | [progress](./#progress) | | +| [Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) | [tap_timer](./#tap_timer) | | +| [ColorRect](https://docs.godotengine.org/en/stable/classes/class_colorrect.html) | [shine_rect](./#shine_rect) | | +| [ColorRect](https://docs.godotengine.org/en/stable/classes/class_colorrect.html) | [god_rays_rect](./#god_rays_rect) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_texture](./#set_texture)(new_texture: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html)) | +| void | [set_library_item](./#set_library_item)(item: [LibraryItem](../LibraryItem), free_on_remove: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | + + +------------------ + +## Property Descriptions + +### `boxart_manager` + + +[BoxArtManager](../BoxArtManager) boxart_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_label` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_label = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Game Name" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_progress` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_progress = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `value` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) value = 50.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `library_item` + + +[LibraryItem](../LibraryItem) library_item + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tapped_count` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) tapped_count = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `texture` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name_container` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) name_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name_label` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) name_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `progress` + + +[ProgressBar](https://docs.godotengine.org/en/stable/classes/class_progressbar.html) progress + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tap_timer` + + +[Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) tap_timer + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `shine_rect` + + +[ColorRect](https://docs.godotengine.org/en/stable/classes/class_colorrect.html) shine_rect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `god_rays_rect` + + +[ColorRect](https://docs.godotengine.org/en/stable/classes/class_colorrect.html) god_rays_rect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `set_texture()` + + +void **set_texture**(new_texture: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html)) + + +Sets the texture on the given card and sets the shader params +### `set_library_item()` + + +void **set_library_item**(item: [LibraryItem](../LibraryItem), free_on_remove: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +Configures the card with the given library item. diff --git a/docs/class-reference/GamepadDevice.md b/docs/class-reference/GamepadDevice.md new file mode 100644 index 000000000..2b65d6879 --- /dev/null +++ b/docs/class-reference/GamepadDevice.md @@ -0,0 +1,47 @@ +# GamepadDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_type](./#device_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | + + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/GamepadMapper.md b/docs/class-reference/GamepadMapper.md new file mode 100644 index 000000000..8cb672847 --- /dev/null +++ b/docs/class-reference/GamepadMapper.md @@ -0,0 +1,203 @@ +# GamepadMapper + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [State](../State) | [change_input_state](./#change_input_state) | | +| [TabContainerState](../TabContainerState) | [tabs_state](./#tabs_state) | | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [card_button_scene](./#card_button_scene) | | +| [InputIconManager](../InputIconManager) | [input_icons](./#input_icons) | | +| [KeyboardContext](../KeyboardContext) | [keyboard_context](./#keyboard_context) | | +| [InputPlumberMapping](../InputPlumberMapping) | [current_mapping](./#current_mapping) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html) | [tab_container](./#tab_container) | | +| [OnScreenKeyboard](../OnScreenKeyboard) | [osk](./#osk) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [modifying_input_texture](./#modifying_input_texture) | | +| [CardIconButton](../CardIconButton) | [clear_button](./#clear_button) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [gamepad_diagram](./#gamepad_diagram) | | +| [Container](https://docs.godotengine.org/en/stable/classes/class_container.html) | [gamepad_input_container](./#gamepad_input_container) | | +| [FocusGroup](../FocusGroup) | [gamepad_focus_group](./#gamepad_focus_group) | | +| [Container](https://docs.godotengine.org/en/stable/classes/class_container.html) | [mouse_input_container](./#mouse_input_container) | | +| [FocusGroup](../FocusGroup) | [mouse_focus_group](./#mouse_focus_group) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [populate_gamepad_mappings_for](./#populate_gamepad_mappings_for)(capabilities: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), gamepad_icons_type: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [populate_mouse_mappings_for](./#populate_mouse_mappings_for)(caps: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | + + +------------------ + +## Property Descriptions + +### `change_input_state` + + +[State](../State) change_input_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tabs_state` + + +[TabContainerState](../TabContainerState) tabs_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `card_button_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) card_button_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `input_icons` + + +[InputIconManager](../InputIconManager) input_icons + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `keyboard_context` + + +[KeyboardContext](../KeyboardContext) keyboard_context + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `current_mapping` + + +[InputPlumberMapping](../InputPlumberMapping) current_mapping + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tab_container` + + +[TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html) tab_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `osk` + + +[OnScreenKeyboard](../OnScreenKeyboard) osk + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `modifying_input_texture` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) modifying_input_texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `clear_button` + + +[CardIconButton](../CardIconButton) clear_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamepad_diagram` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) gamepad_diagram + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamepad_input_container` + + +[Container](https://docs.godotengine.org/en/stable/classes/class_container.html) gamepad_input_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamepad_focus_group` + + +[FocusGroup](../FocusGroup) gamepad_focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse_input_container` + + +[Container](https://docs.godotengine.org/en/stable/classes/class_container.html) mouse_input_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse_focus_group` + + +[FocusGroup](../FocusGroup) mouse_focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `populate_gamepad_mappings_for()` + + +void **populate_gamepad_mappings_for**(capabilities: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), gamepad_icons_type: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Populates the mappings for the given capabilities +### `populate_mouse_mappings_for()` + + +void **populate_mouse_mappings_for**(caps: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +Populates the mouse mappings for the given capabilities diff --git a/docs/class-reference/Gamescope.md b/docs/class-reference/Gamescope.md new file mode 100644 index 000000000..bdbed653d --- /dev/null +++ b/docs/class-reference/Gamescope.md @@ -0,0 +1,40 @@ +# Gamescope + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Manages gamescope. +## Description + +The [Gamescope](../Gamescope) class is responsible for loading a [GamescopeInstance](../GamescopeInstance) and calling its 'process()' method each frame. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [GamescopeInstance](../GamescopeInstance) | [instance](./#instance) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `instance` + + +[GamescopeInstance](../GamescopeInstance) instance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/GamescopeInstance.md b/docs/class-reference/GamescopeInstance.md new file mode 100644 index 000000000..26bdf2cea --- /dev/null +++ b/docs/class-reference/GamescopeInstance.md @@ -0,0 +1,55 @@ +# GamescopeInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [GamescopeXWayland](../GamescopeXWayland) | [get_xwayland](./#get_xwayland)(kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [GamescopeXWayland](../GamescopeXWayland) | [get_xwayland_by_name](./#get_xwayland_by_name)(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [GamescopeXWayland[]](../GamescopeXWayland) | [get_xwaylands](./#get_xwaylands)() | +| void | [process](./#process)() | + + +------------------ + +## Method Descriptions + +### `get_xwayland()` + + +[GamescopeXWayland](../GamescopeXWayland) **get_xwayland**(kind: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_xwayland_by_name()` + + +[GamescopeXWayland](../GamescopeXWayland) **get_xwayland_by_name**(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_xwaylands()` + + +[GamescopeXWayland[]](../GamescopeXWayland) **get_xwaylands**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GamescopeXWayland.md b/docs/class-reference/GamescopeXWayland.md new file mode 100644 index 000000000..9d13ab1a0 --- /dev/null +++ b/docs/class-reference/GamescopeXWayland.md @@ -0,0 +1,507 @@ +# GamescopeXWayland + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [allow_tearing](./#allow_tearing) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [baselayer_app](./#baselayer_app) | | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [baselayer_apps](./#baselayer_apps) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [baselayer_window](./#baselayer_window) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [blur_mode](./#blur_mode) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [blur_radius](./#blur_radius) | | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [focusable_apps](./#focusable_apps) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [focusable_window_names](./#focusable_window_names) | | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [focusable_windows](./#focusable_windows) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [focused_app](./#focused_app) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [focused_app_gfx](./#focused_app_gfx) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [focused_window](./#focused_window) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [fps_limit](./#fps_limit) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_primary](./#is_primary) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [overlay_focused](./#overlay_focused) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [root_window_id](./#root_window_id) | | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [watched_windows](./#watched_windows) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [get_all_windows](./#get_all_windows)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_app_id](./#get_app_id)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_input_counter](./#get_input_counter)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_overlay](./#get_overlay)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [get_pids_for_window](./#get_pids_for_window)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [get_window_children](./#get_window_children)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_window_depth](./#get_window_depth)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_window_name](./#get_window_name)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) | [get_window_position](./#get_window_position)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_window_root](./#get_window_root)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) | [get_window_size](./#get_window_size)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Vector2i[]](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) | [get_window_sizes](./#get_window_sizes)(window_ids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [get_windows_for_pid](./#get_windows_for_pid)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_app_id](./#has_app_id)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_input_focus](./#has_input_focus)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_notification](./#has_notification)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_overlay](./#has_overlay)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_focusable_app](./#is_focusable_app)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [remove_app_id](./#remove_app_id)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [remove_baselayer_app](./#remove_baselayer_app)() | +| void | [remove_baselayer_window](./#remove_baselayer_window)() | +| void | [request_screenshot](./#request_screenshot)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_app_id](./#set_app_id)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), app_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_external_overlay](./#set_external_overlay)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_input_focus](./#set_input_focus)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_main_app](./#set_main_app)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_notification](./#set_notification)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_overlay](./#set_overlay)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [unwatch_window](./#unwatch_window)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [watch_window](./#watch_window)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `allow_tearing` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) allow_tearing + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `baselayer_app` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) baselayer_app + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `baselayer_apps` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) baselayer_apps + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `baselayer_window` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) baselayer_window + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `blur_mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) blur_mode + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `blur_radius` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) blur_radius + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focusable_apps` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) focusable_apps + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focusable_window_names` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) focusable_window_names + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focusable_windows` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) focusable_windows + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focused_app` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) focused_app + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focused_app_gfx` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) focused_app_gfx + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focused_window` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) focused_window + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `fps_limit` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) fps_limit + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `is_primary` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_primary + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `overlay_focused` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) overlay_focused + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `root_window_id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) root_window_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `watched_windows` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) watched_windows + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_all_windows()` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) **get_all_windows**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_app_id()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_app_id**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_input_counter()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_input_counter**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_overlay()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_overlay**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pids_for_window()` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) **get_pids_for_window**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_children()` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) **get_window_children**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_depth()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_window_depth**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_name()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_window_name**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_position()` + + +[Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) **get_window_position**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_root()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_window_root**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_size()` + + +[Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) **get_window_size**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_window_sizes()` + + +[Vector2i[]](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) **get_window_sizes**(window_ids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_windows_for_pid()` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) **get_windows_for_pid**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_app_id()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_app_id**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_input_focus()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_input_focus**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_notification()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_notification**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_overlay()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_overlay**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_focusable_app()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_focusable_app**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `remove_app_id()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **remove_app_id**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `remove_baselayer_app()` + + +void **remove_baselayer_app**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `remove_baselayer_window()` + + +void **remove_baselayer_window**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `request_screenshot()` + + +void **request_screenshot**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_app_id()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_app_id**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), app_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_external_overlay()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_external_overlay**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_input_focus()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_input_focus**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_main_app()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_main_app**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_notification()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_notification**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_overlay()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_overlay**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `unwatch_window()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **unwatch_window**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `watch_window()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **watch_window**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GitHubClient.md b/docs/class-reference/GitHubClient.md new file mode 100644 index 000000000..93613aae7 --- /dev/null +++ b/docs/class-reference/GitHubClient.md @@ -0,0 +1,23 @@ +# GitHubClient + +**Inherits:** [HTTPAPIClient](../HTTPAPIClient) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_releases](./#get_releases)(project: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), per_page: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 30, page: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 1) | + + +------------------ + +## Method Descriptions + +### `get_releases()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_releases**(project: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), per_page: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 30, page: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 1) + + +Returns the releases for the given project. E.g. "ShadowBlip/OpenGamepadUI" Refer to the GitHub API for data layout: https://api.github.com/repos/ShadowBlip/OpenGamepadUI/releases diff --git a/docs/class-reference/Gpu.md b/docs/class-reference/Gpu.md new file mode 100644 index 000000000..fc8a3e9a3 --- /dev/null +++ b/docs/class-reference/Gpu.md @@ -0,0 +1,35 @@ +# Gpu + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [GpuCard[]](../GpuCard) | [get_cards](./#get_cards)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_dbus_path](./#get_dbus_path)() | + + +------------------ + +## Method Descriptions + +### `get_cards()` + + +[GpuCard[]](../GpuCard) **get_cards**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_dbus_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_dbus_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GpuCard.md b/docs/class-reference/GpuCard.md new file mode 100644 index 000000000..f6c43b268 --- /dev/null +++ b/docs/class-reference/GpuCard.md @@ -0,0 +1,277 @@ +# GpuCard + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [boost](./#boost) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [class](./#class) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [class_id](./#class_id) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [clock_limit_mhz_max](./#clock_limit_mhz_max) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [clock_limit_mhz_min](./#clock_limit_mhz_min) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [clock_value_mhz_max](./#clock_value_mhz_max) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [clock_value_mhz_min](./#clock_value_mhz_min) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device](./#device) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_id](./#device_id) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [manual_clock](./#manual_clock) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [path](./#path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [power_profile](./#power_profile) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [power_profiles_available](./#power_profiles_available) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [revision_id](./#revision_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [subdevice](./#subdevice) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [subdevice_id](./#subdevice_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [subvendor_id](./#subvendor_id) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [tdp](./#tdp) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [thermal_throttle_limit_c](./#thermal_throttle_limit_c) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor](./#vendor) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor_id](./#vendor_id) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [GpuConnector[]](../GpuConnector) | [get_connectors](./#get_connectors)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_dbus_path](./#get_dbus_path)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [supports_tdp](./#supports_tdp)() | + + +------------------ + +## Property Descriptions + +### `boost` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) boost + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `class` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) class + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `class_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) class_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `clock_limit_mhz_max` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) clock_limit_mhz_max + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `clock_limit_mhz_min` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) clock_limit_mhz_min + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `clock_value_mhz_max` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) clock_value_mhz_max + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `clock_value_mhz_min` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) clock_value_mhz_min + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `manual_clock` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) manual_clock + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `power_profile` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) power_profile + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `power_profiles_available` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) power_profiles_available + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `revision_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) revision_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `subdevice` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) subdevice + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `subdevice_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) subdevice_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `subvendor_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) subvendor_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tdp` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) tdp + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `thermal_throttle_limit_c` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) thermal_throttle_limit_c + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_connectors()` + + +[GpuConnector[]](../GpuConnector) **get_connectors**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_dbus_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_dbus_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `supports_tdp()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **supports_tdp**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GpuConnector.md b/docs/class-reference/GpuConnector.md new file mode 100644 index 000000000..d34a4b862 --- /dev/null +++ b/docs/class-reference/GpuConnector.md @@ -0,0 +1,107 @@ +# GpuConnector + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [dpms](./#dpms) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [enabled](./#enabled) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [id](./#id) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [modes](./#modes) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [path](./#path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [status](./#status) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_dbus_path](./#get_dbus_path)() | + + +------------------ + +## Property Descriptions + +### `dpms` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) dpms + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `modes` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) modes + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `status` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) status + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_dbus_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_dbus_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GrowerEffect.md b/docs/class-reference/GrowerEffect.md new file mode 100644 index 000000000..d9cdfc67f --- /dev/null +++ b/docs/class-reference/GrowerEffect.md @@ -0,0 +1,110 @@ +# GrowerEffect + +**Inherits:** [Effect](../Effect) + +Grow the given target's custom minimum size to the size of the given content +## Description + +Optionally an inside panel and separator can be specified to make them visible when the parent fully grows. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [target](./#target) | get_parent() | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [content_container](./#content_container) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [inside_panel](./#inside_panel) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [separator](./#separator) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [grow_speed](./#grow_speed) | 0.2 | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [shrink_signal](./#shrink_signal) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [grow](./#grow)() | +| void | [shrink](./#shrink)() | + + +------------------ + +## Property Descriptions + +### `target` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) target = get_parent() + + +The target node to grow. This will animate the minimum custom size of this node to be the size of the content container. +### `content_container` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) content_container + + +Content that the target node will grow to match the size. +### `inside_panel` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) inside_panel + + +Optional inside panel to toggle visibility after growing. +### `separator` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) separator + + +Optional separator to toggle visibility after growing. +### `grow_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) grow_speed = 0.2 + + +The speed of the grow animation in seconds. +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `shrink_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) shrink_signal + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `grow()` + + +void **grow**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `shrink()` + + +void **shrink**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GutHookScript.md b/docs/class-reference/GutHookScript.md new file mode 100644 index 000000000..75ce1d10e --- /dev/null +++ b/docs/class-reference/GutHookScript.md @@ -0,0 +1,97 @@ +# GutHookScript + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [JunitXmlExport](./#JunitXmlExport) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [gut](./#gut) | null | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [run](./#run)() | +| void | [set_exit_code](./#set_exit_code)(code: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_exit_code](./#get_exit_code)() | +| void | [abort](./#abort)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [should_abort](./#should_abort)() | + + +------------------ + +## Property Descriptions + +### `JunitXmlExport` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) JunitXmlExport = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gut` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) gut = null + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `run()` + + +void **run**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_exit_code()` + + +void **set_exit_code**(code: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_exit_code()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_exit_code**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `abort()` + + +void **abort**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `should_abort()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **should_abort**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GutStringUtils.md b/docs/class-reference/GutStringUtils.md new file mode 100644 index 000000000..e40830beb --- /dev/null +++ b/docs/class-reference/GutStringUtils.md @@ -0,0 +1,67 @@ +# GutStringUtils + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [types](./#types) | {} | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [type2str](./#type2str)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [truncate_string](./#truncate_string)(src: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_size: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [indent_text](./#indent_text)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), times: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), pad: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | + + +------------------ + +## Property Descriptions + +### `types` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) types = {} + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `type2str()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **type2str**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `truncate_string()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **truncate_string**(src: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_size: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `indent_text()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **indent_text**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), times: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), pad: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GutTest.md b/docs/class-reference/GutTest.md new file mode 100644 index 000000000..5f7037ae4 --- /dev/null +++ b/docs/class-reference/GutTest.md @@ -0,0 +1,1127 @@ +# GutTest + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [gut](./#gut) | null | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [DOUBLE_STRATEGY](./#DOUBLE_STRATEGY) | {"INCLUDE_NATIVE": 0, "SCRIPT_ONLY": 1} | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ParameterFactory](./#ParameterFactory) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [CompareResult](./#CompareResult) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [InputFactory](./#InputFactory) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [InputSender](./#InputSender) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [before_all](./#before_all)() | +| void | [before_each](./#before_each)() | +| void | [after_all](./#after_all)() | +| void | [after_each](./#after_each)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_logger](./#get_logger)() | +| void | [set_logger](./#set_logger)(logger: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_eq](./#assert_eq)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_ne](./#assert_ne)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), not_expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_almost_eq](./#assert_almost_eq)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), error_interval: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_almost_ne](./#assert_almost_ne)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), not_expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), error_interval: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_gt](./#assert_gt)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_lt](./#assert_lt)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_true](./#assert_true)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_false](./#assert_false)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_between](./#assert_between)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_low: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_high: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_not_between](./#assert_not_between)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_low: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_high: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_has](./#assert_has)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), element: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_does_not_have](./#assert_does_not_have)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), element: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_file_exists](./#assert_file_exists)(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_file_does_not_exist](./#assert_file_does_not_exist)(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_file_empty](./#assert_file_empty)(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_file_not_empty](./#assert_file_not_empty)(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_has_method](./#assert_has_method)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_accessors](./#assert_accessors)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), set_to: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_exports](./#assert_exports)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), type: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [watch_signals](./#watch_signals)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_connected](./#assert_connected)(signaler_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), connect_to_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_not_connected](./#assert_not_connected)(signaler_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), connect_to_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_signal_emitted](./#assert_signal_emitted)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_signal_not_emitted](./#assert_signal_not_emitted)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_signal_emitted_with_parameters](./#assert_signal_emitted_with_parameters)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), index: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = -1) | +| void | [assert_signal_emit_count](./#assert_signal_emit_count)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), times: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_has_signal](./#assert_has_signal)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_signal_emit_count](./#get_signal_emit_count)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_signal_parameters](./#get_signal_parameters)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), index: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = -1) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_call_parameters](./#get_call_parameters)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), index: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = -1) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_call_count](./#get_call_count)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [assert_is](./#assert_is)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), a_class: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_typeof](./#assert_typeof)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), type: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_not_typeof](./#assert_not_typeof)(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), type: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_string_contains](./#assert_string_contains)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), search: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), match_case: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = true) | +| void | [assert_string_starts_with](./#assert_string_starts_with)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), search: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), match_case: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = true) | +| void | [assert_string_ends_with](./#assert_string_ends_with)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), search: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), match_case: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = true) | +| void | [assert_called](./#assert_called)(inst: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [assert_not_called](./#assert_not_called)(inst: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [assert_call_count](./#assert_call_count)(inst: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected_count: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [assert_null](./#assert_null)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_not_null](./#assert_not_null)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_freed](./#assert_freed)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), title: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "something") | +| void | [assert_not_freed](./#assert_not_freed)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), title: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_no_new_orphans](./#assert_no_new_orphans)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_setget](./#assert_setget)(instance: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), name_property: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), const_or_setter: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, getter: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "__not_set__") | +| void | [assert_set_property](./#assert_set_property)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_readonly_property](./#assert_readonly_property)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_property_with_backing_variable](./#assert_property_with_backing_variable)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), backed_by_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [assert_property](./#assert_property)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [pending](./#pending)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [wait_seconds](./#wait_seconds)(time: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [yield_for](./#yield_for)(time: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [wait_for_signal](./#wait_for_signal)(sig: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_wait: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [yield_to](./#yield_to)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_wait: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [wait_frames](./#wait_frames)(frames: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [yield_frames](./#yield_frames)(frames: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_summary](./#get_summary)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_fail_count](./#get_fail_count)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_pass_count](./#get_pass_count)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_pending_count](./#get_pending_count)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_assert_count](./#get_assert_count)() | +| void | [clear_signal_watcher](./#clear_signal_watcher)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_double_strategy](./#get_double_strategy)() | +| void | [set_double_strategy](./#set_double_strategy)(double_strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [pause_before_teardown](./#pause_before_teardown)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_summary_text](./#get_summary_text)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [double](./#double)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), double_strat: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, not_used_anymore: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [partial_double](./#partial_double)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), double_strat: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, not_used_anymore: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [double_singleton](./#double_singleton)(singleton_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [partial_double_singleton](./#partial_double_singleton)(singleton_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [double_scene](./#double_scene)(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [double_script](./#double_script)(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [double_inner](./#double_inner)(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), subpath: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [ignore_method_when_doubling](./#ignore_method_when_doubling)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [stub](./#stub)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), p2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), p3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [simulate](./#simulate)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), times: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), delta: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), check_is_processing: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) | +| void | [replace_node](./#replace_node)(base_node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), path_or_node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), with_this: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [use_parameters](./#use_parameters)(params: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [autofree](./#autofree)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [autoqfree](./#autoqfree)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [add_child_autofree](./#add_child_autofree)(node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), legible_unique_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = false) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [add_child_autoqfree](./#add_child_autoqfree)(node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), legible_unique_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = false) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_passing](./#is_passing)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_failing](./#is_failing)() | +| void | [pass_test](./#pass_test)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [fail_test](./#fail_test)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [compare_deep](./#compare_deep)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_differences: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [compare_shallow](./#compare_shallow)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_differences: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [assert_eq_deep](./#assert_eq_deep)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_ne_deep](./#assert_ne_deep)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_eq_shallow](./#assert_eq_shallow)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_ne_shallow](./#assert_ne_shallow)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [assert_same](./#assert_same)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| void | [assert_not_same](./#assert_not_same)(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [skip_if_godot_version_lt](./#skip_if_godot_version_lt)(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [skip_if_godot_version_ne](./#skip_if_godot_version_ne)(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [register_inner_classes](./#register_inner_classes)(base_script: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | + + +------------------ + +## Property Descriptions + +### `gut` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) gut = null + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `DOUBLE_STRATEGY` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) DOUBLE_STRATEGY = {"INCLUDE_NATIVE": 0, "SCRIPT_ONLY": 1} + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ParameterFactory` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ParameterFactory + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `CompareResult` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) CompareResult + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `InputFactory` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) InputFactory + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `InputSender` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) InputSender + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `before_all()` + + +void **before_all**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `before_each()` + + +void **before_each**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `after_all()` + + +void **after_all**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `after_each()` + + +void **after_each**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_logger()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_logger**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_logger()` + + +void **set_logger**(logger: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_eq()` + + +void **assert_eq**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_ne()` + + +void **assert_ne**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), not_expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_almost_eq()` + + +void **assert_almost_eq**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), error_interval: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_almost_ne()` + + +void **assert_almost_ne**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), not_expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), error_interval: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_gt()` + + +void **assert_gt**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_lt()` + + +void **assert_lt**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_true()` + + +void **assert_true**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_false()` + + +void **assert_false**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_between()` + + +void **assert_between**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_low: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_high: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_between()` + + +void **assert_not_between**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_low: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expect_high: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_has()` + + +void **assert_has**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), element: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_does_not_have()` + + +void **assert_does_not_have**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), element: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_file_exists()` + + +void **assert_file_exists**(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_file_does_not_exist()` + + +void **assert_file_does_not_exist**(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_file_empty()` + + +void **assert_file_empty**(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_file_not_empty()` + + +void **assert_file_not_empty**(file_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_has_method()` + + +void **assert_has_method**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_accessors()` + + +void **assert_accessors**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), set_to: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_exports()` + + +void **assert_exports**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), type: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `watch_signals()` + + +void **watch_signals**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_connected()` + + +void **assert_connected**(signaler_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), connect_to_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_connected()` + + +void **assert_not_connected**(signaler_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), connect_to_obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_signal_emitted()` + + +void **assert_signal_emitted**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_signal_not_emitted()` + + +void **assert_signal_not_emitted**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_signal_emitted_with_parameters()` + + +void **assert_signal_emitted_with_parameters**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), index: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = -1) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_signal_emit_count()` + + +void **assert_signal_emit_count**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), times: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_has_signal()` + + +void **assert_has_signal**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_signal_emit_count()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_signal_emit_count**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_signal_parameters()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_signal_parameters**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), index: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = -1) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_call_parameters()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_call_parameters**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), index: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = -1) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_call_count()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_call_count**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_is()` + + +void **assert_is**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), a_class: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_typeof()` + + +void **assert_typeof**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), type: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_typeof()` + + +void **assert_not_typeof**(object: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), type: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_string_contains()` + + +void **assert_string_contains**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), search: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), match_case: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_string_starts_with()` + + +void **assert_string_starts_with**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), search: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), match_case: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_string_ends_with()` + + +void **assert_string_ends_with**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), search: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), match_case: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_called()` + + +void **assert_called**(inst: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_called()` + + +void **assert_not_called**(inst: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_call_count()` + + +void **assert_call_count**(inst: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected_count: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), parameters: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_null()` + + +void **assert_null**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_null()` + + +void **assert_not_null**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_freed()` + + +void **assert_freed**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), title: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "something") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_freed()` + + +void **assert_not_freed**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), title: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_no_new_orphans()` + + +void **assert_no_new_orphans**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_setget()` + + +void **assert_setget**(instance: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), name_property: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), const_or_setter: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, getter: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "__not_set__") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_set_property()` + + +void **assert_set_property**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_readonly_property()` + + +void **assert_readonly_property**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_property_with_backing_variable()` + + +void **assert_property_with_backing_variable**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), backed_by_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_property()` + + +void **assert_property**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), new_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pending()` + + +void **pending**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `wait_seconds()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **wait_seconds**(time: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `yield_for()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **yield_for**(time: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `wait_for_signal()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **wait_for_signal**(sig: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_wait: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `yield_to()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **yield_to**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), signal_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_wait: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `wait_frames()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **wait_frames**(frames: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `yield_frames()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **yield_frames**(frames: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), msg: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_summary()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_summary**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_fail_count()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_fail_count**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pass_count()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_pass_count**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pending_count()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_pending_count**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_assert_count()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_assert_count**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `clear_signal_watcher()` + + +void **clear_signal_watcher**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_double_strategy()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_double_strategy**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_double_strategy()` + + +void **set_double_strategy**(double_strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pause_before_teardown()` + + +void **pause_before_teardown**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_summary_text()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_summary_text**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `double()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **double**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), double_strat: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, not_used_anymore: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `partial_double()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **partial_double**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), double_strat: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null, not_used_anymore: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `double_singleton()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **double_singleton**(singleton_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `partial_double_singleton()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **partial_double_singleton**(singleton_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `double_scene()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **double_scene**(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `double_script()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **double_script**(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `double_inner()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **double_inner**(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), subpath: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), strategy: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `ignore_method_when_doubling()` + + +void **ignore_method_when_doubling**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), method_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `stub()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **stub**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), p2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), p3: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `simulate()` + + +void **simulate**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), times: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), delta: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), check_is_processing: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `replace_node()` + + +void **replace_node**(base_node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), path_or_node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), with_this: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `use_parameters()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **use_parameters**(params: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `autofree()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **autofree**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `autoqfree()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **autoqfree**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `add_child_autofree()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **add_child_autofree**(node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), legible_unique_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `add_child_autoqfree()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **add_child_autoqfree**(node: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), legible_unique_name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_passing()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_passing**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_failing()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_failing**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pass_test()` + + +void **pass_test**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `fail_test()` + + +void **fail_test**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `compare_deep()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **compare_deep**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_differences: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `compare_shallow()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **compare_shallow**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_differences: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_eq_deep()` + + +void **assert_eq_deep**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_ne_deep()` + + +void **assert_ne_deep**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_eq_shallow()` + + +void **assert_eq_shallow**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_ne_shallow()` + + +void **assert_ne_shallow**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_same()` + + +void **assert_same**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `assert_not_same()` + + +void **assert_not_same**(v1: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), v2: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `skip_if_godot_version_lt()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **skip_if_godot_version_lt**(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `skip_if_godot_version_ne()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **skip_if_godot_version_ne**(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `register_inner_classes()` + + +void **register_inner_classes**(base_script: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/GutUtils.md b/docs/class-reference/GutUtils.md new file mode 100644 index 000000000..e15bd3801 --- /dev/null +++ b/docs/class-reference/GutUtils.md @@ -0,0 +1,767 @@ +# GutUtils + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [avail_fonts](./#avail_fonts) | [...] | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [GutLogger](./#GutLogger) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [json](./#json) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [AutoFree](./#AutoFree) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Awaiter](./#Awaiter) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Comparator](./#Comparator) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [CompareResult](./#CompareResult) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [DiffTool](./#DiffTool) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Doubler](./#Doubler) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Gut](./#Gut) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [GutConfig](./#GutConfig) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [HookScript](./#HookScript) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [InnerClassRegistry](./#InnerClassRegistry) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [InputFactory](./#InputFactory) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [InputSender](./#InputSender) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [JunitXmlExport](./#JunitXmlExport) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [MethodMaker](./#MethodMaker) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [OneToMany](./#OneToMany) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [OrphanCounter](./#OrphanCounter) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ParameterFactory](./#ParameterFactory) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ParameterHandler](./#ParameterHandler) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Printers](./#Printers) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ResultExporter](./#ResultExporter) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ScriptCollector](./#ScriptCollector) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Spy](./#Spy) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Strutils](./#Strutils) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Stubber](./#Stubber) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [StubParams](./#StubParams) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Summary](./#Summary) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [Test](./#Test) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [TestCollector](./#TestCollector) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ThingCounter](./#ThingCounter) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [CollectedTest](./#CollectedTest) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [CollectedScript](./#CollectedScript) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [GutScene](./#GutScene) | load(...) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [version](./#version) | "9.2.0" | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [req_godot](./#req_godot) | [...] | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_root_node](./#get_root_node)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_instance](./#get_instance)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_enum_value](./#get_enum_value)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), e: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [nvl](./#nvl)(value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), if_null: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [pretty_print](./#pretty_print)(dict: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [print_properties](./#print_properties)(props: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), print_all_meta: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = false) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_scene_script_object](./#get_scene_script_object)(scene: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_version_text](./#get_version_text)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_bad_version_text](./#get_bad_version_text)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_version_ok](./#is_version_ok)(engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = , required: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = req_godot) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [godot_version](./#godot_version)(engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = ) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_godot_version](./#is_godot_version)(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = ) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_godot_version_gte](./#is_godot_version_gte)(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = ) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_logger](./#get_logger)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_freed](./#is_freed)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_not_freed](./#is_not_freed)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_double](./#is_double)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_instance](./#is_instance)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_gdscript](./#is_gdscript)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_inner_class](./#is_inner_class)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [extract_property_from_array](./#extract_property_from_array)(source: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [file_exists](./#file_exists)(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [write_file](./#write_file)(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), content: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_null_or_empty](./#is_null_or_empty)(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_native_class_name](./#get_native_class_name)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [is_native_class](./#is_native_class)(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_file_as_text](./#get_file_as_text)(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [search_array_idx](./#search_array_idx)(ar: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), prop_method: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [search_array](./#search_array)(ar: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), prop_method: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [are_datatypes_same](./#are_datatypes_same)(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_script_text](./#get_script_text)(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_singleton_by_name](./#get_singleton_by_name)(name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [dec2bistr](./#dec2bistr)(decimal_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_bits: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = 31) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [add_line_numbers](./#add_line_numbers)(contents: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [pp](./#pp)(dict: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), indent: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [create_script_from_source](./#create_script_from_source)(source: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), override_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_display_size](./#get_display_size)() | + + +------------------ + +## Property Descriptions + +### `avail_fonts` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) avail_fonts = [...] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `GutLogger` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) GutLogger = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `json` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) json + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `AutoFree` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) AutoFree = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Awaiter` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Awaiter = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Comparator` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Comparator = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `CompareResult` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) CompareResult = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `DiffTool` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) DiffTool = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Doubler` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Doubler = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Gut` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Gut = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `GutConfig` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) GutConfig = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `HookScript` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) HookScript = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `InnerClassRegistry` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) InnerClassRegistry = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `InputFactory` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) InputFactory = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `InputSender` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) InputSender = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `JunitXmlExport` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) JunitXmlExport = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `MethodMaker` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) MethodMaker = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `OneToMany` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) OneToMany = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `OrphanCounter` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) OrphanCounter = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ParameterFactory` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ParameterFactory = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ParameterHandler` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ParameterHandler = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Printers` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Printers = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ResultExporter` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ResultExporter = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ScriptCollector` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ScriptCollector = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Spy` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Spy = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Strutils` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Strutils = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Stubber` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Stubber = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `StubParams` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) StubParams = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Summary` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Summary = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `Test` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) Test = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `TestCollector` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) TestCollector = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ThingCounter` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ThingCounter = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `CollectedTest` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) CollectedTest = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `CollectedScript` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) CollectedScript = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `GutScene` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) GutScene = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `version` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) version = "9.2.0" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `req_godot` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) req_godot = [...] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_root_node()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_root_node**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_instance()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_instance**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_enum_value()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_enum_value**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), e: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `nvl()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **nvl**(value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), if_null: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pretty_print()` + + +void **pretty_print**(dict: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `print_properties()` + + +void **print_properties**(props: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), print_all_meta: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_scene_script_object()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_scene_script_object**(scene: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_version_text()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_version_text**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_bad_version_text()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_bad_version_text**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_version_ok()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_version_ok**(engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = , required: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = req_godot) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `godot_version()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **godot_version**(engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = ) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_godot_version()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_godot_version**(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = ) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_godot_version_gte()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_godot_version_gte**(expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), engine_info: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = ) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_logger()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_logger**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_freed()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_freed**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_not_freed()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_not_freed**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_double()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_double**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_instance()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_instance**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_gdscript()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_gdscript**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_inner_class()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_inner_class**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `extract_property_from_array()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **extract_property_from_array**(source: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), property: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `file_exists()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **file_exists**(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `write_file()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **write_file**(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), content: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_null_or_empty()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_null_or_empty**(text: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_native_class_name()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_native_class_name**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_native_class()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **is_native_class**(thing: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_file_as_text()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_file_as_text**(path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `search_array_idx()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **search_array_idx**(ar: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), prop_method: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `search_array()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **search_array**(ar: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), prop_method: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `are_datatypes_same()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **are_datatypes_same**(got: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), expected: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_script_text()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_script_text**(obj: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_singleton_by_name()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_singleton_by_name**(name: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `dec2bistr()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **dec2bistr**(decimal_value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), max_bits: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = 31) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `add_line_numbers()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **add_line_numbers**(contents: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pp()` + + +void **pp**(dict: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), indent: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `create_script_from_source()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **create_script_from_source**(source: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), override_path: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_display_size()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_display_size**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/HTTPAPIClient.Response.md b/docs/class-reference/HTTPAPIClient.Response.md new file mode 100644 index 000000000..cceb3ff7a --- /dev/null +++ b/docs/class-reference/HTTPAPIClient.Response.md @@ -0,0 +1,87 @@ +# HTTPAPIClient.Response + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [result](./#result) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [code](./#code) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [header](./#header) | | +| [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html) | [body](./#body) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_json](./#get_json)() | +| [HTTPAPIClient.Response](../HTTPAPIClient.Response) | [from_cached_result](./#from_cached_result)(result: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html)) | + + +------------------ + +## Property Descriptions + +### `result` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) result + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `code` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) code + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `header` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) header + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `body` + + +[PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html) body + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_json()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_json**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `from_cached_result()` + + +[HTTPAPIClient.Response](../HTTPAPIClient.Response) **from_cached_result**(result: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/HTTPAPIClient.md b/docs/class-reference/HTTPAPIClient.md new file mode 100644 index 000000000..031159034 --- /dev/null +++ b/docs/class-reference/HTTPAPIClient.md @@ -0,0 +1,87 @@ +# HTTPAPIClient + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [base_url](./#base_url) | "" | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [headers](./#headers) | PackedStringArray() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cache_folder](./#cache_folder) | "HTTPAPIClient" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [verify_tls](./#verify_tls) | true | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [HTTPAPIClient.Response](../HTTPAPIClient.Response) | [request](./#request)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), caching_flags: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 3, xtra_headers: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) = [], method: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, data: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `base_url` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) base_url = "" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `headers` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) headers = PackedStringArray() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cache_folder` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cache_folder = "HTTPAPIClient" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `verify_tls` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) verify_tls = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `request()` + + +[HTTPAPIClient.Response](../HTTPAPIClient.Response) **request**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), caching_flags: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 3, xtra_headers: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) = [], method: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0, data: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/HTTPImageFetcher.md b/docs/class-reference/HTTPImageFetcher.md new file mode 100644 index 000000000..8db109503 --- /dev/null +++ b/docs/class-reference/HTTPImageFetcher.md @@ -0,0 +1,47 @@ +# HTTPImageFetcher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [fetch](./#fetch)(url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), caching_flags: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 3) | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `fetch()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **fetch**(url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), caching_flags: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 3) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/HandheldIconMapping.md b/docs/class-reference/HandheldIconMapping.md new file mode 100644 index 000000000..8d7e160ea --- /dev/null +++ b/docs/class-reference/HandheldIconMapping.md @@ -0,0 +1,37 @@ +# HandheldIconMapping + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [path](./#path) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [texture](./#texture) | | + + + +------------------ + +## Property Descriptions + +### `path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `texture` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/HandheldPlatform.md b/docs/class-reference/HandheldPlatform.md new file mode 100644 index 000000000..64c6c0857 --- /dev/null +++ b/docs/class-reference/HandheldPlatform.md @@ -0,0 +1,49 @@ +# HandheldPlatform + +**Inherits:** [PlatformProvider](../PlatformProvider) + +PC Handheld platform provider +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [image](./#image) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [logo](./#logo) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [diagram](./#diagram) | load(...) | +| [HandheldIconMapping[]](../HandheldIconMapping) | [icon_mappings](./#icon_mappings) | | + + + +------------------ + +## Property Descriptions + +### `image` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) image + + +Image of the device to show in the general settings menu +### `logo` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) logo + + +Logo image of the platform +### `diagram` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) diagram = load(...) + + +Image of the device as a diagram to show in the gamepad configuration menus. +### `icon_mappings` + + +[HandheldIconMapping[]](../HandheldIconMapping) icon_mappings + + +Custom icon images to use when displaying buttons/joysticks in the interface + diff --git a/docs/class-reference/HardwareManager.GPUInfo.md b/docs/class-reference/HardwareManager.GPUInfo.md new file mode 100644 index 000000000..e7cf0f02f --- /dev/null +++ b/docs/class-reference/HardwareManager.GPUInfo.md @@ -0,0 +1,147 @@ +# HardwareManager.GPUInfo + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Data container for GPU information +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [clk_capable](./#clk_capable) | false | +| [DRMCardInfo](../DRMCardInfo) | [card](./#card) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [driver](./#driver) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [freq_max](./#freq_max) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [freq_min](./#freq_min) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [max_boost](./#max_boost) | -1.0 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [model](./#model) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [power_profile_capable](./#power_profile_capable) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [tdp_capable](./#tdp_capable) | false | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [tdp_max](./#tdp_max) | -1.0 | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [tdp_min](./#tdp_min) | -1.0 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [tj_temp_capable](./#tj_temp_capable) | false | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor](./#vendor) | | + + + +------------------ + +## Property Descriptions + +### `clk_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) clk_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `card` + + +[DRMCardInfo](../DRMCardInfo) card + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `driver` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) driver + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `freq_max` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) freq_max + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `freq_min` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) freq_min + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `max_boost` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) max_boost = -1.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `model` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) model + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `power_profile_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) power_profile_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tdp_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) tdp_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tdp_max` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) tdp_max = -1.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tdp_min` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) tdp_min = -1.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tj_temp_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) tj_temp_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/HardwareManager.md b/docs/class-reference/HardwareManager.md new file mode 100644 index 000000000..e2e19ae45 --- /dev/null +++ b/docs/class-reference/HardwareManager.md @@ -0,0 +1,258 @@ +# HardwareManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Discover and queries different aspects of the hardware +## Description + +HardwareManager is responsible for providing a way to discover and query different aspects of the current hardware. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [pci_ids_path](./#pci_ids_path) | | +| [APUDatabase](../APUDatabase) | [amd_apu_database](./#amd_apu_database) | | +| [APUDatabase](../APUDatabase) | [intel_apu_database](./#intel_apu_database) | | +| [APUDatabase](../APUDatabase) | [dmi_overrides_apu_database](./#dmi_overrides_apu_database) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [DRMCardInfo[]](../DRMCardInfo) | [cards](./#cards) | get_gpu_cards() | +| [DRMCardPort[]](../DRMCardPort) | [card_ports](./#card_ports) | | +| [CPU](../CPU) | [cpu](./#cpu) | get_cpu() | +| [HardwareManager.GPUInfo](../HardwareManager.GPUInfo) | [gpu](./#gpu) | get_gpu_info() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [bios](./#bios) | get_bios_version() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [kernel](./#kernel) | get_kernel_version() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [product_name](./#product_name) | get_product_name() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor_name](./#vendor_name) | get_vendor_name() | +| [SharedThread](../SharedThread) | [thread](./#thread) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_bios_version](./#get_bios_version)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_product_name](./#get_product_name)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_vendor_name](./#get_vendor_name)() | +| [CPU](../CPU) | [get_cpu](./#get_cpu)() | +| [HardwareManager.GPUInfo](../HardwareManager.GPUInfo) | [get_gpu_info](./#get_gpu_info)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_kernel_version](./#get_kernel_version)() | +| [DRMCardInfo](../DRMCardInfo) | [get_gpu_card](./#get_gpu_card)(card_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [DRMCardInfo[]](../DRMCardInfo) | [get_gpu_cards](./#get_gpu_cards)() | +| [DRMCardInfo](../DRMCardInfo) | [get_active_gpu_card](./#get_active_gpu_card)() | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_active_gpu_device](./#get_active_gpu_device)() | +| void | [start_gpu_watch](./#start_gpu_watch)() | + + +------------------ + +## Property Descriptions + +### `pci_ids_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) pci_ids_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `amd_apu_database` + + +[APUDatabase](../APUDatabase) amd_apu_database + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `intel_apu_database` + + +[APUDatabase](../APUDatabase) intel_apu_database + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dmi_overrides_apu_database` + + +[APUDatabase](../APUDatabase) dmi_overrides_apu_database + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cards` + + +[DRMCardInfo[]](../DRMCardInfo) cards = get_gpu_cards() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `card_ports` + + +[DRMCardPort[]](../DRMCardPort) card_ports + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cpu` + + +[CPU](../CPU) cpu = get_cpu() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu` + + +[HardwareManager.GPUInfo](../HardwareManager.GPUInfo) gpu = get_gpu_info() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `bios` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) bios = get_bios_version() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `kernel` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) kernel = get_kernel_version() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `product_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) product_name = get_product_name() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor_name = get_vendor_name() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `thread` + + +[SharedThread](../SharedThread) thread + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_bios_version()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_bios_version**() + + +Queries /sys/class for BIOS information +### `get_product_name()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_product_name**() + + +Returns the hardware product name +### `get_vendor_name()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_vendor_name**() + + +Returns the hardware vendor name +### `get_cpu()` + + +[CPU](../CPU) **get_cpu**() + + +Provides info on the CPU vendor, model, and capabilities. +### `get_gpu_info()` + + +[HardwareManager.GPUInfo](../HardwareManager.GPUInfo) **get_gpu_info**() + + +Returns the GPUInfo +### `get_kernel_version()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_kernel_version**() + + +Returns the kernel version +### `get_gpu_card()` + + +[DRMCardInfo](../DRMCardInfo) **get_gpu_card**(card_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns GPU card info for the given card directory in /sys/class/drm (e.g. get_gpu_card("card1")) +### `get_gpu_cards()` + + +[DRMCardInfo[]](../DRMCardInfo) **get_gpu_cards**() + + +Returns an array of CardInfo resources derived from /sys/class/drm +### `get_active_gpu_card()` + + +[DRMCardInfo](../DRMCardInfo) **get_active_gpu_card**() + + +Returns the currently active GPU card +### `get_active_gpu_device()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_active_gpu_device**() + + +Returns the string of the currently active GPU +### `start_gpu_watch()` + + +void **start_gpu_watch**() + + +Starts watching for GPU connector port state changes in a separate thread, updating the properties of [DRMCardPort](../DRMCardPort) objects and emitting signals when their state changes. diff --git a/docs/class-reference/InputIcon.md b/docs/class-reference/InputIcon.md new file mode 100644 index 000000000..1c91f7040 --- /dev/null +++ b/docs/class-reference/InputIcon.md @@ -0,0 +1,115 @@ +# InputIcon + +**Inherits:** [HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [InputIconManager](../InputIconManager) | [input_icons](./#input_icons) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Texture[]](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [textures](./#textures) | [] | +| [TextureRect[]](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [texture_rects](./#texture_rects) | [] | +| [Node[]](https://docs.godotengine.org/en/stable/classes/class_node.html) | [internal_children](./#internal_children) | [] | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [path](./#path) | "" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [show_only](./#show_only) | 0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [force_type](./#force_type) | 0 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [force_mapping](./#force_mapping) | "" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [max_width](./#max_width) | 40 | + + + +------------------ + +## Property Descriptions + +### `input_icons` + + +[InputIconManager](../InputIconManager) input_icons + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `textures` + + +[Texture[]](https://docs.godotengine.org/en/stable/classes/class_texture.html) textures = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `texture_rects` + + +[TextureRect[]](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) texture_rects = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `internal_children` + + +[Node[]](https://docs.godotengine.org/en/stable/classes/class_node.html) internal_children = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "" + + +Optional text to display next to the icon(s) +### `path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) path = "" + + +Icon path can be either an action name defined in the action map, or an input path (e.g. "joypad/south", "key/a", etc.). +### `show_only` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) show_only = 0 + + +Whether or not an icon should be displayed +### `force_type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) force_type = 0 + + +Force the icon to always show the given type of icon +### `force_mapping` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) force_mapping = "" + + +Force using the given icon mapping for a particular device +### `max_width` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) max_width = 40 + + +The maximum width of each icon texture + diff --git a/docs/class-reference/InputIconKeyboardMapping.md b/docs/class-reference/InputIconKeyboardMapping.md new file mode 100644 index 000000000..b6011b4e9 --- /dev/null +++ b/docs/class-reference/InputIconKeyboardMapping.md @@ -0,0 +1,943 @@ +# InputIconKeyboardMapping + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mouse](./#mouse) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mouse_left](./#mouse_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mouse_middle](./#mouse_middle) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mouse_right](./#mouse_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mouse_wheel](./#mouse_wheel) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [esc](./#esc) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [tab](./#tab) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [backspace_alt](./#backspace_alt) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [enter_alt](./#enter_alt) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [enter_tall](./#enter_tall) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [insert](./#insert) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [del](./#del) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [print_screen](./#print_screen) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [home](./#home) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [end](./#end) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [arrow_left](./#arrow_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [arrow_up](./#arrow_up) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [arrow_right](./#arrow_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [arrow_down](./#arrow_down) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [page_up](./#page_up) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [page_down](./#page_down) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [shift_alt](./#shift_alt) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [ctrl](./#ctrl) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [command](./#command) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [meta](./#meta) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [alt](./#alt) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [caps_lock](./#caps_lock) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_lock](./#num_lock) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f1](./#f1) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f2](./#f2) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f3](./#f3) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f4](./#f4) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f5](./#f5) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f6](./#f6) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f7](./#f7) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f8](./#f8) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f9](./#f9) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f10](./#f10) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f11](./#f11) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f12](./#f12) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [asterisk](./#asterisk) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [minus](./#minus) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [plus_tall](./#plus_tall) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_0](./#num_0) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_1](./#num_1) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_2](./#num_2) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_3](./#num_3) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_4](./#num_4) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_5](./#num_5) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_6](./#num_6) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_7](./#num_7) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_8](./#num_8) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [num_9](./#num_9) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [space](./#space) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [quote](./#quote) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [plus](./#plus) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [semicolon](./#semicolon) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mark_left](./#mark_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mark_right](./#mark_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [question](./#question) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [a](./#a) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [b](./#b) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [c](./#c) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [d](./#d) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [e](./#e) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [f](./#f) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [g](./#g) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [h](./#h) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [i](./#i) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [j](./#j) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [k](./#k) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [l](./#l) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [m](./#m) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [n](./#n) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [o](./#o) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [p](./#p) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [q](./#q) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [r](./#r) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [s](./#s) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [t](./#t) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [u](./#u) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [v](./#v) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [w](./#w) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [x](./#x) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [y](./#y) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [z](./#z) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [bracket_left](./#bracket_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [slash](./#slash) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [bracket_right](./#bracket_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [tilda](./#tilda) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [get_texture](./#get_texture)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Name of the icon mapping +### `mouse` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mouse + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mouse_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse_middle` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mouse_middle + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mouse_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse_wheel` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mouse_wheel + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `esc` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) esc + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tab` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) tab + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `backspace_alt` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) backspace_alt + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `enter_alt` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) enter_alt + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `enter_tall` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) enter_tall + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `insert` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) insert + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `del` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) del + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `print_screen` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) print_screen + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `home` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) home + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `end` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) end + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `arrow_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) arrow_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `arrow_up` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) arrow_up + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `arrow_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) arrow_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `arrow_down` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) arrow_down + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `page_up` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) page_up + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `page_down` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) page_down + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `shift_alt` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) shift_alt + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ctrl` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) ctrl + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `command` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) command + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `meta` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) meta + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `alt` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) alt + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `caps_lock` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) caps_lock + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_lock` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_lock + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f1` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f2` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f3` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f4` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f4 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f5` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f5 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f6` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f6 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f7` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f7 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f8` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f8 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f9` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f9 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f10` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f10 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f11` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f11 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f12` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f12 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `asterisk` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) asterisk + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `minus` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) minus + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `plus_tall` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) plus_tall + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_0` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_1` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_2` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_3` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_4` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_4 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_5` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_5 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_6` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_6 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_7` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_7 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_8` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_8 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `num_9` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) num_9 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `space` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) space + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `quote` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) quote + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `plus` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) plus + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `semicolon` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) semicolon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mark_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mark_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mark_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mark_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `question` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) question + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `a` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) a + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `b` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) b + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `c` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) c + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `d` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) d + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `e` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) e + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `f` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) f + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `g` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) g + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `h` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) h + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `i` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) i + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `j` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) j + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `k` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) k + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `l` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) l + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `m` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) m + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `n` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) n + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `o` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) o + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `p` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) p + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `q` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) q + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `r` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) r + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `s` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) s + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `t` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) t + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `u` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) u + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `v` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) v + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `w` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) w + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `x` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) x + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `y` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) y + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `z` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) z + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `bracket_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) bracket_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `slash` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) slash + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `bracket_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) bracket_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tilda` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) tilda + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_texture()` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) **get_texture**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Return the texture in the mapping from the given path diff --git a/docs/class-reference/InputIconManager.md b/docs/class-reference/InputIconManager.md new file mode 100644 index 000000000..05d9c83c5 --- /dev/null +++ b/docs/class-reference/InputIconManager.md @@ -0,0 +1,140 @@ +# InputIconManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +[InputIconManager](../InputIconManager) is responsible for managing what input glyphs to show in the UI +## Description + +The InputIconManager will keep track of the last used input device and signal when the input device has changed to allow the UI to display the appropriate glyphs. In order for [InputIconManager](../InputIconManager) to work correctly, a [InputIconProcessor](../InputIconProcessor) must be added to the scene. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [State](../State) | [in_game_state](./#in_game_state) | | +| [InputPlumberInstance](../InputPlumberInstance) | [input_plumber](./#input_plumber) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | false | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [last_input_type](./#last_input_type) | 1 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [last_input_device](./#last_input_device) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [discover_mappings](./#discover_mappings)(mappings_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [discover_device_mappings](./#discover_device_mappings)(mappings_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [refresh](./#refresh)() | +| [Texture[]](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [parse_path](./#parse_path)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", input_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = last_input_type) | +| [InputIconMapping](../InputIconMapping) | [load_matching_mapping](./#load_matching_mapping)(device_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_mapping_name_from_device](./#get_mapping_name_from_device)(device_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_last_input_type](./#set_last_input_type)(_last_input_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `in_game_state` + + +[State](../State) in_game_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `input_plumber` + + +[InputPlumberInstance](../InputPlumberInstance) input_plumber + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled = false + + +Disable/Enable signaling on input type changes +### `last_input_type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) last_input_type = 1 + + +The last detected input type +### `last_input_device` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) last_input_device + + +The device name of the last detected input + + + +------------------ + +## Method Descriptions + +### `discover_mappings()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **discover_mappings**(mappings_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Discover all input icon mappings from the specified path +### `discover_device_mappings()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **discover_device_mappings**(mappings_dir: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Discover all input icon mapping devices from the specified path +### `refresh()` + + +void **refresh**() + + +Refresh all icons +### `parse_path()` + + +[Texture[]](https://docs.godotengine.org/en/stable/classes/class_texture.html) **parse_path**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), mapping_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", input_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = last_input_type) + + +Parse the given input path and return the texture(s) associated with that type of input. The input path can either be in the form of "joypad/south" for specific inputs, or the name of an event action defined in the project's input map (i.e. "ui_accept"). Optionally, a mapping name can be passed to get a specific icon from a specific mapping. +### `load_matching_mapping()` + + +[InputIconMapping](../InputIconMapping) **load_matching_mapping**(device_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Load and return the mapping that matches the given device. +### `get_mapping_name_from_device()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_mapping_name_from_device**(device_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the mapping name for the given device name. The mapping name is the "name" property of an [InputIconMapping](../InputIconMapping). +### `set_last_input_type()` + + +void **set_last_input_type**(_last_input_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Set the last input type to the given value and emit a signal diff --git a/docs/class-reference/InputIconMapping.md b/docs/class-reference/InputIconMapping.md new file mode 100644 index 000000000..1f166a5d0 --- /dev/null +++ b/docs/class-reference/InputIconMapping.md @@ -0,0 +1,541 @@ +# InputIconMapping + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Icon mapping for input devices +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [device_names](./#device_names) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [diagram](./#diagram) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [north](./#north) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [south](./#south) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [east](./#east) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [west](./#west) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [guide](./#guide) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [start](./#start) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [select](./#select) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [share](./#share) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [screenshot](./#screenshot) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [quickaccess](./#quickaccess) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [quickaccess_2](./#quickaccess_2) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [keyboard](./#keyboard) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [mute](./#mute) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [dpad](./#dpad) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [dpad_left](./#dpad_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [dpad_right](./#dpad_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [dpad_up](./#dpad_up) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [dpad_down](./#dpad_down) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_shoulder](./#left_shoulder) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_trigger](./#left_trigger) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_top](./#left_top) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_shoulder](./#right_shoulder) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_trigger](./#right_trigger) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_top](./#right_top) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_paddle_1](./#left_paddle_1) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_paddle_2](./#left_paddle_2) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_paddle_3](./#left_paddle_3) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_paddle_1](./#right_paddle_1) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_paddle_2](./#right_paddle_2) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_paddle_3](./#right_paddle_3) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick](./#left_stick) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick_left](./#left_stick_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick_right](./#left_stick_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick_up](./#left_stick_up) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick_down](./#left_stick_down) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick_click](./#left_stick_click) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_stick_touch](./#left_stick_touch) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick](./#right_stick) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick_left](./#right_stick_left) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick_right](./#right_stick_right) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick_up](./#right_stick_up) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick_down](./#right_stick_down) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick_click](./#right_stick_click) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_stick_touch](./#right_stick_touch) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [left_pad](./#left_pad) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [center_pad](./#center_pad) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [right_pad](./#right_pad) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [gyro](./#gyro) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [get_texture](./#get_texture)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Name of the icon mapping +### `device_names` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) device_names + + +Input device names to match +### `diagram` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) diagram + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `north` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) north + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `south` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) south + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `east` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) east + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `west` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) west + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `guide` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) guide + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `start` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) start + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `select` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) select + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `share` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) share + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `screenshot` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) screenshot + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `quickaccess` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) quickaccess + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `quickaccess_2` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) quickaccess_2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `keyboard` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) keyboard + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mute` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) mute + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dpad` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) dpad + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dpad_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) dpad_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dpad_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) dpad_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dpad_up` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) dpad_up + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dpad_down` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) dpad_down + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_shoulder` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_shoulder + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_trigger` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_trigger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_top` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_top + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_shoulder` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_shoulder + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_trigger` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_trigger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_top` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_top + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_paddle_1` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_paddle_1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_paddle_2` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_paddle_2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_paddle_3` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_paddle_3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_paddle_1` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_paddle_1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_paddle_2` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_paddle_2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_paddle_3` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_paddle_3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick_up` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick_up + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick_down` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick_down + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick_click` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick_click + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_stick_touch` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_stick_touch + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick_left` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick_left + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick_right` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick_right + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick_up` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick_up + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick_down` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick_down + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick_click` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick_click + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_stick_touch` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_stick_touch + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `left_pad` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) left_pad + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `center_pad` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) center_pad + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `right_pad` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) right_pad + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gyro` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) gyro + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_texture()` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) **get_texture**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Return the texture in the mapping from the given path diff --git a/docs/class-reference/InputIconProcessor.md b/docs/class-reference/InputIconProcessor.md new file mode 100644 index 000000000..b8055233b --- /dev/null +++ b/docs/class-reference/InputIconProcessor.md @@ -0,0 +1,37 @@ +# InputIconProcessor + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [InputPlumberInstance](../InputPlumberInstance) | [input_plumber](./#input_plumber) | | +| [InputIconManager](../InputIconManager) | [icon_manager](./#icon_manager) | | + + + +------------------ + +## Property Descriptions + +### `input_plumber` + + +[InputPlumberInstance](../InputPlumberInstance) input_plumber + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon_manager` + + +[InputIconManager](../InputIconManager) icon_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/InputManager.md b/docs/class-reference/InputManager.md new file mode 100644 index 000000000..51c2a664d --- /dev/null +++ b/docs/class-reference/InputManager.md @@ -0,0 +1,196 @@ +# InputManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Manages global input +## Description + +The InputManager class is responsible for handling global input that should happen everywhere in the application, regardless of the current menu. Examples include opening up the main or quick bar menus. + +To include this functionality, add this as a node to the root node in the scene tree. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [KeyboardInstance](../KeyboardInstance) | [osk](./#osk) | | +| [AudioManager](../AudioManager) | [audio_manager](./#audio_manager) | | +| [InputPlumberInstance](../InputPlumberInstance) | [input_plumber](./#input_plumber) | | +| [LaunchManager](../LaunchManager) | [launch_manager](./#launch_manager) | | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [StateMachine](../StateMachine) | [popup_state_machine](./#popup_state_machine) | | +| [State](../State) | [in_game_menu_state](./#in_game_menu_state) | | +| [State](../State) | [main_menu_state](./#main_menu_state) | | +| [State](../State) | [quick_bar_state](./#quick_bar_state) | | +| [State](../State) | [osk_state](./#osk_state) | | +| [State](../State) | [popup_state](./#popup_state) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [actions_pressed](./#actions_pressed) | {} | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [current_touches](./#current_touches) | 0 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_default_global_profile_path](./#get_default_global_profile_path)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_inputplumber_event](./#is_inputplumber_event)(event: [InputEvent](https://docs.godotengine.org/en/stable/classes/class_inputevent.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_action_pressed](./#is_action_pressed)(action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [action_release](./#action_release)(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) | +| void | [action_press](./#action_press)(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) | + + +------------------ + +## Property Descriptions + +### `osk` + + +[KeyboardInstance](../KeyboardInstance) osk + + +Reference to the on-screen keyboard instance to open when the OSK action is pressed. +### `audio_manager` + + +[AudioManager](../AudioManager) audio_manager + + +The audio manager to use to adjust the audio when audio input events happen. +### `input_plumber` + + +[InputPlumberInstance](../InputPlumberInstance) input_plumber + + +InputPlumber receives and sends DBus input events. +### `launch_manager` + + +[LaunchManager](../LaunchManager) launch_manager + + +LaunchManager provides context on the currently running app so we can switch profiles +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +The Global State Machine +### `popup_state_machine` + + +[StateMachine](../StateMachine) popup_state_machine + + +State machine to use to switch menu states in response to input events. +### `in_game_menu_state` + + +[State](../State) in_game_menu_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `main_menu_state` + + +[State](../State) main_menu_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `quick_bar_state` + + +[State](../State) quick_bar_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `osk_state` + + +[State](../State) osk_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `popup_state` + + +[State](../State) popup_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `actions_pressed` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) actions_pressed = {} + + +Map of pressed actions to prevent double inputs +### `current_touches` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) current_touches = 0 + + +Number of currently pressed touches +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +Will show logger events with the prefix InputManager + + + +------------------ + +## Method Descriptions + +### `get_default_global_profile_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_default_global_profile_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_inputplumber_event()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_inputplumber_event**(event: [InputEvent](https://docs.godotengine.org/en/stable/classes/class_inputevent.html)) + + +Returns true if the given event is an InputPlumber event +### `is_action_pressed()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_action_pressed**(action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the given action is currently pressed. If InputPlumber is not running, then Godot's Input system will be used to check if the action is pressed. Otherwise, the input manager will track the state of the action. +### `action_release()` + + +void **action_release**(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) + + +Queue a release event for the given action +### `action_press()` + + +void **action_press**(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) + + +Queue a pressed event for the given action diff --git a/docs/class-reference/InputPlumber.md b/docs/class-reference/InputPlumber.md new file mode 100644 index 000000000..074512469 --- /dev/null +++ b/docs/class-reference/InputPlumber.md @@ -0,0 +1,48 @@ +# InputPlumber + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Manages routing input to and from InputPlumber. +## Description + +The InputPlumberManager class is responsible for handling dbus messages to and from the InputPlumber input manager daemon. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [InputPlumberInstance](../InputPlumberInstance) | [instance](./#instance) | load(...) | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [load_target_modified_profile](./#load_target_modified_profile)(device: [CompositeDevice](../CompositeDevice), path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), profile_modifier: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `instance` + + +[InputPlumberInstance](../InputPlumberInstance) instance = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `load_target_modified_profile()` + + +void **load_target_modified_profile**(device: [CompositeDevice](../CompositeDevice), path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), profile_modifier: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Load the given profile on the composite device, optionally specifying a profile modifier, which is a target device string (e.g. "deck", "ds5-edge", etc.) to adapt the profile for. This will update the profile with target-specific defaults, like mapping left/right pads to the DualSense center pad if no other mappings are defined. diff --git a/docs/class-reference/InputPlumberAxisEvent.md b/docs/class-reference/InputPlumberAxisEvent.md new file mode 100644 index 000000000..6f237c221 --- /dev/null +++ b/docs/class-reference/InputPlumberAxisEvent.md @@ -0,0 +1,77 @@ +# InputPlumberAxisEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [direction](./#direction) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [deadzone](./#deadzone) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberAxisEvent](../InputPlumberAxisEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `direction` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) direction + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `deadzone` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) deadzone + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberAxisEvent](../InputPlumberAxisEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberEvent.md b/docs/class-reference/InputPlumberEvent.md new file mode 100644 index 000000000..0ed75bca3 --- /dev/null +++ b/docs/class-reference/InputPlumberEvent.md @@ -0,0 +1,181 @@ +# InputPlumberEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [keyboard](./#keyboard) | | +| [InputPlumberMouseEvent](../InputPlumberMouseEvent) | [mouse](./#mouse) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus](./#dbus) | | +| [InputPlumberGamepadEvent](../InputPlumberGamepadEvent) | [gamepad](./#gamepad) | | +| [InputPlumberTouchpadEvent](../InputPlumberTouchpadEvent) | [touchpad](./#touchpad) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberEvent](../InputPlumberEvent) | [from_capability](./#from_capability)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [InputPlumberEvent](../InputPlumberEvent) | [from_event](./#from_event)(godot_event: [InputEvent](https://docs.godotengine.org/en/stable/classes/class_inputevent.html)) | +| [InputPlumberEvent](../InputPlumberEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [to_joypad_path](./#to_joypad_path)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [to_capability](./#to_capability)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_capability](./#set_capability)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [matches](./#matches)(event: [InputPlumberEvent](../InputPlumberEvent)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_direction](./#get_direction)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_joypad_path](./#get_joypad_path)(cap: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [sort_capabilities](./#sort_capabilities)(caps: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [capability_from_keycode](./#capability_from_keycode)(scancode: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [virtual_key_from_keycode](./#virtual_key_from_keycode)(scancode: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `keyboard` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) keyboard + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mouse` + + +[InputPlumberMouseEvent](../InputPlumberMouseEvent) mouse + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamepad` + + +[InputPlumberGamepadEvent](../InputPlumberGamepadEvent) gamepad + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `touchpad` + + +[InputPlumberTouchpadEvent](../InputPlumberTouchpadEvent) touchpad + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_capability()` + + +[InputPlumberEvent](../InputPlumberEvent) **from_capability**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Create a new InputPlumberEvent from the given capability string +### `from_event()` + + +[InputPlumberEvent](../InputPlumberEvent) **from_event**(godot_event: [InputEvent](https://docs.godotengine.org/en/stable/classes/class_inputevent.html)) + + +Create a new InputPlumberEvent from the given Godot event +### `from_dict()` + + +[InputPlumberEvent](../InputPlumberEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +Create a new InputPlumberEvent from the given JSON dictionary +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +Convert the event into a JSON-serializable dictionary +### `to_joypad_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **to_joypad_path**() + + +Returns the controller icon path from the given event +### `to_capability()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **to_capability**() + + +Returns the capability string of the event. E.g. "Gamepad:Button:South" +### `set_capability()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_capability**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Set the event based on the given capability string (e.g. "Gamepad:Button:South") TODO: FINISH THIS! +### `matches()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **matches**(event: [InputPlumberEvent](../InputPlumberEvent)) + + +Returns true if the given event matches this event capability +### `get_direction()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_direction**() + + +Certain events can have a "direction" specified, such as for joysticks and gyro. This will return the direction if one exists and is supported. +### `get_joypad_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_joypad_path**(cap: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the controller icon path from the given event +### `sort_capabilities()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **sort_capabilities**(caps: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +Sorts the given string capabilities and returns them sorted +### `capability_from_keycode()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **capability_from_keycode**(scancode: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Convert the given key scancode into a capability string +### `virtual_key_from_keycode()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **virtual_key_from_keycode**(scancode: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Convert the given key scancode into a target keyboard event string diff --git a/docs/class-reference/InputPlumberGamepadEvent.md b/docs/class-reference/InputPlumberGamepadEvent.md new file mode 100644 index 000000000..beb16f60c --- /dev/null +++ b/docs/class-reference/InputPlumberGamepadEvent.md @@ -0,0 +1,87 @@ +# InputPlumberGamepadEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [InputPlumberAxisEvent](../InputPlumberAxisEvent) | [axis](./#axis) | | +| [InputPlumberGyroEvent](../InputPlumberGyroEvent) | [gyro](./#gyro) | | +| [InputPlumberTriggerEvent](../InputPlumberTriggerEvent) | [trigger](./#trigger) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [button](./#button) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberGamepadEvent](../InputPlumberGamepadEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `axis` + + +[InputPlumberAxisEvent](../InputPlumberAxisEvent) axis + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gyro` + + +[InputPlumberGyroEvent](../InputPlumberGyroEvent) gyro + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `trigger` + + +[InputPlumberTriggerEvent](../InputPlumberTriggerEvent) trigger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `button` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberGamepadEvent](../InputPlumberGamepadEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberGyroEvent.md b/docs/class-reference/InputPlumberGyroEvent.md new file mode 100644 index 000000000..8cc58d9d2 --- /dev/null +++ b/docs/class-reference/InputPlumberGyroEvent.md @@ -0,0 +1,87 @@ +# InputPlumberGyroEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [direction](./#direction) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [deadzone](./#deadzone) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [axis](./#axis) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberGyroEvent](../InputPlumberGyroEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `direction` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) direction + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `deadzone` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) deadzone + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `axis` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) axis + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberGyroEvent](../InputPlumberGyroEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberInstance.md b/docs/class-reference/InputPlumberInstance.md new file mode 100644 index 000000000..6ca43d312 --- /dev/null +++ b/docs/class-reference/InputPlumberInstance.md @@ -0,0 +1,137 @@ +# InputPlumberInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [intercept_mode](./#intercept_mode) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [intercept_target](./#intercept_target) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [intercept_triggers](./#intercept_triggers) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [manage_all_devices](./#manage_all_devices) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [CompositeDevice](../CompositeDevice) | [get_composite_device](./#get_composite_device)(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [CompositeDevice[]](../CompositeDevice) | [get_composite_devices](./#get_composite_devices)() | +| [DBusDevice](../DBusDevice) | [get_dbus_device](./#get_dbus_device)(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [DBusDevice[]](../DBusDevice) | [get_dbus_devices](./#get_dbus_devices)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| void | [process](./#process)() | +| void | [set_intercept_activation](./#set_intercept_activation)(triggers: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), target_event: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `intercept_mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) intercept_mode + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `intercept_target` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) intercept_target + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `intercept_triggers` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) intercept_triggers + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `manage_all_devices` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) manage_all_devices + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_composite_device()` + + +[CompositeDevice](../CompositeDevice) **get_composite_device**(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_composite_devices()` + + +[CompositeDevice[]](../CompositeDevice) **get_composite_devices**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_dbus_device()` + + +[DBusDevice](../DBusDevice) **get_dbus_device**(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_dbus_devices()` + + +[DBusDevice[]](../DBusDevice) **get_dbus_devices**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_intercept_activation()` + + +void **set_intercept_activation**(triggers: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), target_event: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberMapping.md b/docs/class-reference/InputPlumberMapping.md new file mode 100644 index 000000000..19f24d449 --- /dev/null +++ b/docs/class-reference/InputPlumberMapping.md @@ -0,0 +1,88 @@ +# InputPlumberMapping + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Resource for a single mapping in an InputPlumber input profile +## Description + +This resource is used to represent a single mapping of a source event to a target event. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [InputPlumberEvent](../InputPlumberEvent) | [source_event](./#source_event) | | +| [InputPlumberEvent[]](../InputPlumberEvent) | [target_events](./#target_events) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberMapping](../InputPlumberMapping) | [from_source_capability](./#from_source_capability)(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [InputPlumberMapping](../InputPlumberMapping) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `source_event` + + +[InputPlumberEvent](../InputPlumberEvent) source_event + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `target_events` + + +[InputPlumberEvent[]](../InputPlumberEvent) target_events + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_source_capability()` + + +[InputPlumberMapping](../InputPlumberMapping) **from_source_capability**(capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Create a new mapping from the given source capability string. +### `from_dict()` + + +[InputPlumberMapping](../InputPlumberMapping) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberMouseEvent.md b/docs/class-reference/InputPlumberMouseEvent.md new file mode 100644 index 000000000..f35e9dd5e --- /dev/null +++ b/docs/class-reference/InputPlumberMouseEvent.md @@ -0,0 +1,67 @@ +# InputPlumberMouseEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [button](./#button) | | +| [InputPlumberMouseMotionEvent](../InputPlumberMouseMotionEvent) | [motion](./#motion) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberMouseEvent](../InputPlumberMouseEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `button` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `motion` + + +[InputPlumberMouseMotionEvent](../InputPlumberMouseMotionEvent) motion + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberMouseEvent](../InputPlumberMouseEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberMouseMotionEvent.md b/docs/class-reference/InputPlumberMouseMotionEvent.md new file mode 100644 index 000000000..d738897fb --- /dev/null +++ b/docs/class-reference/InputPlumberMouseMotionEvent.md @@ -0,0 +1,67 @@ +# InputPlumberMouseMotionEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [direction](./#direction) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [speed_pps](./#speed_pps) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberMouseMotionEvent](../InputPlumberMouseMotionEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `direction` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) direction + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `speed_pps` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) speed_pps + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberMouseMotionEvent](../InputPlumberMouseMotionEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberProfile.md b/docs/class-reference/InputPlumberProfile.md new file mode 100644 index 000000000..a090f5b2b --- /dev/null +++ b/docs/class-reference/InputPlumberProfile.md @@ -0,0 +1,150 @@ +# InputPlumberProfile + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Resource for loading and saving InputPlumber Input Profiles +## Description + +This resource is used to load and save InputPlumber input profiles that can be used to remap gamepad inputs. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [version](./#version) | 1 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [kind](./#kind) | "DeviceProfile" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [int[]](https://docs.godotengine.org/en/stable/classes/class_int.html) | [target_devices](./#target_devices) | | +| [InputPlumberMapping[]](../InputPlumberMapping) | [mapping](./#mapping) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberProfile](../InputPlumberProfile) | [load](./#load)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [InputPlumberProfile](../InputPlumberProfile) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [InputPlumberProfile](../InputPlumberProfile) | [from_json](./#from_json)(json: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_target_device_string](./#get_target_device_string)(target_device: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_target_device](./#get_target_device)(target_device_str: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [save](./#save)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_mappings_source_capabilities](./#get_mappings_source_capabilities)() | +| [InputPlumberMapping[]](../InputPlumberMapping) | [get_mappings_by_source_capability](./#get_mappings_by_source_capability)(source_capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [to_json](./#to_json)() | + + +------------------ + +## Property Descriptions + +### `version` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) version = 1 + + +Version of the config +### `kind` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) kind = "DeviceProfile" + + +Type of configuration schema +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Name of the profile +### `target_devices` + + +[int[]](https://docs.godotengine.org/en/stable/classes/class_int.html) target_devices + + +Target input devices to emulate +### `mapping` + + +[InputPlumberMapping[]](../InputPlumberMapping) mapping + + +Input mappings + + + +------------------ + +## Method Descriptions + +### `load()` + + +[InputPlumberProfile](../InputPlumberProfile) **load**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Load the InputPlumberProfile in JSON format from the given path +### `from_dict()` + + +[InputPlumberProfile](../InputPlumberProfile) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +Create an InputPlumberProfile from the given dictionary +### `from_json()` + + +[InputPlumberProfile](../InputPlumberProfile) **from_json**(json: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Create an InputPlumberProfile from the given JSON string +### `get_target_device_string()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_target_device_string**(target_device: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Return the target device string for the given target device type +### `get_target_device()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_target_device**(target_device_str: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Return the target device for the given target device string +### `save()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **save**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Save the profile to the given path in JSON format +### `get_mappings_source_capabilities()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_mappings_source_capabilities**() + + +Returns an array of source capability strings for all mappings in the profile. I.e. this will return a list of every mapping.source_event property. +### `get_mappings_by_source_capability()` + + +[InputPlumberMapping[]](../InputPlumberMapping) **get_mappings_by_source_capability**(source_capability: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Return all mappings that match the given source capability. Most source capabilities will just have a single mapping, but some, like "GamepadAxis", may have multiple mappings associated with them (e.g. LeftStick -> KeyA, KeyW, KeyS, KeyD) +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +Convert the profile to an easily serializable dictionary +### `to_json()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **to_json**() + + +Serialize the profile to JSON diff --git a/docs/class-reference/InputPlumberTouchEvent.md b/docs/class-reference/InputPlumberTouchEvent.md new file mode 100644 index 000000000..193b33e21 --- /dev/null +++ b/docs/class-reference/InputPlumberTouchEvent.md @@ -0,0 +1,67 @@ +# InputPlumberTouchEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [button](./#button) | | +| [InputPlumberTouchMotionEvent](../InputPlumberTouchMotionEvent) | [motion](./#motion) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberTouchEvent](../InputPlumberTouchEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `button` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `motion` + + +[InputPlumberTouchMotionEvent](../InputPlumberTouchMotionEvent) motion + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberTouchEvent](../InputPlumberTouchEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberTouchMotionEvent.md b/docs/class-reference/InputPlumberTouchMotionEvent.md new file mode 100644 index 000000000..849afb6c6 --- /dev/null +++ b/docs/class-reference/InputPlumberTouchMotionEvent.md @@ -0,0 +1,67 @@ +# InputPlumberTouchMotionEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [region](./#region) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [speed_pps](./#speed_pps) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberTouchMotionEvent](../InputPlumberTouchMotionEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `region` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) region + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `speed_pps` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) speed_pps + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberTouchMotionEvent](../InputPlumberTouchMotionEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberTouchpadEvent.md b/docs/class-reference/InputPlumberTouchpadEvent.md new file mode 100644 index 000000000..c5b543f9a --- /dev/null +++ b/docs/class-reference/InputPlumberTouchpadEvent.md @@ -0,0 +1,67 @@ +# InputPlumberTouchpadEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [InputPlumberTouchEvent](../InputPlumberTouchEvent) | [touch](./#touch) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberTouchpadEvent](../InputPlumberTouchpadEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `touch` + + +[InputPlumberTouchEvent](../InputPlumberTouchEvent) touch + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberTouchpadEvent](../InputPlumberTouchpadEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputPlumberTriggerEvent.md b/docs/class-reference/InputPlumberTriggerEvent.md new file mode 100644 index 000000000..dc0a2c12c --- /dev/null +++ b/docs/class-reference/InputPlumberTriggerEvent.md @@ -0,0 +1,67 @@ +# InputPlumberTriggerEvent + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [deadzone](./#deadzone) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InputPlumberTriggerEvent](../InputPlumberTriggerEvent) | [from_dict](./#from_dict)(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `deadzone` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) deadzone + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_dict()` + + +[InputPlumberTriggerEvent](../InputPlumberTriggerEvent) **from_dict**(dict: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/InputWatcher.md b/docs/class-reference/InputWatcher.md new file mode 100644 index 000000000..112182613 --- /dev/null +++ b/docs/class-reference/InputWatcher.md @@ -0,0 +1,54 @@ +# InputWatcher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Fires signals based on configured input events +## Description + +The [InputWatcher](../InputWatcher) fires signals based on detected input events. This enables other nodes to react to inputs through signals in the editor. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [stop_propagation](./#stop_propagation) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [process_input_mode](./#process_input_mode) | 3 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [action](./#action) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `stop_propagation` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) stop_propagation + + +If true, consumes the event, marking it as handled so no other nodes try to handle this input event. +### `process_input_mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) process_input_mode = 3 + + +Always process inputs or only when parent node is visible +### `action` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) action + + +Name of the input action in the InputMap to watch for +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/InstallLocationCard.md b/docs/class-reference/InstallLocationCard.md new file mode 100644 index 000000000..840c26c5f --- /dev/null +++ b/docs/class-reference/InstallLocationCard.md @@ -0,0 +1,105 @@ +# InstallLocationCard + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [icon](./#icon) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [name_label](./#name_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [desc_label](./#desc_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [drive_size_label](./#drive_size_label) | | +| [ProgressBar](https://docs.godotengine.org/en/stable/classes/class_progressbar.html) | [drive_used_bar](./#drive_used_bar) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | +| [Library.InstallLocation](../Library.InstallLocation) | [location](./#location) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InstallLocationCard](../InstallLocationCard) | [from_location](./#from_location)(location: [Library.InstallLocation](../Library.InstallLocation)) | + + +------------------ + +## Property Descriptions + +### `icon` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) name_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `desc_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) desc_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `drive_size_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) drive_size_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `drive_used_bar` + + +[ProgressBar](https://docs.godotengine.org/en/stable/classes/class_progressbar.html) drive_used_bar + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `location` + + +[Library.InstallLocation](../Library.InstallLocation) location + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_location()` + + +[InstallLocationCard](../InstallLocationCard) **from_location**(location: [Library.InstallLocation](../Library.InstallLocation)) + + +Creates an [InstallLocationCard](../InstallLocationCard) instance for the given install location diff --git a/docs/class-reference/InstallLocationDialog.md b/docs/class-reference/InstallLocationDialog.md new file mode 100644 index 000000000..a76f335d7 --- /dev/null +++ b/docs/class-reference/InstallLocationDialog.md @@ -0,0 +1,125 @@ +# InstallLocationDialog + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cancel_text](./#cancel_text) | "Cancel" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [cancel_visible](./#cancel_visible) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [close_on_selected](./#close_on_selected) | true | +| [Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) | [custom_maximum_size](./#custom_maximum_size) | | +| [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) | [scroll_container](./#scroll_container) | | +| [Container](https://docs.godotengine.org/en/stable/classes/class_container.html) | [content_container](./#content_container) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [CardButton](../CardButton) | [cancel_button](./#cancel_button) | | +| [Effect](../Effect) | [fade_effect](./#fade_effect) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [open](./#open)(return_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), locations: [Library.InstallLocation[]](../Library.InstallLocation) = [], message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", cancel_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text + + +Text to display in the dialog box +### `cancel_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cancel_text = "Cancel" + + +Cancel button text +### `cancel_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) cancel_visible = true + + +Whether or not the cancel button should be shown +### `close_on_selected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) close_on_selected = true + + +Close the dialog when the user selects an option +### `custom_maximum_size` + + +[Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) custom_maximum_size + + +Maximum size that the scroll container can grow to +### `scroll_container` + + +[ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) scroll_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `content_container` + + +[Container](https://docs.godotengine.org/en/stable/classes/class_container.html) content_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cancel_button` + + +[CardButton](../CardButton) cancel_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `fade_effect` + + +[Effect](../Effect) fade_effect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `open()` + + +void **open**(return_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), locations: [Library.InstallLocation[]](../Library.InstallLocation) = [], message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", cancel_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Opens the dialog box with the given settings diff --git a/docs/class-reference/InstallManager.Request.md b/docs/class-reference/InstallManager.Request.md new file mode 100644 index 000000000..5e832774a --- /dev/null +++ b/docs/class-reference/InstallManager.Request.md @@ -0,0 +1,77 @@ +# InstallManager.Request + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +An InstallManager Request defines a queued or in-progress app install +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Library](../Library) | [provider](./#provider) | | +| [LibraryLaunchItem](../LibraryLaunchItem) | [item](./#item) | | +| [Library.InstallLocation](../Library.InstallLocation) | [location](./#location) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [options](./#options) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [progress](./#progress) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [success](./#success) | | + + + +------------------ + +## Property Descriptions + +### `provider` + + +[Library](../Library) provider + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `item` + + +[LibraryLaunchItem](../LibraryLaunchItem) item + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `location` + + +[Library.InstallLocation](../Library.InstallLocation) location + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `options` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) options + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `progress` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) progress + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `success` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) success + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/InstallManager.md b/docs/class-reference/InstallManager.md new file mode 100644 index 000000000..b5e8b82d8 --- /dev/null +++ b/docs/class-reference/InstallManager.md @@ -0,0 +1,93 @@ +# InstallManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [InstallManager.Request](../InstallManager.Request) | [get_installing](./#get_installing)() | +| void | [install](./#install)(request: [InstallManager.Request](../InstallManager.Request)) | +| void | [update](./#update)(request: [InstallManager.Request](../InstallManager.Request)) | +| void | [uninstall](./#uninstall)(request: [InstallManager.Request](../InstallManager.Request)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_queued](./#is_queued)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_installing](./#is_installing)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_queued_or_installing](./#is_queued_or_installing)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_installing()` + + +[InstallManager.Request](../InstallManager.Request) **get_installing**() + + +Returns the currently processing install request +### `install()` + + +void **install**(request: [InstallManager.Request](../InstallManager.Request)) + + +Installs the given library launch item using its provider +### `update()` + + +void **update**(request: [InstallManager.Request](../InstallManager.Request)) + + +Updates the given library launch item using its provider +### `uninstall()` + + +void **uninstall**(request: [InstallManager.Request](../InstallManager.Request)) + + +Uninstalls the given library launch item using its provider +### `is_queued()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_queued**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns whether or not the given launch item is queued for install +### `is_installing()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_installing**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns whether or not the given launch item is currently being installed +### `is_queued_or_installing()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_queued_or_installing**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns whether or not the given launch item is being installed or queued for install. diff --git a/docs/class-reference/InstallOptionDialog.md b/docs/class-reference/InstallOptionDialog.md new file mode 100644 index 000000000..04d5c213d --- /dev/null +++ b/docs/class-reference/InstallOptionDialog.md @@ -0,0 +1,147 @@ +# InstallOptionDialog + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cancel_text](./#cancel_text) | "Cancel" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [cancel_visible](./#cancel_visible) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [close_on_selected](./#close_on_selected) | true | +| [Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) | [custom_maximum_size](./#custom_maximum_size) | | +| [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) | [scroll_container](./#scroll_container) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [CardButton](../CardButton) | [confirm_button](./#confirm_button) | | +| [CardButton](../CardButton) | [cancel_button](./#cancel_button) | | +| [Effect](../Effect) | [fade_effect](./#fade_effect) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [content](./#content) | | +| [FocusGroup](../FocusGroup) | [focus_group](./#focus_group) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [open](./#open)(return_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), options: [Library.InstallOption[]](../Library.InstallOption), message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text + + +Text to display in the dialog box +### `cancel_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cancel_text = "Cancel" + + +Cancel button text +### `cancel_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) cancel_visible = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `close_on_selected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) close_on_selected = true + + +Close the dialog when the user selects an option +### `custom_maximum_size` + + +[Vector2i](https://docs.godotengine.org/en/stable/classes/class_vector2i.html) custom_maximum_size + + +Maximum size that the scroll container can grow to +### `scroll_container` + + +[ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) scroll_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `confirm_button` + + +[CardButton](../CardButton) confirm_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cancel_button` + + +[CardButton](../CardButton) cancel_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `fade_effect` + + +[Effect](../Effect) fade_effect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `content` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) content + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_group` + + +[FocusGroup](../FocusGroup) focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `open()` + + +void **open**(return_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), options: [Library.InstallOption[]](../Library.InstallOption), message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Opens the dialog box with the given settings diff --git a/docs/class-reference/InteractiveProcess.md b/docs/class-reference/InteractiveProcess.md new file mode 100644 index 000000000..f4865541f --- /dev/null +++ b/docs/class-reference/InteractiveProcess.md @@ -0,0 +1,170 @@ +# InteractiveProcess + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Class for starting an interacting with a process through a psuedo terminal +## Description + +Starts an interactive session +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Pty](../Pty) | [pty](./#pty) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cmd](./#cmd) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [args](./#args) | [] | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [pid](./#pid) | | +| [Platform](../Platform) | [platform](./#platform) | | +| [ResourceRegistry](../ResourceRegistry) | [registry](./#registry) | | +| [Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) | [lines_mutex](./#lines_mutex) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [lines_buffer](./#lines_buffer) | PackedStringArray() | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [start](./#start)() | +| void | [send](./#send)(input: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [read](./#read)(_chunk_size: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 1024) | +| void | [stop](./#stop)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [output_to_log_file](./#output_to_log_file)(log_file: [FileAccess](https://docs.godotengine.org/en/stable/classes/class_fileaccess.html), _chunk_size: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 1024) | + + +------------------ + +## Property Descriptions + +### `pty` + + +[Pty](../Pty) pty + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cmd` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cmd + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `args` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) args = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pid` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) pid + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `platform` + + +[Platform](../Platform) platform + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `registry` + + +[ResourceRegistry](../ResourceRegistry) registry + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `lines_mutex` + + +[Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) lines_mutex + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `lines_buffer` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) lines_buffer = PackedStringArray() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `start()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **start**() + + +Start the interactive process +### `send()` + + +void **send**(input: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Send the given input to the running process +### `read()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **read**(_chunk_size: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 1024) + + +Read from the stdout of the running process +### `stop()` + + +void **stop**() + + +Stop the given process +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +Returns whether or not the interactive process is still running +### `output_to_log_file()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **output_to_log_file**(log_file: [FileAccess](https://docs.godotengine.org/en/stable/classes/class_fileaccess.html), _chunk_size: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 1024) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/KeyboardContext.md b/docs/class-reference/KeyboardContext.md new file mode 100644 index 000000000..740625b64 --- /dev/null +++ b/docs/class-reference/KeyboardContext.md @@ -0,0 +1,44 @@ +# KeyboardContext + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Route on-screen keyboard input +## Description + +A KeyboardContext defines how the on-screen keyboard should route its key input. If the context type is set to TYPE.GODOT, the keyboard will update the given control node's text from the keyboard. If it is TYPE.X11, it will send virtual key pressess to the game via Xlib/evdev. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [type](./#type) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [target](./#target) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [close_on_submit](./#close_on_submit) | true | + + + +------------------ + +## Property Descriptions + +### `type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) type + + +The type of keyboard context +### `target` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) target + + +For non-TYPE.X11 contexts, which node to send text input to +### `close_on_submit` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) close_on_submit = true + + +Whether or not the keyboard should close after submition + diff --git a/docs/class-reference/KeyboardDevice.md b/docs/class-reference/KeyboardDevice.md new file mode 100644 index 000000000..a6edaf9b8 --- /dev/null +++ b/docs/class-reference/KeyboardDevice.md @@ -0,0 +1,67 @@ +# KeyboardDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_type](./#device_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [send_key](./#send_key)(key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `send_key()` + + +void **send_key**(key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/KeyboardInstance.md b/docs/class-reference/KeyboardInstance.md new file mode 100644 index 000000000..b5e419fa8 --- /dev/null +++ b/docs/class-reference/KeyboardInstance.md @@ -0,0 +1,70 @@ +# KeyboardInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Globally accessible reference to an on-screen keyboard +## Description + +A KeyboardInstance provides a custom resource that any node can load regardless of where it is in the scene tree to control an on-screen keyboard. Nodes that want to open the keyboard can load this resource and call 'open()' with a keyboard context that defines where inputs should go. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [KeyboardContext](../KeyboardContext) | [context](./#context) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [open](./#open)(ctx: [KeyboardContext](../KeyboardContext)) | +| void | [close](./#close)() | +| void | [set_context](./#set_context)(ctx: [KeyboardContext](../KeyboardContext)) | + + +------------------ + +## Property Descriptions + +### `context` + + +[KeyboardContext](../KeyboardContext) context + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `open()` + + +void **open**(ctx: [KeyboardContext](../KeyboardContext)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `close()` + + +void **close**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_context()` + + +void **set_context**(ctx: [KeyboardContext](../KeyboardContext)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/KeyboardKeyConfig.md b/docs/class-reference/KeyboardKeyConfig.md new file mode 100644 index 000000000..a2c0b340a --- /dev/null +++ b/docs/class-reference/KeyboardKeyConfig.md @@ -0,0 +1,88 @@ +# KeyboardKeyConfig + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Defines a single key configuration for the on-screen keyboard +## Description + +A key configuration is one key that is part of a [KeyboardLayout](../KeyboardLayout) which defines the type of key it is. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [type](./#type) | 0 | +| [InputEventKey](https://docs.godotengine.org/en/stable/classes/class_inputeventkey.html) | [input](./#input) | | +| [InputEventKey](https://docs.godotengine.org/en/stable/classes/class_inputeventkey.html) | [mode_shift_input](./#mode_shift_input) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [icon](./#icon) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [stretch_ratio](./#stretch_ratio) | 1.0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [action](./#action) | 0 | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_text](./#get_text)(mode_shifted: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) | + + +------------------ + +## Property Descriptions + +### `type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) type = 0 + + +Whether this is a normal key or special key +### `input` + + +[InputEventKey](https://docs.godotengine.org/en/stable/classes/class_inputeventkey.html) input + + +The keyboard event associated with this key +### `mode_shift_input` + + +[InputEventKey](https://docs.godotengine.org/en/stable/classes/class_inputeventkey.html) mode_shift_input + + +The keyboard event associated with this key when SHIFT is being held +### `icon` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) icon + + +An icon to display for this key on the on-screen keyboard +### `stretch_ratio` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) stretch_ratio = 1.0 + + +How much space relative to other keys in the row to take up +### `action` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) action = 0 + + +An action for TYPE.SPECIAL keys to take + + + +------------------ + +## Method Descriptions + +### `get_text()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_text**(mode_shifted: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = false) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/KeyboardLayout.md b/docs/class-reference/KeyboardLayout.md new file mode 100644 index 000000000..c3af6fe3d --- /dev/null +++ b/docs/class-reference/KeyboardLayout.md @@ -0,0 +1,36 @@ +# KeyboardLayout + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Defines the rows and columns of the on-screen keyboard +## Description + +A keyboard layout defines the look and key configuration of the on-screen keyboard +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | "Default" | +| [KeyboardRow[]](../KeyboardRow) | [rows](./#rows) | | + + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name = "Default" + + +Name of the keyboard layout +### `rows` + + +[KeyboardRow[]](../KeyboardRow) rows + + +Keyboard rows that belong to this layout + diff --git a/docs/class-reference/KeyboardOpener.md b/docs/class-reference/KeyboardOpener.md new file mode 100644 index 000000000..dd78ab0f2 --- /dev/null +++ b/docs/class-reference/KeyboardOpener.md @@ -0,0 +1,115 @@ +# KeyboardOpener + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Node that can open the on-screen keyboard in response to a signal firing +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [KeyboardInstance](../KeyboardInstance) | [osk](./#osk) | | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [StateMachine](../StateMachine) | [popup_state_machine](./#popup_state_machine) | | +| [State](../State) | [in_game_menu_state](./#in_game_menu_state) | | +| [State](../State) | [main_menu_state](./#main_menu_state) | | +| [State](../State) | [quick_bar_state](./#quick_bar_state) | | +| [State](../State) | [osk_state](./#osk_state) | | +| [State](../State) | [popup_state](./#popup_state) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [target](./#target) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [type](./#type) | 2 | + + + +------------------ + +## Property Descriptions + +### `osk` + + +[KeyboardInstance](../KeyboardInstance) osk + + +Reference to the on-screen keyboard instance to open when the OSK action is pressed. +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +The Global State Machine +### `popup_state_machine` + + +[StateMachine](../StateMachine) popup_state_machine + + +Popup state machine to show the OSK popup. +### `in_game_menu_state` + + +[State](../State) in_game_menu_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `main_menu_state` + + +[State](../State) main_menu_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `quick_bar_state` + + +[State](../State) quick_bar_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `osk_state` + + +[State](../State) osk_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `popup_state` + + +[State](../State) popup_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +Signal on our parent node to connect to +### `target` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) target + + +Target control node to send keyboard input to. +### `type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) type = 2 + + +The type of keyboard behavior. An "X11" keyboard will send keyboard events to a running game. A "Godot" keyboard will send text input to a control node. + diff --git a/docs/class-reference/KeyboardRow.md b/docs/class-reference/KeyboardRow.md new file mode 100644 index 000000000..8d07950e0 --- /dev/null +++ b/docs/class-reference/KeyboardRow.md @@ -0,0 +1,28 @@ +# KeyboardRow + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Defines a row of keys in a [KeyboardLayout](../KeyboardLayout) +## Description + +Simple container to store a row of key configs in a layout +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [KeyboardKeyConfig[]](../KeyboardKeyConfig) | [entries](./#entries) | | + + + +------------------ + +## Property Descriptions + +### `entries` + + +[KeyboardKeyConfig[]](../KeyboardKeyConfig) entries + + +Keys to appear in this row of the on-screen keyboard + diff --git a/docs/class-reference/LaunchManager.md b/docs/class-reference/LaunchManager.md new file mode 100644 index 000000000..03913b548 --- /dev/null +++ b/docs/class-reference/LaunchManager.md @@ -0,0 +1,273 @@ +# LaunchManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Launch and manage the lifecycle of subprocesses +## Description + +The LaunchManager class is responsible starting and managing the lifecycle of games and is one of the most complex systems in OpenGamepadUI. Using gamescope, it manages what games start, if their process is still running, and fascilitates window switching between games. It also provides a mechanism to kill running games and discover child processes. It uses a timer to periodically check on launched games to see if they have exited, or are opening new windows that might need attention. Example: +```gdscript + + var launch_manager := load("res://core/global/launch_manager.tres") as LaunchManager + ... + # Create a LibraryLaunchItem to run something + var item := LibraryLaunchItem.new() + item.command = "vkcube" + + # Launch the app with LaunchManager + var running_app := launch_manager.launch(item) + + # Get a list of running apps + var running := launch_manager.get_running() + print(running) + + # Stop an app with LaunchManager + launch_manager.stop(running_app) + +``` + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [GamescopeInstance](../GamescopeInstance) | [gamescope](./#gamescope) | | +| [InputPlumberInstance](../InputPlumberInstance) | [input_plumber](./#input_plumber) | | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [State](../State) | [in_game_state](./#in_game_state) | | +| [State](../State) | [in_game_menu_state](./#in_game_menu_state) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [PID](./#PID) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [should_manage_overlay](./#should_manage_overlay) | true | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [setup](./#setup)(input_manager: [InputManager](../InputManager)) | +| [RunningApp](../RunningApp) | [launch](./#launch)(app: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [RunningApp](../RunningApp) | [launch_in_background](./#launch_in_background)(app: [LibraryLaunchItem](../LibraryLaunchItem)) | +| void | [stop](./#stop)(app: [RunningApp](../RunningApp)) | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_recent_apps](./#get_recent_apps)() | +| void | [update_recent_apps](./#update_recent_apps)(app: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [RunningApp[]](../RunningApp) | [get_running](./#get_running)() | +| [RunningApp[]](../RunningApp) | [get_running_background](./#get_running_background)() | +| [RunningApp](../RunningApp) | [get_running_from_window_id](./#get_running_from_window_id)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [RunningApp](../RunningApp) | [get_current_app](./#get_current_app)() | +| [LibraryItem](../LibraryItem) | [get_current_app_library_item](./#get_current_app_library_item)() | +| void | [set_app_gamepad_profile](./#set_app_gamepad_profile)(app: [RunningApp](../RunningApp)) | +| void | [set_gamepad_profile](./#set_gamepad_profile)(profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target_gamepad: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| void | [set_current_app](./#set_current_app)(app: [RunningApp](../RunningApp), _switch_baselayer: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [can_switch_app](./#can_switch_app)(app: [RunningApp](../RunningApp)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)(app_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [check_running](./#check_running)() | + + +------------------ + +## Property Descriptions + +### `gamescope` + + +[GamescopeInstance](../GamescopeInstance) gamescope + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `input_plumber` + + +[InputPlumberInstance](../InputPlumberInstance) input_plumber + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `in_game_state` + + +[State](../State) in_game_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `in_game_menu_state` + + +[State](../State) in_game_menu_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `PID` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) PID + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `should_manage_overlay` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) should_manage_overlay = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `setup()` + + +void **setup**(input_manager: [InputManager](../InputManager)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `launch()` + + +[RunningApp](../RunningApp) **launch**(app: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Launches the given application and switches to the in-game state. Returns a [RunningApp](../RunningApp) instance of the application. +### `launch_in_background()` + + +[RunningApp](../RunningApp) **launch_in_background**(app: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Launches the given app in the background. Returns the [RunningApp](../RunningApp) instance. +### `stop()` + + +void **stop**(app: [RunningApp](../RunningApp)) + + +Stops the game and all its children with the given PID +### `get_recent_apps()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_recent_apps**() + + +Returns a list of apps that have been launched recently +### `update_recent_apps()` + + +void **update_recent_apps**(app: [LibraryLaunchItem](../LibraryLaunchItem)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_running()` + + +[RunningApp[]](../RunningApp) **get_running**() + + +Returns a list of currently running apps +### `get_running_background()` + + +[RunningApp[]](../RunningApp) **get_running_background**() + + +Returns a list of currently running background apps +### `get_running_from_window_id()` + + +[RunningApp](../RunningApp) **get_running_from_window_id**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the running app from the given window id +### `get_current_app()` + + +[RunningApp](../RunningApp) **get_current_app**() + + +Returns the currently running app +### `get_current_app_library_item()` + + +[LibraryItem](../LibraryItem) **get_current_app_library_item**() + + +Returns the library item for the currently running app (if one is running). +### `set_app_gamepad_profile()` + + +void **set_app_gamepad_profile**(app: [RunningApp](../RunningApp)) + + +Sets the gamepad profile for the running app with the given profile +### `set_gamepad_profile()` + + +void **set_gamepad_profile**(profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target_gamepad: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Sets the gamepad profile for the running app with the given profile +### `set_current_app()` + + +void **set_current_app**(app: [RunningApp](../RunningApp), _switch_baselayer: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +Sets the given running app as the current app +### `can_switch_app()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **can_switch_app**(app: [RunningApp](../RunningApp)) + + +Returns true if the given app can be switched to via Gamescope +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**(app_name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns whether the given app is running +### `check_running()` + + +void **check_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Launcher.md b/docs/class-reference/Launcher.md new file mode 100644 index 000000000..d17948b2d --- /dev/null +++ b/docs/class-reference/Launcher.md @@ -0,0 +1,47 @@ +# Launcher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [LaunchManager](../LaunchManager) | [launch_manager](./#launch_manager) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [overlay_display](./#overlay_display) | | +| [InputManager](../InputManager) | [input_manager](./#input_manager) | | + + + +------------------ + +## Property Descriptions + +### `launch_manager` + + +[LaunchManager](../LaunchManager) launch_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `overlay_display` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) overlay_display + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `input_manager` + + +[InputManager](../InputManager) input_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/LevelIndicator.md b/docs/class-reference/LevelIndicator.md new file mode 100644 index 000000000..b531c148e --- /dev/null +++ b/docs/class-reference/LevelIndicator.md @@ -0,0 +1,57 @@ +# LevelIndicator + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [icon_texture](./#icon_texture) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [value](./#value) | 50.0 | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [icon](./#icon) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [progress_bar](./#progress_bar) | | + + + +------------------ + +## Property Descriptions + +### `icon_texture` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) icon_texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `value` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) value = 50.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `progress_bar` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) progress_bar + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/Library.InstallLocation.md b/docs/class-reference/Library.InstallLocation.md new file mode 100644 index 000000000..491fde63b --- /dev/null +++ b/docs/class-reference/Library.InstallLocation.md @@ -0,0 +1,77 @@ +# Library.InstallLocation + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +InstallLocation defines a place where a [LibraryLaunchItem](../LibraryLaunchItem) can be installed. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [id](./#id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [icon](./#icon) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [total_space_mb](./#total_space_mb) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [free_space_mb](./#free_space_mb) | | + + + +------------------ + +## Property Descriptions + +### `id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `total_space_mb` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) total_space_mb + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `free_space_mb` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) free_space_mb + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/Library.InstallOption.md b/docs/class-reference/Library.InstallOption.md new file mode 100644 index 000000000..13c37c432 --- /dev/null +++ b/docs/class-reference/Library.InstallOption.md @@ -0,0 +1,67 @@ +# Library.InstallOption + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +InstallOption defines an arbitrary install option for a [LibraryLaunchitem](https://docs.godotengine.org/en/stable/classes/class_librarylaunchitem.html). +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [id](./#id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [values](./#values) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [value_type](./#value_type) | | + + + +------------------ + +## Property Descriptions + +### `id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `values` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) values + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `value_type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) value_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/Library.md b/docs/class-reference/Library.md new file mode 100644 index 000000000..acdf85672 --- /dev/null +++ b/docs/class-reference/Library.md @@ -0,0 +1,231 @@ +# Library + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Base class for Library implementations +## Description + +The Library class provides an interface for creating new library implementations. To create a new library, simply extend this class and implement its methods. When a Library node is added to the scene tree, it will automatically register itself with the global [LibraryManager](../LibraryManager). +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [LibraryManager](../LibraryManager) | [LibraryManager](./#LibraryManager) | | +| [LibraryManager](../LibraryManager) | [library_manager](./#library_manager) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [library_id](./#library_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [store_id](./#store_id) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [library_icon](./#library_icon) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [supports_uninstall](./#supports_uninstall) | true | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [logger_name](./#logger_name) | library_id | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [log_level](./#log_level) | 3 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [LibraryLaunchItem[]](../LibraryLaunchItem) | [get_library_launch_items](./#get_library_launch_items)() | +| [Library.InstallLocation[]](../Library.InstallLocation) | [get_available_install_locations](./#get_available_install_locations)(item: [LibraryLaunchItem](../LibraryLaunchItem) = null) | +| [Library.InstallOption[]](../Library.InstallOption) | [get_install_options](./#get_install_options)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [AppLifecycleHook[]](../AppLifecycleHook) | [get_app_lifecycle_hooks](./#get_app_lifecycle_hooks)() | +| void | [install](./#install)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| void | [install_to](./#install_to)(item: [LibraryLaunchItem](../LibraryLaunchItem), location: [Library.InstallLocation](../Library.InstallLocation) = null, options: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| void | [update](./#update)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_update](./#has_update)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| void | [uninstall](./#uninstall)(item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| void | [move](./#move)(item: [LibraryLaunchItem](../LibraryLaunchItem), to_location: [Library.InstallLocation](../Library.InstallLocation)) | + + +------------------ + +## Property Descriptions + +### `LibraryManager` + + +[LibraryManager](../LibraryManager) LibraryManager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `library_manager` + + +[LibraryManager](../LibraryManager) library_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `library_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) library_id + + +Unique identifier for the library +### `store_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) store_id + + +Optional store that this library is linked to +### `library_icon` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) library_icon + + +Icon for library provider +### `supports_uninstall` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) supports_uninstall = true + + +Whether or not the library provider supports uninstalls +### `logger_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) logger_name = library_id + + +Logger name used for debug messages +### `log_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) log_level = 3 + + +Log level of the logger. +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_library_launch_items()` + + +[LibraryLaunchItem[]](../LibraryLaunchItem) **get_library_launch_items**() + + +Returns an array of available library launch items that this library provides. This method should be overriden in the child class. Example: +```gdscript + + func get_library_launch_items() -> Array[LibraryLaunchItem]: + var item: LibraryLaunchItem = LibraryLaunchItem.new() + item.name = "vkCube" + item.command = "vkcube" + item.args = [] + item.tags = ["vkcube"] + item.installed = true + + return [item] + +``` + + +### `get_available_install_locations()` + + +[Library.InstallLocation[]](../Library.InstallLocation) **get_available_install_locations**(item: [LibraryLaunchItem](../LibraryLaunchItem) = null) + + +Returns an array of available install locations for this library provider. This method should be overridden in the child class. Example: +```gdscript + + func get_available_install_locations() -> Array[InstallLocation]: + var location := InstallLocation.new() + location.name = "/" + return [location] + +``` + + +### `get_install_options()` + + +[Library.InstallOption[]](../Library.InstallOption) **get_install_options**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns an array of install options for the given [LibraryLaunchItem](../LibraryLaunchItem). Install options are arbitrary and are provider-specific. They allow the user to select things like the language of a game to install, etc. Example: +```gdscript + + func get_install_options(item: LibraryLaunchItem) -> Array[InstallOption]: + var option := InstallOption.new() + option.id = "lang" + option.name = "Language" + option.description = "Language of the game to install" + option.values = ["english", "spanish"] + option.value_type = TYPE_STRING + return [option] + +``` + + +### `get_app_lifecycle_hooks()` + + +[AppLifecycleHook[]](../AppLifecycleHook) **get_app_lifecycle_hooks**() + + +This method should be overridden if the library requires executing callbacks at certain points in an app's lifecycle, such as when an app is starting or stopping. +### `install()` + + +void **install**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +!!! warning + + This is deprecated + + Installs the given library item. This method should be overriden in the child class, if it supports it. +### `install_to()` + + +void **install_to**(item: [LibraryLaunchItem](../LibraryLaunchItem), location: [Library.InstallLocation](../Library.InstallLocation) = null, options: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +Installs the given library item to the given location. This method should be overridden in the child class, if it supports it. +### `update()` + + +void **update**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Updates the given library item. This method should be overriden in the child class, if it supports it. +### `has_update()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_update**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Should return true if the given library item has an update available +### `uninstall()` + + +void **uninstall**(item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Uninstalls the given library item. This method should be overriden in the child class if it supports it. +### `move()` + + +void **move**(item: [LibraryLaunchItem](../LibraryLaunchItem), to_location: [Library.InstallLocation](../Library.InstallLocation)) + + +Move the given library item to the given install location. This method should be overriden in the child class if it supports it. diff --git a/docs/class-reference/LibraryDeck.md b/docs/class-reference/LibraryDeck.md new file mode 100644 index 000000000..4d38ccedd --- /dev/null +++ b/docs/class-reference/LibraryDeck.md @@ -0,0 +1,75 @@ +# LibraryDeck + +**Inherits:** [MarginContainer](https://docs.godotengine.org/en/stable/classes/class_margincontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [GameCard](../GameCard) | [card_1](./#card_1) | | +| [GameCard](../GameCard) | [card_2](./#card_2) | | +| [GameCard](../GameCard) | [card_3](./#card_3) | | +| [Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) | [timer](./#timer) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_texture](./#set_texture)(idx: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), texture: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html)) | + + +------------------ + +## Property Descriptions + +### `card_1` + + +[GameCard](../GameCard) card_1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `card_2` + + +[GameCard](../GameCard) card_2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `card_3` + + +[GameCard](../GameCard) card_3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `timer` + + +[Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) timer + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `set_texture()` + + +void **set_texture**(idx: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), texture: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html)) + + +Set the texture on one of the cards in the library deck diff --git a/docs/class-reference/LibraryItem.md b/docs/class-reference/LibraryItem.md new file mode 100644 index 000000000..c809dd348 --- /dev/null +++ b/docs/class-reference/LibraryItem.md @@ -0,0 +1,110 @@ +# LibraryItem + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +LibraryItem is a high-level structure that contains data about a game. +## Description + +A LibraryItem is a single game title that may have one or more library providers. It contains an array of [LibraryLaunchItem](../LibraryLaunchItem) resources that can tell us how to launch a game. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [LibraryLaunchItem[]](../LibraryLaunchItem) | [launch_items](./#launch_items) | [] | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [tags](./#tags) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [categories](./#categories) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_hidden](./#is_hidden) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [LibraryItem](../LibraryItem) | [new_from_launch_item](./#new_from_launch_item)(launch_item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [LibraryLaunchItem](../LibraryLaunchItem) | [get_launch_item](./#get_launch_item)(provider_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_launch_item](./#has_launch_item)(provider_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [erase_launch_item](./#erase_launch_item)(provider_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_installed](./#is_installed)() | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Name of the game +### `launch_items` + + +[LibraryLaunchItem[]](../LibraryLaunchItem) launch_items = [] + + +An array of [LibraryLaunchItem](../LibraryLaunchItem) resources that this game supports +### `tags` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) tags + + +An array of tags associated with this game +### `categories` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) categories + + +An array of categories the game belongs to +### `is_hidden` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_hidden + + +Whether or not this library item should be hidden in the library + + + +------------------ + +## Method Descriptions + +### `new_from_launch_item()` + + +[LibraryItem](../LibraryItem) **new_from_launch_item**(launch_item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Creates a new library item from the given library launch item +### `get_launch_item()` + + +[LibraryLaunchItem](../LibraryLaunchItem) **get_launch_item**(provider_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the library launch item for the given provider. Returns null if the given provider doesn't manage this game. +### `has_launch_item()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_launch_item**(provider_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the [LibraryItem](../LibraryItem) has a [LibraryLaunchItem](../LibraryLaunchItem) from the given provider +### `erase_launch_item()` + + +void **erase_launch_item**(provider_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Removes the [LibraryLaunchItem](../LibraryLaunchItem) associated with the given launch provider. +### `is_installed()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_installed**() + + +Returns true if at least one library provider has this item installed. diff --git a/docs/class-reference/LibraryLaunchItem.md b/docs/class-reference/LibraryLaunchItem.md new file mode 100644 index 000000000..72cc340fe --- /dev/null +++ b/docs/class-reference/LibraryLaunchItem.md @@ -0,0 +1,168 @@ +# LibraryLaunchItem + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +LibraryLaunchItem is a library provider-specific structure that describes how to launch a game. +## Description + +A LibraryLaunchItem is a provider-specific resource that describes a library item and how to launch it. It is always tied to a [LibraryItem](../LibraryItem). +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [provider_app_id](./#provider_app_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [command](./#command) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [args](./#args) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [env](./#env) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cwd](./#cwd) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [tags](./#tags) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [categories](./#categories) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [installed](./#installed) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [hidden](./#hidden) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [metadata](./#metadata) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [to_dict](./#to_dict)() | +| [LibraryLaunchItem](../LibraryLaunchItem) | [from_dict](./#from_dict)(d: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_app_id](./#get_app_id)() | + + +------------------ + +## Property Descriptions + +### `provider_app_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) provider_app_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `command` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) command + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `args` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) args + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `env` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) env + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cwd` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cwd + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tags` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) tags + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `categories` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) categories + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `installed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) installed + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hidden` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) hidden + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `metadata` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) metadata + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `to_dict()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **to_dict**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `from_dict()` + + +[LibraryLaunchItem](../LibraryLaunchItem) **from_dict**(d: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_app_id()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_app_id**() + + +Returns a numerical app ID associated with the launch item diff --git a/docs/class-reference/LibraryManager.md b/docs/class-reference/LibraryManager.md new file mode 100644 index 000000000..03cbd193b --- /dev/null +++ b/docs/class-reference/LibraryManager.md @@ -0,0 +1,214 @@ +# LibraryManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Unified interface to manage games from multiple sources +## Description + +The LibraryManager is responsible for managing any number of [Library](../Library) providers and offers a unified interface to manage games from multiple sources. New game library sources can be created in the core code base or in plugins by implementing/extending the [Library](../Library) class and registering the provider with the library manager. + +With registered library providers, other systems can request library items from the LibraryManager, and it will use all available sources to return a unified library item: +```gdscript + + const LibraryManager := preload("res://core/global/library_manager.tres") + ... + # Return a dictionary of all installed games from every library provider + var installed_games := LibraryManager.get_installed() + +``` + + + Games in the LibraryManager are stored as [LibraryItem](../LibraryItem) resources, which contains information about each game. Each [LibraryItem](../LibraryItem) has a list of [LibraryLaunchItems](https://docs.godotengine.org/en/stable/classes/class_librarylaunchitems.html) which contains the data for how to launch that game through a specific Library provider. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [settings_manager](./#settings_manager) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [LibraryItem[]](../LibraryItem) | [get_library_items](./#get_library_items)(modifiers: [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) = [...]) | +| [LibraryItem[]](../LibraryItem) | [sort_by_name](./#sort_by_name)(apps: [LibraryItem[]](../LibraryItem)) | +| [LibraryItem[]](../LibraryItem) | [filter_installed](./#filter_installed)(apps: [LibraryItem[]](../LibraryItem)) | +| [LibraryItem[]](../LibraryItem) | [filter_by_library](./#filter_by_library)(apps: [LibraryItem[]](../LibraryItem), library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [LibraryItem[]](../LibraryItem) | [filter_by_hidden](./#filter_by_hidden)(apps: [LibraryItem[]](../LibraryItem)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [get_available](./#get_available)() | +| void | [reload_library](./#reload_library)() | +| void | [add_library_launch_item](./#add_library_launch_item)(library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), item: [LibraryLaunchItem](../LibraryLaunchItem)) | +| void | [remove_library_launch_item](./#remove_library_launch_item)(library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [load_library](./#load_library)(library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_app](./#has_app)(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [LibraryItem](../LibraryItem) | [get_app_by_name](./#get_app_by_name)(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_library](./#has_library)(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Library](../Library) | [get_library_by_id](./#get_library_by_id)(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Library[]](../Library) | [get_libraries](./#get_libraries)() | +| void | [register_library](./#register_library)(library: [Library](../Library)) | +| void | [unregister_library](./#unregister_library)(library: [Library](../Library)) | + + +------------------ + +## Property Descriptions + +### `settings_manager` + + +[SettingsManager](../SettingsManager) settings_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_library_items()` + + +[LibraryItem[]](../LibraryItem) **get_library_items**(modifiers: [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) = [...]) + + +Returns library items based on the given modifiers. A modifier is a [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html) that takes an array of [LibraryItem](../LibraryItem) objects and returns an array of those items that may be sorted or filtered out. + + +```gdscript + + const LibraryManager := preload("res://core/global/library_manager.tres") + ... + var filter := func(apps: Array[LibraryItem]) -> Array[LibraryItem]: + return apps.filter(func(item: LibraryItem): not item.is_installed()) + + # Return non-installed games + var not_installed := LibraryManager.get_library_items([filter]) + +``` + + +### `sort_by_name()` + + +[LibraryItem[]](../LibraryItem) **sort_by_name**(apps: [LibraryItem[]](../LibraryItem)) + + +Sorts the given array of apps by name +### `filter_installed()` + + +[LibraryItem[]](../LibraryItem) **filter_installed**(apps: [LibraryItem[]](../LibraryItem)) + + +Filters the given array of apps by installed status +### `filter_by_library()` + + +[LibraryItem[]](../LibraryItem) **filter_by_library**(apps: [LibraryItem[]](../LibraryItem), library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Filter the given array of apps by library provider +### `filter_by_hidden()` + + +[LibraryItem[]](../LibraryItem) **filter_by_hidden**(apps: [LibraryItem[]](../LibraryItem)) + + +Filters the given array of apps by hidden +### `get_available()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **get_available**() + + +Returns an dictionary of all available apps +### `reload_library()` + + +void **reload_library**() + + +Loads all library items from each provider and sorts them. This can take a while, so should be called asyncronously +### `add_library_launch_item()` + + +void **add_library_launch_item**(library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), item: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Add the given library launch item to the list of available apps. +### `remove_library_launch_item()` + + +void **remove_library_launch_item**(library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Remove the given library launch item from the list of available apps. +### `load_library()` + + +void **load_library**(library_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Loads the launch items from the given library +### `has_app()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_app**(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the app with the given name exists in the library. +### `get_app_by_name()` + + +[LibraryItem](../LibraryItem) **get_app_by_name**(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the library item for the given app for all library providers +### `has_library()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_library**(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the library with the given id is registered +### `get_library_by_id()` + + +[Library](../Library) **get_library_by_id**(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the given library implementation by id +### `get_libraries()` + + +[Library[]](../Library) **get_libraries**() + + +Returns a list of all registered libraries +### `register_library()` + + +void **register_library**(library: [Library](../Library)) + + +Registers the given library with the library manager. +### `unregister_library()` + + +void **unregister_library**(library: [Library](../Library)) + + +Unregisters the given library with the library manager diff --git a/docs/class-reference/LibraryRefreshState.md b/docs/class-reference/LibraryRefreshState.md new file mode 100644 index 000000000..4f6839ffa --- /dev/null +++ b/docs/class-reference/LibraryRefreshState.md @@ -0,0 +1,30 @@ +# LibraryRefreshState + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +State for signaling when the library is refreshing +## Description + +This class provides a shared resource that can be used to monitor library refreshes between different UI components. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_refreshing](./#is_refreshing) | false | + + + +------------------ + +## Property Descriptions + +### `is_refreshing` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_refreshing = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/LibraryRefresher.md b/docs/class-reference/LibraryRefresher.md new file mode 100644 index 000000000..e86459fcb --- /dev/null +++ b/docs/class-reference/LibraryRefresher.md @@ -0,0 +1,35 @@ +# LibraryRefresher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Refreshes the library when the given parent signal is fired +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [LibraryManager](../LibraryManager) | [library_manager](./#library_manager) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | + + + +------------------ + +## Property Descriptions + +### `library_manager` + + +[LibraryManager](../LibraryManager) library_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +Signal on our parent node to connect to + diff --git a/docs/class-reference/Log.md b/docs/class-reference/Log.md new file mode 100644 index 000000000..db63c6616 --- /dev/null +++ b/docs/class-reference/Log.md @@ -0,0 +1,26 @@ +# Log + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Interface to control logging across an array of loggers +## Description + +Log provides an interface to control the logging level of various components in OpenGamepadUI. +## Methods + +| Returns | Signature | +| ------- | --------- | +| [CustomLogger](../CustomLogger) | [get_logger](./#get_logger)(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 3) | + + +------------------ + +## Method Descriptions + +### `get_logger()` + + +[CustomLogger](../CustomLogger) **get_logger**(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 3) + + +Returns a named logger for logging diff --git a/docs/class-reference/LogManager.md b/docs/class-reference/LogManager.md new file mode 100644 index 000000000..380ed8695 --- /dev/null +++ b/docs/class-reference/LogManager.md @@ -0,0 +1,83 @@ +# LogManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [loggers_by_name](./#loggers_by_name) | {} | +| [Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) | [mutex](./#mutex) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [register](./#register)(logger: [CustomLogger](../CustomLogger)) | +| void | [set_global_log_level](./#set_global_log_level)(level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [set_log_level](./#set_log_level)(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [set_log_level_from_env](./#set_log_level_from_env)(logger: [CustomLogger](../CustomLogger), env_var: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_available_loggers](./#get_available_loggers)() | + + +------------------ + +## Property Descriptions + +### `loggers_by_name` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) loggers_by_name = {} + + +Mapping of loggers by their name. This is in the form of {"": [, ...](https://docs.godotengine.org/en/stable/classes/class_, ....html)} +### `mutex` + + +[Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) mutex + + +Mutex to allow register/unregister through threads + + + +------------------ + +## Method Descriptions + +### `register()` + + +void **register**(logger: [CustomLogger](../CustomLogger)) + + +Register the given logger with the LogManager +### `set_global_log_level()` + + +void **set_global_log_level**(level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Set the given log level on all loggers +### `set_log_level()` + + +void **set_log_level**(name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), level: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Sets the log level on loggers with the given name to the given level. +### `set_log_level_from_env()` + + +void **set_log_level_from_env**(logger: [CustomLogger](../CustomLogger), env_var: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Looks up the given environment variable and sets the log level on the given logger if the variable exists. +### `get_available_loggers()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_available_loggers**() + + +Return a list of loggers that are currently registered diff --git a/docs/class-reference/MangoApp.md b/docs/class-reference/MangoApp.md new file mode 100644 index 000000000..1c57c3aba --- /dev/null +++ b/docs/class-reference/MangoApp.md @@ -0,0 +1,55 @@ +# MangoApp + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_config](./#set_config)(options: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_config](./#get_config)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [exists](./#exists)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_config_path](./#get_config_path)() | + + +------------------ + +## Method Descriptions + +### `set_config()` + + +void **set_config**(options: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_config()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_config**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `exists()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **exists**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_config_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_config_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/MouseDevice.md b/docs/class-reference/MouseDevice.md new file mode 100644 index 000000000..ac1a9f0b5 --- /dev/null +++ b/docs/class-reference/MouseDevice.md @@ -0,0 +1,67 @@ +# MouseDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [device_type](./#device_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [move_cursor](./#move_cursor)(x: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), y: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) device_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `move_cursor()` + + +void **move_cursor**(x: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), y: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/MultiHTTPRequest.md b/docs/class-reference/MultiHTTPRequest.md new file mode 100644 index 000000000..9102cfb7f --- /dev/null +++ b/docs/class-reference/MultiHTTPRequest.md @@ -0,0 +1,67 @@ +# MultiHTTPRequest + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [num_clients](./#num_clients) | 8 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [cancel_request](./#cancel_request)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [request](./#request)(urls: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | + + +------------------ + +## Property Descriptions + +### `num_clients` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) num_clients = 8 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `cancel_request()` + + +void **cancel_request**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `request()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **request**(urls: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/NetworkAccessPoint.md b/docs/class-reference/NetworkAccessPoint.md new file mode 100644 index 000000000..e1721f2d9 --- /dev/null +++ b/docs/class-reference/NetworkAccessPoint.md @@ -0,0 +1,137 @@ +# NetworkAccessPoint + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [flags](./#flags) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [frequency](./#frequency) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [hardware_address](./#hardware_address) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [last_seen](./#last_seen) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [max_bitrate](./#max_bitrate) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [mode](./#mode) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [ssid](./#ssid) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [strength](./#strength) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [wpa_flags](./#wpa_flags) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [NetworkActiveConnection](../NetworkActiveConnection) | [connect](./#connect)(device: [NetworkDevice](../NetworkDevice), password: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `flags` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) flags + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `frequency` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) frequency + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hardware_address` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) hardware_address + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `last_seen` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) last_seen + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `max_bitrate` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) max_bitrate + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mode` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) mode + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ssid` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) ssid + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `strength` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) strength + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `wpa_flags` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) wpa_flags + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `connect()` + + +[NetworkActiveConnection](../NetworkActiveConnection) **connect**(device: [NetworkDevice](../NetworkDevice), password: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/NetworkActiveConnection.md b/docs/class-reference/NetworkActiveConnection.md new file mode 100644 index 000000000..a6952144e --- /dev/null +++ b/docs/class-reference/NetworkActiveConnection.md @@ -0,0 +1,47 @@ +# NetworkActiveConnection + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [NetworkDevice[]](../NetworkDevice) | [devices](./#devices) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state](./#state) | | + + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `devices` + + +[NetworkDevice[]](../NetworkDevice) devices + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/NetworkDevice.md b/docs/class-reference/NetworkDevice.md new file mode 100644 index 000000000..19252ee45 --- /dev/null +++ b/docs/class-reference/NetworkDevice.md @@ -0,0 +1,77 @@ +# NetworkDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [device_type](./#device_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [interface](./#interface) | | +| [NetworkIpv4Config](../NetworkIpv4Config) | [ip4_config](./#ip4_config) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state](./#state) | | +| [NetworkDeviceWireless](../NetworkDeviceWireless) | [wireless](./#wireless) | | + + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `device_type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) device_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `interface` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) interface + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ip4_config` + + +[NetworkIpv4Config](../NetworkIpv4Config) ip4_config + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `wireless` + + +[NetworkDeviceWireless](../NetworkDeviceWireless) wireless + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/NetworkDeviceWireless.md b/docs/class-reference/NetworkDeviceWireless.md new file mode 100644 index 000000000..bcfcf3c33 --- /dev/null +++ b/docs/class-reference/NetworkDeviceWireless.md @@ -0,0 +1,87 @@ +# NetworkDeviceWireless + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [NetworkAccessPoint[]](../NetworkAccessPoint) | [access_points](./#access_points) | | +| [NetworkAccessPoint](../NetworkAccessPoint) | [active_access_point](./#active_access_point) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [bitrate](./#bitrate) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [hardware_address](./#hardware_address) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [request_scan](./#request_scan)() | + + +------------------ + +## Property Descriptions + +### `access_points` + + +[NetworkAccessPoint[]](../NetworkAccessPoint) access_points + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `active_access_point` + + +[NetworkAccessPoint](../NetworkAccessPoint) active_access_point + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `bitrate` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) bitrate + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hardware_address` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) hardware_address + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `request_scan()` + + +void **request_scan**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/NetworkIpv4Config.md b/docs/class-reference/NetworkIpv4Config.md new file mode 100644 index 000000000..c6534066e --- /dev/null +++ b/docs/class-reference/NetworkIpv4Config.md @@ -0,0 +1,47 @@ +# NetworkIpv4Config + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Dictionary[]](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [addresses](./#addresses) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [gateway](./#gateway) | | + + + +------------------ + +## Property Descriptions + +### `addresses` + + +[Dictionary[]](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) addresses + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gateway` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) gateway + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/NetworkManager.md b/docs/class-reference/NetworkManager.md new file mode 100644 index 000000000..0fd2a25cf --- /dev/null +++ b/docs/class-reference/NetworkManager.md @@ -0,0 +1,48 @@ +# NetworkManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Manages NetworkManager. +## Description + +The [NetworkManager](../NetworkManager) class is responsible for loading a [NetworkManagerInstance](../NetworkManagerInstance) and calling its 'process()' method each frame. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [NetworkManagerInstance](../NetworkManagerInstance) | [instance](./#instance) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [get_strength_texture](./#get_strength_texture)(strength: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `instance` + + +[NetworkManagerInstance](../NetworkManagerInstance) instance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_strength_texture()` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) **get_strength_texture**(strength: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the texture reflecting the given wifi strength diff --git a/docs/class-reference/NetworkManagerInstance.md b/docs/class-reference/NetworkManagerInstance.md new file mode 100644 index 000000000..c9a60d640 --- /dev/null +++ b/docs/class-reference/NetworkManagerInstance.md @@ -0,0 +1,97 @@ +# NetworkManagerInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [connectivity](./#connectivity) | | +| [NetworkActiveConnection](../NetworkActiveConnection) | [primary_connection](./#primary_connection) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state](./#state) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [wireless_enabled](./#wireless_enabled) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [NetworkDevice[]](../NetworkDevice) | [get_devices](./#get_devices)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| void | [process](./#process)() | + + +------------------ + +## Property Descriptions + +### `connectivity` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) connectivity + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `primary_connection` + + +[NetworkActiveConnection](../NetworkActiveConnection) primary_connection + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `wireless_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) wireless_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_devices()` + + +[NetworkDevice[]](../NetworkDevice) **get_devices**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/NodeThread.md b/docs/class-reference/NodeThread.md new file mode 100644 index 000000000..9b26eb5c8 --- /dev/null +++ b/docs/class-reference/NodeThread.md @@ -0,0 +1,36 @@ +# NodeThread + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Node that can run _thread_process on a separate thread +## Description + +Allows the extending node to use the _thread_process method to run code in a separate running thread. When emitting signals from _thread_process, be sure to use signal_name.emit.call_deferred +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SharedThread](../SharedThread) | [thread_group](./#thread_group) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [autostart](./#autostart) | true | + + + +------------------ + +## Property Descriptions + +### `thread_group` + + +[SharedThread](../SharedThread) thread_group + + +The [SharedThread](../SharedThread) thread that this node should run on. +### `autostart` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) autostart = true + + +Whether or not to automatically start the thread on ready + diff --git a/docs/class-reference/Notification.md b/docs/class-reference/Notification.md new file mode 100644 index 000000000..6ab3fa75b --- /dev/null +++ b/docs/class-reference/Notification.md @@ -0,0 +1,77 @@ +# Notification + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [icon](./#icon) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [timeout](./#timeout) | 5.0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [level](./#level) | 1 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [action_text](./#action_text) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [metadata](./#metadata) | | + + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `timeout` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) timeout = 5.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) level = 1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `action_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) action_text + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `metadata` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) metadata + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/NotificationContainer.md b/docs/class-reference/NotificationContainer.md new file mode 100644 index 000000000..6eb63fae0 --- /dev/null +++ b/docs/class-reference/NotificationContainer.md @@ -0,0 +1,77 @@ +# NotificationContainer + +**Inherits:** [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [icon_texture](./#icon_texture) | | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [icon_size](./#icon_size) | Vector2(64, 64) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "" | +| [LabelSettings](https://docs.godotengine.org/en/stable/classes/class_labelsettings.html) | [label_settings](./#label_settings) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [icon](./#icon) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | + + + +------------------ + +## Property Descriptions + +### `icon_texture` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) icon_texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon_size` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) icon_size = Vector2(64, 64) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label_settings` + + +[LabelSettings](https://docs.godotengine.org/en/stable/classes/class_labelsettings.html) label_settings + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) icon + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/NotificationManager.md b/docs/class-reference/NotificationManager.md new file mode 100644 index 000000000..f09afcb00 --- /dev/null +++ b/docs/class-reference/NotificationManager.md @@ -0,0 +1,115 @@ +# NotificationManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Resource API for displaying arbitrary notifications +## Description + +The NotificationManager is responsible for providing an API to display arbitrary notifications to the user and maintain a history of those notifications. It also manages a queue of notifications so only one notification shows at a time. + + +```gdscript + + const NotificationManager := preload("res://core/global/notification_manager.tres") + ... + var notify := Notification.new("Hello world!") + notify.icon = load("res://assets/icons/critical.png") + NotificationManager.show(notify) + +``` + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [settings_manager](./#settings_manager) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [ready](./#ready) | false | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [show](./#show)(notify: [Notification](../Notification)) | +| [Notification[]](../Notification) | [get_notification_history](./#get_notification_history)() | +| void | [show_notification](./#show_notification)(text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), icon: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) = null, timeout_sec: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 5.0) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_next](./#has_next)() | +| [Notification](../Notification) | [next](./#next)() | + + +------------------ + +## Property Descriptions + +### `settings_manager` + + +[SettingsManager](../SettingsManager) settings_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ready` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) ready = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `show()` + + +void **show**(notify: [Notification](../Notification)) + + +Queues the given notification to be shown +### `get_notification_history()` + + +[Notification[]](../Notification) **get_notification_history**() + + +Returns a list of notifications +### `show_notification()` + + +void **show_notification**(text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), icon: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) = null, timeout_sec: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 5.0) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_next()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_next**() + + +Returns whether there are notifiations waiting in the queue +### `next()` + + +[Notification](../Notification) **next**() + + +Returns the next notifiation waiting in the queue diff --git a/docs/class-reference/OSPlatform.md b/docs/class-reference/OSPlatform.md new file mode 100644 index 000000000..3d2adc196 --- /dev/null +++ b/docs/class-reference/OSPlatform.md @@ -0,0 +1,43 @@ +# OSPlatform + +**Inherits:** [PlatformProvider](../PlatformProvider) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [logo](./#logo) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_binary_compatibility_cmd](./#get_binary_compatibility_cmd)(cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | + + +------------------ + +## Property Descriptions + +### `logo` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) logo + + +Logo of the OS + + + +------------------ + +## Method Descriptions + +### `get_binary_compatibility_cmd()` + + +[String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_binary_compatibility_cmd**(cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +If the OS requires running regular binaries through a compatibility tool, this method should return the given command/args prepended with the compatibility tool to use. diff --git a/docs/class-reference/OnScreenKeyboard.md b/docs/class-reference/OnScreenKeyboard.md new file mode 100644 index 000000000..0061584ec --- /dev/null +++ b/docs/class-reference/OnScreenKeyboard.md @@ -0,0 +1,185 @@ +# OnScreenKeyboard + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [GamescopeInstance](../GamescopeInstance) | [gamescope](./#gamescope) | | +| [InputPlumberInstance](../InputPlumberInstance) | [inputplumber](./#inputplumber) | | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [StateMachine](../StateMachine) | [popup_state_machine](./#popup_state_machine) | | +| [State](../State) | [in_game_state](./#in_game_state) | | +| [State](../State) | [osk_state](./#osk_state) | | +| [InputIconManager](../InputIconManager) | [input_icons](./#input_icons) | | +| [KeyboardLayout](../KeyboardLayout) | [layout](./#layout) | | +| [KeyboardInstance](../KeyboardInstance) | [instance](./#instance) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) | [rows_container](./#rows_container) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [populate_keyboard](./#populate_keyboard)() | +| void | [open](./#open)() | +| void | [close](./#close)() | +| void | [set_layout](./#set_layout)(key_layout: [KeyboardLayout](../KeyboardLayout)) | +| void | [set_mode_shift](./#set_mode_shift)(mode: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `gamescope` + + +[GamescopeInstance](../GamescopeInstance) gamescope + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `inputplumber` + + +[InputPlumberInstance](../InputPlumberInstance) inputplumber + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `popup_state_machine` + + +[StateMachine](../StateMachine) popup_state_machine + + +State machine to use to switch menu states in response to input events. +### `in_game_state` + + +[State](../State) in_game_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `osk_state` + + +[State](../State) osk_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `input_icons` + + +[InputIconManager](../InputIconManager) input_icons + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `layout` + + +[KeyboardLayout](../KeyboardLayout) layout + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `instance` + + +[KeyboardInstance](../KeyboardInstance) instance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `rows_container` + + +[VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) rows_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `populate_keyboard()` + + +void **populate_keyboard**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `open()` + + +void **open**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `close()` + + +void **close**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_layout()` + + +void **set_layout**(key_layout: [KeyboardLayout](../KeyboardLayout)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_mode_shift()` + + +void **set_mode_shift**(mode: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/OverlayContainer.md b/docs/class-reference/OverlayContainer.md new file mode 100644 index 000000000..29cae4606 --- /dev/null +++ b/docs/class-reference/OverlayContainer.md @@ -0,0 +1,64 @@ +# OverlayContainer + +**Inherits:** [Container](https://docs.godotengine.org/en/stable/classes/class_container.html) + +Manages the layout for multiple [OverlayProvider](../OverlayProvider) nodes. +## Description + +The [OverlayContainer](../OverlayContainer) is meant to be added to the main UI scene to provide a place to add an arbitrary number of [OverlayProvider](../OverlayProvider) nodes and manage their layout and ordering. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [overlays](./#overlays) | {} | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [add_overlay](./#add_overlay)(overlay: [OverlayProvider](../OverlayProvider)) | +| void | [remove_overlay](./#remove_overlay)(overlay: [OverlayProvider](../OverlayProvider)) | + + +------------------ + +## Property Descriptions + +### `overlays` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) overlays = {} + + +Dictionary of {provider_id: <[OverlayProvider](../OverlayProvider)>}. +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `add_overlay()` + + +void **add_overlay**(overlay: [OverlayProvider](../OverlayProvider)) + + +Add the given overlay to the overlay container +### `remove_overlay()` + + +void **remove_overlay**(overlay: [OverlayProvider](../OverlayProvider)) + + +Remove the given overlay from the overlay container. diff --git a/docs/class-reference/OverlayInputManager.md b/docs/class-reference/OverlayInputManager.md new file mode 100644 index 000000000..1b1abfffe --- /dev/null +++ b/docs/class-reference/OverlayInputManager.md @@ -0,0 +1,78 @@ +# OverlayInputManager + +**Inherits:** [InputManager](../InputManager) + +Manages global input while ion overlay mode +## Description + +The OverlayInputManager class is responsible for handling global input while the quick bar or configuration menu are open while permitting underlay process chords to function, such as the Steam Quick Access Menu chord. + +To include this functionality, add this as a node to the root node in the scene tree. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [StateMachine](../StateMachine) | [menu_state_machine](./#menu_state_machine) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [base_state](./#base_state) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_default_global_profile_path](./#get_default_global_profile_path)() | +| void | [action_release](./#action_release)(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) | +| void | [action_press](./#action_press)(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) | + + +------------------ + +## Property Descriptions + +### `menu_state_machine` + + +[StateMachine](../StateMachine) menu_state_machine + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `base_state` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) base_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_default_global_profile_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_default_global_profile_path**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `action_release()` + + +void **action_release**(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) + + +Queue a release event for the given action +### `action_press()` + + +void **action_press**(dbus_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), action: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), strength: [float](https://docs.godotengine.org/en/stable/classes/class_float.html) = 1.0) + + +Queue a pressed event for the given action diff --git a/docs/class-reference/OverlayProvider.md b/docs/class-reference/OverlayProvider.md new file mode 100644 index 000000000..5ed4b3b1c --- /dev/null +++ b/docs/class-reference/OverlayProvider.md @@ -0,0 +1,54 @@ +# OverlayProvider + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + +Base class to use when writing a new overlay. +## Description + +An [OverlayProvider](../OverlayProvider) is a [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) node that is meant to work as an overlay. To write a new overlay, create a new class that extends from this one. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [provider_id](./#provider_id) | | +| [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) | [icon](./#icon) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [managed](./#managed) | true | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `provider_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) provider_id + + +Unique identifier for the overlay provider +### `icon` + + +[Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html) icon + + +Icon associated with the overlay provider +### `managed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) managed = true + + +Whether or not the overlay's layout should be managed by an [OverlayContainer](../OverlayContainer) +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/PackageVerifier.md b/docs/class-reference/PackageVerifier.md new file mode 100644 index 000000000..0c1583087 --- /dev/null +++ b/docs/class-reference/PackageVerifier.md @@ -0,0 +1,116 @@ +# PackageVerifier + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Verify cryptographic signatures on packages +## Description + +Provides method for validating cryptographic signatures on packages to ensure only valid packages are loaded. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [public_key](./#public_key) | "res://assets/crypto/keys/opengamepadui.pub" | +| [Crypto](https://docs.godotengine.org/en/stable/classes/class_crypto.html) | [crypto](./#crypto) | | +| [CryptoKey](https://docs.godotengine.org/en/stable/classes/class_cryptokey.html) | [pubkey](./#pubkey) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_valid_signature](./#has_valid_signature)(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), signature: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [file_has_valid_signature](./#file_has_valid_signature)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), signature: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html)) | +| [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html) | [get_hash](./#get_hash)(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_hash_string](./#get_hash_string)(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) | +| [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html) | [get_file_hash](./#get_file_hash)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_file_hash_string](./#get_file_hash_string)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) | + + +------------------ + +## Property Descriptions + +### `public_key` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) public_key = "res://assets/crypto/keys/opengamepadui.pub" + + +Path to the public key used to verify signatures +### `crypto` + + +[Crypto](https://docs.godotengine.org/en/stable/classes/class_crypto.html) crypto + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pubkey` + + +[CryptoKey](https://docs.godotengine.org/en/stable/classes/class_cryptokey.html) pubkey + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `has_valid_signature()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_valid_signature**(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), signature: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html)) + + +Returns true if the given data matches the given signature data. +### `file_has_valid_signature()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **file_has_valid_signature**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), signature: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html)) + + +Loads the file at the given path and returns true if its contents match the given signature. +### `get_hash()` + + +[PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html) **get_hash**(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) + + +Returns the hash of the given data +### `get_hash_string()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_hash_string**(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) + + +Get the hash of the given data as a hex encoded string +### `get_file_hash()` + + +[PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html) **get_file_hash**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) + + +Returns the hash of the file at the given path +### `get_file_hash_string()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_file_hash_string**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 2) + + +Get the hash of the file at the given path as a hex encoded string diff --git a/docs/class-reference/PartitionCard.md b/docs/class-reference/PartitionCard.md new file mode 100644 index 000000000..06c86f8fc --- /dev/null +++ b/docs/class-reference/PartitionCard.md @@ -0,0 +1,145 @@ +# PartitionCard + +**Inherits:** [MarginContainer](https://docs.godotengine.org/en/stable/classes/class_margincontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SteamRemovableMediaManager](../SteamRemovableMediaManager) | [steam_disks](./#steam_disks) | | +| [NotificationManager](../NotificationManager) | [notification_manager](./#notification_manager) | | +| [PartitionDevice](../PartitionDevice) | [partition_device](./#partition_device) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [partition_device_path](./#partition_device_path) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [name_label](./#name_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [filesystem_label](./#filesystem_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [size_label](./#size_label) | | +| [CardButton](../CardButton) | [init_button](./#init_button) | | +| [HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) | [mounts_container](./#mounts_container) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [log_level](./#log_level) | 3 | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [setup](./#setup)(device: [PartitionDevice](../PartitionDevice)) | + + +------------------ + +## Property Descriptions + +### `steam_disks` + + +[SteamRemovableMediaManager](../SteamRemovableMediaManager) steam_disks + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `notification_manager` + + +[NotificationManager](../NotificationManager) notification_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `partition_device` + + +[PartitionDevice](../PartitionDevice) partition_device + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `partition_device_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) partition_device_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) name_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `filesystem_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) filesystem_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `size_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) size_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `init_button` + + +[CardButton](../CardButton) init_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mounts_container` + + +[HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) mounts_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `log_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) log_level = 3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `setup()` + + +void **setup**(device: [PartitionDevice](../PartitionDevice)) + + +Performs _ready fucntionality with the given PartitionDevice diff --git a/docs/class-reference/PartitionDevice.md b/docs/class-reference/PartitionDevice.md new file mode 100644 index 000000000..363a94f81 --- /dev/null +++ b/docs/class-reference/PartitionDevice.md @@ -0,0 +1,77 @@ +# PartitionDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [filesystem_type](./#filesystem_type) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [partition_name](./#partition_name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [readable_size](./#readable_size) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [FilesystemDevice](../FilesystemDevice) | [get_filesystem](./#get_filesystem)() | + + +------------------ + +## Property Descriptions + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `filesystem_type` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) filesystem_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `partition_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) partition_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `readable_size` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) readable_size + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_filesystem()` + + +[FilesystemDevice](../FilesystemDevice) **get_filesystem**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PerformanceManager.md b/docs/class-reference/PerformanceManager.md new file mode 100644 index 000000000..fea72fc6e --- /dev/null +++ b/docs/class-reference/PerformanceManager.md @@ -0,0 +1,152 @@ +# PerformanceManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Manages, sets, and loads performance profiles +## Description + +The PerformanceManager is responsible for applying the appropriate performance profile when games launch and when the device is plugged in or unplugged. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [UPowerDevice](../UPowerDevice) | [display_device](./#display_device) | | +| [PerformanceProfile](../PerformanceProfile) | [current_profile](./#current_profile) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [current_profile_state](./#current_profile_state) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_profile_filename](./#get_profile_filename)(profile_state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) | +| void | [save_profile](./#save_profile)(profile: [PerformanceProfile](../PerformanceProfile), profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) | +| [PerformanceProfile](../PerformanceProfile) | [create_profile](./#create_profile)(library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) | +| [PerformanceProfile](../PerformanceProfile) | [load_profile](./#load_profile)(profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [PerformanceProfile](../PerformanceProfile) | [load_or_create_profile](./#load_or_create_profile)(profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) | +| void | [apply_profile](./#apply_profile)(profile: [PerformanceProfile](../PerformanceProfile)) | +| void | [apply_and_save_profile](./#apply_and_save_profile)(profile: [PerformanceProfile](../PerformanceProfile)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_profile_state](./#get_profile_state)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_profile_state_from_battery](./#get_profile_state_from_battery)(battery: [UPowerDevice](../UPowerDevice)) | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_power_profiles_available](./#get_power_profiles_available)() | + + +------------------ + +## Property Descriptions + +### `display_device` + + +[UPowerDevice](../UPowerDevice) display_device + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `current_profile` + + +[PerformanceProfile](../PerformanceProfile) current_profile + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `current_profile_state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) current_profile_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_profile_filename()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_profile_filename**(profile_state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) + + +Returns a profile filename generated from the given profile state and library item. E.g. "Bravo_15_A4DDR_docked_default_profile.tres" +### `save_profile()` + + +void **save_profile**(profile: [PerformanceProfile](../PerformanceProfile), profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) + + +Saves the given PerformanceProfile to the given path. If a library item is passed, the user's settings will be updated to use the given profile. +### `create_profile()` + + +[PerformanceProfile](../PerformanceProfile) **create_profile**(library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) + + +Create a new [PerformanceProfile](../PerformanceProfile) from the current performance settings. If a library item is passed, the profile will be named after the library item. +### `load_profile()` + + +[PerformanceProfile](../PerformanceProfile) **load_profile**(profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Loads a PerformanceProfile from the given path. Returns null if the profile fails to load. +### `load_or_create_profile()` + + +[PerformanceProfile](../PerformanceProfile) **load_or_create_profile**(profile_path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), library_item: [LibraryLaunchItem](../LibraryLaunchItem) = null) + + +Loads a PerformanceProfile from the given path. If the profile does not exist, it will create a new profile using the currently applied performance settings. +### `apply_profile()` + + +void **apply_profile**(profile: [PerformanceProfile](../PerformanceProfile)) + + +Applies the given performance profile to the system +### `apply_and_save_profile()` + + +void **apply_and_save_profile**(profile: [PerformanceProfile](../PerformanceProfile)) + + +Applies the given performance profile to the system and saves it based on the current profile state (e.g. docked or undocked) and current running app. +### `get_profile_state()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_profile_state**() + + +Returns the current profile state. I.e. whether or not the "docked" or "undocked" performance profiles should be used. +### `get_profile_state_from_battery()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_profile_state_from_battery**(battery: [UPowerDevice](../UPowerDevice)) + + +Returns the current profile state. I.e. whether or not the "docked" or "undocked" performance profiles should be used. +### `get_power_profiles_available()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_power_profiles_available**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PerformanceProfile.md b/docs/class-reference/PerformanceProfile.md new file mode 100644 index 000000000..841b916fa --- /dev/null +++ b/docs/class-reference/PerformanceProfile.md @@ -0,0 +1,147 @@ +# PerformanceProfile + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | "default" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [cpu_boost_enabled](./#cpu_boost_enabled) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [cpu_core_count_current](./#cpu_core_count_current) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [cpu_smt_enabled](./#cpu_smt_enabled) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [gpu_freq_max_current](./#gpu_freq_max_current) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [gpu_freq_min_current](./#gpu_freq_min_current) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [gpu_manual_enabled](./#gpu_manual_enabled) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [gpu_power_profile](./#gpu_power_profile) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [gpu_temp_current](./#gpu_temp_current) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [tdp_boost_current](./#tdp_boost_current) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [tdp_current](./#tdp_current) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [thermal_profile](./#thermal_profile) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [advanced_mode](./#advanced_mode) | false | + + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name = "default" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cpu_boost_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) cpu_boost_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cpu_core_count_current` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) cpu_core_count_current + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cpu_smt_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) cpu_smt_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu_freq_max_current` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) gpu_freq_max_current + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu_freq_min_current` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) gpu_freq_min_current + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu_manual_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) gpu_manual_enabled + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu_power_profile` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) gpu_power_profile + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu_temp_current` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) gpu_temp_current + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tdp_boost_current` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) tdp_boost_current + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tdp_current` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) tdp_current + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `thermal_profile` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) thermal_profile + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `advanced_mode` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) advanced_mode = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/PipeManager.md b/docs/class-reference/PipeManager.md new file mode 100644 index 000000000..1f3e99245 --- /dev/null +++ b/docs/class-reference/PipeManager.md @@ -0,0 +1,114 @@ +# PipeManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Class for managing control messages sent through a named pipe +## Description + +The [PipeManager](../PipeManager) creates a named pipe in `/run/user//opengamepadui` that can be used as a communication mechanism to send OpenGamepadUI commands from another process. This is mostly done to handle custom `ogui://` URIs which can be used to react in different ways. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [LaunchManager](../LaunchManager) | [launch_manager](./#launch_manager) | | +| [LibraryManager](../LibraryManager) | [library_manager](./#library_manager) | | +| [SettingsManager](../SettingsManager) | [settings_manager](./#settings_manager) | | +| [FifoReader](../FifoReader) | [pipe](./#pipe) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [pipe_path](./#pipe_path) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_pipe_path](./#get_pipe_path)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_run_path](./#get_run_path)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_uid](./#get_uid)() | + + +------------------ + +## Property Descriptions + +### `launch_manager` + + +[LaunchManager](../LaunchManager) launch_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `library_manager` + + +[LibraryManager](../LibraryManager) library_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `settings_manager` + + +[SettingsManager](../SettingsManager) settings_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pipe` + + +[FifoReader](../FifoReader) pipe + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pipe_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) pipe_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_pipe_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_pipe_path**() + + +Returns the path to the named pipe (e.g. /run/user/1000/opengamepadui/opengamepadui-0) +### `get_run_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_run_path**() + + +Returns the run path for the current user (e.g. /run/user/1000/opengamepadui) +### `get_uid()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_uid**() + + +Returns the current user id (e.g. 1000) diff --git a/docs/class-reference/Platform.OSInfo.md b/docs/class-reference/Platform.OSInfo.md new file mode 100644 index 000000000..cc16cb337 --- /dev/null +++ b/docs/class-reference/Platform.OSInfo.md @@ -0,0 +1,77 @@ +# Platform.OSInfo + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Data container for OS information +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [id](./#id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [id_like](./#id_like) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [pretty_name](./#pretty_name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [version_codename](./#version_codename) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [variant_id](./#variant_id) | | + + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `id_like` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) id_like + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `pretty_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) pretty_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `version_codename` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) version_codename + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `variant_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) variant_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/Platform.md b/docs/class-reference/Platform.md new file mode 100644 index 000000000..824aa7d2e --- /dev/null +++ b/docs/class-reference/Platform.md @@ -0,0 +1,100 @@ +# Platform + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Platform specific methods +## Description + +Used to perform platform-specific functions +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [HardwareManager](../HardwareManager) | [hardware_manager](./#hardware_manager) | | +| [Platform.OSInfo](../Platform.OSInfo) | [os_info](./#os_info) | _detect_os() | +| [OSPlatform](../OSPlatform) | [os](./#os) | | +| [PlatformProvider](../PlatformProvider) | [platform](./#platform) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [loaded](./#loaded) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [load](./#load)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | +| [int[]](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_platform_flags](./#get_platform_flags)() | + + +------------------ + +## Property Descriptions + +### `hardware_manager` + + +[HardwareManager](../HardwareManager) hardware_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `os_info` + + +[Platform.OSInfo](../Platform.OSInfo) os_info = _detect_os() + + +Detected Operating System information +### `os` + + +[OSPlatform](../OSPlatform) os + + +The OS platform provider detected +### `platform` + + +[PlatformProvider](../PlatformProvider) platform + + +The hardware platform provider detected +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `loaded` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) loaded + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `load()` + + +void **load**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +Loads the detected platforms. This should be called once when OpenGamepadUI first starts. It takes the root window to give platform providers the opportinity to modify the scene tree. +### `get_platform_flags()` + + +[int[]](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_platform_flags**() + + +Returns all detected platform flags diff --git a/docs/class-reference/PlatformAction.md b/docs/class-reference/PlatformAction.md new file mode 100644 index 000000000..793305381 --- /dev/null +++ b/docs/class-reference/PlatformAction.md @@ -0,0 +1,45 @@ +# PlatformAction + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [execute](./#execute)() | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `execute()` + + +void **execute**() + + +Executes the given platform action. This should be overriden in the child class implementation. diff --git a/docs/class-reference/PlatformBazzite.md b/docs/class-reference/PlatformBazzite.md new file mode 100644 index 000000000..c5180adc5 --- /dev/null +++ b/docs/class-reference/PlatformBazzite.md @@ -0,0 +1,25 @@ +# PlatformBazzite + +**Inherits:** [OSPlatform](../OSPlatform) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [ready](./#ready)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | + + +------------------ + +## Method Descriptions + +### `ready()` + + +void **ready**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PlatformChimeraOS.md b/docs/class-reference/PlatformChimeraOS.md new file mode 100644 index 000000000..87dee7508 --- /dev/null +++ b/docs/class-reference/PlatformChimeraOS.md @@ -0,0 +1,47 @@ +# PlatformChimeraOS + +**Inherits:** [OSPlatform](../OSPlatform) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [settings_manager](./#settings_manager) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [ready](./#ready)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | + + +------------------ + +## Property Descriptions + +### `settings_manager` + + +[SettingsManager](../SettingsManager) settings_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `ready()` + + +void **ready**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PlatformManjaro.md b/docs/class-reference/PlatformManjaro.md new file mode 100644 index 000000000..6958a368b --- /dev/null +++ b/docs/class-reference/PlatformManjaro.md @@ -0,0 +1,47 @@ +# PlatformManjaro + +**Inherits:** [OSPlatform](../OSPlatform) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [settings_manager](./#settings_manager) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [ready](./#ready)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | + + +------------------ + +## Property Descriptions + +### `settings_manager` + + +[SettingsManager](../SettingsManager) settings_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `ready()` + + +void **ready**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PlatformNixOS.md b/docs/class-reference/PlatformNixOS.md new file mode 100644 index 000000000..55ed23a18 --- /dev/null +++ b/docs/class-reference/PlatformNixOS.md @@ -0,0 +1,133 @@ +# PlatformNixOS + +**Inherits:** [OSPlatform](../OSPlatform) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [settings_manager](./#settings_manager) | | +| [NotificationManager](../NotificationManager) | [notification_manager](./#notification_manager) | | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [sections_label_scene](./#sections_label_scene) | | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [button_scene](./#button_scene) | | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [toggle_scene](./#toggle_scene) | | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [dropdown_scene](./#dropdown_scene) | | +| [State](../State) | [general_settings_state](./#general_settings_state) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [update_available](./#update_available) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [update_installed](./#update_installed) | false | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [ready](./#ready)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | +| [String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_binary_compatibility_cmd](./#get_binary_compatibility_cmd)(cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | + + +------------------ + +## Property Descriptions + +### `settings_manager` + + +[SettingsManager](../SettingsManager) settings_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `notification_manager` + + +[NotificationManager](../NotificationManager) notification_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `sections_label_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) sections_label_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `button_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) button_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `toggle_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) toggle_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dropdown_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) dropdown_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `general_settings_state` + + +[State](../State) general_settings_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_available` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) update_available = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_installed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) update_installed = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `ready()` + + +void **ready**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +Ready will be called after the scene tree has initialized. +### `get_binary_compatibility_cmd()` + + +[String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_binary_compatibility_cmd**(cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +NixOS typically cannot execute regular binaries, so downloaded binaries will be run with 'steam-run'. diff --git a/docs/class-reference/PlatformProvider.md b/docs/class-reference/PlatformProvider.md new file mode 100644 index 000000000..7c0724bb1 --- /dev/null +++ b/docs/class-reference/PlatformProvider.md @@ -0,0 +1,72 @@ +# PlatformProvider + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Base class that defines a particular platform +## Description + +A "platform" can be a particular set of hardware (i.e. a handheld PC), an OS platform, etc. Anything that requires special consideration for OpenGamepadUI to run correctly. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [PlatformAction[]](../PlatformAction) | [startup_actions](./#startup_actions) | | +| [PlatformAction[]](../PlatformAction) | [shutdown_actions](./#shutdown_actions) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [ready](./#ready)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Name of the platform +### `startup_actions` + + +[PlatformAction[]](../PlatformAction) startup_actions + + +Actions to take upon startup +### `shutdown_actions` + + +[PlatformAction[]](../PlatformAction) shutdown_actions + + +Actions to take upon shutdown +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `ready()` + + +void **ready**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +Ready will be called after the scene tree has initialized. This should be overridden in the child class if the platform wants to make changes to the scene tree. diff --git a/docs/class-reference/PlatformSteamOS.md b/docs/class-reference/PlatformSteamOS.md new file mode 100644 index 000000000..4c7f7cbb1 --- /dev/null +++ b/docs/class-reference/PlatformSteamOS.md @@ -0,0 +1,25 @@ +# PlatformSteamOS + +**Inherits:** [OSPlatform](../OSPlatform) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [ready](./#ready)(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) | + + +------------------ + +## Method Descriptions + +### `ready()` + + +void **ready**(root: [Window](https://docs.godotengine.org/en/stable/classes/class_window.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PlayAudioEffect.md b/docs/class-reference/PlayAudioEffect.md new file mode 100644 index 000000000..e51b40743 --- /dev/null +++ b/docs/class-reference/PlayAudioEffect.md @@ -0,0 +1,67 @@ +# PlayAudioEffect + +**Inherits:** [Effect](../Effect) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [audio](./#audio) | "res://assets/audio/interface/536764__egomassive__toss.ogg" | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [stream](./#stream) | load(...) | +| [AudioStreamPlayer](https://docs.godotengine.org/en/stable/classes/class_audiostreamplayer.html) | [audio_player](./#audio_player) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [play_sound](./#play_sound)() | + + +------------------ + +## Property Descriptions + +### `audio` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) audio = "res://assets/audio/interface/536764__egomassive__toss.ogg" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `stream` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) stream = load(...) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `audio_player` + + +[AudioStreamPlayer](https://docs.godotengine.org/en/stable/classes/class_audiostreamplayer.html) audio_player + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `play_sound()` + + +void **play_sound**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Plugin.md b/docs/class-reference/Plugin.md new file mode 100644 index 000000000..42d972cd0 --- /dev/null +++ b/docs/class-reference/Plugin.md @@ -0,0 +1,122 @@ +# Plugin + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Base class for Plugins +## Description + +The Plugin class provides an interface and light API for creating plugins. New plugins should inherit from this class and will automatically get added to the scene tree as a child of the [PluginLoader](../PluginLoader) when it is loaded. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [plugin_base](./#plugin_base) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cache](./#cache) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [unload](./#unload)() | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [get_settings_menu](./#get_settings_menu)() | +| void | [add_library](./#add_library)(library: [Library](../Library)) | +| void | [add_store](./#add_store)(store: [Store](../Store)) | +| void | [add_boxart](./#add_boxart)(boxart: [BoxArtProvider](../BoxArtProvider)) | +| void | [add_to_qam](./#add_to_qam)(qb_item: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), icon: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html), focus_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) = null) | +| void | [add_to_quick_bar](./#add_to_quick_bar)(qb_item: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), icon: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html), focus_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) = null) | +| void | [add_overlay](./#add_overlay)(overlay: [OverlayProvider](../OverlayProvider)) | + + +------------------ + +## Property Descriptions + +### `plugin_base` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) plugin_base + + +The base resource directory for a given plugin. This will be set by the [PluginLoader](../PluginLoader) when it is loaded. Useful for loading plugin-specific resources. +### `cache` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cache + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `unload()` + + +void **unload**() + + +To be overridden by plugin implementation. Should unload changes done by the plugin. +### `get_settings_menu()` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) **get_settings_menu**() + + +To be overridden by plugin implementation. Should return a scene with plugin settings. This scene will be included in the plugin settings menu to let users modify plugin-specific settings. +### `add_library()` + + +void **add_library**(library: [Library](../Library)) + + +Adds the given library implementation as a child of the plugin. A [Library](../Library) node will automatically register itself with the [LibraryManager](../LibraryManager) when it enters the scene tree. +### `add_store()` + + +void **add_store**(store: [Store](../Store)) + + +Adds the given store implementation as a child of the plugin. A [Store](../Store) node will automatically register itself with the [StoreManager](../StoreManager) when it enters the scene tree. +### `add_boxart()` + + +void **add_boxart**(boxart: [BoxArtProvider](../BoxArtProvider)) + + +Adds the given boxart provider as a child of the plugin. A [BoxArtProvider](../BoxArtProvider) node will automatically register itself with the [BoxArtManager](../BoxArtManager) when it enters the scene tree. +### `add_to_qam()` + + +void **add_to_qam**(qb_item: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), icon: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html), focus_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) = null) + + +Deprecated method for adding a plugin to the quick bar. +### `add_to_quick_bar()` + + +void **add_to_quick_bar**(qb_item: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), icon: [Texture2D](https://docs.godotengine.org/en/stable/classes/class_texture2d.html), focus_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) = null) + + +Adds the given menu scene to the Quick Bar Menu +### `add_overlay()` + + +void **add_overlay**(overlay: [OverlayProvider](../OverlayProvider)) + + +Adds the given overlay diff --git a/docs/class-reference/PluginLoader.md b/docs/class-reference/PluginLoader.md new file mode 100644 index 000000000..7b7dae956 --- /dev/null +++ b/docs/class-reference/PluginLoader.md @@ -0,0 +1,296 @@ +# PluginLoader + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Manage and load plugins +## Description + +The PluginLoader is responsible for downloading, loading, and initializing OpenGamepadUI plugins. The plugin system for OpenGamepadUI is inspired by the modding system implemented by Delta-V. + +The PluginLoader works by taking advantage of Godot's [method ProjectSettings.load_resource_pack](https://docs.godotengine.org/en/stable/classes/class_method projectsettings.load_resource_pack.html) method, which can allow us to load Godot scripts and scenes from a zip file. The PluginLoader looks for zip files in user://plugins, and parses the plugin.json file contained within them. If the plugin metadata is valid, the loader loads the zip as a resource pack. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [SettingsManager](./#SettingsManager) | | +| [PluginManager](../PluginManager) | [parent](./#parent) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [plugins](./#plugins) | {} | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [plugin_nodes](./#plugin_nodes) | {} | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [plugin_store_items](./#plugin_store_items) | {} | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [plugins_upgradable](./#plugins_upgradable) | [] | +| [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) | [plugin_filters](./#plugin_filters) | [] | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [init](./#init)(manager: [PluginManager](../PluginManager)) | +| void | [enable_plugin](./#enable_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [disable_plugin](./#disable_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_plugin_store_items](./#get_plugin_store_items)() | +| void | [install_plugin](./#install_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), download_url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), sha256: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [uninstall_plugin](./#uninstall_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_extracted](./#is_extracted)(meta: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | +| void | [extract_plugin](./#extract_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [unload_plugin](./#unload_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [uninitialize_plugin](./#uninitialize_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_installed](./#is_installed)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_loaded](./#is_loaded)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_initialized](./#is_initialized)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_upgradable](./#is_upgradable)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Plugin](../Plugin) | [get_plugin](./#get_plugin)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [get_plugin_meta](./#get_plugin_meta)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_loaded_plugins](./#get_loaded_plugins)() | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_initialized_plugins](./#get_initialized_plugins)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [set_plugin_upgraded](./#set_plugin_upgraded)(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [initialize_plugin](./#initialize_plugin)(plugin_id: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) | +| void | [on_update_timeout](./#on_update_timeout)() | +| [String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) | [filter_by_tag](./#filter_by_tag)(plugins: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html), tag: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [set_plugin_filters](./#set_plugin_filters)(filters: [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html)) | + + +------------------ + +## Property Descriptions + +### `SettingsManager` + + +[SettingsManager](../SettingsManager) SettingsManager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `parent` + + +[PluginManager](../PluginManager) parent + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `plugins` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) plugins = {} + + +Dictionary of installed plugins on the root file system. +### `plugin_nodes` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) plugin_nodes = {} + + +Dictionary of instantiated plugins. +### `plugin_store_items` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) plugin_store_items = {} + + +Dictionary of available plugins in the defualt plugin store. Similair data struture to the plugins dict with some additonal fields. +### `plugins_upgradable` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) plugins_upgradable = [] + + +List of plugin_ids that are installed where a newer version of the plugin is available in the plugin store. +### `plugin_filters` + + +[Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) plugin_filters = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `init()` + + +void **init**(manager: [PluginManager](../PluginManager)) + + +Initializes the plugin loader. Loaded plugins will be added to the given manager node. +### `enable_plugin()` + + +void **enable_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Sets the given plugin to enabled +### `disable_plugin()` + + +void **disable_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Sets the given plugin to disabled +### `get_plugin_store_items()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_plugin_store_items**() + + +Returns the parsed dictionary of plugin store items. Returns null if there is a failure. +### `install_plugin()` + + +void **install_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), download_url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), sha256: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Downloads and installs the given plugin +### `uninstall_plugin()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **uninstall_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Unloads and uninstalls the given plugin. Returns OK if removed successfully. +### `is_extracted()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_extracted**(meta: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +Returns whether or not the given plugin is already extracted. This takes the parsed plugin metadata as an argument. +### `extract_plugin()` + + +void **extract_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Extract the given plugin into the plugins directory +### `unload_plugin()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **unload_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Unloads the given plugin. Returns OK if successful. +### `uninitialize_plugin()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **uninitialize_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Uninitializes a plugin and calls its "unload" method +### `is_installed()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_installed**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the given plugin is installed. +### `is_loaded()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_loaded**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the given plugin is loaded. +### `is_initialized()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_initialized**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the given plugin is initialized and running +### `is_upgradable()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_upgradable**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns true if the given plugin is upgradable. +### `get_plugin()` + + +[Plugin](../Plugin) **get_plugin**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the given plugin instance +### `get_plugin_meta()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **get_plugin_meta**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns the metadata for the given plugin +### `get_loaded_plugins()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_loaded_plugins**() + + +Returns a list of plugin_ids that were loaded +### `get_initialized_plugins()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_initialized_plugins**() + + +Returns a list of plugin_ids that are initialized and running +### `set_plugin_upgraded()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **set_plugin_upgraded**(plugin_id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `initialize_plugin()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **initialize_plugin**(plugin_id: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html)) + + +Instances the given plugin and adds it to the scene tree +### `on_update_timeout()` + + +void **on_update_timeout**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `filter_by_tag()` + + +[String[]](https://docs.godotengine.org/en/stable/classes/class_string.html) **filter_by_tag**(plugins: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html), tag: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_plugin_filters()` + + +void **set_plugin_filters**(filters: [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/PluginManager.md b/docs/class-reference/PluginManager.md new file mode 100644 index 000000000..c1d5b129a --- /dev/null +++ b/docs/class-reference/PluginManager.md @@ -0,0 +1,27 @@ +# PluginManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [PluginLoader](../PluginLoader) | [PluginLoader](./#PluginLoader) | | + + + +------------------ + +## Property Descriptions + +### `PluginLoader` + + +[PluginLoader](../PluginLoader) PluginLoader + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/PowerManager.md b/docs/class-reference/PowerManager.md new file mode 100644 index 000000000..3ac79f4d0 --- /dev/null +++ b/docs/class-reference/PowerManager.md @@ -0,0 +1,40 @@ +# PowerManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Manages power settings. +## Description + +The [PowerManager](../PowerManager) class is responsible for loading a [UPowerInstance](../UPowerInstance) and calling its 'process()' method each frame. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [UPowerInstance](../UPowerInstance) | [instance](./#instance) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `instance` + + +[UPowerInstance](../UPowerInstance) instance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/PowerSaver.md b/docs/class-reference/PowerSaver.md new file mode 100644 index 000000000..7ecb71666 --- /dev/null +++ b/docs/class-reference/PowerSaver.md @@ -0,0 +1,227 @@ +# PowerSaver + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +TODO: Use inputmanager to send power_save events for every input!! +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [DisplayManager](../DisplayManager) | [display](./#display) | | +| [SettingsManager](../SettingsManager) | [settings](./#settings) | | +| [UPowerInstance](../UPowerInstance) | [power_manager](./#power_manager) | | +| [GamescopeInstance](../GamescopeInstance) | [gamescope](./#gamescope) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [dim_screen_enabled](./#dim_screen_enabled) | true | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [dim_after_inactivity_mins](./#dim_after_inactivity_mins) | 5 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [dim_percent](./#dim_percent) | 10 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [dim_when_charging](./#dim_when_charging) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [auto_suspend_enabled](./#auto_suspend_enabled) | true | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [suspend_after_inactivity_mins](./#suspend_after_inactivity_mins) | 20 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [suspend_when_charging](./#suspend_when_charging) | false | +| [Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) | [dim_timer](./#dim_timer) | | +| [Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) | [suspend_timer](./#suspend_timer) | | +| [Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) | [gamescope_timer](./#gamescope_timer) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [dimmed](./#dimmed) | false | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [prev_brightness](./#prev_brightness) | {} | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [supports_brightness](./#supports_brightness) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_battery](./#has_battery) | false | +| [UPowerDevice](../UPowerDevice) | [display_device](./#display_device) | | +| [Dictionary[int, int]](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [gamescope_input_counters](./#gamescope_input_counters) | {} | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `display` + + +[DisplayManager](../DisplayManager) display + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `settings` + + +[SettingsManager](../SettingsManager) settings + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `power_manager` + + +[UPowerInstance](../UPowerInstance) power_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamescope` + + +[GamescopeInstance](../GamescopeInstance) gamescope + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dim_screen_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) dim_screen_enabled = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dim_after_inactivity_mins` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) dim_after_inactivity_mins = 5 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dim_percent` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) dim_percent = 10 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dim_when_charging` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) dim_when_charging = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `auto_suspend_enabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) auto_suspend_enabled = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `suspend_after_inactivity_mins` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) suspend_after_inactivity_mins = 20 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `suspend_when_charging` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) suspend_when_charging = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dim_timer` + + +[Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) dim_timer + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `suspend_timer` + + +[Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) suspend_timer + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamescope_timer` + + +[Timer](https://docs.godotengine.org/en/stable/classes/class_timer.html) gamescope_timer + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dimmed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) dimmed = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `prev_brightness` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) prev_brightness = {} + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `supports_brightness` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) supports_brightness + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `has_battery` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) has_battery = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `display_device` + + +[UPowerDevice](../UPowerDevice) display_device + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gamescope_input_counters` + + +[Dictionary[int, int]](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) gamescope_input_counters = {} + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/PowerStation.md b/docs/class-reference/PowerStation.md new file mode 100644 index 000000000..968252775 --- /dev/null +++ b/docs/class-reference/PowerStation.md @@ -0,0 +1,40 @@ +# PowerStation + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Proxy interface to PowerStation over DBus +## Description + +Provides wrapper classes and methods for interacting with PowerStation over DBus to control CPU and GPU performance. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [PowerStationInstance](../PowerStationInstance) | [instance](./#instance) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + + + +------------------ + +## Property Descriptions + +### `instance` + + +[PowerStationInstance](../PowerStationInstance) instance + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/PowerStationInstance.md b/docs/class-reference/PowerStationInstance.md new file mode 100644 index 000000000..b7d95429b --- /dev/null +++ b/docs/class-reference/PowerStationInstance.md @@ -0,0 +1,67 @@ +# PowerStationInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Cpu](../Cpu) | [cpu](./#cpu) | | +| [Gpu](../Gpu) | [gpu](./#gpu) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| void | [process](./#process)() | + + +------------------ + +## Property Descriptions + +### `cpu` + + +[Cpu](../Cpu) cpu + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `gpu` + + +[Gpu](../Gpu) gpu + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/ProgressDialog.md b/docs/class-reference/ProgressDialog.md new file mode 100644 index 000000000..aaa09461a --- /dev/null +++ b/docs/class-reference/ProgressDialog.md @@ -0,0 +1,125 @@ +# ProgressDialog + +**Inherits:** [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [value](./#value) | 0.0 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [cancel_text](./#cancel_text) | "Cancel" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [cancel_visible](./#cancel_visible) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [close_on_selected](./#close_on_selected) | true | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [ProgressBar](https://docs.godotengine.org/en/stable/classes/class_progressbar.html) | [progress_bar](./#progress_bar) | | +| [Button](https://docs.godotengine.org/en/stable/classes/class_button.html) | [cancel_button](./#cancel_button) | | +| [Effect](../Effect) | [fade_effect](./#fade_effect) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [open](./#open)(message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", cancel_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | +| void | [close](./#close)() | + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text + + +Text to display in the dialog box +### `value` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) value = 0.0 + + +Confirm button text +### `cancel_text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) cancel_text = "Cancel" + + +Cancel button text +### `cancel_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) cancel_visible = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `close_on_selected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) close_on_selected = true + + +Close the dialog when the user selects an option +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `progress_bar` + + +[ProgressBar](https://docs.godotengine.org/en/stable/classes/class_progressbar.html) progress_bar + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `cancel_button` + + +[Button](https://docs.godotengine.org/en/stable/classes/class_button.html) cancel_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `fade_effect` + + +[Effect](../Effect) fade_effect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `open()` + + +void **open**(message: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "", cancel_txt: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Opens the dialog box with the given settings +### `close()` + + +void **close**() + + +Closes the progress dialog diff --git a/docs/class-reference/Pty.md b/docs/class-reference/Pty.md new file mode 100644 index 000000000..ece4f58dc --- /dev/null +++ b/docs/class-reference/Pty.md @@ -0,0 +1,117 @@ +# Pty + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [columns](./#columns) | 8000 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [height_px](./#height_px) | 8000 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [rows](./#rows) | 8000 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [running](./#running) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [width_px](./#width_px) | 8000 | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [exec](./#exec)(command: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [kill](./#kill)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [write](./#write)(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [write_line](./#write_line)(line: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `columns` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) columns = 8000 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `height_px` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) height_px = 8000 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `rows` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) rows = 8000 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `running` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) running + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `width_px` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) width_px = 8000 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `exec()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **exec**(command: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `kill()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **kill**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `write()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **write**(data: [PackedByteArray](https://docs.godotengine.org/en/stable/classes/class_packedbytearray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `write_line()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **write_line**(line: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/QuickBarCard.md b/docs/class-reference/QuickBarCard.md new file mode 100644 index 000000000..02fa5597f --- /dev/null +++ b/docs/class-reference/QuickBarCard.md @@ -0,0 +1,163 @@ +# QuickBarCard + +**Inherits:** [Container](https://docs.godotengine.org/en/stable/classes/class_container.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [title](./#title) | "Section" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_toggled](./#is_toggled) | false | +| [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) | [header_container](./#header_container) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [highlight](./#highlight) | | +| [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) | [content_container](./#content_container) | | +| [FocusGroupSetter](../FocusGroupSetter) | [focus_group_setter](./#focus_group_setter) | | +| [SmoothScrollEffect](../SmoothScrollEffect) | [smooth_scroll](./#smooth_scroll) | | +| [GrowerEffect](../GrowerEffect) | [grower](./#grower) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [effect_in_progress](./#effect_in_progress) | false | +| [FocusGroup](../FocusGroup) | [focus_group](./#focus_group) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [add_header](./#add_header)(content: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), alignment: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [add_content](./#add_content)(content: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html)) | + + +------------------ + +## Property Descriptions + +### `title` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) title = "Section" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `is_toggled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_toggled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `header_container` + + +[VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) header_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `highlight` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) highlight + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `content_container` + + +[VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) content_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_group_setter` + + +[FocusGroupSetter](../FocusGroupSetter) focus_group_setter + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `smooth_scroll` + + +[SmoothScrollEffect](../SmoothScrollEffect) smooth_scroll + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `grower` + + +[GrowerEffect](../GrowerEffect) grower + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `effect_in_progress` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) effect_in_progress = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `focus_group` + + +[FocusGroup](../FocusGroup) focus_group + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `add_header()` + + +void **add_header**(content: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html), alignment: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Add the given content as the header to the card. Disables the section header when used. +### `add_content()` + + +void **add_content**(content: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html)) + + +Add the given content to the card diff --git a/docs/class-reference/RaiseEffect.md b/docs/class-reference/RaiseEffect.md new file mode 100644 index 000000000..7da64266c --- /dev/null +++ b/docs/class-reference/RaiseEffect.md @@ -0,0 +1,157 @@ +# RaiseEffect + +**Inherits:** [Effect](../Effect) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [target](./#target) | | +| [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) | [shadow](./#shadow) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [raise_speed](./#raise_speed) | 0.2 | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [raise_to_position](./#raise_to_position) | Vector2(0, -40) | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [scale_on_raised](./#scale_on_raised) | Vector2(1.01, 1.01) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [shadow_size_on_raised](./#shadow_size_on_raised) | 20 | +| [Color](https://docs.godotengine.org/en/stable/classes/class_color.html) | [shadow_color_on_raised](./#shadow_color_on_raised) | Color(0, 0, 0, 0.3) | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [lower_signal](./#lower_signal) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [orig_shadow_size](./#orig_shadow_size) | 0 | +| [Color](https://docs.godotengine.org/en/stable/classes/class_color.html) | [orig_shadow_color](./#orig_shadow_color) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [raise](./#raise)() | +| void | [lower](./#lower)() | + + +------------------ + +## Property Descriptions + +### `target` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) target + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `shadow` + + +[PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) shadow + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `raise_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) raise_speed = 0.2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `raise_to_position` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) raise_to_position = Vector2(0, -40) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `scale_on_raised` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) scale_on_raised = Vector2(1.01, 1.01) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `shadow_size_on_raised` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) shadow_size_on_raised = 20 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `shadow_color_on_raised` + + +[Color](https://docs.godotengine.org/en/stable/classes/class_color.html) shadow_color_on_raised = Color(0, 0, 0, 0.3) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `lower_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) lower_signal + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `orig_shadow_size` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) orig_shadow_size = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `orig_shadow_color` + + +[Color](https://docs.godotengine.org/en/stable/classes/class_color.html) orig_shadow_color + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `raise()` + + +void **raise**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `lower()` + + +void **lower**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Reaper.md b/docs/class-reference/Reaper.md new file mode 100644 index 000000000..df6fab2fc --- /dev/null +++ b/docs/class-reference/Reaper.md @@ -0,0 +1,147 @@ +# Reaper + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [create_process](./#create_process)(cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), app_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = -1) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_reaper_command](./#get_reaper_command)() | +| void | [reap](./#reap)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), sig: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 15) | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_children_with_pgid](./#get_children_with_pgid)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), pgid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_parent_pid](./#get_parent_pid)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_pid_group](./#get_pid_group)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_pid_state](./#get_pid_state)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_pid_property_int](./#get_pid_property_int)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [get_pid_status](./#get_pid_status)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Dictionary[String, String]](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [get_pid_environment](./#get_pid_environment)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [get_pids](./#get_pids)() | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [pstree](./#pstree)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_gamescope_pid](./#is_gamescope_pid)(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [to_int_array](./#to_int_array)(arr: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html)) | + + +------------------ + +## Method Descriptions + +### `create_process()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **create_process**(cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html), app_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = -1) + + +Spawn a process with PR_SET_CHILD_SUBREAPER set so child processes will reparent themselves to OpenGamepadUI. Returns the PID of the spawned process. +### `get_reaper_command()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_reaper_command**() + + +Discovers the 'reaper' binary to execute commands with PR_SET_CHILD_SUBREAPER. +### `reap()` + + +void **reap**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), sig: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 15) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_children_with_pgid()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_children_with_pgid**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), pgid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_parent_pid()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_parent_pid**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pid_group()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_pid_group**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pid_state()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_pid_state**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pid_property_int()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_pid_property_int**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pid_status()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **get_pid_status**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_pid_environment()` + + +[Dictionary[String, String]](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **get_pid_environment**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the parsed environment for the given PID. Returns an empty dictionary if the PID is not found or we do not have permission to read the environment. +### `get_pids()` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) **get_pids**() + + +Returns a list of all currently running processes +### `pstree()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **pstree**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_gamescope_pid()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_gamescope_pid**(pid: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `to_int_array()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **to_int_array**(arr: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/ResourceProcessor.md b/docs/class-reference/ResourceProcessor.md new file mode 100644 index 000000000..a24276529 --- /dev/null +++ b/docs/class-reference/ResourceProcessor.md @@ -0,0 +1,27 @@ +# ResourceProcessor + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [ResourceRegistry](../ResourceRegistry) | [registry](./#registry) | null | + + + +------------------ + +## Property Descriptions + +### `registry` + + +[ResourceRegistry](../ResourceRegistry) registry = null + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/ResourceRegistry.md b/docs/class-reference/ResourceRegistry.md new file mode 100644 index 000000000..b78ffed6b --- /dev/null +++ b/docs/class-reference/ResourceRegistry.md @@ -0,0 +1,85 @@ +# ResourceRegistry + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [add_child](./#add_child)(child: [Node](https://docs.godotengine.org/en/stable/classes/class_node.html)) | +| [Node[]](https://docs.godotengine.org/en/stable/classes/class_node.html) | [get_children](./#get_children)() | +| [ResourceRegistry](../ResourceRegistry) | [get_registry](./#get_registry)() | +| void | [process](./#process)(delta: [float](https://docs.godotengine.org/en/stable/classes/class_float.html)) | +| void | [register](./#register)(resource: [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html)) | +| void | [remove_child](./#remove_child)(child: [Node](https://docs.godotengine.org/en/stable/classes/class_node.html)) | +| void | [unregister](./#unregister)(resource: [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html)) | + + +------------------ + +## Method Descriptions + +### `add_child()` + + +void **add_child**(child: [Node](https://docs.godotengine.org/en/stable/classes/class_node.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_children()` + + +[Node[]](https://docs.godotengine.org/en/stable/classes/class_node.html) **get_children**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_registry()` + + +[ResourceRegistry](../ResourceRegistry) **get_registry**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**(delta: [float](https://docs.godotengine.org/en/stable/classes/class_float.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `register()` + + +void **register**(resource: [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `remove_child()` + + +void **remove_child**(child: [Node](https://docs.godotengine.org/en/stable/classes/class_node.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `unregister()` + + +void **unregister**(resource: [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/RunningApp.md b/docs/class-reference/RunningApp.md new file mode 100644 index 000000000..b9f0f3b77 --- /dev/null +++ b/docs/class-reference/RunningApp.md @@ -0,0 +1,380 @@ +# RunningApp + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Defines a running application +## Description + +RunningApp contains details and methods around running applications +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [GamescopeInstance](../GamescopeInstance) | [gamescope](./#gamescope) | | +| [LibraryLaunchItem](../LibraryLaunchItem) | [launch_item](./#launch_item) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [pid](./#pid) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [display](./#display) | | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [command](./#command) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [environment](./#environment) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state](./#state) | 0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state_steam](./#state_steam) | 0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [steam_missing_window_timestamp](./#steam_missing_window_timestamp) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_suspended](./#is_suspended) | false | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [start_time](./#start_time) | | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [window_ids](./#window_ids) | PackedInt64Array() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [last_focused_window_id](./#last_focused_window_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [ogui_id](./#ogui_id) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [app_id](./#app_id) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [app_type](./#app_type) | 0 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [focused](./#focused) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [created_window](./#created_window) | false | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [num_created_windows](./#num_created_windows) | 0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [not_running_count](./#not_running_count) | 0 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_ogui_managed](./#is_ogui_managed) | true | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [RunningApp](../RunningApp) | [create](./#create)(app: [LibraryLaunchItem](../LibraryLaunchItem), env: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html), cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | +| [RunningApp](../RunningApp) | [spawn](./#spawn)(app: [LibraryLaunchItem](../LibraryLaunchItem), env: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html), cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | +| void | [start](./#start)() | +| void | [update](./#update)(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [discover_app_type](./#discover_app_type)(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| void | [update_wayland_app](./#update_wayland_app)(app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| void | [update_xwayland_app](./#update_xwayland_app)(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| void | [update_steam_xwayland_app](./#update_steam_xwayland_app)(app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| void | [suspend](./#suspend)(enable: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_window_title](./#get_window_title)(win_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_window_id_from_pid](./#get_window_id_from_pid)() | +| [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) | [get_all_window_ids](./#get_all_window_ids)(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_focused](./#is_focused)() | +| void | [grab_focus](./#grab_focus)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [switch_window](./#switch_window)(win_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), focus: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | +| void | [kill](./#kill)(sig: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 15) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_steam_app](./#is_steam_app)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_steam_window](./#is_steam_window)(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [find_steam](./#find_steam)(app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) | + + +------------------ + +## Property Descriptions + +### `gamescope` + + +[GamescopeInstance](../GamescopeInstance) gamescope + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `launch_item` + + +[LibraryLaunchItem](../LibraryLaunchItem) launch_item + + +The LibraryLaunchItem associated with the running application +### `pid` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) pid + + +The PID of the launched application +### `display` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) display + + +The xwayland display that the application is running on (e.g. ":1") +### `command` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) command + + +The raw command that was used to launch the application +### `environment` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) environment + + +Environment variables that were set with the launched application +### `state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state = 0 + + +The state of the running app +### `state_steam` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state_steam = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `steam_missing_window_timestamp` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) steam_missing_window_timestamp + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `is_suspended` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_suspended = false + + +Whether or not the running app is suspended +### `start_time` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) start_time + + +Time in milliseconds when the app started +### `window_ids` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) window_ids = PackedInt64Array() + + +A list of all detected window IDs related to the application +### `last_focused_window_id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) last_focused_window_id + + +The window id of the last focused window +### `ogui_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) ogui_id + + +The identifier that is set as the OGUI_ID environment variable +### `app_id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) app_id + + +The current app ID of the application +### `app_type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) app_type = 0 + + +The type of app +### `focused` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) focused = false + + +Whether or not the app is currently focused +### `created_window` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) created_window = false + + +Whether or not the running app has created at least one valid window +### `num_created_windows` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) num_created_windows = 0 + + +The number of windows that have been discovered from this app +### `not_running_count` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) not_running_count = 0 + + +Number of times this app has failed its "is_running" check +### `is_ogui_managed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_ogui_managed = true + + +Flag for if OGUI should manage this app. Set to false if app is launched outside OGUI and we just want to track it. +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `create()` + + +[RunningApp](../RunningApp) **create**(app: [LibraryLaunchItem](../LibraryLaunchItem), env: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html), cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +Create a [RunningApp](../RunningApp) with the given command without starting it. +### `spawn()` + + +[RunningApp](../RunningApp) **spawn**(app: [LibraryLaunchItem](../LibraryLaunchItem), env: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html), cmd: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +Run the given command and return it as a [RunningApp](../RunningApp) +### `start()` + + +void **start**() + + +Start the running app +### `update()` + + +void **update**(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +Updates the state of the running app and fires signals using the given list of window ids from XWayland and list of process ids that match the OGUI_ID of this application. +### `discover_app_type()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **discover_app_type**(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +Tries to discover if the launched app is an X11 or Wayland application +### `update_wayland_app()` + + +void **update_wayland_app**(app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `update_xwayland_app()` + + +void **update_xwayland_app**(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `update_steam_xwayland_app()` + + +void **update_steam_xwayland_app**(app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `suspend()` + + +void **suspend**(enable: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html)) + + +Pauses/Resumes the running app by running 'kill -STOP' or 'kill -CONT' +### `get_window_title()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_window_title**(win_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the window title of the given window. If the window ID does not belong to this app, it will return an empty string. +### `get_window_id_from_pid()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_window_id_from_pid**() + + +Attempt to discover the window ID from the PID of the given application +### `get_all_window_ids()` + + +[PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html) **get_all_window_ids**(all_windows: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html), app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +Attempt to discover all window IDs from the PID of the given application and the PIDs of all processes in the same process group. +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +Returns true if the app's PID is running or any decendents with the same process group. +### `is_focused()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_focused**() + + +Return true if the currently running app is focused +### `grab_focus()` + + +void **grab_focus**() + + +Focuses to the app's window +### `switch_window()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **switch_window**(win_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), focus: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +Switches the app window to the given window ID. Returns an error if unable to switch to the window +### `kill()` + + +void **kill**(sig: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 15) + + +Kill the running app +### `is_steam_app()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_steam_app**() + + +Returns true if the running app was launched through Steam +### `is_steam_window()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_steam_window**(window_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns true if the given window id is detected as a Steam window +### `find_steam()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **find_steam**(app_pids: [PackedInt64Array](https://docs.godotengine.org/en/stable/classes/class_packedint64array.html)) + + +Finds the steam process so it can be killed when a game closes diff --git a/docs/class-reference/Sandbox.md b/docs/class-reference/Sandbox.md new file mode 100644 index 000000000..895c2bde2 --- /dev/null +++ b/docs/class-reference/Sandbox.md @@ -0,0 +1,39 @@ +# Sandbox + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_command](./#get_command)(app: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_available](./#is_available)() | +| [Sandbox](../Sandbox) | [get_sandbox](./#get_sandbox)() | + + +------------------ + +## Method Descriptions + +### `get_command()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_command**(app: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns an array defining the command line to launch the given application in a sandbox. E.g. ["firejail", "--noprofile", "--"](https://docs.godotengine.org/en/stable/classes/class_"firejail", "--noprofile", "--".html) +### `is_available()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_available**() + + +Returns whether or not the given sandbox implementation is available +### `get_sandbox()` + + +[Sandbox](../Sandbox) **get_sandbox**() + + +Returns the best sandbox to use for launching apps diff --git a/docs/class-reference/SandboxBubblewrap.md b/docs/class-reference/SandboxBubblewrap.md new file mode 100644 index 000000000..92525172e --- /dev/null +++ b/docs/class-reference/SandboxBubblewrap.md @@ -0,0 +1,31 @@ +# SandboxBubblewrap + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_command](./#get_command)(app: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_available](./#is_available)() | + + +------------------ + +## Method Descriptions + +### `get_command()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_command**(app: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns an array defining the command line to launch the given application in a sandbox. +### `is_available()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_available**() + + +Returns whether or not the given sandbox implementation is available diff --git a/docs/class-reference/SandboxFirejail.md b/docs/class-reference/SandboxFirejail.md new file mode 100644 index 000000000..18db9fc1a --- /dev/null +++ b/docs/class-reference/SandboxFirejail.md @@ -0,0 +1,31 @@ +# SandboxFirejail + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_command](./#get_command)(app: [LibraryLaunchItem](../LibraryLaunchItem)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_available](./#is_available)() | + + +------------------ + +## Method Descriptions + +### `get_command()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_command**(app: [LibraryLaunchItem](../LibraryLaunchItem)) + + +Returns an array defining the command line to launch the given application in a sandbox. +### `is_available()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_available**() + + +Returns whether or not the given sandbox implementation is available diff --git a/docs/class-reference/ScrollerJoystick.md b/docs/class-reference/ScrollerJoystick.md new file mode 100644 index 000000000..5c33e0d0c --- /dev/null +++ b/docs/class-reference/ScrollerJoystick.md @@ -0,0 +1,70 @@ +# ScrollerJoystick + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Scroll a [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) using the right analog stick +## Description + +Add as a child node to a [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) to allow controlling the scroll position using the right analog stick. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [scroll_speed](./#scroll_speed) | 600 | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [dead_zone](./#dead_zone) | Vector2(0.2, 0.2) | +| [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) | [parent](./#parent) | get_parent() | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [direction](./#direction) | Vector2(0, 0) | +| [Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) | [remainder](./#remainder) | Vector2(0, 0) | + + + +------------------ + +## Property Descriptions + +### `scroll_speed` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) scroll_speed = 600 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dead_zone` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) dead_zone = Vector2(0.2, 0.2) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `parent` + + +[ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) parent = get_parent() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `direction` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) direction = Vector2(0, 0) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `remainder` + + +[Vector2](https://docs.godotengine.org/en/stable/classes/class_vector2.html) remainder = Vector2(0, 0) + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/SearchBar.md b/docs/class-reference/SearchBar.md new file mode 100644 index 000000000..cc205cec4 --- /dev/null +++ b/docs/class-reference/SearchBar.md @@ -0,0 +1,57 @@ +# SearchBar + +**Inherits:** [LineEdit](https://docs.godotengine.org/en/stable/classes/class_lineedit.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [State](../State) | [library_state](./#library_state) | | +| [KeyboardContext](../KeyboardContext) | [keyboard_context](./#keyboard_context) | | +| [KeyboardInstance](../KeyboardInstance) | [keyboard](./#keyboard) | | + + + +------------------ + +## Property Descriptions + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `library_state` + + +[State](../State) library_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `keyboard_context` + + +[KeyboardContext](../KeyboardContext) keyboard_context + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `keyboard` + + +[KeyboardInstance](../KeyboardInstance) keyboard + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/SelectableText.md b/docs/class-reference/SelectableText.md new file mode 100644 index 000000000..e684d5ec7 --- /dev/null +++ b/docs/class-reference/SelectableText.md @@ -0,0 +1,87 @@ +# SelectableText + +**Inherits:** [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [title](./#title) | "Setting" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | "Description" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Value" | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [description_label](./#description_label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [value_label](./#value_label) | | +| [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) | [panel](./#panel) | | + + + +------------------ + +## Property Descriptions + +### `title` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) title = "Setting" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description = "Description" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Value" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) description_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `value_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) value_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `panel` + + +[PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) panel + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/SemanticVersion.md b/docs/class-reference/SemanticVersion.md new file mode 100644 index 000000000..c6f60cc19 --- /dev/null +++ b/docs/class-reference/SemanticVersion.md @@ -0,0 +1,50 @@ +# SemanticVersion + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +Static methods for semantic versioning +## Description + +Provides static methods for working with semantic version numbers. Semantic version numbers are in the form of Y.X.Z, where Y is the major version, X is the minor version, and Z is the patch version. Changes to the major version indicate a backwards compatible breaking change. Changes to the minor version indicate new features. Changes to the patch version indicate bug fixes. +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_feature_compatible](./#is_feature_compatible)(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_greater_or_equal](./#is_greater_or_equal)(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_greater](./#is_greater)(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_valid](./#is_valid)(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Method Descriptions + +### `is_feature_compatible()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_feature_compatible**(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns whether or not the given version is feature compatible with the target version. E.g. v1.4.3 is feature compatible with v1.4.0, but not v1.3.0 +### `is_greater_or_equal()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_greater_or_equal**(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns whether or not the given semantic version string is greater or equal to the target semantic version string. +### `is_greater()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_greater**(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), target: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns whether or not the given semantic version string is greater than the target semantic version string. +### `is_valid()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_valid**(version: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Returns whether or not the given version string is a valid semantic version string. Semantic version strings are in the form of X.Y.Z (e.g. 1.3.24) diff --git a/docs/class-reference/SettingsManager.md b/docs/class-reference/SettingsManager.md new file mode 100644 index 000000000..aa128e97a --- /dev/null +++ b/docs/class-reference/SettingsManager.md @@ -0,0 +1,130 @@ +# SettingsManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Get and set user settings +## Description + +The SettingsManager is a simple class responsible for getting and setting user-specific settings. These settings are stored in a single file at user://settings.cfg. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [settings_file](./#settings_file) | "user://settings.cfg" | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [save](./#save)() | +| void | [reload](./#reload)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_value](./#get_value)(section: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [get_library_value](./#get_library_value)(item: [LibraryItem](../LibraryItem), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) | +| void | [set_value](./#set_value)(section: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | +| void | [set_library_value](./#set_library_value)(item: [LibraryItem](../LibraryItem), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | +| void | [erase_section_key](./#erase_section_key)(section: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | +| void | [erase_library_key](./#erase_library_key)(item: [LibraryItem](../LibraryItem), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | + + +------------------ + +## Property Descriptions + +### `settings_file` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) settings_file = "user://settings.cfg" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `save()` + + +void **save**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `reload()` + + +void **reload**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_value()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_value**(section: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_library_value()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **get_library_value**(item: [LibraryItem](../LibraryItem), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), default: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) = null) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_value()` + + +void **set_value**(section: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `set_library_value()` + + +void **set_library_value**(item: [LibraryItem](../LibraryItem), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), value: [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `erase_section_key()` + + +void **erase_section_key**(section: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `erase_library_key()` + + +void **erase_library_key**(item: [LibraryItem](../LibraryItem), key: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), persist: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/SharedThread.ExecutingTask.md b/docs/class-reference/SharedThread.ExecutingTask.md new file mode 100644 index 000000000..70336baef --- /dev/null +++ b/docs/class-reference/SharedThread.ExecutingTask.md @@ -0,0 +1,77 @@ +# SharedThread.ExecutingTask + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +Container for holding information about the currently executing task +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [object](./#object) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [method](./#method) | | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [args](./#args) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [SharedThread.ExecutingTask](../SharedThread.ExecutingTask) | [from_callable](./#from_callable)(callable: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) | +| [SharedThread.ExecutingTask](../SharedThread.ExecutingTask) | [from_node_thread](./#from_node_thread)(node: [NodeThread](../NodeThread)) | + + +------------------ + +## Property Descriptions + +### `object` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) object + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `method` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) method + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `args` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) args + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `from_callable()` + + +[SharedThread.ExecutingTask](../SharedThread.ExecutingTask) **from_callable**(callable: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `from_node_thread()` + + +[SharedThread.ExecutingTask](../SharedThread.ExecutingTask) **from_node_thread**(node: [NodeThread](../NodeThread)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/SharedThread.ScheduledTask.md b/docs/class-reference/SharedThread.ScheduledTask.md new file mode 100644 index 000000000..3362344e6 --- /dev/null +++ b/docs/class-reference/SharedThread.ScheduledTask.md @@ -0,0 +1,67 @@ +# SharedThread.ScheduledTask + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +Container for holding a scheduled task to run in a thread +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [task_id](./#task_id) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [start_time](./#start_time) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [wait_time_ms](./#wait_time_ms) | | +| [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html) | [method](./#method) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [task_type](./#task_type) | | + + + +------------------ + +## Property Descriptions + +### `task_id` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) task_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `start_time` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) start_time + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `wait_time_ms` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) wait_time_ms + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `method` + + +[Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html) method + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `task_type` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) task_type + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/SharedThread.md b/docs/class-reference/SharedThread.md new file mode 100644 index 000000000..413590691 --- /dev/null +++ b/docs/class-reference/SharedThread.md @@ -0,0 +1,278 @@ +# SharedThread + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Resource that allows nodes to run in a separate thread +## Description + +NodeThreads can belong to a SharedThread which will run their _thread_process method in the given thread +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Thread](https://docs.godotengine.org/en/stable/classes/class_thread.html) | [thread](./#thread) | | +| [Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) | [mutex](./#mutex) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [tid](./#tid) | -1 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [running](./#running) | false | +| [SharedThread.ExecutingTask](../SharedThread.ExecutingTask) | [executing_task](./#executing_task) | | +| [NodeThread[]](../NodeThread) | [nodes](./#nodes) | [] | +| [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) | [process_funcs](./#process_funcs) | [] | +| [SharedThread.ScheduledTask[]](../SharedThread.ScheduledTask) | [scheduled_funcs](./#scheduled_funcs) | [] | +| [Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) | [one_shots](./#one_shots) | [] | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [last_time](./#last_time) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [task_id_count](./#task_id_count) | 0 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | "SharedThread" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [target_tick_rate](./#target_tick_rate) | 60 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [niceness](./#niceness) | 0 | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [watchdog_enabled](./#watchdog_enabled) | true | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [start](./#start)() | +| void | [stop](./#stop)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [set_priority](./#set_priority)(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [add_node](./#add_node)(node: [NodeThread](../NodeThread)) | +| void | [remove_node](./#remove_node)(node: [NodeThread](../NodeThread), stop_on_empty: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [exec](./#exec)(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [scheduled_exec](./#scheduled_exec)(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html), wait_time_ms: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), task_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0) | +| void | [cancel_scheduled_exec](./#cancel_scheduled_exec)(task_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | +| void | [add_process](./#add_process)(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) | +| void | [remove_process](./#remove_process)(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) | +| [SharedThread.ExecutingTask](../SharedThread.ExecutingTask) | [get_executing_task](./#get_executing_task)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_target_frame_time](./#get_target_frame_time)() | + + +------------------ + +## Property Descriptions + +### `thread` + + +[Thread](https://docs.godotengine.org/en/stable/classes/class_thread.html) thread + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mutex` + + +[Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) mutex + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tid` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) tid = -1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `running` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) running = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `executing_task` + + +[SharedThread.ExecutingTask](../SharedThread.ExecutingTask) executing_task + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `nodes` + + +[NodeThread[]](../NodeThread) nodes = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `process_funcs` + + +[Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) process_funcs = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `scheduled_funcs` + + +[SharedThread.ScheduledTask[]](../SharedThread.ScheduledTask) scheduled_funcs = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `one_shots` + + +[Callable[]](https://docs.godotengine.org/en/stable/classes/class_callable.html) one_shots = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `last_time` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) last_time + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `task_id_count` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) task_id_count = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name = "SharedThread" + + +Name of the thread group +### `target_tick_rate` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) target_tick_rate = 60 + + +Target rate to run at in ticks per second +### `niceness` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) niceness = 0 + + +Priority (niceness) of the thread +### `watchdog_enabled` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) watchdog_enabled = true + + +If watchdog should be enabled on this thread + + + +------------------ + +## Method Descriptions + +### `start()` + + +void **start**() + + +Starts the thread for the thread group +### `stop()` + + +void **stop**() + + +Stops the thread for the thread group +### `set_priority()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **set_priority**(value: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Set the given thread niceness to the given value. Note: in order to set negative nice value, this must be run: setcap 'cap_sys_nice=eip' +### `add_node()` + + +void **add_node**(node: [NodeThread](../NodeThread)) + + +Add the given [NodeThread](../NodeThread) to the list of nodes to process. This should happen automatically by the [NodeThread](../NodeThread) +### `remove_node()` + + +void **remove_node**(node: [NodeThread](../NodeThread), stop_on_empty: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true) + + +Remove the given [NodeThread](../NodeThread) from the list of nodes to process. This should happen automatically when the [NodeThread](../NodeThread) exits the scene tree. +### `exec()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **exec**(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) + + +Calls the given method from the thread. Internally, this queues the given method and awaits it to be called during the process loop. You should await this method if your method returns something. E.g. [code](https://docs.godotengine.org/en/stable/classes/class_code.html)var result = await thread_group.exec(myfund.bind("myarg"))[/code](https://docs.godotengine.org/en/stable/classes/class_/code.html) +### `scheduled_exec()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **scheduled_exec**(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html), wait_time_ms: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), task_type: [int](https://docs.godotengine.org/en/stable/classes/class_int.html) = 0) + + +Calls the given method from the thread after 'wait_time_ms' has passed. By default, this method will execute as a "oneshot" task. Optionally, the "task_type" parameter can be set to "RECURRING" if this task should run every 'wait_time_ms'. +### `cancel_scheduled_exec()` + + +void **cancel_scheduled_exec**(task_id: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Cancels a given Sheduled Task +### `add_process()` + + +void **add_process**(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) + + +Adds the given method to the thread process loop. This method will be called every thread tick. +### `remove_process()` + + +void **remove_process**(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html)) + + +Removes the given method from the thread process loop. +### `get_executing_task()` + + +[SharedThread.ExecutingTask](../SharedThread.ExecutingTask) **get_executing_task**() + + +Returns the currently executing task +### `get_target_frame_time()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_target_frame_time**() + + +Returns the target frame time in microseconds of the SharedThread diff --git a/docs/class-reference/SlideEffect.md b/docs/class-reference/SlideEffect.md new file mode 100644 index 000000000..46976a0e9 --- /dev/null +++ b/docs/class-reference/SlideEffect.md @@ -0,0 +1,99 @@ +# SlideEffect + +**Inherits:** [Effect](../Effect) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Control](https://docs.godotengine.org/en/stable/classes/class_control.html) | [target](./#target) | get_parent() | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [slide_speed](./#slide_speed) | 0.1 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [margin](./#margin) | 20 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [direction](./#direction) | "right" | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [slide_out_signal](./#slide_out_signal) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [slide_in](./#slide_in)() | +| void | [slide_out](./#slide_out)() | + + +------------------ + +## Property Descriptions + +### `target` + + +[Control](https://docs.godotengine.org/en/stable/classes/class_control.html) target = get_parent() + + +The target node to slide +### `slide_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) slide_speed = 0.1 + + +Time in seconds to complete the slide effect +### `margin` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) margin = 20 + + +Margin in pixels to start from +### `direction` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) direction = "right" + + +Direction to slide into view from. +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `slide_out_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) slide_out_signal + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `slide_in()` + + +void **slide_in**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `slide_out()` + + +void **slide_out**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/SmoothScrollEffect.md b/docs/class-reference/SmoothScrollEffect.md new file mode 100644 index 000000000..6226e5167 --- /dev/null +++ b/docs/class-reference/SmoothScrollEffect.md @@ -0,0 +1,77 @@ +# SmoothScrollEffect + +**Inherits:** [Effect](../Effect) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) | [tween](./#tween) | | +| [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) | [target](./#target) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [scroll_type](./#scroll_type) | "both" | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [scroll_speed](./#scroll_speed) | 0.25 | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [scroll](./#scroll)(to_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html)) | + + +------------------ + +## Property Descriptions + +### `tween` + + +[Tween](https://docs.godotengine.org/en/stable/classes/class_tween.html) tween + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `target` + + +[ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html) target + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `scroll_type` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) scroll_type = "both" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `scroll_speed` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) scroll_speed = 0.25 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `scroll()` + + +void **scroll**(to_node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/SoftwareUpdater.md b/docs/class-reference/SoftwareUpdater.md new file mode 100644 index 000000000..b14abb1db --- /dev/null +++ b/docs/class-reference/SoftwareUpdater.md @@ -0,0 +1,133 @@ +# SoftwareUpdater + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Version](../Version) | [Version](./#Version) | | +| [PackageVerifier](../PackageVerifier) | [PackageVerifier](./#PackageVerifier) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [update_pack_url](./#update_pack_url) | "" | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [github_project](./#github_project) | "ShadowBlip/OpenGamepadUI" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [update_filename](./#update_filename) | "update.zip" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [update_hash_filename](./#update_hash_filename) | "update.zip.sha256.txt" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [update_folder](./#update_folder) | "user://updates" | +| [GitHubClient](../GitHubClient) | [github_client](./#github_client) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [check_for_updates](./#check_for_updates)() | +| void | [install_update](./#install_update)(download_url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `Version` + + +[Version](../Version) Version + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `PackageVerifier` + + +[PackageVerifier](../PackageVerifier) PackageVerifier + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_pack_url` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) update_pack_url = "" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `github_project` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) github_project = "ShadowBlip/OpenGamepadUI" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_filename` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) update_filename = "update.zip" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_hash_filename` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) update_hash_filename = "update.zip.sha256.txt" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_folder` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) update_folder = "user://updates" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `github_client` + + +[GitHubClient](../GitHubClient) github_client + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `check_for_updates()` + + +void **check_for_updates**() + + +Checks to see if there is a newer version of OpenGamepadUI available. +### `install_update()` + + +void **install_update**(download_url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Downloads and installs the given update diff --git a/docs/class-reference/State.md b/docs/class-reference/State.md new file mode 100644 index 000000000..ae3fcad1f --- /dev/null +++ b/docs/class-reference/State.md @@ -0,0 +1,36 @@ +# State + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Object for tracking the current state of a [StateMachine](../StateMachine) +## Description + +A [State](../State) represents some state of the application, such as the currently focused menu. Together with a [StateMachine](../StateMachine), a [State](../State) can be used to listen for signals whenever the state of the application changes. A [State](../State) takes advantage of the fact that Godot resources are globally unique. This allows you to load a [State](../State) resource from anywhere in the project to subscribe to state changes. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [data](./#data) | | + + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +Optional human-readable name for the state +### `data` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) data + + +DEPRECATED: Use 'set_meta()' or 'get_meta()' instead + diff --git a/docs/class-reference/StateChanger.md b/docs/class-reference/StateChanger.md new file mode 100644 index 000000000..b9c94a9be --- /dev/null +++ b/docs/class-reference/StateChanger.md @@ -0,0 +1,77 @@ +# StateChanger + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [signal_name](./#signal_name) | "button_up" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state](./#state) | 0 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [action](./#action) | 0 | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [data](./#data) | {} | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [state_manager_path](./#state_manager_path) | "/root/Main/StateManager" | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [parent](./#parent) | get_parent() | + + + +------------------ + +## Property Descriptions + +### `signal_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) signal_name = "button_up" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `action` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) action = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `data` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) data = {} + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state_manager_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) state_manager_path = "/root/Main/StateManager" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `parent` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) parent = get_parent() + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/StateMachine.md b/docs/class-reference/StateMachine.md new file mode 100644 index 000000000..a092823d7 --- /dev/null +++ b/docs/class-reference/StateMachine.md @@ -0,0 +1,160 @@ +# StateMachine + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Manages the current [State](../State) for some part of the application. +## Description + +A [StateMachine](../StateMachine) is responsible for managing an arbitrary number of [State](../State) objects. The [StateMachine](../StateMachine) keeps a "stack" of states that can be set, pushed, popped, removed, or cleared, and will fire signals for each kind of change. This can allow the application to update and respond to different states of the [StateMachine](../StateMachine). Only one [State](../State) is considered the "current" state in a [StateMachine](../StateMachine): the last state in the stack. A [State](../State) will fire the "entered" signal whenever it becomes the "current" state, and fires the "exited" signal whenever it leaves the "current" state. The [StateMachine](../StateMachine) takes advantage of the fact that Godot resources are globally unique. This allows you to load a [StateMachine](../StateMachine) resource from anywhere in the project to subscribe to state changes. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [logger_name](./#logger_name) | "StateMachine" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [minimum_states](./#minimum_states) | 1 | +| [State[]](../State) | [allowed_states](./#allowed_states) | [] | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [State](../State) | [current_state](./#current_state)() | +| void | [refresh](./#refresh)() | +| void | [set_state](./#set_state)(new_stack: [State[]](../State)) | +| void | [push_state](./#push_state)(state: [State](../State)) | +| void | [push_state_front](./#push_state_front)(state: [State](../State)) | +| [State](../State) | [pop_state](./#pop_state)() | +| void | [replace_state](./#replace_state)(state: [State](../State)) | +| void | [remove_state](./#remove_state)(state: [State](../State)) | +| void | [clear_states](./#clear_states)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [stack_length](./#stack_length)() | +| [State[]](../State) | [stack](./#stack)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_state](./#has_state)(state: [State](../State)) | + + +------------------ + +## Property Descriptions + +### `logger_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) logger_name = "StateMachine" + + +Name of the state machine to use for logging purposes +### `minimum_states` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) minimum_states = 1 + + +The minimum number of states that this [StateMachine](../StateMachine) must have. This parameter can be used to ensure that states cannot be popped below this number of states. +### `allowed_states` + + +[State[]](../State) allowed_states = [] + + +If set, only the given [State](../State) objects will be allowed to be added to the [StateMachine](../StateMachine). Will panic if an invalid state is added to the stack. If empty, all [State](../State) objects will be allowed. +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `current_state()` + + +[State](../State) **current_state**() + + +Returns the current state at the end of the state stack +### `refresh()` + + +void **refresh**() + + +Emits the 'refreshed' signal on the current [State](../State). This can be used to trigger hand-offs between multiple state machines. +### `set_state()` + + +void **set_state**(new_stack: [State[]](../State)) + + +Set state will set the entire state stack to the given array of states +### `push_state()` + + +void **push_state**(state: [State](../State)) + + +Push state will push the given state to the top of the state stack. +### `push_state_front()` + + +void **push_state_front**(state: [State](../State)) + + +Pushes the given state to the front of the stack +### `pop_state()` + + +[State](../State) **pop_state**() + + +Pop state will remove the last state from the stack and return it. +### `replace_state()` + + +void **replace_state**(state: [State](../State)) + + +Replaces the current state at the end of the stack with the given state +### `remove_state()` + + +void **remove_state**(state: [State](../State)) + + +Removes all instances of the given state from the stack +### `clear_states()` + + +void **clear_states**() + + +Removes all states +### `stack_length()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **stack_length**() + + +Returns the length of the state stack +### `stack()` + + +[State[]](../State) **stack**() + + +Returns the current state stack +### `has_state()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_state**(state: [State](../State)) + + +Returns true if the given state exists anywhere in the state stack diff --git a/docs/class-reference/StateMachineWatcher.md b/docs/class-reference/StateMachineWatcher.md new file mode 100644 index 000000000..b75872649 --- /dev/null +++ b/docs/class-reference/StateMachineWatcher.md @@ -0,0 +1,28 @@ +# StateMachineWatcher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Fires signals based on [StateMachine](../StateMachine) changes +## Description + +The [StateMachineWatcher](../StateMachineWatcher) fires signals based changes to the given [StateMachine](../StateMachine). This enables other nodes to react to state changes. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | + + + +------------------ + +## Property Descriptions + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +Fire signals when this state machine changes + diff --git a/docs/class-reference/StateManager.md b/docs/class-reference/StateManager.md new file mode 100644 index 000000000..e9ecc2875 --- /dev/null +++ b/docs/class-reference/StateManager.md @@ -0,0 +1,137 @@ +# StateManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [starting_state](./#starting_state) | 1 | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [set_state](./#set_state)(stack: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html), data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| void | [push_state](./#push_state)(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), unique: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true, data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| void | [push_state_front](./#push_state_front)(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [pop_state](./#pop_state)(data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| void | [replace_state](./#replace_state)(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), unique: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true, data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| void | [remove_state](./#remove_state)(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [current_state](./#current_state)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [stack_length](./#stack_length)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_state](./#has_state)(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `starting_state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) starting_state = 1 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `set_state()` + + +void **set_state**(stack: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html), data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `push_state()` + + +void **push_state**(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), unique: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true, data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `push_state_front()` + + +void **push_state_front**(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `pop_state()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **pop_state**(data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `replace_state()` + + +void **replace_state**(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), unique: [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) = true, data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `remove_state()` + + +void **remove_state**(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html), data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) = {}) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `current_state()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **current_state**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `stack_length()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **stack_length**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `has_state()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_state**(state: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/StateUpdater.md b/docs/class-reference/StateUpdater.md new file mode 100644 index 000000000..02dfd8aea --- /dev/null +++ b/docs/class-reference/StateUpdater.md @@ -0,0 +1,52 @@ +# StateUpdater + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Update the state of a state machine when a signal fires +## Description + +The [StateUpdater](../StateUpdater) can be added as a child to any node that exposes signals. Upon entering the scene tree, the [StateUpdater](../StateUpdater) connects to a given signal on its parent, and will update the configured state machine's state to the given state, allowing menus to react to state changes (e.g. changing menus) +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | +| [State](../State) | [state](./#state) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [action](./#action) | 0 | + + + +------------------ + +## Property Descriptions + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +The state machine instance to use for managing state changes +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +Signal on our parent to connect to. When this signal fires, the [StateUpdater](../StateUpdater) will change the state machine to the given state. +### `state` + + +[State](../State) state + + +The state to change to when the given signal is emitted. +### `action` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) action = 0 + + +Whether to push, pop, replace, or set the state when the signal has fired. + diff --git a/docs/class-reference/StateWatcher.md b/docs/class-reference/StateWatcher.md new file mode 100644 index 000000000..b600d5116 --- /dev/null +++ b/docs/class-reference/StateWatcher.md @@ -0,0 +1,28 @@ +# StateWatcher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Fires signals based on [State](../State) changes to a [StateMachine](../StateMachine) +## Description + +The [StateWatcher](../StateWatcher) fires signals based on the current [State](../State) of a [StateMachine](../StateMachine). This enables other nodes to react to state changes. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [State](../State) | [state](./#state) | | + + + +------------------ + +## Property Descriptions + +### `state` + + +[State](../State) state + + +Fire signals when this state is switched to + diff --git a/docs/class-reference/StatesWatcher.md b/docs/class-reference/StatesWatcher.md new file mode 100644 index 000000000..5a6baf1a9 --- /dev/null +++ b/docs/class-reference/StatesWatcher.md @@ -0,0 +1,28 @@ +# StatesWatcher + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Fires signals based on [State](../State) changes to a [StateMachine](../StateMachine) +## Description + +The [StatesWatcher](../StatesWatcher) fires signals based on the current [State](../State) of a [StateMachine](../StateMachine). This enables other nodes to react to state changes. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [State[]](../State) | [states](./#states) | | + + + +------------------ + +## Property Descriptions + +### `states` + + +[State[]](../State) states + + +Fire signals when this state is switched to + diff --git a/docs/class-reference/StatusPanel.md b/docs/class-reference/StatusPanel.md new file mode 100644 index 000000000..2e0916e76 --- /dev/null +++ b/docs/class-reference/StatusPanel.md @@ -0,0 +1,107 @@ +# StatusPanel + +**Inherits:** [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [status_texture_map](./#status_texture_map) | {...} | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [title](./#title) | "Setting" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | "Description" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [status](./#status) | 0 | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [color](./#color) | "green" | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [description_label](./#description_label) | | +| [TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) | [texture_rect](./#texture_rect) | | +| [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) | [panel](./#panel) | | + + + +------------------ + +## Property Descriptions + +### `status_texture_map` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) status_texture_map = {...} + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `title` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) title = "Setting" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description = "Description" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `status` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) status = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `color` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) color = "green" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) description_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `texture_rect` + + +[TextureRect](https://docs.godotengine.org/en/stable/classes/class_texturerect.html) texture_rect + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `panel` + + +[PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) panel + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/SteamRemovableMediaManager.md b/docs/class-reference/SteamRemovableMediaManager.md new file mode 100644 index 000000000..4ce6258b9 --- /dev/null +++ b/docs/class-reference/SteamRemovableMediaManager.md @@ -0,0 +1,147 @@ +# SteamRemovableMediaManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [UDisks2Instance](../UDisks2Instance) | [udisks2](./#udisks2) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [block_operations](./#block_operations) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [format_capable](./#format_capable) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [init_capable](./#init_capable) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [format_sd_capable](./#format_sd_capable) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [retrigger_capable](./#retrigger_capable) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [trim_capable](./#trim_capable) | false | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [format_drive](./#format_drive)(device: [BlockDevice](../BlockDevice)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [init_steam_lib](./#init_steam_lib)(partition: [PartitionDevice](../PartitionDevice)) | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [retrigger_automounts](./#retrigger_automounts)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [format_sd_card](./#format_sd_card)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [trim_sd_card](./#trim_sd_card)() | + + +------------------ + +## Property Descriptions + +### `udisks2` + + +[UDisks2Instance](../UDisks2Instance) udisks2 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `block_operations` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) block_operations = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `format_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) format_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `init_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) init_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `format_sd_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) format_sd_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `retrigger_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) retrigger_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `trim_capable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) trim_capable = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `format_drive()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **format_drive**(device: [BlockDevice](../BlockDevice)) + + +Calls the SteamRemovableMedia format-media script to format a drive as EXT4 and intialize it as a steam library +### `init_steam_lib()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **init_steam_lib**(partition: [PartitionDevice](../PartitionDevice)) + + +Calls the SteamRemovableMedia init-media script to intialize a drive as a steam library +### `retrigger_automounts()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **retrigger_automounts**() + + +Calls the SteamRemovableMedia or SteamOS retrigger-automounts script to restart all the media-mount@ scripts. +### `format_sd_card()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **format_sd_card**() + + +Calls the SteamRemovableMedia or SteamOS format-sd script to format mmcblk0 as EXT4 and intialize it as a steam library +### `trim_sd_card()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **trim_sd_card**() + + +Calls the SteamRemovableMedia or SteamOS trim-devices script to perform a trim operation on mmcblk0. diff --git a/docs/class-reference/Store.md b/docs/class-reference/Store.md new file mode 100644 index 000000000..783684e97 --- /dev/null +++ b/docs/class-reference/Store.md @@ -0,0 +1,137 @@ +# Store + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [store_id](./#store_id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [store_name](./#store_name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [store_image](./#store_image) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [logger_name](./#logger_name) | store_id | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [log_level](./#log_level) | 3 | +| [StoreManager](../StoreManager) | [StoreManager](./#StoreManager) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [load_home](./#load_home)() | +| void | [load_installed](./#load_installed)() | +| void | [load_details](./#load_details)(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [search](./#search)(str: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `store_id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) store_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `store_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) store_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `store_image` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) store_image + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) logger_name = store_id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `log_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) log_level = 3 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `StoreManager` + + +[StoreManager](../StoreManager) StoreManager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `load_home()` + + +void **load_home**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `load_installed()` + + +void **load_installed**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `load_details()` + + +void **load_details**(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `search()` + + +void **search**(str: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/StoreItem.md b/docs/class-reference/StoreItem.md new file mode 100644 index 000000000..4aa7fda6a --- /dev/null +++ b/docs/class-reference/StoreItem.md @@ -0,0 +1,57 @@ +# StoreItem + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [id](./#id) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [image](./#image) | | +| [Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) | [texture](./#texture) | | + + + +------------------ + +## Property Descriptions + +### `id` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) id + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `image` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) image + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `texture` + + +[Texture](https://docs.godotengine.org/en/stable/classes/class_texture.html) texture + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/StoreItemDetails.md b/docs/class-reference/StoreItemDetails.md new file mode 100644 index 000000000..fe4789d45 --- /dev/null +++ b/docs/class-reference/StoreItemDetails.md @@ -0,0 +1,5 @@ +# StoreItemDetails + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + diff --git a/docs/class-reference/StoreManager.md b/docs/class-reference/StoreManager.md new file mode 100644 index 000000000..ba272f5bc --- /dev/null +++ b/docs/class-reference/StoreManager.md @@ -0,0 +1,77 @@ +# StoreManager + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [register_store](./#register_store)(store: [Store](../Store)) | +| void | [unregister_store](./#unregister_store)(store: [Store](../Store)) | +| [Store](../Store) | [get_store_by_id](./#get_store_by_id)(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Array](https://docs.godotengine.org/en/stable/classes/class_array.html) | [get_stores](./#get_stores)() | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `register_store()` + + +void **register_store**(store: [Store](../Store)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `unregister_store()` + + +void **unregister_store**(store: [Store](../Store)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_store_by_id()` + + +[Store](../Store) **get_store_by_id**(id: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `get_stores()` + + +[Array](https://docs.godotengine.org/en/stable/classes/class_array.html) **get_stores**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/SubReaper.md b/docs/class-reference/SubReaper.md new file mode 100644 index 000000000..bcdbeb6ab --- /dev/null +++ b/docs/class-reference/SubReaper.md @@ -0,0 +1,25 @@ +# SubReaper + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [create_process](./#create_process)(command: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) | + + +------------------ + +## Method Descriptions + +### `create_process()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **create_process**(command: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/TabContainerState.md b/docs/class-reference/TabContainerState.md new file mode 100644 index 000000000..191aa47b5 --- /dev/null +++ b/docs/class-reference/TabContainerState.md @@ -0,0 +1,66 @@ +# TabContainerState + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Shared resource for the state of a tab container +## Description + +Resource used to watch and manipulate the state of a tab container regardless of where UI components are in the scene tree. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [current_tab](./#current_tab) | 0 | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [tabs_text](./#tabs_text) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [add_tab](./#add_tab)(tab_text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), node: [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html)) | +| void | [remove_tab](./#remove_tab)(tab_text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Property Descriptions + +### `current_tab` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) current_tab = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tabs_text` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) tabs_text + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `add_tab()` + + +void **add_tab**(tab_text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), node: [ScrollContainer](https://docs.godotengine.org/en/stable/classes/class_scrollcontainer.html)) + + +Add the given tab +### `remove_tab()` + + +void **remove_tab**(tab_text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Remove the given tab diff --git a/docs/class-reference/TabLabel.md b/docs/class-reference/TabLabel.md new file mode 100644 index 000000000..3585d70c3 --- /dev/null +++ b/docs/class-reference/TabLabel.md @@ -0,0 +1,57 @@ +# TabLabel + +**Inherits:** [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Tab" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [selected](./#selected) | false | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [label](./#label) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [separator](./#separator) | | + + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Tab" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `selected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) selected = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `separator` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) separator + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/TabSetter.md b/docs/class-reference/TabSetter.md new file mode 100644 index 000000000..fef816991 --- /dev/null +++ b/docs/class-reference/TabSetter.md @@ -0,0 +1,36 @@ +# TabSetter + +**Inherits:** [BehaviorNode](../BehaviorNode) + +Set the current tab on a [TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html) in reaction to a parent signal +## Description + +This [BehaviorNode](../BehaviorNode) can be added as a child to any node and configured to listen for a signal. When the parent signal fires, this behavior will set the current tab on the given target [TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html). +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html) | [target](./#target) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [tab_number](./#tab_number) | 0 | + + + +------------------ + +## Property Descriptions + +### `target` + + +[TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html) target + + +The target [TabContainer](https://docs.godotengine.org/en/stable/classes/class_tabcontainer.html) to update the current tab in response to a signal +### `tab_number` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) tab_number = 0 + + +The current tab number to switch to + diff --git a/docs/class-reference/TabsHeader.md b/docs/class-reference/TabsHeader.md new file mode 100644 index 000000000..ebf1729f9 --- /dev/null +++ b/docs/class-reference/TabsHeader.md @@ -0,0 +1,107 @@ +# TabsHeader + +**Inherits:** [HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) | [tab_label_scene](./#tab_label_scene) | | +| [TabLabel](../TabLabel) | [current_tab](./#current_tab) | | +| [TabContainerState](../TabContainerState) | [tabs_state](./#tabs_state) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_left_separator](./#show_left_separator) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_right_separator](./#show_right_separator) | false | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [l_sep](./#l_sep) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [r_sep](./#r_sep) | | +| [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) | [container](./#container) | | +| [EnhancedScrollContainer](../EnhancedScrollContainer) | [scroll_container](./#scroll_container) | | + + + +------------------ + +## Property Descriptions + +### `tab_label_scene` + + +[PackedScene](https://docs.godotengine.org/en/stable/classes/class_packedscene.html) tab_label_scene + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `current_tab` + + +[TabLabel](../TabLabel) current_tab + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tabs_state` + + +[TabContainerState](../TabContainerState) tabs_state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_left_separator` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_left_separator = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_right_separator` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_right_separator = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `l_sep` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) l_sep + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `r_sep` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) r_sep + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `container` + + +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `scroll_container` + + +[EnhancedScrollContainer](../EnhancedScrollContainer) scroll_container + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/TextSetter.md b/docs/class-reference/TextSetter.md new file mode 100644 index 000000000..809845df4 --- /dev/null +++ b/docs/class-reference/TextSetter.md @@ -0,0 +1,36 @@ +# TextSetter + +**Inherits:** [BehaviorNode](../BehaviorNode) + +Set text on the target [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) node in reaction to a parent signal +## Description + +This [BehaviorNode](../BehaviorNode) can be added as a child to any node and configured to listen for a signal. When the parent signal fires, this behavior will set the text on the given target [Label](https://docs.godotengine.org/en/stable/classes/class_label.html). +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [target](./#target) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "" | + + + +------------------ + +## Property Descriptions + +### `target` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) target + + +The target [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) to update with the given text when a parent signal fires +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "" + + +The text to set on the target label + diff --git a/docs/class-reference/ThemeSetter.md b/docs/class-reference/ThemeSetter.md new file mode 100644 index 000000000..c1dd4c832 --- /dev/null +++ b/docs/class-reference/ThemeSetter.md @@ -0,0 +1,67 @@ +# ThemeSetter + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [SettingsManager](../SettingsManager) | [SettingsManager](./#SettingsManager) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [node_group](./#node_group) | "main" | +| [Theme](https://docs.godotengine.org/en/stable/classes/class_theme.html) | [theme](./#theme) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [persist](./#persist) | true | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [on_signal](./#on_signal) | | + + + +------------------ + +## Property Descriptions + +### `SettingsManager` + + +[SettingsManager](../SettingsManager) SettingsManager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `node_group` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) node_group = "main" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `theme` + + +[Theme](https://docs.godotengine.org/en/stable/classes/class_theme.html) theme + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `persist` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) persist = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `on_signal` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) on_signal + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/ThemeUtils.md b/docs/class-reference/ThemeUtils.md new file mode 100644 index 000000000..70ad4e5aa --- /dev/null +++ b/docs/class-reference/ThemeUtils.md @@ -0,0 +1,23 @@ +# ThemeUtils + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Theme](https://docs.godotengine.org/en/stable/classes/class_theme.html) | [get_effective_theme](./#get_effective_theme)(node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html)) | + + +------------------ + +## Method Descriptions + +### `get_effective_theme()` + + +[Theme](https://docs.godotengine.org/en/stable/classes/class_theme.html) **get_effective_theme**(node: [Control](https://docs.godotengine.org/en/stable/classes/class_control.html)) + + +Returns the effective theme of the node. This will visit each parent node until it finds a theme and returns it. If no theme is found, null will be returned. diff --git a/docs/class-reference/ThreadGroup.md b/docs/class-reference/ThreadGroup.md new file mode 100644 index 000000000..4dba8dd91 --- /dev/null +++ b/docs/class-reference/ThreadGroup.md @@ -0,0 +1,5 @@ +# ThreadGroup + +**Inherits:** [SharedThread](../SharedThread) + +DEPRECATED - Renamed to SharedThread diff --git a/docs/class-reference/ThreadPool.Task.md b/docs/class-reference/ThreadPool.Task.md new file mode 100644 index 000000000..ec42eba30 --- /dev/null +++ b/docs/class-reference/ThreadPool.Task.md @@ -0,0 +1,47 @@ +# ThreadPool.Task + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + +A queued task to run in the thread pool +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [task_name](./#task_name) | | +| [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html) | [method](./#method) | | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [ret](./#ret) | | + + + +------------------ + +## Property Descriptions + +### `task_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) task_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `method` + + +[Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html) method + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `ret` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) ret + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/ThreadPool.md b/docs/class-reference/ThreadPool.md new file mode 100644 index 000000000..4e17abd8e --- /dev/null +++ b/docs/class-reference/ThreadPool.md @@ -0,0 +1,138 @@ +# ThreadPool + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + +Resource that allows executing methods in a thread pool +## Description + +By default, the thread pool will create a thread for each detected core on the running machine. Each thread sleeps until a task is queued when [method exec](https://docs.godotengine.org/en/stable/classes/class_method exec.html) is called. When a task is queued, a thread will wake up and start working on the task until it is completed. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | "ThreadPool" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [size](./#size) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [running](./#running) | false | +| [Thread[]](https://docs.godotengine.org/en/stable/classes/class_thread.html) | [threads](./#threads) | [] | +| [Semaphore](https://docs.godotengine.org/en/stable/classes/class_semaphore.html) | [semaphore](./#semaphore) | | +| [Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) | [mutex](./#mutex) | | +| [ThreadPool.Task[]](../ThreadPool.Task) | [queue](./#queue) | [] | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [start](./#start)() | +| void | [stop](./#stop)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [exec](./#exec)(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html), name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name = "ThreadPool" + + +Name of the thread pool +### `size` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) size + + +Number of threads to create in the thread pool +### `running` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) running = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `threads` + + +[Thread[]](https://docs.godotengine.org/en/stable/classes/class_thread.html) threads = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `semaphore` + + +[Semaphore](https://docs.godotengine.org/en/stable/classes/class_semaphore.html) semaphore + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mutex` + + +[Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) mutex + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `queue` + + +[ThreadPool.Task[]](../ThreadPool.Task) queue = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `start()` + + +void **start**() + + +Starts the threads for the thread pool +### `stop()` + + +void **stop**() + + +Stops the thread pool +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +Returns whether or not the thread pool is running +### `exec()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **exec**(method: [Callable](https://docs.godotengine.org/en/stable/classes/class_callable.html), name: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "") + + +Calls the given method from the thread pool. Internally, this queues the given method and awaits it to be called during the process loop. You should await this method if your method returns something. E.g. [code](https://docs.godotengine.org/en/stable/classes/class_code.html)var result = await thread_pool.exec(myfund.bind("myarg"))[/code](https://docs.godotengine.org/en/stable/classes/class_/code.html) diff --git a/docs/class-reference/Toggle.md b/docs/class-reference/Toggle.md new file mode 100644 index 000000000..f640abfa9 --- /dev/null +++ b/docs/class-reference/Toggle.md @@ -0,0 +1,127 @@ +# Toggle + +**Inherits:** [BoxContainer](https://docs.godotengine.org/en/stable/classes/class_boxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Setting" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [separator_visible](./#separator_visible) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_label](./#show_label) | true | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [description](./#description) | "" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [button_pressed](./#button_pressed) | false | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [disabled](./#disabled) | false | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [description_label](./#description_label) | | +| [CheckButton](https://docs.godotengine.org/en/stable/classes/class_checkbutton.html) | [check_button](./#check_button) | | +| [HSeparator](https://docs.godotengine.org/en/stable/classes/class_hseparator.html) | [hsep](./#hsep) | | +| [PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) | [panel](./#panel) | | + + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Setting" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `separator_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) separator_visible = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_label` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_label = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) description = "" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `button_pressed` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) button_pressed = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `disabled` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) disabled = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `description_label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) description_label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `check_button` + + +[CheckButton](https://docs.godotengine.org/en/stable/classes/class_checkbutton.html) check_button + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hsep` + + +[HSeparator](https://docs.godotengine.org/en/stable/classes/class_hseparator.html) hsep + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `panel` + + +[PanelContainer](https://docs.godotengine.org/en/stable/classes/class_panelcontainer.html) panel + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/Transition.md b/docs/class-reference/Transition.md new file mode 100644 index 000000000..873d870f9 --- /dev/null +++ b/docs/class-reference/Transition.md @@ -0,0 +1,37 @@ +# Transition + +**Inherits:** [AnimationPlayer](https://docs.godotengine.org/en/stable/classes/class_animationplayer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [enter_animation](./#enter_animation) | "enter" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [exit_animation](./#exit_animation) | "exit" | + + + +------------------ + +## Property Descriptions + +### `enter_animation` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) enter_animation = "enter" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `exit_animation` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) exit_animation = "exit" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/TransitionContainer.md b/docs/class-reference/TransitionContainer.md new file mode 100644 index 000000000..7553415a6 --- /dev/null +++ b/docs/class-reference/TransitionContainer.md @@ -0,0 +1,57 @@ +# TransitionContainer + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +DEPRECATED - Add transitions to VisibilityManager instead +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [enter](./#enter)() | +| void | [exit](./#exit)() | + + +------------------ + +## Property Descriptions + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `enter()` + + +void **enter**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `exit()` + + +void **exit**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/UDisks2Instance.md b/docs/class-reference/UDisks2Instance.md new file mode 100644 index 000000000..0c747e47a --- /dev/null +++ b/docs/class-reference/UDisks2Instance.md @@ -0,0 +1,45 @@ +# UDisks2Instance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [BlockDevice[]](../BlockDevice) | [get_unprotected_devices](./#get_unprotected_devices)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| void | [process](./#process)() | + + +------------------ + +## Method Descriptions + +### `get_unprotected_devices()` + + +[BlockDevice[]](../BlockDevice) **get_unprotected_devices**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/UPowerDevice.md b/docs/class-reference/UPowerDevice.md new file mode 100644 index 000000000..c363955ef --- /dev/null +++ b/docs/class-reference/UPowerDevice.md @@ -0,0 +1,317 @@ +# UPowerDevice + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [battery_level](./#battery_level) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [charge_cycles](./#charge_cycles) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [dbus_path](./#dbus_path) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [energy](./#energy) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [energy_empty](./#energy_empty) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [energy_full](./#energy_full) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [energy_full_design](./#energy_full_design) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [energy_rate](./#energy_rate) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_history](./#has_history) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_statistics](./#has_statistics) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [icon_name](./#icon_name) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_present](./#is_present) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_rechargeable](./#is_rechargeable) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [luminosity](./#luminosity) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [model](./#model) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [native_path](./#native_path) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [online](./#online) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [percentage](./#percentage) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [power_supply](./#power_supply) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [serial](./#serial) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [state](./#state) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [technology](./#technology) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [temperature](./#temperature) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [time_to_empty](./#time_to_empty) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [time_to_full](./#time_to_full) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [type_](./#type_) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [update_time](./#update_time) | | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [vendor](./#vendor) | | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [voltage](./#voltage) | | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [warning_level](./#warning_level) | | + + + +------------------ + +## Property Descriptions + +### `battery_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) battery_level + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `charge_cycles` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) charge_cycles + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `dbus_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) dbus_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `energy` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) energy + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `energy_empty` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) energy_empty + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `energy_full` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) energy_full + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `energy_full_design` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) energy_full_design + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `energy_rate` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) energy_rate + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `has_history` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) has_history + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `has_statistics` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) has_statistics + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `icon_name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) icon_name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `is_present` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_present + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `is_rechargeable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) is_rechargeable + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `luminosity` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) luminosity + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `model` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) model + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `native_path` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) native_path + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `online` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) online + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `percentage` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) percentage + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `power_supply` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) power_supply + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `serial` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) serial + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `state` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) state + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `technology` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) technology + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `temperature` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) temperature + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `time_to_empty` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) time_to_empty + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `time_to_full` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) time_to_full + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `type_` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) type_ + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `update_time` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) update_time + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `vendor` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) vendor + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `voltage` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) voltage + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `warning_level` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) warning_level + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/UPowerInstance.md b/docs/class-reference/UPowerInstance.md new file mode 100644 index 000000000..cd6eef85f --- /dev/null +++ b/docs/class-reference/UPowerInstance.md @@ -0,0 +1,67 @@ +# UPowerInstance + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [on_battery](./#on_battery) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [UPowerDevice](../UPowerDevice) | [get_display_device](./#get_display_device)() | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [is_running](./#is_running)() | +| void | [process](./#process)() | + + +------------------ + +## Property Descriptions + +### `on_battery` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) on_battery + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_display_device()` + + +[UPowerDevice](../UPowerDevice) **get_display_device**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `is_running()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **is_running**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `process()` + + +void **process**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/UUID.md b/docs/class-reference/UUID.md new file mode 100644 index 000000000..6eafecbc7 --- /dev/null +++ b/docs/class-reference/UUID.md @@ -0,0 +1,45 @@ +# UUID + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [getRandomInt](./#getRandomInt)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [uuidbin](./#uuidbin)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [v4](./#v4)() | + + +------------------ + +## Method Descriptions + +### `getRandomInt()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **getRandomInt**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `uuidbin()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **uuidbin**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `v4()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **v4**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/UserInterface.md b/docs/class-reference/UserInterface.md new file mode 100644 index 000000000..b7f4c50c1 --- /dev/null +++ b/docs/class-reference/UserInterface.md @@ -0,0 +1,27 @@ +# UserInterface + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | | + + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/ValueSlider.md b/docs/class-reference/ValueSlider.md new file mode 100644 index 000000000..5f87bedb3 --- /dev/null +++ b/docs/class-reference/ValueSlider.md @@ -0,0 +1,167 @@ +# ValueSlider + +**Inherits:** [VBoxContainer](https://docs.godotengine.org/en/stable/classes/class_vboxcontainer.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [text](./#text) | "Setting" | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_label](./#show_label) | true | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [value](./#value) | 0.0 | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [max_value](./#max_value) | 100.0 | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [min_value](./#min_value) | 0.0 | +| [float](https://docs.godotengine.org/en/stable/classes/class_float.html) | [step](./#step) | 1.0 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [editable](./#editable) | true | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [show_decimal](./#show_decimal) | false | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [tick_count](./#tick_count) | 0 | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [separator_visible](./#separator_visible) | false | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label](./#label) | | +| [Label](https://docs.godotengine.org/en/stable/classes/class_label.html) | [label_value](./#label_value) | | +| [HSlider](https://docs.godotengine.org/en/stable/classes/class_hslider.html) | [slider](./#slider) | | +| [HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) | [hbox](./#hbox) | | +| [HSeparator](https://docs.godotengine.org/en/stable/classes/class_hseparator.html) | [hsep](./#hsep) | | + + + +------------------ + +## Property Descriptions + +### `text` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) text = "Setting" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_label` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_label = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `value` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) value = 0.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `max_value` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) max_value = 100.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `min_value` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) min_value = 0.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `step` + + +[float](https://docs.godotengine.org/en/stable/classes/class_float.html) step = 1.0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `editable` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) editable = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `show_decimal` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) show_decimal = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `tick_count` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) tick_count = 0 + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `separator_visible` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) separator_visible = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `label_value` + + +[Label](https://docs.godotengine.org/en/stable/classes/class_label.html) label_value + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `slider` + + +[HSlider](https://docs.godotengine.org/en/stable/classes/class_hslider.html) slider + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hbox` + + +[HBoxContainer](https://docs.godotengine.org/en/stable/classes/class_hboxcontainer.html) hbox + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `hsep` + + +[HSeparator](https://docs.godotengine.org/en/stable/classes/class_hseparator.html) hsep + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/Vdf.md b/docs/class-reference/Vdf.md new file mode 100644 index 000000000..4cb6060e7 --- /dev/null +++ b/docs/class-reference/Vdf.md @@ -0,0 +1,77 @@ +# Vdf + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [data](./#data) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [get_error_message](./#get_error_message)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [parse](./#parse)(vdf_text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) | [parse_string](./#parse_string)(vdf_string: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [stringify](./#stringify)(data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) | + + +------------------ + +## Property Descriptions + +### `data` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) data + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `get_error_message()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **get_error_message**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `parse()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **parse**(vdf_text: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `parse_string()` + + +[Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html) **parse_string**(vdf_string: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `stringify()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **stringify**(data: [Dictionary](https://docs.godotengine.org/en/stable/classes/class_dictionary.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/Version.md b/docs/class-reference/Version.md new file mode 100644 index 000000000..653a6726b --- /dev/null +++ b/docs/class-reference/Version.md @@ -0,0 +1,37 @@ +# Version + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [core](./#core) | "0.0.0" | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [plugin_api](./#plugin_api) | "0.0.0" | + + + +------------------ + +## Property Descriptions + +### `core` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) core = "0.0.0" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `plugin_api` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) plugin_api = "0.0.0" + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + diff --git a/docs/class-reference/VisibilityManager.md b/docs/class-reference/VisibilityManager.md new file mode 100644 index 000000000..d5dfed525 --- /dev/null +++ b/docs/class-reference/VisibilityManager.md @@ -0,0 +1,94 @@ +# VisibilityManager + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + +Update visibility based on [State](../State) changes to a [StateMachine](../StateMachine) +## Description + +DEPRECATED in favor of [StateWatcher](../StateWatcher) with a child [Effect](../Effect). The [VisibilityManager](../VisibilityManager) manages the visibility of its parent node based on the current [State](../State) of a [StateMachine](../StateMachine). This enables nodes to be visible or invisible only during the correct state(s), allowing menus to hide themselves or become visible depending on the state. Optionally, [Transition](../Transition) nodes can be added as a child to [VisibilityManager](../VisibilityManager) to play an animation to show or hide the node. +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [StateMachine](../StateMachine) | [state_machine](./#state_machine) | | +| [State](../State) | [state](./#state) | | +| [Resource[]](https://docs.godotengine.org/en/stable/classes/class_resource.html) | [visible_during](./#visible_during) | [] | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [has_transitions](./#has_transitions)() | +| void | [enter](./#enter)() | +| void | [exit](./#exit)() | + + +------------------ + +## Property Descriptions + +### `state_machine` + + +[StateMachine](../StateMachine) state_machine + + +The state machine instance to use for managing state changes +### `state` + + +[State](../State) state + + +Toggles visibility when this state is entered +### `visible_during` + + +[Resource[]](https://docs.godotengine.org/en/stable/classes/class_resource.html) visible_during = [] + + +Toggles visibility when any of these states are entered, but the main state exists in the state stack +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `has_transitions()` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) **has_transitions**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `enter()` + + +void **enter**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `exit()` + + +void **exit**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/WatchdogThread.md b/docs/class-reference/WatchdogThread.md new file mode 100644 index 000000000..99027d87e --- /dev/null +++ b/docs/class-reference/WatchdogThread.md @@ -0,0 +1,125 @@ +# WatchdogThread + +**Inherits:** [Resource](https://docs.godotengine.org/en/stable/classes/class_resource.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [name](./#name) | "WatchdogThread" | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [target_tick_rate](./#target_tick_rate) | 1 | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [warn_after_num_missed_frames](./#warn_after_num_missed_frames) | 20 | +| [Thread](https://docs.godotengine.org/en/stable/classes/class_thread.html) | [thread](./#thread) | | +| [SharedThread[]](../SharedThread) | [threads_to_watch](./#threads_to_watch) | [] | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [running](./#running) | true | +| [Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) | [mutex](./#mutex) | | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [add_thread](./#add_thread)(thread: [SharedThread](../SharedThread)) | +| void | [stop](./#stop)() | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [get_target_frame_time](./#get_target_frame_time)(tick_rate: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) | + + +------------------ + +## Property Descriptions + +### `name` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) name = "WatchdogThread" + + +Name of the watchdog thread +### `target_tick_rate` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) target_tick_rate = 1 + + +Target rate to run at in ticks per second +### `warn_after_num_missed_frames` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) warn_after_num_missed_frames = 20 + + +Number of missed frame times before logging a warning that a thread might be blocked +### `thread` + + +[Thread](https://docs.godotengine.org/en/stable/classes/class_thread.html) thread + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `threads_to_watch` + + +[SharedThread[]](../SharedThread) threads_to_watch = [] + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `running` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) running = true + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `mutex` + + +[Mutex](https://docs.godotengine.org/en/stable/classes/class_mutex.html) mutex + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `add_thread()` + + +void **add_thread**(thread: [SharedThread](../SharedThread)) + + +Add the given shared thread +### `stop()` + + +void **stop**() + + +Stops the thread +### `get_target_frame_time()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **get_target_frame_time**(tick_rate: [int](https://docs.godotengine.org/en/stable/classes/class_int.html)) + + +Returns the target frame time in microseconds of the WatchdogThread diff --git a/docs/class-reference/WebsocketRPCClient.md b/docs/class-reference/WebsocketRPCClient.md new file mode 100644 index 000000000..538aa9b32 --- /dev/null +++ b/docs/class-reference/WebsocketRPCClient.md @@ -0,0 +1,87 @@ +# WebsocketRPCClient + +**Inherits:** [Node](https://docs.godotengine.org/en/stable/classes/class_node.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [WebSocketPeer](https://docs.godotengine.org/en/stable/classes/class_websocketpeer.html) | [socket](./#socket) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [connected](./#connected) | false | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [int](https://docs.godotengine.org/en/stable/classes/class_int.html) | [open](./#open)(url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "ws://localhost:5000") | +| void | [close](./#close)() | +| [Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) | [make_request](./#make_request)(method: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html)) | + + +------------------ + +## Property Descriptions + +### `socket` + + +[WebSocketPeer](https://docs.godotengine.org/en/stable/classes/class_websocketpeer.html) socket + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `connected` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) connected = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `open()` + + +[int](https://docs.godotengine.org/en/stable/classes/class_int.html) **open**(url: [String](https://docs.godotengine.org/en/stable/classes/class_string.html) = "ws://localhost:5000") + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `close()` + + +void **close**() + + +!!! note + There is currently no description for this method. Please help us by contributing one! + +### `make_request()` + + +[Variant](https://docs.godotengine.org/en/stable/classes/class_variant.html) **make_request**(method: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), args: [Array](https://docs.godotengine.org/en/stable/classes/class_array.html)) + + +!!! note + There is currently no description for this method. Please help us by contributing one! + diff --git a/docs/class-reference/WifiNetworkTree.md b/docs/class-reference/WifiNetworkTree.md new file mode 100644 index 000000000..7ded790ac --- /dev/null +++ b/docs/class-reference/WifiNetworkTree.md @@ -0,0 +1,73 @@ +# WifiNetworkTree + +**Inherits:** [Tree](https://docs.godotengine.org/en/stable/classes/class_tree.html) + + +## Properties + +| Type | Name | Default | +| ---- | ---- | ------- | +| [NetworkManagerInstance](../NetworkManagerInstance) | [network_manager](./#network_manager) | | +| [bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) | [connecting](./#connecting) | false | +| [CustomLogger](../CustomLogger) | [logger](./#logger) | | + +## Methods + +| Returns | Signature | +| ------- | --------- | +| void | [network_connect](./#network_connect)(password: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), ssid: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | +| void | [refresh_networks](./#refresh_networks)() | + + +------------------ + +## Property Descriptions + +### `network_manager` + + +[NetworkManagerInstance](../NetworkManagerInstance) network_manager + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `connecting` + + +[bool](https://docs.godotengine.org/en/stable/classes/class_bool.html) connecting = false + + +!!! note + There is currently no description for this property. Please help us by contributing one! + +### `logger` + + +[CustomLogger](../CustomLogger) logger + + +!!! note + There is currently no description for this property. Please help us by contributing one! + + + + +------------------ + +## Method Descriptions + +### `network_connect()` + + +void **network_connect**(password: [String](https://docs.godotengine.org/en/stable/classes/class_string.html), ssid: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Connect to the given wireless network +### `refresh_networks()` + + +void **refresh_networks**() + + +Refreshes the available wifi networks diff --git a/docs/class-reference/Xdg.md b/docs/class-reference/Xdg.md new file mode 100644 index 000000000..26be64f7e --- /dev/null +++ b/docs/class-reference/Xdg.md @@ -0,0 +1,31 @@ +# Xdg + +**Inherits:** [RefCounted](https://docs.godotengine.org/en/stable/classes/class_refcounted.html) + + +## Methods + +| Returns | Signature | +| ------- | --------- | +| [PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) | [get_data_dirs](./#get_data_dirs)() | +| [String](https://docs.godotengine.org/en/stable/classes/class_string.html) | [with_system_path](./#with_system_path)(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) | + + +------------------ + +## Method Descriptions + +### `get_data_dirs()` + + +[PackedStringArray](https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html) **get_data_dirs**() + + +Return a list of system data paths in load preference order. +### `with_system_path()` + + +[String](https://docs.godotengine.org/en/stable/classes/class_string.html) **with_system_path**(path: [String](https://docs.godotengine.org/en/stable/classes/class_string.html)) + + +Return the XDG system data path with the given relative path. For example, using `Xdg.with_system_path("hwdata")` will return "/usr/share/hwdata". If XDG is unable to determine the path, the fallback prefix of "/usr/share" will be used. diff --git a/docs/documentation/.nav.yml b/docs/documentation/.nav.yml new file mode 100644 index 000000000..690eb24bf --- /dev/null +++ b/docs/documentation/.nav.yml @@ -0,0 +1,4 @@ +nav: + - ./getting-started + - ./contributing + - ./plugins diff --git a/docs/documentation/contributing/.nav.yml b/docs/documentation/contributing/.nav.yml new file mode 100644 index 000000000..7b54f2726 --- /dev/null +++ b/docs/documentation/contributing/.nav.yml @@ -0,0 +1,10 @@ +nav: + - ./before_you_start.md + - ./release_policy.md + - ./best_practices.md + - ./building_from_source.md + - ./code_style_guidelines.md + - ./core_systems_and_architecture.md + - ./writing_decoupled_code.md + - ./creating_a_menu.md + - ./deploying.md diff --git a/docs/documentation/contributing/adding_a_new_platform.md b/docs/documentation/contributing/adding_a_new_platform.md new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/docs/documentation/contributing/adding_a_new_platform.md @@ -0,0 +1 @@ + diff --git a/docs/documentation/contributing/before_you_start.md b/docs/documentation/contributing/before_you_start.md new file mode 100644 index 000000000..fb7dafe0d --- /dev/null +++ b/docs/documentation/contributing/before_you_start.md @@ -0,0 +1,29 @@ +# Before you start + +OpenGamepadUI is written using the [Godot Game Engine +4](https://godotengine.org/). If you don't have any experience with the +Godot engine, it might be best to try completing a tutorial or two to +get familiar with how the engine, and its scripting language GDScript, +works. + +There are some great tutorials here to get started: + +- +- +- + +OpenGamepadUI is primarily written in GDScript and some Rust, but parts +of the project could potentially be written using other languages using +GDExtension, if required. + +## Contributing + +OpenGamepadUI is a free and open source project. Its contributors +develop it pro bono in their free time out of personal interest. + +Before working on a feature or bug, be sure to look for the issue in the +[issue tracker](https://github.com/ShadowBlip/OpenGamepadUI/issues) to +see if the issue is already being tracked or worked on by another member +of the community. If not, open a new issue describing the bug or +feature. It's important to discuss bugs and features with other +contributors. diff --git a/docs/documentation/contributing/best_practices.md b/docs/documentation/contributing/best_practices.md new file mode 100644 index 000000000..c62832f88 --- /dev/null +++ b/docs/documentation/contributing/best_practices.md @@ -0,0 +1,36 @@ +# Best practices + +## #1 Always start with an issue + +Coordinating an open source project is hard. One of the most important +steps to contributing is opening an issue describing the bug or feature +you want to work on, and discussing if/how the problem should be +resolved or implemented. Maintaining a large code base is difficult and +implementation and coordination is key. + +## #2 Prefer small scope pull requests + +Pull requests should try to be small in scope and only address one +relevant feature or bug. Try not to include unrelated fixes or features +in the same pull request. Open a separate one for each issue you +address. + +## #3 Prefer standalone, composable, decoupled solutions + +When contributing code for bugs or features, try to ensure that your +solution is as independent and decoupled from other systems as possible. +This usually means taking advantage of Godot's +[signals](https://docs.godotengine.org/en/latest/getting_started/step_by_step/signals.html) +feature, [node +groups](https://docs.godotengine.org/en/latest/tutorials/scripting/groups.html), +and +[resources](https://docs.godotengine.org/en/latest/tutorials/scripting/resources.html). +Your solution should be able to run independently, even if other systems +you rely on might not be available. + +## #4 Prefer solutions without external dependencies + +OpenGamepadUI aims to be portable and not rely on system-installed +dependencies. In some cases not every problem has a simple solution, so +sometimes the right choice is to rely on a third-party dependency, but +try to create a self-contained solution, if possible. diff --git a/docs/documentation/contributing/building_from_source.md b/docs/documentation/contributing/building_from_source.md new file mode 100644 index 000000000..b21058616 --- /dev/null +++ b/docs/documentation/contributing/building_from_source.md @@ -0,0 +1,73 @@ +# Building from source + +## Getting the source + +Before building OpenGamepadUI, you first need to actually download the +source code using `git`. Ensure you have `git` installed, and run the +following to clone the project locally: + +``` bash +git clone https://github.com/ShadowBlip/OpenGamepadUI.git +``` + +## Build Requirements + +The following are required to build Open Gamepad UI: + +- Godot 4.x +- GCC 7+ or Clang 6+. +- pkg-config (used to detect the dependencies below). +- X11, Xcursor, Xinerama, Xi and XRandR development libraries. +- MesaGL development libraries. +- ALSA development libraries. +- PulseAudio development libraries. +- Evdev development libraries +- Rust +- make (optional) +- unzip (optional) +- wget (optional) + +If you are using ArchLinux, you can run the following: + +``` bash +pacman -S --needed scons pkgconf gcc gcc-libs libxcursor libxinerama libxi libxrandr mesa glu libglvnd alsa-lib make cmake unzip wget git libevdev libxau libxcb libxdmcp libxext libxres libxtst squashfs-tools godot +``` + +## Building + +OpenGamepadUI uses `make` to help make developing the project easier. +You can view the things you can do with `make` by running `make help`: + +![image](../../assets/makefile.png) + +You can build the OpenGamepadUI binary using the following: + +``` bash +make build +``` + +Godot imports and converts assets when it builds. If you see errors +related to failing to load resources. Try running: + +``` bash +make import +``` + +## Usage + +Open Gamepad UI works in conjunction with +[gamescope](https://github.com/Plagman/gamescope/) to manage launching +games in a seamless way. + +To run OpenGamepadUI, run the following to launch through gamescope: + +``` bash +make run +``` + +You can also run OpenGamepadUI in gamescope in debug mode with the Godot +editor open with: + +``` bash +make debug +``` diff --git a/docs/documentation/contributing/code_style_guidelines.md b/docs/documentation/contributing/code_style_guidelines.md new file mode 100644 index 000000000..ac6d5d124 --- /dev/null +++ b/docs/documentation/contributing/code_style_guidelines.md @@ -0,0 +1,24 @@ +# Code Style Guidelines + +In general, OpenGamepadUI tries to conform to using the official +GDScript style guide from Godot: + + + +Some additional guidelines to try and follow are: + +- Always use type annotations. Knowing our types is half the battle + +Good + +``` gdscript +func do_something(button: Button) -> void: + var button_name := button.name +``` + +Bad + +``` gdscript +func do_something(button): + var button_name = button.name +``` diff --git a/docs/documentation/contributing/core_systems_and_architecture.md b/docs/documentation/contributing/core_systems_and_architecture.md new file mode 100644 index 000000000..4214dbcd2 --- /dev/null +++ b/docs/documentation/contributing/core_systems_and_architecture.md @@ -0,0 +1,155 @@ +# Core systems & architecture + +This section describes the organization of OpenGamepadUI's source code, +and provides an overview of the architecture and systems that it uses. + +## Project Layout + +```bash +OpenGamepadUI +β”œβ”€β”€ addons # 3rd party libraries & Compiled rust extensions +β”œβ”€β”€ assets # Images, sound, state, themes, shaders, etc. +β”œβ”€β”€ core +β”‚Β Β  β”œβ”€β”€ global # (Deprecated) Global systems +β”‚Β Β  β”œβ”€β”€ main.{gd,tscn} # Loads the appropriate UI (e.g. Card UI) +β”‚Β Β  β”œβ”€β”€ platform # Platform-specific logic +β”‚Β Β  β”œβ”€β”€ systems # Core application logic and systems +β”‚Β Β  └── ui # Menus and menu components +β”œβ”€β”€ CREDITS.md # Attributions for contributors +β”œβ”€β”€ docs +β”œβ”€β”€ entrypoint.{gd,tscn} # Application entrypoint script/scene +β”œβ”€β”€ extensions # Rust GDExtension source code +β”œβ”€β”€ export_presets.cfg +β”œβ”€β”€ icon.svg +β”œβ”€β”€ LICENSE # License file +β”œβ”€β”€ Makefile # Makefile +β”œβ”€β”€ plugins # Used for plugin development +β”œβ”€β”€ project.godot +β”œβ”€β”€ README.md # Project README +└── rootfs # Filesystem and scripts for final package +``` + +### Addons + +The `addons` directory contains 3rd party libraries used by OpenGamepadUI +as well as compiled [GDExtension](https://docs.godotengine.org/en/stable/tutorials/scripting/gdextension/index.html) +code from the `extensions` folder. Some 3rd party libraries include the +[GUT testing framework ](https://github.com/bitwes/Gut) and more. + +### Extensions + +Godot Engine provides a lot of functionality, but not everything that OpenGamepadUI +needs. + +The `extensions` directory contains the Rust source code used to extend the +functionality of the engine using [GDExtension](https://docs.godotengine.org/en/stable/tutorials/scripting/gdextension/index.html). +This is typically done to add performance-sensitive code as well as add +support for interacting with systems like Gamescope and DBus. +When OpenGamepadUI is built, these extensions are compiled to the `addons` +directory. + +### Assets + +The `assets` directory contains all of the images, icons, sounds, +shaders, themes, state, etc. + +```bash +assets/ +β”œβ”€β”€ animations +β”œβ”€β”€ audio +β”œβ”€β”€ crypto +β”œβ”€β”€ editor-icons +β”œβ”€β”€ gamepad +β”œβ”€β”€ icons +β”œβ”€β”€ images +β”œβ”€β”€ keyboard +β”œβ”€β”€ label +β”œβ”€β”€ shaders +β”œβ”€β”€ state +β”œβ”€β”€ styles +β”œβ”€β”€ themes +β”œβ”€β”€ ui +└── videos +``` + +### Global Systems + +The `core/global` directory contains "global" systems that can be used +from any script in the project. This directory has been deprecated in +favor of just putting these systems in the `systems` directory instead. + +OpenGamepadUI has several global systems that are typically implemented +as a [custom +resource](https://docs.godotengine.org/en/latest/tutorials/scripting/resources.html#creating-your-own-resources). +Resources in Godot are unique in that they are only ever loaded once by +the engine. This allows nodes to access their functionality regardless +of where they are in the scene tree. + +### Platform + +The `core/platform` directory contains platform-specific logic, such as +modifying the behavior, look, or feel of OpenGamepadUI when running on +different hardware or OS platforms. + +Examples of this might be using custom gamepad icons for a handheld, or +running specific logic to start a driver. + +### Systems + +The `core/systems` directory contains all the core application logic of +OpenGamepadUI. These systems should not contain any UI-specific logic. +An example of a core system is +`BluetoothManager`, which provides methods for interacting with bluetooth. + +Systems are usually implemented as a +[Node](https://docs.godotengine.org/en/stable/classes/class_node.html) +that can be added to the scene tree or implemented as a [custom +resource](https://docs.godotengine.org/en/latest/tutorials/scripting/resources.html#creating-your-own-resources) +that can be loaded and referenced regardless of where it is called from +the scene tree. + +### UI + +The `core/ui` directory contains all of the user interface scenes and +scripts of OpenGamepadUI. That includes things like menus as well as UI +components like buttons and text boxes. Each menu scene provides the +glue between the various UI components and backend systems. + +### Root Filesystem + +The `rootfs` directory contains additional system configuration and +supplemental scripts that should be part of the OpenGamepadUI package +when installed. It includes things like polkit policies for executing +certain commands with elevated privileges and helper scripts to interact +with the system. + +```bash +rootfs +β”œβ”€β”€ Makefile +└── usr + β”œβ”€β”€ bin + β”‚Β Β  └── opengamepadui + β”œβ”€β”€ lib + β”‚Β Β  └── systemd + β”‚Β Β  └── user + β”‚Β Β  β”œβ”€β”€ ogui-overlay-mode.service + β”‚Β Β  └── systemd-sysext-updater.service + └── share + β”œβ”€β”€ applications + β”‚Β Β  └── opengamepadui.desktop + β”œβ”€β”€ icons + β”‚Β Β  └── hicolor + β”‚Β Β  └── scalable + β”‚Β Β  └── apps + β”‚Β Β  └── opengamepadui.svg + β”œβ”€β”€ opengamepadui + β”‚Β Β  └── scripts + β”‚Β Β  β”œβ”€β”€ make_nice + β”‚Β Β  β”œβ”€β”€ manage_input + β”‚Β Β  └── update_systemd_ext.sh + └── polkit-1 + └── actions + β”œβ”€β”€ org.shadowblip.manage_input.policy + β”œβ”€β”€ org.shadowblip.nixos_updater.policy + └── org.shadowblip.setcap.policy +``` diff --git a/docs/documentation/contributing/creating_a_menu.md b/docs/documentation/contributing/creating_a_menu.md new file mode 100644 index 000000000..93bac421d --- /dev/null +++ b/docs/documentation/contributing/creating_a_menu.md @@ -0,0 +1,51 @@ +# Creating a menu + +OpenGamepadUI is composed of many different menus, all of which are +contained in their own scene. Menus are the glue between the various +built-in and custom UI components and the backend systems that we want +to control. + +This page is a guide on how most menus are created in OpenGamepadUI and +how they work with other menus. + +## How menu switching works + +In OpenGamepadUI, nearly all menus get loaded and added to the scene +tree on startup. Menus are "switched to" by toggling visibility of the +menu in the scene tree. The visibility of menus is coordinated using a +`StateMachine` which +keeps track of the current menu state. + +You can see in this example scene tree that there is an instance of +every menu defined in the scene, but their visibility is toggled off: + +![image](../../assets/scene-tree.png) + +Each menu toggles their visibility on or off by listening for the +`state_entered` or `state_exited` signals fired by its +`State`. This is normally +done using a +`VisibilityManager` or `StateWatcher` node that is added to the menu. These nodes allow you to +configure a `State` to listen +for state change signals to play an animation or show your menu. + +## How menu focus works + +Godot has built-in support for focus of menu items. By default, focus +will flow to the next nearest visible focusable UI element. The +`FocusSetter` node can +be used to set the current focus in response to a signal. + +For more complex focus flows, each element can configure its +`focus_neighbors` to define focusable nodes above, below, left, and +right of the current node. + +In some cases, configuring the focus neighbors for each node in a menu +can be quite laborious. To aid with this, there is also a +`FocusGroup` node that +can be added to any +[Container](https://docs.godotengine.org/en/stable/classes/class_container.html) +node to automatically configure the focus neighbors. +`FocusGroup` nodes also +have focus neighbors to allow you to jump focus between groups of +focusable nodes. diff --git a/docs/documentation/contributing/deploying.md b/docs/documentation/contributing/deploying.md new file mode 100644 index 000000000..b6277ec31 --- /dev/null +++ b/docs/documentation/contributing/deploying.md @@ -0,0 +1,26 @@ +# Deploying + +If you would like to build and deploy OpenGamepadUI to a remote system, +the `Makefile` can help make this easier. + +First, in the OpenGamepadUI project directory, create a `settings.mk` +file with the SSH user and host you want to deploy to: + + +```make title="settings.mk" +SSH_USER = gamer +SSH_HOST = 192.168.0.26 +SYSEXT_ID = chimeraos +SYSEXT_VERSION_ID = 44 +``` + +Replace the values in this file with the appropriate ones for your +remote device. + +You can now build and deploy OpenGamepadUI using one of the following +methods: + +```bash +make deploy-update +make deploy-ext +``` diff --git a/docs/documentation/contributing/release_policy.md b/docs/documentation/contributing/release_policy.md new file mode 100644 index 000000000..34ba05820 --- /dev/null +++ b/docs/documentation/contributing/release_policy.md @@ -0,0 +1,45 @@ +# Release Policy + +OpenGamepadUI's release policy is subject to change, but the +description below provides a general idea of what to expect. + +## OpenGamepadUI versioning + +OpenGamepadUI follows [Semantic Versioning](https://semver.org/) with a +`major.minor.patch` versioning system, to help provide a relatively +stable platform for plugin developers: + +- The `major` version is incremented when major compatibility breakages + happen which imply significant porting work to move plugins from one + major version to another. + +- The `minor` version is incremented for feature releases that do not + break compatibility in a major way. Minor compatibility breakage in + very specific areas *may* happen in minor versions, but the vast + majority of plugins should not be affected or require significant + porting work.

+ In some circumstances a bug fix or feature might effect application + behavior, but it should be generally backwards compatible. + +!!! note "Tip" + + Upgrading to a new minor version is recommended for all users, but some + testing is necessary to ensure that all plugins still behave as + expected. + +- The `patch` version is incremented for maintenance releases which + focus on fixing bugs and security issues, and backporting safe + usability enhancements. Patch releases are backwards compatible.

+ Patch versions may include minor new features which do not impact the + existing API, and thus have no risk of impacting existing plugins. + +!!! note "Tip" + + Updating to new patch versions is therefore considered safe and strongly + recommended to all users of a given stable branch. + +We call `major.minor` combinations *stable branches*. Each stable branch +starts with a `major.minor` release (without the `0` for `patch`) and is +further developed for maintenance releases in a Git branch of the same +name (for example patch updates for the 1.0 stable branch are developed +in the `1.0` Git branch). diff --git a/docs/documentation/contributing/writing_decoupled_code.md b/docs/documentation/contributing/writing_decoupled_code.md new file mode 100644 index 000000000..f99a14001 --- /dev/null +++ b/docs/documentation/contributing/writing_decoupled_code.md @@ -0,0 +1,113 @@ +# Writing decoupled code in Godot + +Writing and maintaining large, complicated code bases is a big +challenge. One of the ways to combat this complexity is to try and write +systems that are modular and composable, with few or no hard +dependencies on other systems. Godot provides several patterns we can +use to help make our code simple and independent. This usually means +taking advantage of Godot's +[signals](https://docs.godotengine.org/en/latest/getting_started/step_by_step/signals.html) +feature, [node +groups](https://docs.godotengine.org/en/latest/tutorials/scripting/groups.html), +and +[resources](https://docs.godotengine.org/en/latest/tutorials/scripting/resources.html). + +Some of the ideas below are largely taken from a great +[post](https://www.reddit.com/r/godot/comments/vodp2a/comment/iegv4fs/?utm_source=share&utm_medium=web2x&context=3) +about how to accomplish this in Godot, but modified with OpenGamepadUI +in mind. + +Strictly speaking, the idea is to make your scenes behave like nodes. +Nodes can be instanced anywhere in the scene tree and don't care what +their parents or siblings are. Their behavior is encapsulated by the set +of methods, properties, and signals they expose. Consider this mantra: + + Every branch of your scene tree should function independently of its parents. + +In other words, if you right click on any node and choose "save branch +to scene", you should be able to run that scene on its own without +getting any errors. Now, it may not actually do anything substantial, +since nothing is controlling it or listening to its signals, but it +shouldn't throw any errors or require any particular type of parent in +order to function properly. + +That brings us to the point: what options do you have for preserving +branch independence? + +## Export a NodePath + +This is admittedly really close to breaking the rules, but it sometimes +makes sense to let your user tell the child node where to find a loose +dependency. The builtin nodes use this trick all over the place. The +`AnimationPlayer` and `AnimationTree` are a good example. The key here +is to have your script "fail safe" and check if the nodepath is unset +before trying to do anything with it. + +This approach works best if... + +- The external node can be any instance of a builtin class (e.g.Β any + `AnimationPlayer`). This isn't a hard requirement, but for scenes and + custom classes it can become difficult to tell if the user-provided + dependent node is valid. +- The external node is likely to be in the same scene. You can't set + node paths in the editor across scenes, and even setting them + programmatically with scripts can be tricky. If you need this, see the + next option. +- The external node's state is largely irrelevant to the functioning of + your node and its children. In other words, your node should be able + to do everything it needs to do with its own state, but perhaps it + calls methods on the external node as a side effect. For example, you + might have one node that plays different animations if you provide it + with an `AnimationPlayer` node. If you don't give it an animation + player, all the node's state change stuff will work, it will just skip + over the animation stuff. + +## Use a (custom) resource + +The key here is leveraging the fact that resource instances are globally +unique. So if you need a bunch of nodes to share data, without being +bound to a strict hierarchy, this is a great option. Let's say you have +a UI scene that wants to show what the state is of another menu, but god +knows where in the scene tree that menu is in relation to each other. + +With the resource approach, you just give the UI scene and the menu +scene access to the same MenuState resource. This resource should fire +signals whenever its various properties are changed. Both the UI and +menu scenes then connect to whichever signals are relevant to them. So, +in this instance, the UI scene might have a bunch of text labels hooked +up to every property of the MenuState, and the menu scene might hook the +signal for "menu changed" up to a method that fires an animation or +something. + +Use this approach if... + +- The dependency involves some kind of shared state, rather than one + node directly controlling another. +- The dependency isn't a node. +- You want to propagate a bunch of shared state information through a + scene tree (think: the `Style` resources that UI controls use). This + will involve some boilerplate, but it usually scales better because + child nodes can control themselves based on the resource state instead + of bloating the parent with a bunch of code that just sets properties + on the children. + +## Use an autoload (or another kind of global) + +This option you may already know, and has benefits and drawbacks. 90% of +the time when you want to use autoloads, you probably want to use a +resource instead. However, there are situations where an autoload makes +sense. + +Use this approach only if... + +- You need a node, but the requirements for the export nodepath approach + aren't satisfied. To be clear: you only need a node if you are going + to write a process function. If you just need a data container, or a + place to put global signals, use a resource instead. If you need + globally accessible helper methods, use static functions in a script + (if you define a `class_name` in the script the UX is identical to + autoloads). +- This node is unique. +- You keep the behavior and state encapsulated by this node to a minimum + (one approach involves having an autoload that effectively just + contains references to other resources and nodes). diff --git a/docs/documentation/getting-started/installation.md b/docs/documentation/getting-started/installation.md new file mode 100644 index 000000000..830ddd901 --- /dev/null +++ b/docs/documentation/getting-started/installation.md @@ -0,0 +1,289 @@ +# Installation + +OpenGamepadUI offers a variety of installation methods. It can be installed locally in your user directory or system-wide. Use one of the following installation guides to install OpenGamepadUI on your system. + + +=== "ArchLinux" + + If you are using ArchLinux, you can install OpenGamepadUI from the AUR. + + You can install it using your favorite AUR helper: + + ```bash + yay -S opengamepadui-bin + ``` + + If you wish to install the OpenGamepadUI session, you can also install + the `opengamepadui-session-git` package: + + ```bash + yay -S opengamepadui-session-git + ``` + + **Pre-built binary** + + - + + **Source package** + + - + - + +=== "SteamOS / Steam Deck" + + **Desktop Installer** + + The easiest way to install OpenGamepadUI on SteamOS is to use the + desktop installer. Access this page from your SteamOS device and + download the installer below. Note that you may have to open the + installer from your file manager if your browser cannot run files: + + [Download](https://github.com/ShadowBlip/OpenGamepadUI/releases/latest/download/opengamepadui_deck_installer.desktop) + + **FAQ** + + **Can I still use Steam's interface with OpenGamepadUI installed?** + + Yes, when running on SteamOS, OpenGamepadUI will give you the option to + switch back to Steam's gaming interface whenever you\'d like. + + **Does OpenGamepadUI require me to unlock the read-only filesystem?** + + No, OpenGamepadUI is installed as a + systemd extension which gets merged over the root filesystem using overlayfs. No system + files are modified and OpenGamepadUI can be removed any time. + + **Does OpenGamepadUI work on Windows, Mac, or other operating systems?** + + No, OpenGamepadUI only works on Linux-based operating systems. It relies + heavily on software that is only available on Linux. There are no plans + to support any other operating systems. + + **Does using OpenGamepadUI void my Steam Deck warranty?** + + OpenGamepadUI does not modify the root filesystem, so there shouldn't + be any reason for your warranty to be denied. However, OpenGamepadUI is + provided without warranty and you are responsible for the security of + your device. + +=== "NixOS" + + OpenGamepadUI can be installed by modifying your `configuration.nix` and + including the opengamepadui program: + + ```nix title="configuration.nix" + programs.opengamepadui = { + enable = true; + inputplumber.enable = true; + powerstation.enable = true; + }; + ``` + + If you want to also include the enable the dedicated session: + + ```nix title="configuration.nix" + programs.opengamepadui = { + enable = true; + inputplumber.enable = true; + powerstation.enable = true; + gamescopeSession.enable = true; + }; + + services.displayManager = { + defaultSession = "opengamepadui"; + } + ``` + +=== "Systemd Extension" + + If you are using an OS that has an immutable filesystem (such as SteamOS + or ChimeraOS), OpenGamepadUI can be installed as a [systemd + extension](https://www.freedesktop.org/software/systemd/man/systemd-sysext.html). + When extensions are enabled (aka "merged") those files will appear on + the root filesystem using overlayfs. + + **Binary Installation** + + Use the following steps to install OpenGamepadUI as a systemd extension: + + - Download the latest version of OpenGamepadUI from the + [releases](https://github.com/ShadowBlip/OpenGamepadUI/releases) page. + The systemd extension should be called `opengamepadui.raw`. + - Create a directory to store the extension in your home directory: + + ``` bash + mkdir -p ~/.var/lib/extensions + ``` + + - Create a symlink to the extensions directory: + + ``` bash + sudo ln -s $HOME/.var/lib/extensions /var/lib/extensions + ``` + + - Move `opengamepadui.raw` to the extensions directory + + ``` bash + mv ~/Downloads/opengamepadui.raw ~/.var/lib/extensions + ``` + + - Enable and start systemd-sysext: + + ``` bash + sudo systemctl enable systemd-sysext + sudo systemctl start systemd-sysext + ``` + + - Verify that the extension is loaded: + + ``` bash + systemd-sysext status + ``` + + If the extension doesn't load, you may need to force refresh: + + ``` bash + sudo systemd-sysext refresh --force + ``` + + **Source Installation** + + Use the following steps to build and install OpenGamepadUI as a systemd extension + from source: + + - Ensure that you have the build dependencies from the [developer + guide](../../contributing/building_from_source/#build-requirements) + installed. + - Clone the OpenGamepadUI repository: + + ``` bash + git clone https://github.com/ShadowBlip/OpenGamepadUI.git + ``` + + - Build the project with `make` + + ``` bash + cd OpenGamepadUI + make build + ``` + + - Install and enable the systemd extension: + + ``` bash + make enable-ext + make install-ext + ``` + +=== "Binary" + + OpenGamepadUI offers pre-built binaries that can be installed on any + modern Linux distribution. There are 2 different ways you can install + OpenGamepadUI: + + 1. System-wide (recommended) + 2. Locally in your home directory + + **System-wide installation** + + Installing OpenGamepadUI system-wide provides the most funtionality. Use + the following steps to install OpenGamepadUI: + + - Ensure you have the runtime dependencies installed + - Download the latest version of OpenGamepadUI from the + [releases](https://github.com/ShadowBlip/OpenGamepadUI/releases) page. + The package archive should be called `opengamepadui.tar.gz`. + - Extract the archive to a folder + + ``` bash + tar xvfz opengamepadui.tar.gz + ``` + + - Install OpenGamepadUI + + ``` bash + sudo make install PREFIX=/usr + ``` + + **Local user installation** + + OpenGamepadUI can be installed completely in your home directory, with + some limitations. Use the following steps to install OpenGamepadUI in + your home directory: + + - Ensure you have the runtime dependencies installed + - Download the latest version of OpenGamepadUI from the + [releases](https://github.com/ShadowBlip/OpenGamepadUI/releases) page. + The package archive should be called `opengamepadui.tar.gz`. + - Extract the archive to a folder + + ``` bash + tar xvfz opengamepadui.tar.gz + ``` + + - Install OpenGamepadUI (default: `~/.local`) + + ``` bash + cd opengamepadui + make install + ``` + +=== "Source" + + OpenGamepadUI can be built and installed on any modern Linux + distribution. There are 2 different ways you can install OpenGamepadUI: + + 1. System-wide (recommended) + 2. Locally in your home directory + + **Build** + + - Ensure that you have the build dependencies from the [developer + guide](../../contributing/building_from_source/#build-requirements) + installed. + - Clone the OpenGamepadUI repository locally + + ``` bash + git clone https://github.com/ShadowBlip/OpenGamepadUI.git + ``` + + - Build the project with `make` + + ``` bash + cd OpenGamepadUI + make build + ``` + + **System-wide installation** + + If you wish to install OpenGamepadUI system-wide, you can do the + following: + + ``` bash + sudo make install PREFIX=/usr + ``` + + **Local user installation** + + Use the following to install OpenGamepadUI to your local user directory + (default: `~/.local`): + + ``` bash + make install + ``` + +## Usage + +Once OpenGamepadUI is installed, it should show up as an application you can launch from your desktop environment. + +Alternatively you can launch it from the command line with: + +```bash +opengamepadui +``` + +or, if installed in the local user directory: + +```bash +~/.local/bin/opengamepadui +``` + diff --git a/docs/documentation/getting-started/usage.md b/docs/documentation/getting-started/usage.md new file mode 100644 index 000000000..9e28f83e6 --- /dev/null +++ b/docs/documentation/getting-started/usage.md @@ -0,0 +1,40 @@ +# Usage + +## Shortcuts + +- `CTRL+F1` - Open main menu +- `CTRL+F2` - Open quick-access menu +- `ESC` - Back/menu + + +## File Locations + +OpenGamepadUI stores its configuration in +`~/.local/share/opengamepadui`. + + ~/.local/share/opengamepadui + β”œβ”€β”€ boxart # Manually placed box art + β”œβ”€β”€ cache # Cache directory + β”œβ”€β”€ data # Data directory for gamepad profiles, etc. + β”œβ”€β”€ logs # Log files + β”œβ”€β”€ plugins # Installed plugins + β”œβ”€β”€ settings.cfg # Main configuration file + β”œβ”€β”€ themes # Custom user themes + └── updates # Update archives + +## Manually adding library entries + +OpenGamepadUI automatically looks for games in `~/.local/share/applications` for any software with the `Game` category. To manually +add a library entry, you can create a `.desktop` file in this +location with the command to execute. + +Example: + +```title="~/.local/share/applications/Atomic Owl.desktop" +[Desktop Entry] +Name=Atomic Owl +Exec=steam steam://rungameid/3159870 +Terminal=false +Type=Application +Categories=Game; +``` diff --git a/docs/documentation/plugins/.nav.yml b/docs/documentation/plugins/.nav.yml new file mode 100644 index 000000000..43c1d2795 --- /dev/null +++ b/docs/documentation/plugins/.nav.yml @@ -0,0 +1,5 @@ +nav: + - ./introduction.md + - ./getting_started.md + - ./submitting.md + - ./tutorials diff --git a/docs/documentation/plugins/getting_started.md b/docs/documentation/plugins/getting_started.md new file mode 100644 index 000000000..b9cb4c4ab --- /dev/null +++ b/docs/documentation/plugins/getting_started.md @@ -0,0 +1,97 @@ +# Getting Started + +A typical plugin is structured like this: + +```bash +. +β”œβ”€β”€ assets/ # Assets like images and other resources +β”œβ”€β”€ core/ # Scripts and scenes for your plugin +β”œβ”€β”€ LICENSE # License +β”œβ”€β”€ Makefile # Makefile +β”œβ”€β”€ plugin.gd # Entrypoint script to your plugin +β”œβ”€β”€ plugin.json # Metadata file +└── README.md # Project README +``` + +The easiest way to get this structure and get started is to refer to the +[OpenGamepadUI Plugin +Template](https://github.com/ShadowBlip/OpenGamepadUI-plugin-template) +repository and clicking on `Use this template`. This will fork the +plugin template and let you clone your repository to get started. + +Once you have your repository cloned locally, clone the +[OpenGamepadUI](https://github.com/ShadowBlip/OpenGamepadUI) repository +next to your plugin folder. It should look something like this: + +```bash +$ ls +OpenGamepadUI +OpenGamepadUI-plugin-template +``` + +Lastly, ensure that you have installed all of the build requirements +from the [Developer +Guide](../contributing/building_from_source.md) +to ensure you can build your new plugin. + +## Metadata + +The `plugin.json` file is used by OpenGamepadUI and the plugin store to +determine how the plugin is loaded and shows up in the store. It is +required for any plugin. + +It looks like this: + +``` yaml +{ + "plugin.id": "template", # Unique ID of the plugin, lowercase + "plugin.name": "Template Plugin", # Display name of the plugin + "plugin.version": "1.0.0", # Plugin version + "plugin.min-api-version": "1.0.0", # Minimum OpenGamepadUI API version + "plugin.link": "", # Link to your plugin's website + "plugin.source": "", # Link to the plugin source code + "plugin.description": "", # Short description of your plugin + "store.tags": [], # List of tags that describe your plugin + "store.images": [], # Optional list of images that show your plugin + "author.name": "First Last", # Author of the plugin + "author.email": "person@example.com", # Email address of the plugin author + "entrypoint": "plugin.gd", # Script to run when your plugin is loaded +} +``` + +## Editing your plugin + +Once you have filled out the details of your plugin, you can use the +[Makefile](https://github.com/ShadowBlip/OpenGamepadUI-plugin-template/blob/main/Makefile) +from the plugin template to build and link your plugin to OpenGamepadUI. +For help using the Makefile, run this from your plugin directory: + +``` bash +make help +``` + +You can link and build your plugin by running: + +``` bash +make build +``` + +This will create a symlink to your plugin inside the +[OpenGamepadUI/plugins](https://github.com/ShadowBlip/OpenGamepadUI/tree/main/plugins) +project directory, allowing you to work on your plugin with the Godot +editor. + +!!! note + + Ensure you only have one plugin linked at a time, or multiple plugins + you're working on might get bundled together! + +Once the symlink to your plugin is created, open the OpenGamepadUI +project directory and run `make edit` to start working on your plugin! + +Depending on your plugin, you may want to consider looking at the number +of [Global +Systems](../contributing/core_systems_and_architecture.md) +or [plugin +tutorials](./tutorials/library_plugin.md) + diff --git a/docs/documentation/plugins/introduction.md b/docs/documentation/plugins/introduction.md new file mode 100644 index 000000000..ec494e686 --- /dev/null +++ b/docs/documentation/plugins/introduction.md @@ -0,0 +1,36 @@ +# Introduction + +OpenGamepad UI uses a plugin system to extend functionality. + +## Installing Plugins + +Plugins can be installed through OpenGamepadUI from the plugin store in +the `Settings` menu. The [OpenGamepadUI Plugin +Store](https://github.com/ShadowBlip/OpenGamepadUI-plugins) provides +community submitted plugins that have been tested and approved. + +Plugins can be manually installed by placing the plugin archive in +`~/.local/share/opengamepadui/plugins`. + +!!! warning + + Plugins contain arbitrary code, which will be executed with the same + privileges as OpenGamepadUI itself. An evil plugin may contain malware + which can take over your computer, and destroy or steal your data. Do + not install plugins from untrusted sources. + +## Writing Plugins + +The OpenGamepadUI plugin system is inspired by the modding system +implemented by +[Delta-V](https://gitlab.com/Delta-V-Modding/Mods/-/blob/main/game/ModLoader.gd). +It works by taking advantage of Godot's +[ProjectSettings.load_resource_pack()](https://docs.godotengine.org/en/latest/classes/class_projectsettings.html#class-projectsettings-method-load-resource-pack) +method, which can allow OpenGamepadUI to load Godot scripts and scenes +from a zip file. + +The plugin loader looks for zip files in the `user://plugins` directory +and parses the `plugin.json` file contained inside. If the plugin +metadata is valid, the plugin loader loads the zip file as a resource +pack. This system makes plugins incredibly powerful, and can be written +to modify nearly all aspects of OpenGamepadUI. diff --git a/docs/documentation/plugins/submitting.md b/docs/documentation/plugins/submitting.md new file mode 100644 index 000000000..7d272df9a --- /dev/null +++ b/docs/documentation/plugins/submitting.md @@ -0,0 +1,17 @@ +# Submitting Plugins + +OpenGamepadUI maintains a plugin store where users can download and +install community created plugins. This list of plugins is maintained in +the +[OpenGamepadUI-plugins](https://github.com/ShadowBlip/OpenGamepadUI-plugins) +repository. + +To have your plugin considered for inclusion in the plugin store, create +a pull request to the plugins repository with an entry for your plugin. + +!!! warning + + Please be aware that we do not allow private repositories, "black-box" + binaries, deliberately obfuscated code or any other items that would + undermine the ability to verify the functionality of a plugin and or any + underlying software. diff --git a/docs/documentation/plugins/tutorials/.nav.yml b/docs/documentation/plugins/tutorials/.nav.yml new file mode 100644 index 000000000..5d31cc076 --- /dev/null +++ b/docs/documentation/plugins/tutorials/.nav.yml @@ -0,0 +1,3 @@ +nav: + - ./library_plugin.md + - ./boxart_plugin.md diff --git a/docs/documentation/plugins/tutorials/boxart_plugin.md b/docs/documentation/plugins/tutorials/boxart_plugin.md new file mode 100644 index 000000000..e6cb846f5 --- /dev/null +++ b/docs/documentation/plugins/tutorials/boxart_plugin.md @@ -0,0 +1,118 @@ +# Writing a Box Art plugin + +Box Art plugins allow you to use artwork from different sources in +OpenGamepadUI. When the UI requires artwork for a particular game, it +uses the `BoxArtManager` to fetch artwork for a particular game, which in turn +queries all registered +`BoxArtProvider` +nodes for artwork for that game. + +In this tutorial, we'll be writing a simple box art plugin that will +return a static image for every library item. + +First, start off by cloning a fork of the [plugin +template](https://github.com/ShadowBlip/OpenGamepadUI-plugin-template) +and filling out `plugin.json`. Then let's create a scene and script for +our new box art provider: + +```bash +OpenGamepadUI-boxart-tutorial +β”œβ”€β”€ assets +β”œβ”€β”€ core +β”‚Β Β  β”œβ”€β”€ boxart.gd +β”‚Β Β  └── boxart.tscn +β”œβ”€β”€ Makefile +β”œβ”€β”€ plugin.gd +β”œβ”€β”€ plugin.json +└── README.md +``` + +Next, let's download the artwork we want to return and place it in our +`assets` directory. Find and download an image from somewhere like +[SteamGridDB](https://www.steamgriddb.com/) and save it as `image.png`. + +With our new boxart scene, edit the script and implement the +`get_boxart` method to return a texture: + +```gdscript title="core/boxart.gd" linenums="1" +extends BoxArtProvider + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + super() + logger = Log.get_logger("BoxArtTutorial", Log.LEVEL.INFO) + logger.info("BoxArtTutorial plugin loaded") + + +# Return the boxart texture for the given library item and layout +func get_boxart(item: LibraryItem, kind: LAYOUT) -> Texture2D: + return null +``` + +Returning `null` will tell the +`BoxArtManager` that +we don't have artwork for the given library item for the given +`LAYOUT`. +There are several kinds of artwork +`LAYOUT` types +such as: + +- `GRID_PORTRAIT` +- `GRID_LANDSCAPE` +- `BANNER` +- `LOGO` + +Each artwork layout will be used in different parts of the UI that +request it. You should always return `null` if you can't provide the +artwork for a given layout for a game to allow other box art providers a +chance to find it. + +For the purpose of this tutorial, let's only return artwork for the +`GRID_PORTRAIT` layout: + +```gdscript title="core/boxart.gd" linenums="1" +extends BoxArtProvider + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + super() + logger = Log.get_logger("BoxArtTutorial", Log.LEVEL.INFO) + logger.info("BoxArtTutorial plugin loaded") + + +# Return the boxart texture for the given library item and layout +func get_boxart(item: LibraryItem, kind: LAYOUT) -> Texture2D: + if kind == LAYOUT.GRID_PORTRAIT: + var texture: Texture2D = load("res://plugins/boxart-tutorial/assets/image.png") + return texture + + return null +``` + +Now in our entrypoint script, load our new boxart scene and add it as a +child of the plugin. + +```gdscript title="plugin.gd" linenums="1" +extends Plugin + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + logger = Log.get_logger("BoxArtTutorial", Log.LEVEL.INFO) + + # Load the boxart implementation + var boxart: BoxArtProvider = load("res://plugins/boxart-tutorial/core/boxart.tscn").instantiate() + add_child(boxart) +``` + +That's it! When your plugin gets loaded, your new box art provider will +automatically get registered with the +`BoxArtManager` and +games in your library will show the artwork you used! + +Run `make install` to install your new plugin and test it out! + +If you want to take your boxart plugin further, try taking a look at the +`HTTPImageFetcher` +and `Cache` classes to more +dynamically fetch artwork for a given library item. + diff --git a/docs/documentation/plugins/tutorials/library_plugin.md b/docs/documentation/plugins/tutorials/library_plugin.md new file mode 100644 index 000000000..413ff8acb --- /dev/null +++ b/docs/documentation/plugins/tutorials/library_plugin.md @@ -0,0 +1,76 @@ +# Writing a Library plugin + +Library plugins allow you to extend the library in OpenGamepadUI, +offering ways to install and launch games and applications. Library +plugins extend and implement the +[Library](https://github.com/ShadowBlip/OpenGamepadUI/blob/main/core/systems/library/library.gd) +class. You can also look at the built-in [Desktop +Library](https://github.com/ShadowBlip/OpenGamepadUI/blob/main/core/systems/library/library_desktop.gd) +implementation for an example of how to write a library plugin. + +In this tutorial, we'll be writing a simple library plugin that will add +a new item to our library that will launch the `vkcube` test program. + +First, start off by cloning a fork of the [plugin +template](https://github.com/ShadowBlip/OpenGamepadUI-plugin-template) +and filling out `plugin.json`. Then let's create a scene and script for +our new library: + +```bash +OpenGamepadUI-vkcube +β”œβ”€β”€ core +β”‚Β Β  β”œβ”€β”€ library.gd +β”‚Β Β  └── library.tscn # (1) +β”œβ”€β”€ Makefile +β”œβ”€β”€ plugin.gd +β”œβ”€β”€ plugin.json +└── README.md +``` + +1. This is the scene file + +With our new library scene, edit the script and implement the +`get_library_launch_items` method to return a list of library items: + +```gdscript title="core/library.gd" linenums="1" +extends Library + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + super() + logger = Log.get_logger("vkCube", Log.LEVEL.INFO) + logger.info("vkCube Library loaded") + + +# Return a list of installed steam apps. Called by the LibraryManager. +func get_library_launch_items() -> Array[LibraryLaunchItem]: + var item: LibraryLaunchItem = LibraryLaunchItem.new() + item.name = "vkCube" + item.command = "vkcube" + item.args = [] + item.tags = ["vkcube"] + item.installed = true + + return [item] +``` + +Now in our entrypoint script, load our new library scene and add it as a +child of the plugin. + +```gdscript title="plugin.gd" linenums="1" +extends Plugin + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + logger = Log.get_logger("vkCube", Log.LEVEL.INFO) + + # Load the Library implementation + var library: Library = load(plugin_base + "/core/library.tscn").instantiate() + add_child(library) +``` + +That's it! When your plugin gets loaded, your new library will +automatically get registered with the library manager and games that +your library provides will show up in your library! + +Run `make install` to install your new plugin and test it out! diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 000000000..82f914158 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,98 @@ +--- +hide: + - toc + - navigation +--- + +

+ OpenGamepadUI Logo +
+ Open Gamepad UI +

+ +

+ + + + Discord +
+
+

+ +## :octicons-info-24: What is OpenGamepadUI? + +Open Gamepad UI is a free and open source game launcher and overlay written +using the Godot Game Engine 4 designed with a gamepad native experience in mind. +Its goal is to provide an open and extendable foundation to launch and play +games. It also implements a gamepad input system that can allow you to remap +gamepad input to mouse and keyboard inputs. + +## :octicons-light-bulb-24: Features + +- In-game overlay menus +- Power tools (TDP control, SMT, etc.) +- Fully configurable gamepad input (buttons, axes, mouse & keyboard, etc.) +- Per-game customizable gamepad profiles +- Launch games from multiple sources +- Automatic artwork downloading +- Plugin architecture + + +## :octicons-image-24: How does it work and look? + +OpenGamepadUI works hand-in-hand with Gamescope, which is a Wayland compositor +designed for a console-like experience. + +Some examples of what it looks like are here: + +

+ OpenGamepadUI screenshot +

+ OpenGamepadUI screenshot + OpenGamepadUI screenshot + OpenGamepadUI screenshot +

+

+ +## :octicons-book-24: Organization of the documentation + +This documentation is organized into several sections: + +- **About** contains this introduction as well as + information about the project, its history, its licensing, authors, etc. +- **Getting Started** contains all necessary information to install and use + OpenGamepadUI yourself. **This is the best place to start if you're new!** +- **Contributing** gives information related to contributing to + OpenGamepadUI, whether to the core project, documentation, or other parts. + It describes how to report bugs, how contributor workflows are organized, etc. + It also contains sections intended for advanced users and contributors, + with information on compiling OpenGamepadUI and contributing core functionality. +- The **Plugins** section contains documentation and tutorials for writing + plugins for OpenGamepadUI. +- **Community** is dedicated to the life of OpenGamepadUI's community. + It points to various community channels like the + [Discord](https://discord.gg/Ea9ABXhtkv) and contains a list of recommended third-party tutorials and + materials outside of this documentation. +- Finally, the **Class reference** documents the full OpenGamepadUI API, + also available directly within Godot's script editor. + You can find information on all classes, functions, signals and so on here. + +## About this documentation + +All documentation content is licensed under the permissive Creative Commons Attribution 3.0 +([CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)) license, +with attribution to "*William Edwards, Derek Clark, and the OpenGamepadUI community*" +unless otherwise noted. + +## Get involved + +OpenGamepadUI is an open source project developed by a community of +volunteers. The documentation team can always use your feedback and help +to improve the tutorials and class reference. If you don't understand +something, or cannot find what you are looking for in the docs, help us +make the documentation better by letting us know! + +Submit an issue or pull request on the [GitHub +repository](https://github.com/shadowblip/OpenGamepadUI/issues). + + diff --git a/extensions/Cargo.lock b/extensions/Cargo.lock index ad9626771..7c6de1f4d 100644 --- a/extensions/Cargo.lock +++ b/extensions/Cargo.lock @@ -365,6 +365,14 @@ dependencies = [ "crypto-common", ] +[[package]] +name = "docgen" +version = "0.1.0" +dependencies = [ + "regex", + "roxmltree", +] + [[package]] name = "endi" version = "1.1.0" @@ -1161,9 +1169,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.1" +version = "1.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" dependencies = [ "aho-corasick", "memchr", @@ -1173,9 +1181,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.9" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" dependencies = [ "aho-corasick", "memchr", @@ -1226,6 +1234,15 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "roxmltree" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1964b10c76125c36f8afe190065a4bf9a87bf324842c05701330bba9f1cacbb" +dependencies = [ + "memchr", +] + [[package]] name = "rust_decimal" version = "1.37.2" diff --git a/extensions/Cargo.toml b/extensions/Cargo.toml index 2d2cbba14..b60cab8a3 100644 --- a/extensions/Cargo.toml +++ b/extensions/Cargo.toml @@ -1,3 +1,3 @@ [workspace] -members = ["core", "reaper"] +members = ["core", "reaper", "docgen"] resolver = "2" diff --git a/extensions/docgen/Cargo.toml b/extensions/docgen/Cargo.toml new file mode 100644 index 000000000..aebc654b7 --- /dev/null +++ b/extensions/docgen/Cargo.toml @@ -0,0 +1,8 @@ +[package] +name = "docgen" +version = "0.1.0" +edition = "2021" + +[dependencies] +regex = "1.12.2" +roxmltree = "0.21.1" diff --git a/extensions/docgen/src/main.rs b/extensions/docgen/src/main.rs new file mode 100644 index 000000000..9613eddd9 --- /dev/null +++ b/extensions/docgen/src/main.rs @@ -0,0 +1,446 @@ +use std::{collections::HashSet, env, fs, path::Path, process}; + +use regex::Regex; + +fn main() { + // Read the source directory from the cli args + let args: Vec = env::args().collect(); + if args.len() < 3 { + print_help(); + process::exit(-1); + } + + // Parse the arguments + let definition_dir = args.get(1).unwrap(); + let output_dir = args.get(2).unwrap(); + + // Read the class definition files + let readdir = match fs::read_dir(definition_dir) { + Ok(value) => value, + Err(e) => { + print_help(); + println!("Failed to read directory {definition_dir}: {e}"); + process::exit(-1); + } + }; + + // Read each directory entry + let mut entries = Vec::new(); + for entry in readdir { + let Ok(entry) = entry else { + continue; + }; + entries.push(entry); + } + + // Build a list of classes and navigation tree + let mut classdb = HashSet::new(); + for entry in entries.iter() { + let filename = entry.file_name().to_string_lossy().to_string(); + let class_name = filename.replace(".xml", ""); + classdb.insert(class_name.clone()); + } + + // Parse each XML definition + for entry in entries.iter() { + let path = entry.path(); + let Some(markdown) = parse_class(&classdb, path.as_path()) else { + continue; + }; + + // Write the markdown to the output directory + let filename = entry.file_name().to_string_lossy().to_string(); + let class_name = filename.replace(".xml", ""); + let out_path = format!("{output_dir}/{class_name}.md"); + println!("Writing class reference for '{class_name}' to: {out_path}"); + fs::write(out_path, markdown).expect("Write should succeed"); + } + + // Write out the navigation tree + let mut nav_tree = "nav:\n".to_string(); + let nav_tree_path = format!("{output_dir}/.nav.yml"); + let mut sorted_classes: Vec = classdb.into_iter().collect(); + sorted_classes.sort(); + for class in sorted_classes { + nav_tree.push_line(format!(" - ./{class}.md")); + } + fs::write(nav_tree_path, nav_tree).expect("Write should succeed"); +} + +fn parse_class(classdb: &HashSet, path: &Path) -> Option { + let data = match fs::read_to_string(path) { + Ok(value) => value, + Err(e) => { + println!("Failed to read XML {path:?}: {e}"); + process::exit(-1); + } + }; + let doc = match roxmltree::Document::parse(data.as_str()) { + Ok(value) => value, + Err(e) => { + println!("Failed to parse XML {path:?}: {e}"); + process::exit(-1); + } + }; + + // Generate markdown for the file + let mut markdown = String::new(); + let class = doc.descendants().find(|v| v.tag_name().name() == "class")?; + let class_name = class.attribute("name")?; + + // Title + markdown.push_line(format!("# {class_name}\n")); + + // Inherits + if let Some(inherits) = class.attribute("inherits") { + let inherits_link = get_class_link_text_for(classdb, inherits); + markdown.push_line(format!("**Inherits:** {inherits_link}\n")); + } + + // Brief + let brief = class + .children() + .find(|node| node.tag_name().name() == "brief_description"); + if let Some(brief) = brief { + if let Some(brief) = brief.text() { + let brief = parse_text_links(classdb, brief.trim()); + markdown.push_line(brief); + } + } + + // Description + let desc = class + .children() + .find(|node| node.tag_name().name() == "description"); + if let Some(desc) = desc { + if let Some(desc) = desc.text() { + let desc = parse_text_links(classdb, desc.trim()); + if !desc.is_empty() { + markdown.push_line("## Description\n".to_string()); + markdown.push_line(desc); + } + } + } + + // Find all valid property nodes + let props = { + let mut nodes = vec![]; + let props = class + .children() + .find(|node| node.tag_name().name() == "members"); + if let Some(props) = props { + for child in props.children() { + let Some(name) = child.attribute("name") else { + continue; + }; + // Skip private variables + if name.starts_with("_") { + continue; + } + if !child.has_attribute("type") { + continue; + }; + nodes.push(child); + } + } + + nodes + }; + + // Find all valid method nodes + let methods = { + let mut nodes = vec![]; + let methods = class + .children() + .find(|node| node.tag_name().name() == "methods"); + if let Some(methods) = methods { + for child in methods.children() { + let Some(name) = child.attribute("name") else { + continue; + }; + // Skip private methods + if name.starts_with("_") { + continue; + } + nodes.push(child); + } + } + + nodes + }; + + // Properties + if !props.is_empty() { + markdown.push_line("## Properties\n".to_string()); + markdown.push_str("| Type | Name | Default |\n"); + markdown.push_str("| ---- | ---- | ------- |\n"); + for child in props.iter() { + let Some(name) = child.attribute("name") else { + continue; + }; + let Some(kind) = child.attribute("type") else { + continue; + }; + let default = child.attribute("default").unwrap_or(""); + let kind = get_class_link_text_for(classdb, kind); + markdown.push_line(format!("| {kind} | [{name}](./#{name}) | {default} |")); + } + markdown.push('\n'); + } + + // Methods + if !methods.is_empty() { + markdown.push_line("## Methods\n".to_string()); + markdown.push_str("| Returns | Signature |\n"); + markdown.push_str("| ------- | --------- |\n"); + + for child in methods.iter() { + let Some(name) = child.attribute("name") else { + continue; + }; + // Skip private methods + if name.starts_with("_") { + continue; + } + let returns = child + .children() + .find(|node| node.tag_name().name() == "return") + .unwrap(); + let return_type = returns.attribute("type").unwrap(); + let return_type = get_class_link_text_for(classdb, return_type); + + // Parse arguments + let mut args = Vec::new(); + for child in child.children() { + if child.tag_name().name() != "param" { + continue; + } + let Some(name) = child.attribute("name") else { + continue; + }; + let Some(kind) = child.attribute("type") else { + continue; + }; + let default = if let Some(default) = child.attribute("default") { + format!(" = {default}") + } else { + "".to_string() + }; + let kind = get_class_link_text_for(classdb, kind); + let arg_sig = format!("{name}: {kind}{default}"); + args.push(arg_sig); + } + let args = args.join(", "); + + markdown.push_line(format!("| {return_type} | [{name}](./#{name})({args}) |")); + } + } + + // Signals + + // Enumerations + + // Property Descriptions + if !props.is_empty() { + markdown.push_str("\n\n------------------\n\n"); + markdown.push_str("## Property Descriptions\n\n"); + + for child in props.iter() { + let Some(name) = child.attribute("name") else { + continue; + }; + let Some(kind) = child.attribute("type") else { + continue; + }; + let default = child.attribute("default").unwrap_or(""); + let desc = child.text().unwrap_or("").trim(); + let desc = parse_text_links(classdb, desc); + let kind = get_class_link_text_for(classdb, kind); + let default = default.trim(); + let default = if !default.is_empty() && !default.starts_with("<") { + format!(" = {default}") + } else { + "".to_string() + }; + + markdown.push_line(format!("### `{name}`\n\n")); + markdown.push_line(format!("{kind} {name}{default}\n\n")); + if !desc.is_empty() { + markdown.push_line(desc); + } else { + markdown.push_str("!!! note\n"); + markdown.push_str(" There is currently no description for this property. Please help us by contributing one!\n\n"); + } + } + markdown.push('\n'); + } + + // Method Descriptions + if !methods.is_empty() { + markdown.push_str("\n\n------------------\n\n"); + markdown.push_str("## Method Descriptions\n\n"); + for child in methods.iter() { + let Some(name) = child.attribute("name") else { + continue; + }; + // Skip private methods + if name.starts_with("_") { + continue; + } + let returns = child + .children() + .find(|node| node.tag_name().name() == "return") + .unwrap(); + let return_type = returns.attribute("type").unwrap(); + let return_type = get_class_link_text_for(classdb, return_type); + + // Description + let desc = child + .children() + .find(|node| node.tag_name().name() == "description"); + let desc = if let Some(desc) = desc { + let text = desc.text().unwrap_or("").trim(); + parse_text_links(classdb, text) + } else { + "".to_string() + }; + + // Parse arguments + let mut args = Vec::new(); + for child in child.children() { + if child.tag_name().name() != "param" { + continue; + } + let Some(name) = child.attribute("name") else { + continue; + }; + let Some(kind) = child.attribute("type") else { + continue; + }; + let default = if let Some(default) = child.attribute("default") { + format!(" = {default}") + } else { + "".to_string() + }; + let kind = get_class_link_text_for(classdb, kind); + let arg_sig = format!("{name}: {kind}{default}"); + args.push(arg_sig); + } + let args = args.join(", "); + + markdown.push_line(format!("### `{name}()`\n\n")); + markdown.push_line(format!("{return_type} **{name}**({args})\n\n")); + if !desc.is_empty() { + markdown.push_line(desc); + } else { + markdown.push_str("!!! note\n"); + markdown.push_str(" There is currently no description for this method. Please help us by contributing one!\n\n"); + } + } + } + + Some(markdown) +} + +fn get_class_link_text_for(classdb: &HashSet, text: &str) -> String { + if text == "void" { + return "void".to_string(); + } + if text == "br" { + return "\n".to_string(); + } + if text == "DEPRECATED" { + return "!!! warning\n\n This is deprecated\n\n".to_string(); + } + // If the class ends in '[]', then its an array of a type + if text.ends_with("[]") { + let class_name = text.replace("[]", ""); + let link = get_class_link_for(classdb, class_name.as_str()); + return format!("[{text}]({link})"); + } + // If the class has container types, just use the base class + if text.contains("[") && text.ends_with("]") { + let mut parts = text.split("["); + let class_name = parts.next().unwrap(); + let link = get_class_link_for(classdb, class_name); + return format!("[{text}]({link})"); + } + let link = get_class_link_for(classdb, text); + format!("[{text}]({link})") +} + +fn get_class_link_for(classdb: &HashSet, class_name: &str) -> String { + // Check to see if this is a local class + if classdb.contains(class_name) { + return format!("../{class_name}"); + } + // Otherwise assume this is a Godot class + let class_name_lower = class_name.to_lowercase(); + format!("https://docs.godotengine.org/en/stable/classes/class_{class_name_lower}.html") +} + +// Search for any "[SomeClass]" references and replace them with links +fn parse_text_links(classdb: &HashSet, text: &str) -> String { + // First find any codeblocks and escape the characters that might match link + // patterns. + let codeblock_pattern = Regex::new(r"\[codeblock\][.\n\t\s\S]*?\[/codeblock\]").unwrap(); + let mut code_matches = HashSet::new(); + for item in codeblock_pattern.find_iter(text) { + code_matches.insert(item.as_str()); + } + + // Escape all the '[' and ']' patterns so the next step doesn't replace + // code block content. + let mut escaped_text = text.to_string(); + for original_text in code_matches { + let new_text = original_text + .replace("[", "<<{;{;{") + .replace("]", "};};}>>"); + escaped_text = escaped_text.replace(original_text, &new_text); + } + + // Find any links with the pattern "[MyClass]" in the text + let link_pattern = Regex::new(r"\[.*?\]").unwrap(); + let mut matches = HashSet::new(); + for item in link_pattern.find_iter(escaped_text.as_str()) { + matches.insert(item.as_str()); + } + + // Replace each instance with the class link + let mut replaced_text = escaped_text.clone(); + for item in matches { + let class_name = item.strip_prefix("[").unwrap().strip_suffix("]").unwrap(); + let link = get_class_link_text_for(classdb, class_name); + replaced_text = replaced_text.replace(item, link.as_str()); + } + + // Restore the escaped sequences + replaced_text = replaced_text + .replace("<<{;{;{", "[") + .replace("};};}>>", "]"); + + // Convert the codeblocks to markdown + replaced_text = replaced_text + .replace("[codeblock]", "```gdscript\n") + .replace("[/codeblock]", "```\n\n"); + + replaced_text +} + +fn print_help() { + println!("Usage: docgen [class XML definition directory] [output dir]"); + println!(); + println!("Example:"); + println!(" docgen ./docs/api/classes ./docs/class-reference"); +} + +trait LinePusher { + fn push_line(&mut self, line: String); +} + +impl LinePusher for String { + fn push_line(&mut self, line: String) { + self.push_str(line.as_str()); + self.push('\n'); + } +} diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 000000000..0579e61bf --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,67 @@ +# yaml-language-server: $schema=https://squidfunk.github.io/mkdocs-material/schema.json +site_name: OpenGamepadUI +site_url: https://opengamepadui.github.io + +theme: + name: material + font: + text: Roboto + code: Roboto Mono + logo: assets/icon.svg + favicon: assets/icon.svg + palette: + scheme: slate + primary: deep purple + accent: red + features: + - content.action.edit + - content.action.view + - content.code.annotate + - content.code.copy + - content.tooltips + - navigation.footer + - navigation.path + - navigation.tabs + - navigation.top + - toc.follow + +markdown_extensions: + - abbr + - admonition + - attr_list + # https://squidfunk.github.io/mkdocs-material/reference/icons-emojis/ + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg + - pymdownx.highlight: + anchor_linenums: true + line_spans: __span + pygments_lang_class: true + - pymdownx.tasklist: + custom_checkbox: true + - pymdownx.superfences: + custom_fences: + - name: mermaid + class: mermaid + format: !!python/name:pymdownx.superfences.fence_code_format + - pymdownx.inlinehilite + - pymdownx.snippets + - pymdownx.superfences + - pymdownx.tabbed: + alternate_style: true + combine_header_slug: true + - pymdownx.details + - tables + +extra: + social: + - icon: simple/github + link: https://github.com/ShadowBlip/OpenGamepadUI + - icon: simple/discord + link: https://discord.gg/Ea9ABXhtkv + +plugins: + - search + - awesome-nav + +copyright: Copyright © 2022-present William Edwards, Derek Clark, and the OpenGamepadUI community (CC BY 3.0)