summaryrefslogtreecommitdiff
path: root/core/project_settings.cpp
AgeCommit message (Collapse)Author
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-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-13Update game controller enums.Marcel Admiraal
2020-05-04Priorize Embedded PCKs on loadingHaSa1002
If existing, embedded PCKs are loaded before the pcks the engine might find next to it. Fixes #37568
2020-04-20Revert "Made possible to specify where to dump the contents when loading a ↵Rémi Verschelde
".pck" file" This reverts commit 3c261e0dfa19d9c661ad6ca908a3b8ccee050016. This was not so useful as is due to the way dependency paths are stored in scenes and resources.
2020-04-16Made possible to specify where to dump the contents when loading a ".pck" fileMichael Alexsander
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
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-05Re-architecture of the Godot Android plugin.fhuya
2020-02-25Rename `scancode` to `keycode`.bruvzg
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-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-05Remove duplicate WARN_PRINT macro.Marcel Admiraal
2020-02-05Remove duplicate ERR_PRINT macro.Marcel Admiraal
2020-01-10[macOS] Load PCK from the .app bundle resources, instead of changing working ↵bruvzg
directory.
2020-01-02Merge pull request #34476 from volzhs/no-slash-localize_pathRémi Verschelde
Make sure no additional slash being added with localize_path
2020-01-01Update copyright statements to 2020Rémi Verschelde
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.
2019-12-20Make sure no additional slash being added with localize_pathvolzhs
2019-12-20Encodes property names properly in project.godotHaoyu Qiu
2019-11-26Revert "Fix localise_path method so that uncached scripts don't sometimes ↵Emmanuel Leblond
get loaded with two backslashes" This reverts commit 1342551664091c1ceb931ee45d9c43f09df5f1ff.
2019-11-20Fix some overflows and unitialized variablesRafał Mikrut
2019-11-06Fix localise_path method so that uncached scripts don't sometimes get loaded ↵Saracen
with two backslashes
2019-09-25Merge pull request #32291 from Dragoncraft89/add_load_resource_flagRémi Verschelde
Add flag to control the replacement of files by ProjectSettings.load_resource_pack
2019-09-25Add flag to control the replacement of files by ↵Florian Kothmeier
ProjectSettings.load_resource_pack
2019-09-25Added some obvious errors explanationsqarmin
2019-08-28Add a project description settingHugo Locurcio
The description is displayed as a tooltip when hovering the project in the Project Manager. It can span multiple lines. This partially addresses #8167.
2019-08-22Allow to define and load script templates per projectAndrii Doroshenko (Xrayez)
Previously it was only possible to create custom script templates per editor instance which could lead to certain name collisions, but now one can create such templates per project tailored for specific use cases. The default path to search for custom script templates is defined in project settings via `editor/script_templates_search_path` setting as `res://script_templates` path, yet this can be configured per project. Templates have at most two origins now: 1. Project-specific, defined in `ProjectSettings`, for instance: - res://script_templates/ 2. Editor script templates, for instance: - %APPDATA%/Godot/script_templates/ As script templates can have the same name over different paths, the override mechanism was also added, enabling project-specific templates over the editor ones.
2019-08-17Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'Braden Bodily
Condensed some if and ERR statements. Added dots to end of error messages Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?), core/os/memory.cpp, drivers/png/png_driver_common.cpp, drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-07-10Use reference to constant in functionsqarmin
2019-07-05Merge pull request #30282 from neikeq/editor_in_cs_equals_winRémi Verschelde
Re-write mono module editor code in C#
2019-07-05Merge pull request #24086 from RandomShaper/bundle-pck-to-executableRémi Verschelde
Enhance game export
2019-07-05Fix localize_path not always workingIgnacio Etcheverry
We make sure the resource dir path ends with a trailing '/' for safety reasons, so we must make sure the path we compare it to does so as well.
2019-07-03Add embedded PCK option to PC platformsPedro J. Estébanez
The basic point is as in 2.1 (appending the PCK into the executable), but this implementation also patches a dedicated section in the ELF/PE executable so that it matches the appended data perfectly. The usage of integer types is simplified in existing code; namely, using plain `int` for small quantities.
2019-07-01Remove unnecessary code and add some error explanationsqarmin
2019-06-26Some code changed with Clang-Tidyqarmin
2019-06-12Merge pull request #29306 from qarmin/small_code_fixesRémi Verschelde
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-11Fix error macro calls not ending with semicolonRémi Verschelde
It's not necessary, but the vast majority of calls of error macros do have an ending semicolon, so it's best to be consistent. Most WARN_DEPRECATED calls did *not* have a semicolon, but there's no reason for them to be treated differently.
2019-06-03Small fixes to unrechable code, possibly overflows, using NULL pointersqarmin
2019-05-30Don't localize paths that contain but are not in the resource pathRémi Verschelde
This issue could be triggered if you try to access a path which contains the resource path string in its absolute path, while pointing to a directory which is *not* in the resource path. It's clearer with an example: with `/my/project` as resource path, the previous logic would also localize `/my/project_data` to `res://data`, which is incorrect and would lead to a cryptic error. Fixes #24761. Co-authored-by: volzhs <volzhs@gmail.com>
2019-05-29Merge pull request #25647 from QbieShay/fix_25440Rémi Verschelde
Added a setting for files in which the editor should search (project specific)
2019-04-15Enable object decoding when serializing binary project settingsmuiroc
2019-04-05Allow default audio bus layout modificationlupoDharkael
2019-04-01Add object encoding param to serialization methodsFabio Alessandrelli
Network peers get_var/put_var File get_var/store_var GDScript/Mono/VisualScript bytes2var/var2bytes Add MultiplayerAPI.allow_object_decoding member which deprecates PacketPeer.allow_object_decoding. Break ABI compatibaility (API compatibility for GDNative).
2019-03-07Define android/modules globally so it appears in Project SettingsRémi Verschelde
Until now people had to add it manually to project.godot to load custom modules.
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-02-12Added a setting for files in which the editor should search (project wise).QbieShay
Remembers the tickboxes but only during the same execution Fixes #25440
2019-01-14GLES2: Make Nvidia flicker workaround opt-inRémi Verschelde
It has a big impact on 2D and text rendering performance (cf. #24466) so the solution seems worse than the bug it aims to work around. It's now opt-in via "rendering/quality/2d/gles2_use_nvidia_rect_flicker_workaround" for those who need it and have a simple enough game for the performance drop not to be an issue. Fixes #24466.
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-21ProjectManager: Warn when projects have different config_versionRémi Verschelde
When opening projects for edition through the project manager, the following checks are now done: 1. If the config_version is lower than the one used by the current engine version, users are asked if they want to convert to the new format or abort editing. Fixes #20626. 2. If the config_version is higher than the expected one (project from a more recent and incompatible engine version), projects are grayed out and can't be edited. Fixes #18758. When editing from the command line, the behaviour is unchanged: projects in situation (1) are automatically converted, while projects in situation (2) show an error message (made more explicit). The "Run" option from the project manager was not changed, so it will still run (1) projects without converting them, and fail running (2) projects. Co-authored-by: groud <gilles.roudiere@gmail.com>