Commit Graph

396 Commits

Author SHA1 Message Date
Yuri Sizov
a0995182fe Add documentation for all annotations 2022-08-19 15:06:39 +03:00
Yuri Sizov
35c1eae8d7 Add support for [param foo] syntax in valid documentation contexts 2022-08-08 22:18:38 +03:00
Juan Linietsky
d4433ae6d3 Remove Signal connect binds
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
Hugo Locurcio
976d12c3c1
Add padding for code blocks in the editor help
This improves their appearance, making them look closer to code blocks
in the online manual.
2022-07-17 22:55:20 +02:00
Rémi Verschelde
a0f0eb5e03
Merge pull request #62710 from Calinou/editor-help-improve-code-kbd-ref-highlight 2022-07-13 23:55:59 +02:00
Rémi Verschelde
1e553e34fb
Merge pull request #62108 from bruvzg/font_config_v3 2022-07-07 12:22:49 +02:00
Rémi Verschelde
635d447a69
Merge pull request #62713 from YuriSizov/docs-scripting-annotations 2022-07-06 15:31:19 +02:00
bruvzg
344ba0ffaf
Refactor Font configuration and import UI, and Font resources. 2022-07-06 14:12:36 +03:00
reduz
5ac42cf576 Implement a BitField hint
Allows to specify the binder that an enum must be treated as a bitfield.
2022-07-05 22:13:37 +02:00
Hugo Locurcio
a347650fd6
Improve visibility of code, kbd and clickable references in editor help
This adds a background color for inline code, code blocks, keyboard
shortcuts and clickable references (such as `[member something]`).
2022-07-05 19:35:51 +02:00
Yuri Sizov
a9098e6147 Add support for documenting built-in annotations 2022-07-04 20:21:39 +03:00
Yuri Rubinsky
c6f57c30c3 Fix help_title_font_size editor property to correctly apply to docs 2022-06-29 15:08:54 +03:00
Rémi Verschelde
c762ec1343
Merge pull request #60984 from fire-forge/doc-icon
Show class icon in the documentation page header
2022-06-01 18:34:39 +02:00
bruvzg
96cc3c74da
Fix help links with threaded RTL. 2022-05-30 10:05:14 +03:00
FireForge
a65404e6ac Add type icon to documentation page header 2022-05-25 19:18:23 -05:00
SnailRhymer
2eddc3776f Fix class_desc_deselect handling of @GlobalScope.X links
Fix bug where links to class enums and class constants of the form @GlobalScope.X were broken.

For an enum or constant with name "example_name", links of both forms @GlobalScope.example_name and example_name will now be correctly handled, including where example_name contains "." (e.g. Variant.Type).
2022-05-21 10:50:31 +01:00
reduz
45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
bruvzg
cfcdfc38e2
[RTL] Add support for shaping in background thread. 2022-05-19 09:34:44 +03:00
reduz
746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
SnailRhymer
d04a431b9b Fix _class_desc_select to handle Variant.Type
Change the order of checks in _class_desc_select to first try checking current page and GlobalScope
before resorting to slicing either side of ".".

Bug was caused by assumption that no enums or constants in @GlobalScope would contain ".". This is still
assumed elsewhere in the file, so bugs may persist.

Format some comments.
2022-05-12 16:09:00 +01:00
FireForge
3073b85de9 Rename theme properties to include underscores
- check_vadjust -> check_v_adjust
- close_h_ofs -> close_h_offset
- close_v_ofs -> close_v_offset
- commentfocus -> comment_focus
- hseparation -> h_separation
- ofs -> offset
- selectedframe -> selected_frame
- state_machine_selectedframe -> state_machine_selected_frame
- table_hseparation -> table_h_separation
- table_vseparation -> table_v_separation
- vseparation -> v_separation
2022-04-23 11:16:18 -05:00
bruvzg
803e1ae920
[Help] Add simulated slanted font support to the editor help. 2022-03-22 16:16:04 +02:00
Aaron Franke
918b09cabc
Initialize bools in the headers in editor 2022-03-12 13:34:06 -06:00
Haoyu Qiu
b058f6b80c Use vformat() instead of string concatenation inside TTR() 2022-03-03 17:55:37 +08:00
jmb462
dcd2a92af3 Port existing _notification code to use switch statements (part 1/3) 2022-02-16 11:38:24 +01:00
Hendrik Brucker
b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
Rémi Verschelde
fc076ece3d
Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
jmb462
a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
jmb462
1ce81dc5f2 Add missing SNAME macro optimization in some function calls 2022-02-06 15:54:04 +01:00
kobewi
e714f5e56e Rework TextureButton stretch 2022-02-05 02:11:32 +01:00
Rémi Verschelde
f8f19b313d
Merge pull request #57562 from AnilBK/string-add-contains
String: Add contains().
2022-02-03 22:21:24 +01:00
Anilforextra
adbe948bda String: Add contains(). 2022-02-04 01:28:02 +05:45
Gilles Roudière
73e784de1e Remove get_focus_owner() from Control, replaced by get_viewport()->gui_get_focus_owner() 2022-02-03 11:59:32 +01:00
Rémi Verschelde
9f0a693b50
EditorHelpBit: Fix content height fit and RTL theme propagation
This reverts #51619 and fixes the issue properly, as well as enabling
`fit_content_height` which is necessary following #57304.

Fixes #57174.

Also adds a placeholder for property and signal tooltips with no description,
factoring the code while at it.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-02-02 22:16:46 +01:00
Yuri Roubinsky
6e2c9f398c Fix theming of doc background 2022-01-30 09:49:24 +03:00
bruvzg
f13db28a5c
[Editor] Do not update editor help theme, if calculated margin hasn't changed. 2022-01-24 09:51:35 +02:00
Hugo Locurcio
8cc9ff4f5b
Use a fixed-width font for internal references in the editor help
Since internal references are often written in scripts, it makes sense
to use a fixed-width font for them.
2022-01-21 20:05:11 +01:00
Yuri Sizov
ba99cd40d1 Improve spacing in built-in class reference 2022-01-18 23:01:30 +03:00
reduz
df7636b19a
Generate editor docs on a thread
* The main generation could not be moved to a thread, as it instantiates
  classes to get default values, interacts with ProjectSettings, etc.
* Only uncompressing documentation and merging it is threaded.
* Seems to improve editor load times by 0.5 seconds.
2022-01-07 15:17:30 +01:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Rémi Verschelde
1032c2c434
Merge pull request #55487 from YeldhamDev/scroll_bikeshedding 2022-01-03 14:10:41 +01:00
Nathan Franke
49403cbfa0
Replace String comparisons with "", String() to is_empty()
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Nathan Franke
41a20171eb
align to horizontal_alignment, valign to vertical_alignment, related 2021-12-09 01:38:46 -06:00
Yuri Sizov
b3992f7e6e Make overridden properties link to parent definition
Co-authored-by: Josh DeGraw <joshmdegraw@gmail.com>
2021-12-03 17:47:22 +03:00
Yuri Sizov
397e56964d Sort and group theme properties in docs, improve formatting for theme and enums 2021-12-01 21:02:20 +03:00
Michael Alexsander
ec4f4c6cda Rename all methods that return ScrollBar nodes to get_*_scroll_bar() 2021-11-30 13:46:36 -03:00
kobewi
6f929395d9 Add [theme_item] tag to editor help 2021-11-18 15:32:23 +01:00
Rémi Verschelde
5341e6010e
Allow dehardcoding documentation branch and URL in docs links
This makes it possible to change the branch of the documentation that
URLs are pointing to without having to modify all class reference
files.

In the XML class reference, the `$DOCS_URL` placeholder should be used,
and will be replaced automatically in the editor and when generating
the RST class reference.

The documentation branch string is set in `version.py`.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-11-15 13:02:21 +01:00
Aaron Franke
3c0fdcc8ac
Use "enum class" for input enums 2021-11-12 15:37:54 -06:00
Rémi Verschelde
2beaae4b6f
String: Remove erase method, bindings can't mutate String 2021-11-11 11:23:32 +01:00
Aaron Franke
6772ebcea0
Move the docs for constructors and operators out of methods section 2021-10-29 12:34:57 -05:00
Michael Alexsander
4a8b5b92c3 Fix match counter in help pages not updating 2021-10-01 12:36:37 -03:00
Lightning_A
c63b18507d Use range iterators for Map 2021-09-30 15:09:12 -06:00
Rémi Verschelde
949c268a68
Merge pull request #52655 from Chaosus/toggle_scripts_panel 2021-09-17 13:54:54 +02:00
HaSa1002
053b3b946c
Remove bbcode_text from RichTextLabel
Also renames:
 - append_bbcode -> append_text
 - get_bbcode -> get_text
 - set_bbcode -> set_text
 - get_text -> get_parsed_text

Property text is:
set_text
get_text
2021-09-16 22:27:08 +02:00
Rémi Verschelde
f77b1f4002
Merge pull request #52352 from williamd67/open-help-editor-at-correct-position 2021-09-15 17:56:29 +02:00
Yuri Roubinsky
1dda47c280 Added status bar and toggle scripts panel button to EditorHelp/VScripts 2021-09-15 11:35:03 +03:00
William Deurwaarder
d927d4203c Symbol lookup jumps to the correct position in help editor
Commit `e4651a4` introduced `scroll_to_paragraph` and changed the implementation
of `scroll_to_line`, which also counts lines within paragraphs.

The help editor still used the `scroll_to_line` method
while it should use the newly implemented `scroll_to_paragraph' as that is
stored in its tables.
2021-09-02 21:51:27 +02:00
William Deurwaarder
b2f858870d Show help for built-in functions (@GlobalScope) 2021-08-30 21:51:56 +02:00
reduz
96f8254b24 Implement error return documetation
Adds ability to add error return documetation to the binder and class reference.
Usage example:

```C++
void MyClass::_bind_method() {
	[..]
	BIND_METHOD_ERR_RETURN_DOC("load", ERR_FILE_CANT_OPEN, ERR_FILE_UNRECOGNIZED);
}
```

One function of ConfigFile was changed as example.
2021-08-24 15:28:29 -03:00
reduz
44d62a9f4b Implement NativeExtension pointer arguments
* Allows calling into native extensions directly with a pointer
* Makes it easier to implement some APIs more efficiently
* Appears with a "*" in the documentation for the argument.
* Implementing the pointer handling is entirely up to the implementation, although the extension API provides some hint.
* AudioStream has been implemented as an example, allowing to create NativeExtension based AudioStreams.
2021-08-23 19:58:40 -03:00
reduz
5cecdfa8af Entirely removes BIND_VMETHOD in favor of GDVIRTUAL
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.

Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-23 08:10:13 -03:00
Yuri Sizov
bf2839ea3e Add theme item descriptions to the online documentation 2021-08-04 22:27:10 +03:00
reduz
6631f66c2a Optimize StringName usage
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.

This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
Lightning_A
899e5f8685 Rename is_a_parent_of() to is_ancestor_of() 2021-06-21 08:39:28 -06:00
Gregory Basile
8ab13f8ace Documentation search fixes
Updates rich_text_label so that the built-in documentation can be searched
Previously, it would only find the first result and would not select other results
Renames "_entered" functions to "_submitted"
2021-06-16 09:43:34 -07:00
Rémi Verschelde
08491ec543
Merge pull request #47791 from Chaosus/fix_doc_theme
Fix doc theme not changing when its changed via settings
2021-05-24 12:21:55 +02:00
Tomasz Chabora
b1859510ab Change behavior of String.right 2021-05-20 23:07:57 +02:00
Marcel Admiraal
86822b187e Rename LineEdit caret_* properties getters and setters to match property 2021-04-17 12:41:23 +01:00
Yuri Roubinsky
9a5cce35e6 Fix doc theme not changing when its hidding 2021-04-11 13:29:35 +03:00
Rafał Mikrut
504bc5cc67 Fix crashes in *_input functions 2021-04-05 08:52:21 +02:00
Marcel Admiraal
8eb39f4e8b Change themes *_color_* to *_*_color
Changed:
font_color_accel -> font_accelerator_color
font_color_bg -> font_unselected_color
font_color_disabled -> font_disabled_color
font_color_fg -> font_selected_color
font_color_hover -> font_hover_color
font_color_hover_pressed -> font_hover_pressed_color
font_color_pressed -> font_pressed_color
font_color_readonly -> font_readonly_color
font_color_selected -> font_selected_color
font_color_shadow -> font_shadow_color
font_color_uneditable -> font_uneditable_color
icon_color_disabled -> icon_disabled_color
icon_color_hover -> icon_hover_color
icon_color_hover_pressed -> icon_hover_pressed_color
icon_color_normal -> icon_normal_color
icon_color_pressed -> icon_pressed_color

Also includes:
font_outline_modulate -> font_outline_color
tab_fg -> tab_selected
tab_bg -> tab_unselected
2021-01-24 06:28:49 +00:00
Rémi Verschelde
9349a5507f
Merge pull request #35505 from dalexeev/rtl_colors
Unified named colors in RichTextLabel
2021-01-08 09:03:55 +01:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Marcel Admiraal
5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
Marcel Admiraal
4b8b803931 Rename Control margin to offset 2020-12-23 06:25:56 +00:00
bruvzg
6b6f101983
[Complex Text Layouts] Refactor RichTextLabel. 2020-12-11 09:48:49 +02:00
Thakee Nathees
42bfa16996 Refactor DocData into core and editor (DocTools) parts 2020-12-02 00:48:39 +05:30
Thakee Nathees
d0e7d9b62f Documentation generation for GDScript
- ClassDoc added to GDScript and property reflection data were extracted
from parse tree

- GDScript comments are collected from tokenizer for documentation and
applied to the ClassDoc by the GDScript compiler

- private docs were excluded (name with underscore prefix and doesn't
have any doc comments)

- default values (of non exported vars), arguments are extraced from the
parser

- Integrated with GDScript 2.0 and new enums were added.

- merge conflicts fixed
2020-11-29 19:45:36 +05:30
Rémi Verschelde
a09846e015
Merge pull request #42109 from EricEzaM/PR/input-and-shortcuts-rework
Shortcuts rework - fixed issues with input propagation and triggering of unwanted shortcuts.
2020-11-28 09:04:25 +01:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Eric M
9c69281f87 Remove unused unhandled_key_input method in EditorHelp. Search popup and focus is handled by an external MenuButton shortcut. 2020-11-23 21:14:25 +10:00
Danil Alexeev
01d0addf56 Unified named colors in RichTextLabel
Now the BB tag `[color]` uses the color names from the `Color` class.
Also, the use of the `#` symbol in an HTML color code has become optional.
2020-11-17 02:55:36 +03:00
bruvzg
80b8eff6aa
[Complex Test Layouts] Change String to use UTF-32 encoding on all platforms. 2020-09-03 19:56:24 +03:00
HaSa1002
5b51ae1c5d Add multiple programming language support to class reference 2020-07-23 15:19:09 +02:00
Hugo Locurcio
31b7f02a29
Remove ToolButton in favor of Button
ToolButton has no redeeming differences with Button;
it's just a Button with the Flat property enabled by default.
Removing it avoids some confusion when creating GUIs.

Existing ToolButtons will be converted to Buttons, but the Flat
property won't be enabled automatically.

This closes https://github.com/godotengine/godot-proposals/issues/1081.
2020-06-19 20:49:49 +02:00
Rémi Verschelde
3fa863dbb8
Merge pull request #38934 from KoBeWi/where_to_setget
Link exposed setters/getters in property descriptions
2020-06-16 09:25:27 +02:00
bruvzg
1e3c02d590
Change in-editor documentation style to be closer to online docs. 2020-06-16 08:03:24 +03:00
Tomasz Chabora
ea07acb877 Link exposed set/getters in property descriptions 2020-06-15 20:54:10 +02:00
SaviHex
18c08f65d6 Added a "title" attribute for the link tag in the docs xml 2020-06-10 23:25:29 -03:00
Rémi Verschelde
0ee0fa42e6 Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14 21:57:34 +02:00
Rémi Verschelde
07bc4e2f96 Style: Enforce separation line between function definitions
I couldn't find a tool that enforces it, so I went the manual route:
```
find -name "thirdparty" -prune \
  -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \
  -o -name "*.glsl" > files
perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files)
misc/scripts/fix_style.sh -c
```

This adds a newline after all `}` on the first column, unless they
are followed by `#` (typically `#endif`). This leads to having lots
of places with two lines between function/class definitions, but
clang-format then fixes it as we enforce max one line of separation.

This doesn't fix potential occurrences of function definitions which
are indented (e.g. for a helper class defined in a .cpp), but it's
better than nothing. Also can't be made to run easily on CI/hooks so
we'll have to be careful with new code.

Part of #33027.
2020-05-14 16:54:55 +02:00
Rémi Verschelde
0be6d925dc Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
Which means that reduz' beloved style which we all became used to
will now be changed automatically to remove the first empty line.

This makes us lean closer to 1TBS (the one true brace style) instead
of hybridating it with some Allman-inspired spacing.

There's still the case of braces around single-statement blocks that
needs to be addressed (but clang-format can't help with that, but
clang-tidy may if we agree about it).

Part of #33027.
2020-05-14 16:54:55 +02:00
Rémi Verschelde
dcd1151d77 Enforce use of bool literals instead of integers
Using clang-tidy's `modernize-use-bool-literals`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2020-05-14 13:45:01 +02:00
Rémi Verschelde
69de7ce38c Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine
Part of #33027.
2020-05-10 13:13:54 +02:00
Rémi Verschelde
e956e80c1f Style: clang-format: Disable AllowShortIfStatementsOnASingleLine
Part of #33027, also discussed in #29848.

Enforcing the use of brackets even on single line statements would be
preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10 13:12:16 +02:00
Rémi Verschelde
4d50f747d5
Merge pull request #37293 from Janglee123/ctrl-click-improvements
Improved go-to definition (Ctrl + Click)
2020-05-05 16:49:15 +02:00
janglee
be7a353c70 Improved go-to definition (Ctrl + Click)
Co-Authored-By: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
2020-05-05 10:46:12 +05:30
Aaron Franke
540156b387
[Core] Rename linear_interpolate to lerp 2020-04-29 04:02:49 -04:00
Rémi Verschelde
41af228b76
Merge pull request #36960 from pycbouh/docs-improve-shortcuts
Improve shortcut formatting in docs
2020-04-29 09:40:52 +02:00
Rémi Verschelde
fdf58a5858 Rename InputFilter back to Input
It changed name as part of the DisplayServer and input refactoring
in #37317, with the rationale that input no longer goes through the
main loop, so the previous Input singleton now only does filtering.

But the gains in consistency are quite limited in the renaming, and
it breaks compatibility for all scripts and tutorials that access
the Input singleton via the scripting language. A temporary option
was suggested to keep the scripting singleton named `Input` even if
its type is `InputFilter`, but that adds inconsistency and breaks C#.

Fixes godotengine/godot-proposals#639.
Fixes #37319.
Fixes #37690.
2020-04-28 15:19:49 +02:00
Juan Linietsky
5d4dc2d45c Add ability to bind typed arrays to script API
Note: Only replaced 2 instances to test, Node.get_children and TileMap.get_used_cells
Note: Will do a mass replace on later PRs of whathever I can find, but probably need
a tool to grep through doc.
Warning: Mono will break, needs to be fixed (and so do TypeScript and NativeScript, need to ask respective maintainers)
2020-04-21 10:15:40 +02:00
Yuri Sizov
1ea7295bd2 Improve shortcut formatting in docs 2020-04-10 18:42:11 +03:00
Rémi Verschelde
f1e943f6ce
Merge pull request #35720 from Calinou/remove-request-docs-button
Remove Request Docs button in the script editor due to various issues
2020-04-02 16:45:01 +02:00
Hugo Locurcio
2f6f029a75 Remove Request Docs button in the script editor due to various issues
The Request Docs button is partly responsible for layout overflow
issues on narrow displays, such as #31133.

It also tended to attract spam and low-effort issues that were
difficult to act upon. A "Send Docs Feedback" menu option has been added
to replace it.
2020-04-02 14:07:03 +02:00
lupoDharkael
95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
Juan Linietsky
047e0b7de5 Reworked tooltips to use the popup system. 2020-03-26 15:49:45 +01:00
Juan Linietsky
441f1a5fe9 Popups are now windows also (broken!) 2020-03-26 15:49:42 +01:00
Juan Linietsky
8e6960a69e Refactored input, goes all via windows now.
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26 15:49:39 +01:00
Juan Linietsky
4396e98834 Refactored Input, create DisplayServer and DisplayServerX11 2020-03-26 15:49:32 +01:00
Rémi Verschelde
4857648a16 i18n: Add support for translating the class reference
- Parse `.po` files from `doc/translations/*.po` like already done
  with `editor/translations/*.po`.
- Add logic to register a doc translation mapping in `TranslationServer`
  and `EditorSettings`.
- Add `DTR()` to lookup the doc translation mapping (similar to `TTR()`).
  Strings are automatically dedented and stripped of whitespace to ensure
  that they would match the translation catalog.
- Use `DTR()` to translate relevant strings in `EditorHelp`,
  `EditorInspector`, `CreateDialog`, `ConnectionsDialog`.
- Small simplification to `TranslationLoaderPO`, the path argument was
  not really meaningful.
2020-03-20 08:48:11 +01:00
Rémi Verschelde
cb282c6ef0 Style: Set clang-format Standard to Cpp11
For us, it practically only changes the fact that `A<A<int>>` is now
used instead of the C++03 compatible `A<A<int> >`.

Note: clang-format 10+ changed the `Standard` arguments to fully
specified `c++11`, `c++14`, etc. versions, but we can't use `c++17`
now if we want to preserve compatibility with clang-format 8 and 9.
`Cpp11` is still supported as deprecated alias for `Latest`.
2020-03-17 07:36:24 +01:00
Rémi Verschelde
e2b66cacf7
Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodes
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-03-01 23:00:42 +01:00
Rémi Verschelde
01afc442c7 Signals: Port connect calls to use callable_mp
Remove now unnecessary bindings of signal callbacks in the public API.
There might be some false positives that need rebinding if they were
meant to be public.

No regular expressions were harmed in the making of this commit.
(Nah, just kidding.)
2020-02-28 14:24:09 +01:00
bruvzg
1af06d3d46
Rename scancode to keycode.
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00
Juan Linietsky
69c95f4b4c Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
Hugo Locurcio
99bfaa6c60
Tweak the editor help comment color for better readability 2020-02-13 23:34:15 +01:00
Juan Linietsky
3f335ce3d4 Texture refactor
-Texture renamed to Texture2D
-TextureLayered as base now inherits 2Darray, cubemap and cubemap array
-Removed all references to flags in textures (they will go in the shader)
-Texture3D gone for now (will come back later done properly)
-Create base rasterizer for RenderDevice, RasterizerRD
2020-02-11 11:53:26 +01:00
Hugo Locurcio
ad49425bd8
Don't show an Online Tutorials section if the class has no tutorials 2020-01-27 01:01:11 +01:00
Lakshay Angrish
1d9e19c7fb show parametric setters and getters in editor help 2020-01-17 15:10:59 +05:30
Rémi Verschelde
045a5ce14a i18n: Sync translation template with current source 2020-01-16 23:47:18 +01:00
Hugo Locurcio
3c8abbc4bf
doc: Move the class description to be just below the brief description
- Drop the "Brief description" header as it became redundant
  with this change.
- Fix a bug in the editor help where an extraneous newline was added
  after the header if the class isn't inherited by any others.
- Remove the Category line in the rST markup as it's not useful
  for API users.
2020-01-15 00:05:34 +01:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Haoyu Qiu
078c0d75f2 Cleans up headers included in editor_node.h 2019-12-24 21:46:05 +08:00
Haoyu Qiu
d3851d5452 Show enum class name when not on the same doc page
Variant.Type and Variant.Operator are listed on GlobalScope page instead
of Variant. The `Variant` prefix should not be omitted on that page.
2019-12-14 18:46:34 +08:00
Haoyu Qiu
249c2c4615 Makes int and bool clickable in documentation
Also adjusted the way to check empty strings.
2019-12-13 21:53:52 +08:00
Yuri Roubinsky
0ec76d40b4 Fix incorrect error label color when switching from light to dark theme 2019-11-14 13:34:56 +03:00
Yuri Roubinsky
facfae3671 Fix "matches" label color in light theme 2019-11-14 09:44:53 +03:00
PouleyKetchoupp
74271712a8 Code sections improvements in editor help
- Removed extra new lines around code blocks
- Different color for code and code blocks to make them more visible
2019-10-31 18:47:12 +01:00
volzhs
69c5d637f2 Recalculate margin based on help source font size 2019-10-25 03:28:53 +09:00
Yuri Roubinsky
d7d72aeeec Prevents segfault on _class_desc_resized at exit 2019-10-22 16:01:11 +03:00
Yuri Roubinsky
c1bd94c2a4 Fix incorrect coloring of in-editor documentation when theme changed 2019-10-15 09:54:28 +03:00
Marqus
c84e73bf92 Add shortcut Shift + F3 to search pervious in the built-in docs
When using the built-in docs, Godot would not support the shortcut "Shift + F3"
to search for the previous occurrence of the search entry text, thus causing an
inconsistent behaviour when using shortcuts in the "ScriptEditor" compared to
using them in the "ScriptTextEditor".

The previous parameter of the function "EditorHelp::_search()" in the class
"editor_help" seems to be unused, thus replaced with a bool representing to
search for previous search entry text or not. By adding the shortcut to
Godot's "ScriptEditor", this commit now improves Godot's consistensy when
using shortcuts.

Fixes #31147.

Co-Authored-By: Oscar Ferm <oscfer-6@student.ltu.se>
2019-10-10 11:01:04 +02:00
Hanif Bin Ariffin
ccfc88ffba Applied the same kind of ordering to methods description
Previously, the ordering did not match.
This could be improved by doing the filtering behorehand, then we simply access them.
This will make sure that future changes to one is reflected to the other (because we are only doing it once)
2019-10-03 12:31:41 -04:00
Rémi Verschelde
2f52d73c21
Merge pull request #31925 from bojidar-bg/31855-overriden-properties-docs
Add overriden properties to the documentation
2019-09-24 11:53:43 +02:00
Rémi Verschelde
db47221b8c
Merge pull request #32225 from Calinou/improve-editor-help-display
Improve the editor help display
2019-09-24 09:52:21 +02:00
Hugo Locurcio
5b3805b8e5
Improve the editor help display
- Write the type after the parameter name for consistency with
  the GDScript static typing syntax.
- Remove ":" after headers since they're already distinguished
  by their size.
- Remove spaces before/aftere parentheses in method/signal
  argument lists.
2019-09-20 22:41:31 +02:00
Hugo Locurcio
bee38c6b0b
Find the previous match in the editor help when pressing Shift + Enter 2019-09-08 15:10:57 +02:00
Bojidar Marinov
6c4407bae4
Add overriden properties to the documentation
Fixes #31855
2019-09-04 15:21:40 +03:00
Hugo Locurcio
d6984f7311
Increase line spacing in the editor help and asset library descriptions
This makes for more readable text.
2019-08-30 15:08:24 +02:00
Hugo Locurcio
e564bffd90
Add horizontal margins to the editor help based on width
This decreases the number of characters per line, and therefore
helps make the editor help more readable.
2019-08-23 01:42:29 +02:00
Michael Alexsander Silva Dias
95a8b2b5d9 Make the script search have a proper matches counter 2019-08-13 09:29:49 -03:00
Michael Alexsander Silva Dias
790f9f628c Show matches found when searching the docs 2019-08-09 04:09:22 -03:00
unknown
c5d4bd9e34 Fixed editor_doc properties font alignment bug 2019-07-15 19:18:51 +05:30
Hugo Locurcio
28d3a6051c
Use base Color() constructors instead of Color::html()
This results in slightly smaller binaries (-17 KB for an editor binary)
as no strings need to be allocated.
2019-07-08 21:17:10 +02:00
Rémi Verschelde
d17eac735c
Merge pull request #29815 from NilsIrl/plus_file_1
Replace ` + "/" + ` with `String::file_add()`
2019-07-01 12:06:35 +02:00
Bojidar Marinov
0c4c36d823
Add default values to the editor help, docs, and generated RST
Also, make spacing of "=" in the editor help a bit more consistent.
Closes #16086
2019-06-27 18:29:35 +03:00
Rémi Verschelde
eaaff9da31
Merge pull request #29941 from qarmin/redundant_code_and_others
Remove redundant code, possible NULL pointers and others
2019-06-27 01:05:18 +02:00
qarmin
4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Nils ANDRÉ-CHANG
d2833d4f4d Replace + "/" + with String::file_add() 2019-06-23 13:33:50 +01:00
Elia Sarti
81065d53df Fix for #29810
Ensure indentation works properly in rich text
Fix formatting
2019-06-20 11:42:25 +01:00
Hugo Locurcio
a100471f6b
Add support for bold fonts in the editor help
This also makes it possible to use the strikethrough tag (`[s]`)
in the editor help.
2019-06-15 18:47:42 +02:00
Hugo Locurcio
6516098d12
Use uppercase for all hexadecimal constants in the editor help 2019-06-05 16:44:20 +02:00
Daw11
ce6ab56e9f Fix the unclickable links inside the doc
Fixes #27384
2019-04-27 21:30:08 +02:00
Rémi Verschelde
63d3a42f82
Merge pull request #27465 from neikeq/road-to-lang-agnostic-docs-is-going-to-be-tough
EditorHelp: Improve enum ref resolving and add constant ref support
2019-04-05 15:19:21 +02:00
Ignacio Etcheverry
c8aa85189a EditorHelp, makerst: Improve enum ref resolving and constant ref support
Enum reference resolving will now search in the @GlobalScope if no class is specified and the enum cannot be resolved in the current class.
Added support for constant references in EditorHelp, e.g.: [constant KEY_ENTER] or [constant Control.FOCUS_CLICK]. It supports enum constants (the enum name must not be included).
2019-03-29 23:40:31 +01:00
Hugo Locurcio
9ba6738719
Use the accent color to highlight selected text
This makes selections easier to see, while making them fit better
within the editor theme.

This closes #22552.
2019-03-27 22:12:41 +01:00
Michael Alexsander Silva Dias
fe893bd6ef Fix description size in "New Node" dialog 2019-02-17 19:06:42 -03:00
Michael Alexsander Silva Dias
4fd7115e13 General cleanup of script and doc search bars 2019-02-10 14:18:08 -02:00
Marc Gilleron
ae9a23e36c Moved script editor search bar to the bottom, so it doesn't shift everything down 2019-01-31 16:44:40 +01:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Ray Koopa
fddffa9eb8 Unify editor class and reference search
Co-authored-by: Michael Alexsander Silva Dias <michaelalexsander@protonmail.com>
2018-11-20 20:52:27 -02:00
Michael Alexsander Silva Dias
7144e2fde4 Add more places to hide guides if relationship lines are enabled 2018-11-19 03:05:01 -02:00
Rémi Verschelde
06a133bdd1
Merge pull request #23518 from volzhs/confirmed_already_connected
Fix error with a specific dock layout
2018-11-05 13:06:27 +01:00
Rémi Verschelde
5f8af252e8 doc: Use HTTPS for docs.godotengine.org and point to latest branch
Fixes #23509.
2018-11-05 08:46:27 +01:00
volzhs
9f62f79dbb Fix error with a specific dock layout 2018-11-05 11:45:25 +09:00
Rémi Verschelde
c026e3957a Fix warnings on virtual methods [-Woverloaded-virtual] [-Wdelete-non-virtual-dtor]
Fixes the following Clang 7 warnings:
```
editor/editor_help.h:123:7: warning: 'EditorHelpIndex::popup' hides overloaded virtual function [-Woverloaded-virtual]
editor/editor_help.h:95:7: warning: 'EditorHelpSearch::popup' hides overloaded virtual function [-Woverloaded-virtual]
editor/editor_help.h:96:7: warning: 'EditorHelpSearch::popup' hides overloaded virtual function [-Woverloaded-virtual]
editor/plugins/curve_editor_plugin.h:141:15: warning: 'CurvePreviewGenerator::generate' hides overloaded virtual function [-Woverloaded-virtual]
editor/plugins/script_editor_plugin.h:70:7: warning: 'ScriptEditorQuickOpen::popup' hides overloaded virtual function [-Woverloaded-virtual]
editor/quick_open.h:69:7: warning: 'EditorQuickOpen::popup' hides overloaded virtual function [-Woverloaded-virtual]
main/tests/test_io.cpp:53:15: warning: 'TestIO::TestMainLoop::input_event' hides overloaded virtual function [-Woverloaded-virtual]
servers/audio/effects/audio_effect_record.h:69:15: warning: 'AudioEffectRecordInstance::process_silence' hides overloaded virtual function [-Woverloaded-virtual]

core/os/memory.h:119:2: warning: destructor called on non-final 'ContextGL_X11' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
core/os/memory.h:119:2: warning: destructor called on non-final 'EditorScriptCodeCompletionCache' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
core/os/memory.h:119:2: warning: destructor called on non-final 'Engine' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
core/os/memory.h:119:2: warning: destructor called on non-final 'PhysicalBone::JointData' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
core/os/memory.h:119:2: warning: destructor called on non-final 'VisualServerScene' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
core/os/memory.h:119:2: warning: destructor called on non-final 'VisualServerViewport' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
```
2018-10-02 13:40:17 +02:00
DualMatrix
c1674f1068 Fixed empty item slipping into Search Classes dialog
Fixed empty item slipping into Search Classes dialog.

Phew tracking this down was weird.
2018-09-17 12:41:47 +02:00
willnationsdev
5436abefe4 Refactor editor icon retrieval 2018-09-14 09:27:56 -05:00
Rémi Verschelde
ba64ea2283 Doc: Use same headers and order in-editor and online 2018-09-12 17:12:23 +02:00
Rémi Verschelde
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
Michael Alexsander Silva Dias
8c74257d68 Make "Search Classes" dialog have relationship lines if the setting is enabled 2018-08-31 21:48:56 -03:00
Rémi Verschelde
52466d57e9 Make some debug prints verbose-only, remove others 2018-08-24 14:59:01 +02:00
Juan Linietsky
0a8ac1a57c display some constants as hex 2018-08-21 17:13:16 -03:00
Alexander Holland
5ba083ea1b changed search help selection color 2018-08-19 22:06:20 +02:00
Rémi Verschelde
4170aa3f39
Merge pull request #20956 from volzhs/update-help
Update help doc when changing font size
2018-08-13 20:46:38 +02:00
Rémi Verschelde
68ab428d4d
Merge pull request #20155 from Tunous/line-edit-clear
Add clear button to search fields
2018-08-13 12:54:57 +02:00
Rémi Verschelde
652eb9347c
Merge pull request #20668 from SaracenOne/enum_help_fix
Fixes the hyperlinks for enumerators inside classes in the editor help.
2018-08-13 12:22:21 +02:00
volzhs
1574c3a186 Update help doc when changing font size 2018-08-13 09:59:59 +09:00
Łukasz Rutkowski
81fb81de9d Do not use theme to set LineEdit right_icon 2018-08-11 12:04:26 +02:00
Łukasz Rutkowski
e8a435c8cd Add clear text button to LineEdit
- Add pressed state to clear button
- Enable clear button on all inputs with search icon
- Remove duplicate clear buttons
- Fix rendering of icon for center and right alignments
- Add clear button to more search fields
- Add clear icon to default theme
- Add method to control enabled state of clear button
- Add property to enable clear button from inspector
2018-08-11 12:04:26 +02:00
Saracen
63c6a2487f Fixes the hyperlinks for enumerators inside classes in the editor help. 2018-08-02 09:40:36 +01:00
Bernhard Liebl
ba974b8d1e Allow some non-integer built-in constants in gdscript 2018-07-31 17:56:48 +02:00
Juan Linietsky
336db8bcd1 -Fix tooltips in inspector, now they show as rich text. 2018-07-20 18:16:19 -03:00
robojumper
98b59cf2a3 Add support for tutorial links to makerst.py
Also change the <tutorials> structure to make use of individual <link> tags
2018-06-12 17:40:24 +02:00
Guilherme Felipe
22041264ed [Doc] Fixes in find bar
- Automatically select all text when find bar called.
- Adjust the size height when first displayed.
2018-05-16 12:11:20 -03:00
Guilherme Silva
d63cc11bee Change from "search dialog" to "search bar" on help screen 2018-05-08 12:19:32 +00:00
Felix Yang
7d5a40c3e6 Ctrl+Clicking a enum now scrolls down to it in the docs. 2018-04-03 21:56:54 +02:00
Marcelo Fernandez
621d28adef Fix for a possible compile error under OS X 2018-02-14 19:48:35 -03:00
Juan Linietsky
03475ba197 Filled tutorial field in most relevent classes.
Added tutorial display in doc.
2018-01-15 18:41:13 -03:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Noshyaar
a6328011d8
Merge pull request #14973 from poke1024/docs-word-selection
Double-click word selection for RichTextLabel (i.e. docs)
2018-01-01 18:51:35 +07:00
Bernhard Liebl
b80bc553dd Double-click word selection for RichTextLabel (i.e. docs) 2017-12-28 17:44:22 +01:00
Daniel J. Ramirez
fec41618dc Minor style fixes for editor help 2017-12-27 10:35:26 -06:00
Noshyaar
3f193af893
Merge pull request #14808 from YeldhamDev/script_editor_fixes
Some fixes for the Script Editor and dead code cleaning.
2017-12-25 08:27:38 +07:00
Guilherme Felipe
8adf7c3ef2 Add method_descr again because it's required for classes that
don't have public methods. revert #14814
2017-12-18 22:47:17 -02:00
Guilherme Felipe
5c0271eed7 Fix doc methods not showing up 2017-12-18 20:35:15 -02:00
Michael Alexsander Silva Dias
36e835bbd4 Some fixes for the Script Editor and dead code cleaning. 2017-12-18 15:46:17 -02:00
poke1024
9cfc4440c1 Docs methods grouping by prefix 2017-12-16 20:02:10 +01:00