summaryrefslogtreecommitdiff
path: root/modules/visual_script
AgeCommit message (Collapse)Author
2018-07-27Carry property hint and hint string through to Visualscript virtual functions.K. S. Ernest (iFire) Lee
2018-07-27Merge pull request #20457 from fire/vs_generic_search_crash_and_connectingRémi Verschelde
Visualscript: misc generic search changes
2018-07-26Visualscript: Don't type guess on nil.K. S. Ernest (iFire) Lee
2018-07-26Visualscript fix crash and generic search does not connect ports.K. S. Ernest (iFire) Lee
* Signal change requires function changes to _selected_new_virtual_method
2018-07-26Fix Visual Script duplicate issueSwarnim Arun
2018-07-26Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam
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.
2018-07-25Merge pull request #20450 from fire/vs_generic_search_20433Rémi Verschelde
Visualscript: Don't show Shift+A search box at every screen.
2018-07-25Visualscript: Don't show Shift+A search box at every screen and reuse ↵K. S. Ernest (iFire) Lee
EDIT_FIND_NODE_TYPE (ctrl-f) shortcut. The generic search shortcut is now CTRL-F.
2018-07-25Visualscript: Hide empty categories for basic types and methods.K. S. Ernest (iFire) Lee
2018-07-24Merge pull request #18867 from fire/better_vx_us_rebase_02Juan Linietsky
Improve VisualScript UX
2018-07-24Improve VisualScript UXK. S. Ernest (iFire) Lee
* 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.
2018-07-22Allow opening and editing of any utf_8 file in script editorPaulb23
2018-07-20Add editor highlight for type-safe linesGeorge Marques
The line number is hightlighted to indicate that the line contains only type-safe code.
2018-07-10Fix visual script editor interfaceK. S. Ernest (iFire) Lee
2018-07-02-Fixes to how hashing happened, now StringName and NodePath use default ↵Juan Linietsky
hasher, this was leading to some severe slowdown in scenarios -Fixes to some duplication scenarios for instanced scenes
2018-06-12Add support for tutorial links to makerst.pyrobojumper
Also change the <tutorials> structure to make use of individual <link> tags
2018-05-30SCons: Pass env to modules can_build methodRémi Verschelde
This allows to disable modules based on the environment, in particular `env[tools]` which tells us if we are building the editor or not.
2018-05-29Refactor RPCMode enum and checksFabio Alessandrelli
2018-05-29Revert "RPCMode refactor, more sync modes"Max Hilbrunner
2018-05-29Merge pull request #19021 from Faless/rpc_sync_fixMax Hilbrunner
RPCMode refactor, more sync modes
2018-05-26Merge pull request #18516 from PJB3005/18-04-30-visual-script-title-barsMax Hilbrunner
Move things into the title bars of Visual Script nodes.
2018-05-26Refactor RPCMode enum and checksFabio Alessandrelli
2018-05-15-New inspector.Juan Linietsky
-Changed UI resizing code, gained huge amount of speed. -Reorganized timer sync to clean up behavior (sorry forgot commit this before) -
2018-05-03Merge pull request #18514 from neikeq/api-hash-fixesRémi Verschelde
API hash fixes
2018-05-01Merge pull request #18291 from akien-mga/coverity-uninitialized-scalar-varRémi Verschelde
Fix Coverity reports of uninitialized scalar variable
2018-05-01Merge pull request #18321 from Crazy-P/Fixes-logically-dead-codeRémi Verschelde
Fixes logically dead code (Coverity)
2018-05-01More stuff!Pieter-Jan Briers
2018-04-30Move things into the title bars of Visual Script nodes.Pieter-Jan Briers
This is an attempt to make VS slightly nicer to use. WiP.
2018-04-29Fix binding some core API methods only in tools buildsIgnacio Etcheverry
2018-04-22Change ".." punctuation for "..." in editor strings (#16507)Hugo Locurcio
2018-04-21Fixes logically dead code (Coverity)Crazy-P
Fixes reported logically dead codes by Coverity * image.cpp: Doesn't really need any modification. But to remove the bug report then we have to move the MAX call away from the for loop statement. * rasterizer_gles3.cpp: Removes unnecessary elif condition since it is checked earlier in the function * collada.cpp: If stamement never reached due to macro ERR_CONTINUE does the same. * navigation_mesh.cpp: Variables should always be null - however, also checked for the very same condition in their function call. Leaving this for review (whether the function call is necessary or not) * path_editor_plugin.cpp: If cancel is true, then it should restore the edited value to the original provided. http://docs.godotengine.org/en/3.0/classes/class_editorspatialgizmo.html#class-editorspatialgizmo-commit-handle * spatial_editor_gizmos.cpp: the very condition of i >= 3 is predetermined in the if case right before it. Thus case 1 is always '1' and case 2 is always '-1' * grid_map_editor.cpp: Same as above in spatial_editor_gizmos.cpp * voxel_light_baker.cpp: Same as above in spatial_editor_gizmos.cpp * visual_server.cpp: Same as above in spatial_editor_gizmos.cpp * visual_script_expression.cpp: char '-' is already true in the switch case mechanism. Thus it can never reach to default case. * particles.cpp: Case 'PARAM_MAX' is unreachable due to index checking right before the switch execution. * shader_language.cpp: Invalid index is handled in switch default case. `type < TYPE_FLOAT && type > TYPE_VEC4` -> `(type < TYPE_FLOAT || type > TYPE_VEC4`) Fixes the "always false problem" in TODO comment.
2018-04-19Fix Coverity reports of uninitialized scalar variableRémi Verschelde
Fixes most current reports on Coverity Scan of uninitialized scalar variable (CWE-457): https://cwe.mitre.org/data/definitions/457.html These happen most of the time (in our code) when instanciating structs without a constructor (or with an incomplete one), and later returning the instance. This is sometimes intended though, as some parameters are only used in some situations and should not be double-initialized for performance reasons (e.g. `constant` in ShaderLanguage::Token).
2018-04-15Remove incorrect & potentially confusing references to EulerWill Vincent
e is referred to as Euler’s number, so technically the MATH_EXP description in VisualScript doc was not incorrect, though could potentially lead to confusion. e is different from Euler’s constant however, making the existing GDScript exp & VisualScriptMathConstant descriptions nvalid.
2018-04-02Abstracted the syntax highlighter from text editPaulb23
2018-02-27doc: Remove status from hardcoded version stringRémi Verschelde
It has no practical use case and just generates noise for each alpha, beta, etc.
2018-02-21Fix typos with codespellluz.paz
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt` Whitelist consists of: ``` ang doubleclick lod nd que te unselect ```
2018-02-19doc: Update version string in headerRémi Verschelde
2018-02-14Merge pull request #15379 from ianb96/delete_key_fixRémi Verschelde
Filesystem and Visual Script Members delete key fix
2018-01-25doc: Fix references to online tutorials after godotengine/godot-docs#1015Rémi Verschelde
2018-01-25doc: Sync with current sourceRémi Verschelde
Also enhance RigidBody docs as per https://github.com/godotengine/godot-docs/pull/1018 and fix the version tag in all files (not really stable yet, but it makes no sense to hardcode rc3 at this stage).
2018-01-17doc: Replace some more "val" with "value" + syncRémi Verschelde
2018-01-16Fixes for parameter names of builtin functions in visual scripts/coreChaosus
2018-01-15Filled tutorial field in most relevent classes.Juan Linietsky
Added tutorial display in doc.
2018-01-15Make sure PropertyHint matches in the VisualScript editor.K. S. Ernest (iFire) Lee
2018-01-13doc: Update version string in XMLRémi Verschelde
2018-01-12Update docsBojidar Marinov
[ci skip]
2018-01-12Bind many more properties to scriptsBojidar Marinov
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
2018-01-06Filesystem and Visual Script Members keyboard shortcuts fixIan
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
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.
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!