summaryrefslogtreecommitdiff
path: root/editor/editor_inspector.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-03Stopped trying to revert to default values when script implementation of ↵Eric M
property_can_revert exists
2020-04-17Implement global and per instance shader uniforms.Juan Linietsky
Adds two keywords to shader language for uniforms: -'global' -'instance' This allows them to reference values outside the material.
2020-04-08Refactored shadowmapping.Juan Linietsky
- Made shadow bias size independent, so it will remain when changing light or camera size. - Implemented normal offset bias, which greatly enhances quality. - Added transmission to subsurface scattering - Reimplemented shadow filter modes Closes #17260
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-03-26Reworked tooltips to use the popup system.Juan Linietsky
2020-03-26Popups are now windows also (broken!)Juan Linietsky
2020-03-20i18n: Add support for translating the class referenceRémi Verschelde
- 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-19Merge pull request #35712 from KoBeWi/theheme_spyRémi Verschelde
Show theme property descriptions in the inspector
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-05Signals: Don't pass default binds to EditorProperty property_changedRémi Verschelde
This was done by mistake in #36758, but it's not necessary and actual causes a bug. `property_changed` is only emitted via `emit_changed()`, which already has default values for `p_field` and `p_changing`. Also reverted to using `String` for now to be on the safe side, even if it's inconsistent with `emit_changed()`. I had only changed it partially in #36758 so it was inconsistent. It probably does make sense to port `EditorInspector` and related property editors to use `StringName` where relevant, but that's for a dedicated PR. Fixes #36799.
2020-03-03Signals: Fix some regressions from #36426Rémi Verschelde
- Fix `callable_mp` bindings to methods which used to have default arguments passed to `bind_method`. We now have to re-specify them manually when connecting. - Re-add `GroupsEditor::update_tree` binding. - Misc code quality changes along the way.
2020-02-28Signals: Port connect calls to use callable_mpRémi Verschelde
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-26Don't show a copy of the property's name in the inspector's tooltip if ↵Michael Alexsander
there's no description
2020-02-25Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky
- Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
2020-02-21Added StringName as a variant type.Juan Linietsky
Also changed all relevant properties defined manually to StringName.
2020-02-20Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky
objects and made them default.
2020-02-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-11Texture refactorJuan Linietsky
-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-01-31Merge pull request #33047 from silvanocerza/settings-searchRémi Verschelde
Improved search in settings dialogs
2020-01-29Show theme property descriptions in the inspectorTomasz Chabora
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-24Cleans up headers included in editor_node.hHaoyu Qiu
2019-11-04Improved search in settings dialogsSilvano Cerza
Settings search used to work only on properties, so if a searchbox text was a substring of a category but not of a property the whole category would be filtered out and no property would be shown. Now the behaviour is changed so that when the searchbox text is a substring of a category all its properties are shown too. The previous behaviour is still present so that in case the searchbox text is both a substring of a category and a property of another category, all properties of the first category are shown and only the property of the second category is shown.
2019-10-22Auto-increment frame_coords when keyingTomasz Chabora
2019-10-10Remove redundant `camelcase_to_underscore()` call in EditorInspectorHugo Locurcio
Calling `String::capitalize()` already calls `String::camelcase_to_underscore()` under the hood.
2019-09-25Merge pull request #32051 from qarmin/some_error_explanationRémi Verschelde
Added some obvious errors explanations
2019-09-25Added some obvious errors explanationsqarmin
2019-09-19Improve folding appearance in the editor inspectorHugo Locurcio
The arrow is now displayed at the left to be consistent with other places where folding is used. The arrow icons used are now consistent with the rest of the editor. The `arrow_up` icon is no longer used anywhere, so it was removed. Additional spacing was also added for a better visual appearance.
2019-08-30Editor: remove TOOLS_ENABLED guardsmerumelu
For code inside editor/ `#ifdef TOOLS_ENABLED` is always true so those checks are redundant.
2019-08-07Add some code changes/fixes proposed by Coverity and Clang Tidyqarmin
2019-07-25Inspector: Fix PROPERTY_HINT_SPRITE_FRAME not behaving as RANGERémi Verschelde
This was a regression in 3.1 and later from the new inspector, where PROPERTY_HINT_SPRITE_FRAME was not fully re-implemented. It's meant to be a normal PROPERTY_HINT_RANGE which also automatically increments its value when keyed in the animation player. To avoid code duplication, I made the frames properties use the actual PROPERTY_HINT_RANGE and introduced a PROPERTY_USAGE_KEYING_INCREMENTS usage flag instead.
2019-07-22Revert "Expose "meta" to the Inspector"Rémi Verschelde
2019-07-19Merge pull request #22642 from YeldhamDev/inspector_metadataRémi Verschelde
Expose "meta" to the Inspector
2019-06-05Add a margin to "checkable" property checkboxes in the editor inspectorHugo Locurcio
This makes "checkable" property checkboxes look more consistent with other checkboxes.
2019-04-25Use approximate equallity methods in many placesAaron Franke
2019-04-23Added inspector plugin documentation.Juan Linietsky
Fixed plugin bindings.
2019-04-23Revert 8d3345a, I thought this was non functioning but it is..Juan Linietsky
2019-04-23Made virtual function begin with _, for consistency.Juan Linietsky
This was not yet used, anyway as no API is bound for this.
2019-04-22Fix drawing of checkable editor propertiesJames Buck
- Make text cutoff respect checkbox icon's width - Get checkbox icon from EditorIcons instead of CheckBox
2019-04-20Fix editor tooltip formattingJames Buck
Removed unnecessary word wrap which caused broken tags and general ugliness. Fixes #24926
2019-04-20Object::script may not be a valid Ref<Script>Hein-Pieter van Braam-Stewart
It appears that Object::script may be a valid ScriptInstance but not be castable to Ref<Script>. There were only 5 places in the code that made this assumption. This commit fixes that.
2019-04-08Add ability to edit editor feature profilesJuan Linietsky
Allows enabling/disabling parts of the editor and storing/loading profiles for that.
2019-03-07Force inspector to clean up on delete, fixes crash.Juan Linietsky
2019-03-06Fix how settings change, closes #26692Juan Linietsky
2019-03-06Fix crash on exit when removing EditorInspectorPluginsWill Nations