summaryrefslogtreecommitdiff
path: root/editor/editor_properties.cpp
AgeCommit message (Collapse)Author
2022-07-29Keep property values when extending scriptTomasz Chabora
2022-07-25Merge pull request #63219 from reduz/implement-vector4-projectionRémi Verschelde
2022-07-23Implement Vector4, Vector4i, Projectionreduz
Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23Merge pull request #63265 from reduz/stream-bpm-supportRémi Verschelde
Implement BPM support in AudioStream files.
2022-07-23Implement BPM supportreduz
Based on #62896, only implements the BPM support part. * Implements BPM support in the AudioStreamOGG/MP3 importers. * Can select BPM/Bar Size and total beats in a song file, as well as edit looping points. * Looping is now BPM aware * Added a special importer UI for configuring this. * Added a special preview showing the audio waveform as well as the playback position in the resource picker. * Renamed `AudioStream::instance` to `instantiate` for correctness.
2022-07-22Merge pull request #62581 from Guh-Feng/Color-Picker-UpdateRémi Verschelde
2022-07-22Fix in editor drag and dropping a `Node` to generic `NodePath` propertykleonc
2022-07-21Color Pickers Respect SettingsGuh-Feng
Updated editor_node with function that sets up color pickers throughout Godot to respect editor's settings.
2022-07-13Merge pull request #62827 from fire-forge/ok-cancelRémi Verschelde
Add `ok_button_text` to AcceptDialog and `cancel_button_text` to ConfirmationDialog
2022-07-09Add ok_button_text to AcceptDialog and cancel_button_text to ConfirmationDialogFireForge
2022-07-08Merge pull request #62075 from Vitika9/gsoc-colorpickerRémi Verschelde
2022-07-06ColorPicker RefactorVitika9
2022-07-04Fix drag'n drop type check for NodePathsNolkaloid
2022-06-30Add editor properties for Callable and SignalMinusKube
2022-06-28Merge pull request #62470 from vnen/gdscript-export-nodesRémi Verschelde
GDScript: Enable exporting nodes to the inspector
2022-06-27GDScript: Enable exporting nodes to the inspectorGeorge Marques
Also fix an small issue in the property editor for NodePath trying to use the meta property when not needed.
2022-06-27Add a const call mode to Object, Variant and Script.K. S. Ernest (iFire) Lee
For this to work safely (user not call queue_free or something in the expression), a const call mode was added to Object and Variant (and optionally Script). This mode ensures only const functions can be called, making it safe to use from the editor. Co-Authored-By: reduz <reduzio@gmail.com>
2022-06-27Merge pull request #62185 from reduz/export-node-pointer-pathRémi Verschelde
Add ability to export Node pointers as NodePaths
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-24Rename export_range's noslider option to no_sliderMarcus Elg
2022-06-21Implement Running Godot as Movie Writerreduz
* Allows running the game in "movie writer" mode. * It ensures entirely stable framerate, so your run can be saved stable and with proper sound (which is impossible if your CPU/GPU can't sustain doing this in real-time). * If disabling vsync, it can save movies faster than the game is run, but if you want to control the interaction it can get difficult. * Implements a simple, default MJPEG writer. This new features has two main use cases, which have high demand: * Saving game videos in high quality and ensuring the frame rate is *completely* stable, always. * Using Godot as a tool to make movies and animations (which is ideal if you want interaction, or creating them procedurally. No other software is as good for this). **Note**: This feature **IS NOT** for capturing real-time footage. Use something like OBS, SimpleScreenRecorder or FRAPS to achieve that, as they do a much better job at intercepting the compositor than Godot can probably do using Vulkan or OpenGL natively. If your game runs near real-time when capturing, you can still use this feature but it will play no sound (sound will be saved directly). Usage: $ godot --write-movie movie.avi [scene_file.tscn] Missing: * Options for configuring video writing via GLOBAL_DEF * UI Menu for launching with this mode from the editor. * Add to list of command line options. * Add a feature tag to override configurations when movie writing (fantastic for saving videos with highest quality settings).
2022-06-14Add vector value linkingkobewi
Co-authored-by: redlamp <244062+redlamp@users.noreply.github.com>
2022-06-11Add suffixes to all nodes and resourcesFireForge
2022-06-10Merge pull request #59770 from fire-forge/rounded-cornersRémi Verschelde
2022-06-03Support explicit values in flag properties, add C# flags supportRaul Santos
- Add support for explicit values in properties using `PROPERTY_HINT_FLAGS` that works the same way it does for enums. - Fix enums and flags in VisualScriptEditor (it wasn't considering the explicit value). - Use `PROPERTY_HINT_FLAGS` for C# enums with the FlagsAttribute instead of `PROPERTY_HINT_ENUM`.
2022-05-26Use Spatial shader as default for Meshkobewi
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-19Use suffixes for units in nodes and resourcesAaron Franke
2022-05-19Tweak minsize of editor ColorPickerButtonskobewi
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-30Fix wrong condition checking for foreign resourceskobewi
2022-04-26Allow using other property hints without the range hintAaron Franke
2022-04-25Merge pull request #60490 from aaronfranke/dap-typoRémi Verschelde
2022-04-25Merge pull request #60500 from KoBeWi/scene_crasherRémi Verschelde
2022-04-25Merge pull request #60261 from fire-forge/theme-prop-renamesRémi Verschelde
2022-04-25Fix crash with nested resourceskobewi
2022-04-24Fix type name typo in Debug Adapter ProtocolAaron Franke
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-22Implement Label3D node.bruvzg
Add "generate_mipmap" font import option. Add some missing features to the Sprite3D. Move BiDi override code from Control to TextServer. Add functions to access TextServer font cache textures. Add MSDF related flags and shader to the standard material. Change standard material cache to use HashMap instead of Vector.
2022-03-30Cleanup EditorNode and EditorDataHendrik Brucker
Co-authored-by: Eric M <itsjusteza@gmail.com>
2022-03-29Merge pull request #59496 from KoBeWi/inspector_teleportRémi Verschelde
2022-03-28Add property name style toggle to InspectorHaoyu Qiu
2022-03-25Switch scene when editing foreign resourcekobewi
2022-03-12Initialize bools in the headers in editorAaron Franke
2022-03-11Merge pull request #58751 from bruvzg/loc_str_propsRémi Verschelde
2022-03-09Remove VARIANT_ARG* macrosreduz
* Very old macros from the time Godot was created. * Limited arguments to 5 (then later changed to 8) in many places. * They were replaced by C++11 Variadic Templates. * Renamed methods that take argument pointers to have a "p" suffix. This was used in some places and not in others, so made it standard. * Also added a dereference check for Variant*. Helped catch a couple of bugs.
2022-03-06Remove set_as_minsize()kobewi
2022-03-04Make EditorSpinSlider label color a theme propertyFireForge
2022-03-04Improve app name and system permission message localization.bruvzg
Add localizable string (Dictionary<Lang Code, String>) property editor and property hint. Add localized "app name" property to the project settings. Add localized permission and copyright properties to the macOS and iOS export settings. Remove some duplicated ("app name") and deprecated ("info") macOS and iOS export properties.
2022-02-16Port existing _notification code to use switch statements (part 1/3)jmb462