summaryrefslogtreecommitdiff
path: root/scene/gui/control.cpp
AgeCommit message (Collapse)Author
2021-09-05Prevent editing properties managed by parent containerAwkor
2021-08-23Entirely removes BIND_VMETHOD in favor of GDVIRTUALreduz
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions. * Everything else converted to GDVIRTUAL * BIND_VMETHOD is gone, always use the new syntax from now on. Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-22Replace BIND_VMETHOD by new GDVIRTUAL syntaxreduz
* New syntax is type safe. * New syntax allows for type safe virtuals in native extensions. * New syntax permits extremely fast calling. Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`. These will require API rework on a separate PR as they work different than the rest of the functions. Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
2021-08-13Merge pull request #51642 from akien-mga/cleanup-use_single_quotesRémi Verschelde
2021-08-13Style: Cleanup code using `text_editor/completion/use_single_quotes`Rémi Verschelde
2021-08-13Add bulk theme overrides to ControlPaulb23
2021-07-31Make theme item overrides more obvious in the InspectorYuri Sizov
2021-07-30Fix "Custom *" theme sections being inside "Auto Translate"Michael Alexsander
2021-07-29Add `auto_translate` toggle for automatic translationMichael Alexsander
2021-07-25Merge pull request #50835 from bruvzg/optimize_is_rtlRémi Verschelde
Optimise `is_layout_rtl`.
2021-07-25Merge pull request #50809 from akien-mga/iterators-const-referencesRémi Verschelde
2021-07-25Use const references where possible for List range iteratorsRémi Verschelde
2021-07-25Fix various typos with codespellluz paz
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25Optimise `is_layout_rtl` by caching its return value.bruvzg
2021-07-23Use C++ iterators for Lists in many situationsAaron Franke
2021-07-20Editor StringName and Viewport optimizationsJoan Fons
* Added explicit return type to the SNAME macro. * Add some extra SNAME usages. * Change some ClassDB methods to use const StringName & arguments. * Cache the Window parent in Control because it's used in is_layout_rtl(), which is called often. * Only enable internal processing for viewports that need it. * Change CanvasItem::group to be a StringName because it's only used as that.
2021-07-13Add type variations to ThemeYuri Sizov
2021-07-03Merge pull request #49468 from menip/FixGetScreenPositionRémi Verschelde
Fix Control::get_screen_position() not considering viewport scale
2021-06-30Fix editor suffixes and degrees conversionreduz
* Functions to convert to/from degrees are all gone. Conversion is done by the editor. * Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees. * Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m" * In general, can add suffixes for EditorSpinSlider Not covered by this PR, will have to be addressed by future ones: * Ability to switch radians/degrees in the inspector for angle properties (if actually wanted). * Animations previously made will most likely break, need to add a way to make old ones compatible. * Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes. * Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
2021-06-29Merge pull request #49719 from LightningAA/rename-node-is-ancestor-ofRémi Verschelde
Rename `is_a_parent_of()` to `is_ancestor_of()`
2021-06-25Implement native extension systemreduz
* Deprecates GDNative in favor of a simpler, lower level interface. * New extension system allows registering core engine classes. * Simple header interface in gdnative_interace.h
2021-06-25Remove clips_input() method and use clip_contentkobewi
2021-06-21Rename `is_a_parent_of()` to `is_ancestor_of()`Lightning_A
2021-06-17Add PROPERTY_USAGE_NONE and use itAaron Franke
2021-06-12Consistently prefix bound virtual methods with _kobewi
2021-06-09Fix Control::get_screen_position() not considering viewport scalemenip
2021-06-03Merge pull request #46482 from KoBeWi/size_warning_the_sequelRémi Verschelde
Warn about changing size only when it's relevant
2021-05-25Tweak dozens of editor property hints for consistencyHugo Locurcio
- Update Viewport MSAA property hints to match the currently exposed values. - Add some performance hints to property hints.
2021-05-17Add theme_custom_type property to Control and WindowYuri Sizov
2021-05-13Fix variable names for "usage" flags in `Control::_get_property_list()`Andrii Doroshenko (Xrayez)
Renamed incorrect "hint" variable names to "usage" in `_get_property_list()`, as "hint" implies one of the PROPERTY_HINT_* values, which is not the case here.
2021-04-30Fix autocompletion for Control's Theme propertiesYuri Sizov
2021-04-11Use Array for node configuration warningsNathan Franke
Previously, the warnings were passed as a string and delimitation of which were hard coded at each implementation.
2021-03-31Merge pull request #47252 from KoBeWi/themecideRémi Verschelde
Add methods to remove theme overrides
2021-03-30Merge pull request #46702 from HaSa1002/fix-min-size-resizeRémi Verschelde
Fix removal of `rect_min_size` not triggering resize
2021-03-23Fix removal of `rect_min_size` not triggering resizeJohannes
fixes #46672
2021-03-23Remove the clearing behavior from add_overridekobewi
2021-03-23Add methods to remove theme overrideskobewi
2021-03-19Use real_t in non-physics 2D nodesAaron Franke
2021-03-15Check if _edit_set_position and _edit_set_rect was used outside an editorKongfa Waroros
2021-03-12Fixes small typos and grammar correctionAnshul7sp1
2021-03-05Fix Control._edit_set_state crashsps1112
2021-03-04Revert "Add size check in Control._edit_set_state to prevent crash"Rémi Verschelde
This reverts commit ef1d58f034233a0d8b5d0b5dbf539e851ffc726c.
2021-03-04Add size check in Control._edit_set_state to prevent crashsps1112
2021-03-01Merge pull request #41437 from KoBeWi/put_it_hereRémi Verschelde
Allow to create a node at specific position
2021-02-27Warn about changing size only when it's relevantkobewi
2021-02-26Allow to create a node at specific positionTomasz Chabora
2021-02-19Warn when setting Control size inside ready()Tomasz Chabora
2021-02-18Reorganize Project Settingsreduz
-Advanced Settings toggle also hides advanced properties when disabled -Simplified Advanced Bar (errors were just plain redundant) -Reorganized rendering quality settings. -Reorganized miscelaneous settings for clean up.
2021-02-10Removed _change_notifyreduz
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap. -For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed() -Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-01-26Merge pull request #44349 from KoBeWi/drop_the_data!Rémi Verschelde
Allow to override drop data in LineEdit