summaryrefslogtreecommitdiff
path: root/editor
AgeCommit message (Collapse)Author
2020-05-25Add `custom_modules` build option to compile external user modulesAndrii Doroshenko (Xrayez)
This patch adds ability to include external, user-defined C++ modules to be compiled as part of Godot via `custom_modules` build option which can be passed to `scons`. ``` scons platform=x11 tools=yes custom_modules="../project/modules" ``` Features: - detects all available modules under `custom_modules` directory the same way as it does for built-in modules (not recursive); - works with both relative and absolute paths on the filesystem; - multiple search paths can be specified as a comma-separated list. Module custom documentation and editor icons collection and generation process is adapted to work with absolute paths needed by such modules. Also fixed doctool bug mixing absolute and relative paths respectively. Implementation details: - `env.module_list` is a dictionary now, which holds both module name as key and either a relative or absolute path to a module as a value. - `methods.detect_modules` is run twice: once for built-in modules, and second for external modules, all combined later. - `methods.detect_modules` was not doing what it says on the tin. It is split into `detect_modules` which collects a list of available modules and `write_modules` which generates `register_types` sources for each. - whether a module is built-in or external is distinguished by relative or absolute paths respectively. `custom_modules` scons converter ensures that the path is absolute even if relative path is supplied, including expanding user paths and symbolic links. - treats the parent directory as if it was Godot's base directory, so that there's no need to change include paths in cases where custom modules are included as dependencies in other modules.
2020-05-25Fix build after merge of #37235Rémi Verschelde
It used APIs that were changed after the PR was last rebased.
2020-05-25Merge pull request #37235 from Calinou/improve-editor-feature-profilesRémi Verschelde
Improve the editor feature profiles UX
2020-05-25Reverse mouse wheel in animation track editorTomasz Chabora
2020-05-21Fix moving 2D node with mouse after using arrow keysDominik 'dreamsComeTrue' Jasiński
Fixes: #38894
2020-05-20DocData: Fix sorting of arguments and constantsRémi Verschelde
The missing `operator<` definitions caused `Vector::sort()` to fail sorting those alphabetically by name on Windows (not sure why Linux isn't affected, I guess GCC/Clang are cleverer and use the operator from the first struct member).
2020-05-20Merge pull request #38876 from paulloz/fix-import-params-errorRémi Verschelde
Fix error with 'params' when import dock doesn't define any parameter
2020-05-20check the params section exist before erasing it in import_dockPaul Joannon
related #38864
2020-05-19Keep "lock" metadata when changing a Node's type, if applicableMichael Alexsander
2020-05-18Merge pull request #38800 from YeldhamDev/icons_completeRémi Verschelde
Add more missing node icons
2020-05-17Merge pull request #38804 from m4gr3d/android_plugin_config_masterRémi Verschelde
Implementation of the Godot Android Plugin configuration file
2020-05-17Implementation of the Godot Android Plugin configuration fileFredia Huya-Kouadio
2020-05-17Add more missing node iconsMichael Alexsander
2020-05-17Merge pull request #38695 from dreamsComeTrue/node-swap-order-argumentsRémi Verschelde
Replace 'add_child_below_node' with 'add_sibling' in Node
2020-05-16Merge pull request #38451 from eduardonunesp/feature/command-comma-preferencesRémi Verschelde
Using command + comma on macOS as default shortcut for editor settings
2020-05-15Merge pull request #38764 from YeldhamDev/icons_missingRémi Verschelde
Add more missing icons
2020-05-15Replace 'add_child_below_node' with 'add_sibling' in NodeDominik 'dreamsComeTrue' Jasiński
Fixes: #19642
2020-05-15Add more missing iconsMichael Alexsander
2020-05-15Hide editor_spin_slider grabber when closing Editor's windowsDominik 'dreamsComeTrue' Jasiński
Fixes: #38740
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: Enforce separation line between function definitionsRémi Verschelde
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-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
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-14Style: Fix missing/invalid copyright headersRémi Verschelde
2020-05-14Enforce use of bool literals instead of integersRémi Verschelde
Using clang-tidy's `modernize-use-bool-literals`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2020-05-14Modernize remaining uses of 0/NULL instead of nullptr (C++11)Rémi Verschelde
Using clang-tidy's `modernize-use-nullptr`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2020-05-14Port member initialization from constructor to declaration (C++11)Rémi Verschelde
Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
2020-05-13Merge pull request #38637 from Calinou/editor-rename-revert-scene-bindRémi Verschelde
Rename the editor action "Revert Scene" to "Reload Saved Scene"
2020-05-13Update game controller enums.Marcel Admiraal
2020-05-12Support multiple debug protocols.Fabio Alessandrelli
2020-05-12Rename the editor action "Revert Scene" to "Reload Saved Scene"Hugo Locurcio
This option can be used to workaround various issues with stuff not reloading properly when changes are made. The option was renamed to clarify the fact that it actually reloads the scene saved on the filesystem.
2020-05-12Update the editor icons README to remove outdated informationHugo Locurcio
This closes #38684.
2020-05-11Tweak the error message displayd when a post-import script failsHugo Locurcio
See #38662.
2020-05-11thirdparty: Cleanup after #38386, document provenance and copyrightRémi Verschelde
Also renamed `delaunay.h` to `delaunay_2d.h` to match the class name.
2020-05-11Merge pull request #38386 from reduz/new-lightmapperRémi Verschelde
New GPU lightmapper
2020-05-11Using command + comma on macOS as default shortcut for editor settingsEduardo Nunes Pereira
2020-05-11Merge pull request #38592 from Calinou/debugger-error-warning-iconRémi Verschelde
Use a different icon for the debugger tab with both warnings and errors
2020-05-11Merge pull request #38594 from Calinou/rename-clear-script-actionRémi Verschelde
Rename the Clear Script editor action to Detach Script
2020-05-11Merge pull request #38631 from Calinou/editor-log-selection-color-themeRémi Verschelde
Tweak the editor log selection color to match the current editor theme
2020-05-10New lightmapperJuan Linietsky
-Added LocalVector (needed it) -Added stb_rect_pack (It's pretty cool, we could probably use it for other stuff too) -Fixes and changes all around the place -Added library for 128 bits fixed point (required for Delaunay3D)
2020-05-10Revert "Renamed plane's d to distance"Rémi Verschelde
This reverts commit ec7b481170dcd6a7b4cf0e6c1221e204ff7945f3. This was wrong, `d` is not a distance but the `d` constant in the parametric equation `ax + by + cz = d` describing the plane.
2020-05-10Tweak the editor log selection color to match the current editor themeHugo Locurcio
This overrides the default blue color.
2020-05-10Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde
Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
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-10Style: Add missing copyright headersRémi Verschelde
2020-05-10Renamed plane's d to distanceMarcus Elg
2020-05-09Rename the Clear Script editor action to Detach ScriptHugo Locurcio
This makes it more obvious that the script won't be modified in any way. See comments in #27813.
2020-05-09Use a different icon for the debugger tab with both warnings and errorsHugo Locurcio
This makes it possible to see if both errors and warnings were pushed without having to open the tab.
2020-05-09Rename Lineshapes d to distanceMarcus Elg
2020-05-08Merge pull request #38555 from ThakeeNathees/rotation-gizmo-visible-fixRémi Verschelde
rotation gizmo visible = false; when camera preview
2020-05-08rotation gizmo visible = false; when camera previewThakee Nathees