summaryrefslogtreecommitdiff
path: root/editor/editor_inspector.cpp
AgeCommit message (Collapse)Author
2022-08-29Revert "Remove NOTIFICATION_ENTER_TREE when paired with ↵Rémi Verschelde
NOTIFICATION_THEME_CHANGED" This reverts commit 4b817a565cab8af648c88cfc7ab6481e86ee3625. Fixes #64988. Fixes #64997. This caused several regressions (#64988, #64997, https://github.com/godotengine/godot/issues/64997#issuecomment-1229970605) which point at a flaw in the current logic: - `Control::NOTIFICATION_ENTER_TREE` triggers a *deferred* notification with `NOTIFCATION_THEME_CHANGED` as introduced in #62845. - Some classes use their `THEME_CHANGED` to cache theme items in member variables (e.g. `style_normal`, etc.), and use those member variables in `ENTER_TREE`, `READY`, `DRAW`, etc. Since the `THEME_CHANGE` notification is now deferred, they end up accessing invalid state and this can lead to not applying theme properly (e.g. for EditorHelp) or crashing (e.g. for EditorLog or CodeEdit). So we need to go back to the drawing board and see if `THEME_CHANGED` can be called earlier so that the previous logic still works? Or can we refactor all engine code to make sure that: - `ENTER_TREE` and similar do not depend on theme properties cached in member variables. - Or `THEME_CHANGE` does trigger a general UI update to make sure that any bad theme handling in `ENTER_TREE` and co. gets fixed when `THEME_CHANGE` does arrive for the first time. But that means having a temporary invalid (and possibly still crashing) state, and doing some computations twice which might be heavy (e.g. `EditorHelp::_update_doc()`).
2022-08-28Merge pull request #64885 from Mickeon/rename-tooltip-hintRémi Verschelde
Rename `hint_tooltip` to `tooltip_text` & setter getter
2022-08-27Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGEDAaron Record
2022-08-27Rename `hint_tooltip` to `tooltip_text` & setgetMicky
`hint_tooltip` -> `tooltip_text` `set_tooltip` -> `set_tooltip_text` `_get_tooltip` -> `get_tooltip_text` Updates documentation, too.
2022-08-26Remove Inspector tooltip hack that never actually workedYuri Sizov
2022-08-25Merge pull request #64270 from timothyqiu/close-keyingRémi Verschelde
Fix overlapping keying and remove button in Inspector
2022-08-23Disable editing properties in foreign resourcesSaracenOne
from imported scenes or objects returning true from a function named '_is_read_only' and disable resaving imported resources.
2022-08-22Add per-scene UndoRedokobewi
2022-08-18Make `property_*_revert` methods multilevel and expose them for scriptingYuri Sizov
2022-08-11Fix overlapping keying and remove button in InspectorHaoyu Qiu
2022-08-10Fix document display in inspector for propertiesXwdit
2022-08-08Merge pull request #62868 from fire-forge/array-resize-sizeRémi Verschelde
Use a SpinBox in the inspector array resize dialog
2022-08-06Merge pull request #63712 from object71/fix-export-issuesRémi Verschelde
2022-08-04Fixup array property inspectorRicardo Buring
2022-08-04Merge pull request #63894 from fire-forge/add-metadata-buttonRémi Verschelde
Add spacing above the "Add Metadata" button
2022-08-03Removed faulty function update after get_property_list.Hristo Stamenov
The function tried to rearrange properties but that lead to problems with duplication or deleted properties. Implemented the logic that that function did inside the get_property_list both for tool scripts and non-tool scripts.
2022-08-02Add 4px of spacing above the "Add Metadata" buttonFireForge
2022-08-02Clean-up array editingreduz
2022-07-31Merge pull request #63429 from RandomShaper/indicate_overriddenRémi Verschelde
2022-07-31Merge pull request #62936 from Xwdit/script_doc_inspector_propertyRémi Verschelde
2022-07-30Improve usability of non-default values in the property inspectorPedro J. Estébanez
- Provide a visual indication that a (sub)group contains non-default (revertable) values when it's collapsed. - Add a new option to the inspector's tools menu for expanding only (sub)groups containing properties with non-default values.
2022-07-29Remove Signal connect bindsJuan Linietsky
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-27Merge pull request #63351 from fire-forge/array-colorsRémi Verschelde
2022-07-27Merge pull request #58443 from object71/fix-editor-properties-deleted-by-mistakeRémi Verschelde
2022-07-27Reduce contrast in inspector array element backgroundsFireForge
Co-authored-by: reduz <reduzio@gmail.com>
2022-07-24Avoid crash when when the editor_property_map is empty.K. S. Ernest (iFire) Lee
2022-07-14Fix document not showing for script properties in inspectorXwdit
2022-07-13Merge pull request #59680 from fire-forge/property-helpRémi Verschelde
Add "Open Documentation" button to EditorProperty context menu
2022-07-11Add "Open Documentation" button to EditorProperty context menuFireForge
2022-07-10Use a SpinBox in the inspector array resize dialogFireForge
2022-07-09Add ok_button_text to AcceptDialog and cancel_button_text to ConfirmationDialogFireForge
2022-07-06Refactor Font configuration and import UI, and Font resources.bruvzg
2022-06-25Add ability to export Node pointers as NodePathsreduz
This PR implements: * A new hint: PROPERTY_HINT_NODE_TYPE for variant type OBJECT, which can take specific node types as hint string. * The editor will show it as a node path, but will set it as a pointer to a node from the current scene if you select a path. * When scene is saved, the node path is saved, then restored as a pointer. NOTE: This is a proof of concept and this approach will most likely not work. The reason if that, if the node referenced is deleted, then when trying to edit this the node will become invalid. Potential workarounds: Since this uses the Variant API, it should obtain the pointer from the Variant object ID. Yet, this would either only really work in GDScript or it would need to be implemented with workarounds in every language. Alternative ways to make this work: Nodes could export an additional property with a node path (like for which_node, it could be which_node_path). Another alternative: Path editing could happen as a hidden metadata (ignoring the pointer).
2022-06-10Merge pull request #59770 from fire-forge/rounded-cornersRémi Verschelde
2022-05-26Merge pull request #61387 from KoBeWi/press_to_actionRémi Verschelde
Improve style of inspector buttons
2022-05-26Merge pull request #60987 from fire-forge/vertical-moveRémi Verschelde
Use the move mouse cursor shape for the inspector array reorder button
2022-05-25Improve style of inspector buttonskobewi
2022-05-25Add rounded corners to EditorProperty and EditorSpinSliderFireForge
- Adds rounded corners to the EditorProperty child background, EditorSpinSlider label background, and resource sub-inspector borders and background. - Allows customizing EditorSpinSlider label background through a new Theme StyleBox property, label_bg. - Makes margins consistent in resource sub-inspectors. - Removes space between buttons in NodePath, Resource, and multiline string editors. - Adds space between label background and content for vertical property editors.
2022-05-24Reorganize Region Rect Editorreduz
Problem: * Region rect was pretty much a hidden editor. Because it was annoying for it to pop up automatically, it did not. * Because it did not, most users have no idea it even exists. * But because it is a transient editor, it would steal focus of other editor and annoy users. Solution: * Editor has been moved to a window. * Regions that can be edited add a button below the region which can be pressed to open the editor. This required a slight change in EditorInspectorPlugin to allow custom editors to be below others.
2022-05-22Use the "Move" mouse icon in inspector arraysFireForge
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
2022-05-16Replace most uses of Map by HashMapreduz
* 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-05Disallow setting editor-only metadata in the editorRechieKho
2022-05-04Deleting only repeating "Scripted Variables" propsHristo Stamenov
2022-05-03Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio
These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
2022-04-29Fix issues when skipping l10n for script variablesHaoyu Qiu
2022-04-26Merge pull request #60367 from timothyqiu/refresh-cdRémi Verschelde
2022-04-23Rename theme properties to include underscoresFireForge
- 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-19Reset refresh countdown if pending update tree requestHaoyu Qiu
2022-04-19Fixes incorrect display of property labels with feature tagsRindbee
Closes #60352