summaryrefslogtreecommitdiffstats
path: root/modules/visual_script/visual_script_nodes.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-121-5/+5
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Allow some non-integer built-in constants in gdscriptBernhard Liebl2018-07-311-3/+3
|
* Carry property hint and hint string through to Visualscript virtual functions.K. S. Ernest (iFire) Lee2018-07-271-1/+5
|
* Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam2018-07-261-9/+9
| | | | | | | | | | | | | | | | | | | | | | | This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
* Improve VisualScript UXK. S. Ernest (iFire) Lee2018-07-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Prototype faster function call ux. * Work on general search ux. * Able to create nodes from search. * Show class for variables but not methods. * Get actions search working. * Descriptions now show for both methods and properties. * Enable zooming on mouse wheel up and down. * Make the drag trigger on right mouse button. * Search now shows for action visual script nodes. * Able to search visual node names. * Search works better. * Change zooming scale to hide artifacts better. * Remove zoom changes * Select from base should check properties too like the other functions. * Seq_connect flag is needed to set sequence lines correctly. * Remove comment * Code cleanup with function names and arguments. * Use brief description for search descriptions. * Clean and fix bug with input nodes connecting with sequence lines. * Add a warning and fix some edge conditions with sequence into data lines and vice versa. * Don't search functions when pulling from a sequence node. * Don't show actions when pulling from a data line. * Set set and get properties. * Convert visual script operators to the correct type * Create a function preset finds only functions. * Singletons can now find functions. * Add shift-a for generic search. * Add brief descriptions for Visual Script nodes. * Search boxes can now filter names. * Add bigger hit zones to node connect. * For the drop zones, make all the rect2 areas the same size. * Function names in visual script node should be lower case so that search works better. * Use the convention of capitalize() for set, set, visual script nodes and methods. * Make search more general. Ignore "_" and make case-insensitive. Also made the search window smaller and remove extra info from search * Make type_cast use the connecting node's type and remove use of found variable. * Fix case where you call an instance's call function where it becomes an invalid call. * Make get_visual_node_names use a set of filters, move action creations and fix bug with sequence node connections. * Make the window bigger. * Make connect_data and connect_seq more robust. * Add icons to search items. * Add vs constructors in shift-a menu. * Operators, builtins and constructors show type name. Fix several problems with port connections. * In shift-a mode search everything. * Code cleanup * Work on autocompleting the type. * Use type guess in action creation. * Check if type hint string exists in object variables when generating the visual script search. * Add the hint to SceneTree. * Add original type detection. * Make type casting great again. This puts the type casted base type as the data output type string hint. * Pass the type in a VisualScriptFunctionCall too. * Set the base type correctly in VisualScriptFunctionGet and VisualScriptFunctionSet using hint string. * Make sure the instance is passed in VisualScriptPropertySet. * Restore search on the node's type. * Remove dependencies from graph_edit. * Remove dependencies from property_selector and name the class visual_script_property_selector. * Extract hot zones into a function. * Move hot_zones constants into default theme. * Bigger capture zones. * Clean messy port_grab_distance variables. * Remove RMB functionality. * Remove memory leak on showing visual script descriptions. * Read the port_grab_distance constants on enter tree and theme changed.
* Refactor RPCMode enum and checksFabio Alessandrelli2018-05-291-4/+4
|
* Revert "RPCMode refactor, more sync modes"Max Hilbrunner2018-05-291-4/+4
|
* Merge pull request #19021 from Faless/rpc_sync_fixMax Hilbrunner2018-05-291-4/+4
|\ | | | | RPCMode refactor, more sync modes
| * Refactor RPCMode enum and checksFabio Alessandrelli2018-05-261-4/+4
| |
* | More stuff!Pieter-Jan Briers2018-05-011-129/+56
| |
* | Move things into the title bars of Visual Script nodes.Pieter-Jan Briers2018-04-301-24/+4
|/ | | | | | This is an attempt to make VS slightly nicer to use. WiP.
* Fix typos with codespellluz.paz2018-02-211-3/+3
| | | | | | | | | | | | | | Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt` Whitelist consists of: ``` ang doubleclick lod nd que te unselect ```
* Bind many more properties to scriptsBojidar Marinov2018-01-121-3/+3
| | | | | | | Notable potentially breaking changes: - PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL - Some properties were renamed, and sometimes even shadowed by new ones - New getter methods (some virtual) were added
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-051-0/+1
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Fixed typo: substract to subtractIndah Sylvia2017-12-051-4/+4
|
* Fix constant node value editMarcin Zawiejski2017-11-251-2/+2
|
* Move singleton management from ProjectSettings to EngineLeon Krause2017-11-141-5/+6
|
* Add support for the TAU constant. Fixes #12094.Goutte2017-11-121-3/+3
|
* Gave a tooltip to the "In" logic nodeCédric Fuchs2017-10-141-0/+1
|
* Add NIL_IS_VARIANT usage to few definitionsRuslan Mustakov2017-10-051-1/+1
| | | | | The missing usage flag led to GDNative API descriptions containting arguments with "void" type.
* Merge pull request #11653 from bojidar-bg/doc-vscript-1Nathan Lovato2017-10-031-3/+3
|\ | | | | [DOCS] Document some of the VisualScript classes
| * Document some of the VisualScript classes.Bojidar Marinov2017-10-031-3/+3
| |
* | Move Variant::evaluate() switch to computed gotoHein-Pieter van Braam2017-09-171-1/+1
|/ | | | | | | | | | | | | In an effort to make GDScript a little faster replace the double switch() with a computed goto on compilers that set __GNUC__. For compilers that don't support computed goto it will fall back to regular switch/case statements. In addition disable using boolean values in a mathematical context. Now boolean values can only be compared with other booleans. Booleans will also no longer be coerced to integers. This PR replaces #11308 and fixes #11291
* Merge pull request #11230 from maxim-sheronov/fix_enum_bindingsThomas Herzog2017-09-151-0/+15
|\ | | | | Fix enums bindings
| * Fix enums bindingsMaxim Sheronov2017-09-131-0/+15
| | | | | | | | | | Add missed bindings for enums Move some enums to class to have correct output of api.json
* | Fix 2 typosJeroen2017-09-141-1/+1
|/
* Many fixes to visual script, changed virtuals override for a proper selector.Juan Linietsky2017-09-121-10/+10
|
* DocData and type hints fixesIgnacio Etcheverry2017-08-291-2/+7
| | | | | | | - Makes vararg methods automatically use PROPERTY_USAGE_NIL_IS_VARIANT on return types - Completely removes the ":type" suffix for method names. Virtual methods must use the MethodInfo constructors that takes Variant::Type or PropertyHint as the first parameter for the return type (with CLASS_INFO as a helper to get the PropertyInfo). Parameters must use PROPERTY_HINT_RESOURCE_TYPE and hint string. - PROPERTY_USAGE_NIL_IS_VARIANT is no longer needed for parameters, because parameters cannot be void. - Adds missing PROPERTY_USAGE_NIL_IS_VARIANT to virtual and built-in methods that return Variant.
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-271-1/+1
|
* Added/Fixed null pointer checksWilson E. Alvarez2017-08-261-1/+1
|
* Convert Object::cast_to() to the static versionHein-Pieter van Braam2017-08-241-10/+4
| | | | | | | | | | | | Currently we rely on some undefined behavior when Object->cast_to() gets called with a Null pointer. This used to work fine with GCC < 6 but newer versions of GCC remove all codepaths in which the this pointer is Null. However, the non-static cast_to() was supposed to be null safe. This patch makes cast_to() Null safe and removes the now redundant Null checks where they existed. It is explained in this article: https://www.viva64.com/en/b/0226/
* ClassDB: Provide the enum name of integer constantsIgnacio Etcheverry2017-08-201-3/+3
|
* Updated function argument namesWilson E. Alvarez2017-08-121-0/+1
|
* Removes type information from method bindsIgnacio Etcheverry2017-08-101-3/+3
|
* Adds missing type information to virtual method bindsIgnacio Etcheverry2017-08-101-1/+1
|
* Ability to set a function as sequenced, so when called you can choose not to ↵Juan Linietsky2017-08-081-12/+37
| | | | use sequence ports. Fixes #6346
* few bugs fixed thanks to explicit bool constructor and clang.Juan Linietsky2017-08-051-1/+1
| | | | explicit bool constructor has thus now been removed, as it served it's mission!
* Merge pull request #9764 from Noshyaar/pr-fix2Rémi Verschelde2017-07-241-2/+2
|\ | | | | Add object type hint for docs
| * Add object type hint for docsPoommetee Ketson2017-07-231-3/+3
| |
* | Update a VS custom node when its script changesGeorge Marques2017-07-211-0/+7
| |
* | Fix issues with custom nodes in visual scriptGeorge Marques2017-07-211-3/+4
|/ | | | | - Doesn't crash anymore. - Inputs are properly transferred.
* -Renamed GlobalConfig to ProjectSettings, makes more sense.Juan Linietsky2017-07-191-7/+7
| | | | -Added system for feature overrides, it's pretty cool :)
* [#7212] Fixed missing 'Variant' return values in documentation.ducdetronquito2017-07-111-1/+1
|
* -Many fixes to VisualScript, fixed property names, etc.Juan Linietsky2017-06-301-44/+151
| | | | | | -Added ability to set/get a field in GetSet, as well as assignment ops -Added a Select node -Fixed update bugs related to variable list and exported properties, closes #9458
* -Fixed SCREEN_TEXTURE and other related 2D shader parameters.Juan Linietsky2017-06-261-1/+1
| | | | -Fixded BackBuffercopy object
* Removal of InputEvent as built-in Variant type..Juan Linietsky2017-05-201-36/+2
| | | | this might cause bugs I haven't found yet..
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-081-0/+1
|
* A Whole New World (clang-format edition)Rémi Verschelde2017-03-051-1219/+923
| | | | | | | | | | | | | | | | | | | | | | | | I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
* Add a bunch of missing Godot headers in own filesRémi Verschelde2017-03-051-0/+29
|