summaryrefslogtreecommitdiff
path: root/modules/gdscript/gdscript_editor.cpp
AgeCommit message (Collapse)Author
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-20Rewrite code completionGeorge Marques
- Use data type struct from the parser. - Avail from type hints when type can't be guessed. - Consider inner classes and other scripts when looking for candidates.
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-20Use type hints to improve completionGeorge Marques
- Allow type hints to be completed. - Use type information to infer completion candidates. - Show typed function signature in tooltip. - Add type hints when completing declaration from virtual functions (optional).
2018-07-20Add static type checks in the parserGeorge Marques
- Resolve types for all identifiers. - Error when identifier is not found. - Match return type and error when not returning a value when it should. - Check unreachable code (code after sure return). - Match argument count and types for function calls. - Determine if return type of function call matches the assignment. - Do static type check with match statement when possible. - Use type hints to determine export type. - Check compatibility between type hint and explicit export type.
2018-07-18Style: Format code with clang-format 6.0.1Rémi Verschelde
2018-07-03Merge pull request #19251 from YeldhamDev/script_templates_changesMax Hilbrunner
Small changes to the comments in the script templates
2018-06-12Inner classes' functions now appear in the editor's functions panelJairo Honorio
Fixes #19386
2018-06-11Small changes to the comments in the script templates.Michael Alexsander Silva Dias
2018-05-23Capitalized comments of methods created by the Connect Signal dialog.Michael Alexsander Silva Dias
2018-05-17Merge pull request #18405 from flashyincceo/gdscript-constants-helpRémi Verschelde
Fix Ctrl+click on @GDScript constants
2018-05-04Merge pull request #18406 from YeldhamDev/script_templates_periodMax Hilbrunner
Changed periods in the script templates
2018-05-02Changed periods in the script templates.Michael Alexsander Silva Dias
2018-05-02Merge pull request #18452 from flashyincceo/enum-no-classRémi Verschelde
Fix enums without class name not opening docs page
2018-05-02Merge pull request #18531 from KidRigger/issue5972Rémi Verschelde
Adds keywords to autocomplete predictions.
2018-05-01Fix enums without class name not opening docs pagePeter Folkins
2018-05-01Adds keywords to autocomplete predictions.Anish
Adds keywords to the autocomplete prediction in GDScript so they are not replaced by irrelevant predictions. Fixes: #5972
2018-04-24Fix Ctrl+click on @GDScript constantsPeter Folkins
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-08Merge pull request #16556 from aragar/masterJuan Linietsky
For-in loop variable added to autocompletion
2018-04-03Ctrl+Clicking a enum now scrolls down to it in the docs.Felix Yang
2018-03-15Fix script template on `_ready` behaviorPoommetee Ketson
2018-02-24Removed whitespaces around arguments of functions.anakimluke
Functions automatically generated by conneting signals via GUI put whitespaces around the arguments of the generated function. This is inconsistent with the style guide. This commit fixes that. (cherry picked from commit 370f84f41cf3ce493c2de687455880d9e1e04be6)
2018-02-11For-in loop variable added to autocompletionRado'sPC\aRaGaR
Fix for #16494
2018-01-30Show default values in docs for GDScript built-in functionsGeorge Marques
2018-01-18Merge pull request #15849 from poke1024/preload-completionRémi Verschelde
GDScript: fix autocompletion for preload() (issue 15766)
2018-01-18Fix typos in code and docs with codespellRémi Verschelde
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18GDScript: fix autocompletion for preload() (issue 15766)Bernhard Liebl
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!
2017-12-07Style: Apply new clang-format 5.0 style to all filesRémi Verschelde
2017-11-25Made Vector::ptrw explicit for writing, compiler was sometimes using the ↵Juan Linietsky
wrong function, leading to unnecesary copy on writes and reduced performance.
2017-11-17Move the remote scene tree to the scene tree dock.Geequlim
Ignore all script constants in the global section of the breakpoint stack. Check property size before send to avoid too large of data be sent. Fix crash while clear the remote objects from the debugger.
2017-11-17Abstract some method for script systemgeequlim
2017-11-16GDScript: Refactor "GD" class prefix to "GDScript"Rémi Verschelde