Commit Graph

237 Commits

Author SHA1 Message Date
Ian 1bb13e95a8 context menu improvements 2018-07-26 08:58:35 -04:00
Rémi Verschelde eab105310b
Merge pull request #19257 from volzhs/edit-visual-script
Open internal visual script editor while use external editor is on
2018-07-26 10:36:01 +02:00
Hein-Pieter van Braam 0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
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-26 00:54:16 +02:00
Paulb23 6696b16685 Fix crash on doc right click, issue 20429 2018-07-25 19:24:06 +01:00
volzhs 6bdec4ffb6 Open internal visual script editor while use external editor is on 2018-07-25 11:59:31 +09:00
Paulb23 8ff747171f Allow opening and editing of any utf_8 file in script editor 2018-07-22 11:55:56 +01:00
Juan Linietsky a3f1ee5c57 Global class names (and GDScript support for it) 2018-07-15 19:29:00 -03:00
Max Hilbrunner 0705eb904a
Merge pull request #19251 from YeldhamDev/script_templates_changes
Small changes to the comments in the script templates
2018-07-03 16:48:03 +02:00
Chaosus 7a18b95906 Move Theme options to submenu 2018-06-21 12:10:43 +03:00
Michael Alexsander Silva Dias fd17b960e9 Small changes to the comments in the script templates. 2018-06-11 02:04:51 -03:00
Juan Linietsky a8dd5750e2
Merge pull request #19334 from guilhermefelipecgs/fix_popup
Fixes popup_centered_* methods, dialogs with wrong sizes and visual script editor
2018-06-08 13:00:53 -03:00
Guilherme Felipe 048f149478 Fix theme not updating with changes 2018-06-06 17:58:12 -03:00
Guilherme Felipe 7a3882723c Fix #16069, #19292, #19267 and #18940 2018-06-06 13:16:52 -03:00
volzhs 69ac6a1f3d Show opened script or help name 2018-06-06 06:18:11 +09:00
Michael Alexsander Silva Dias 6c058040b7 Small tooltip changes. 2018-05-18 14:54:40 -03:00
Daniel J. Ramirez 9a365a1216 Moved inspector functionality from EditorNode to InspectorDock. 2018-05-17 16:29:26 -05:00
Samuele Zolfanelli 375c94510f Changed the name displayed in the Script tab for built-in script with a more descriptive one 2018-05-16 15:23:56 +02:00
Julian Murgia 68b9fd79e4 Add button hbox with alphabetic sort toggle above methods outline. 2018-05-11 13:30:43 +02:00
Hugo Locurcio 1c419531a0 Change ".." punctuation for "..." in editor strings (#16507) 2018-04-22 19:36:01 +02:00
Juan Linietsky 3a08f1748b
Merge pull request #16571 from Zylann/find_in_files
Added find & replace in files
2018-04-08 17:24:26 -03:00
Paulb23 f7c727e6c3 Abstracted the syntax highlighter from text edit 2018-04-02 12:41:44 +01:00
Andreas Haas 1cfc43421e
ScriptEditor: Use EditorSettings instead of hardcoded values in constructor. 2018-03-01 21:45:24 +01:00
geequlim 095e2bcc26 Fix builtin script cannot open from debug stacks 2018-02-21 21:10:32 +08:00
Rémi Verschelde 55f00d9655
Merge pull request #16455 from volzhs/close-docs
Keep to show current script when closing all docs
2018-02-20 09:40:29 +01:00
volzhs df84290a7e Keep to show current script when closing all docs
also fix error when removing multiple tabs from TabContainer at same frame.
like closing multiple docs at once.

Fix #16403
2018-02-20 14:39:52 +09:00
Marc Gilleron f637ad84e3 Added find & replace in files 2018-02-19 22:38:58 +01:00
ianb96 e1778fb921 option to disable sort in script list 2018-02-14 11:38:02 -05:00
Michael Alexsander Silva Dias 4dbf6ac1b8 Added "allow_reselect" property to ItemList and enabled it for the method/help lists. 2018-02-14 03:38:07 -02:00
Rémi Verschelde e8763ef130
Merge pull request #16518 from Paulb23/fix_members_overview_offset
Fixed members overview not scrolling to correct line
2018-02-13 22:12:48 +01:00
Rémi Verschelde fd871b4d4f
Merge pull request #16383 from binbitten/issue_16335
Fix spaces and quotes in external editor flags
2018-02-13 15:21:37 +01:00
Paulb23 4d92c5e1c3 Fixed members overview not scrolling to correct line 2018-02-09 17:35:28 +00:00
binbitten fb8d2420b5 Fix spaces and quotes in external editor flags 2018-02-04 11:18:54 +01:00
Michael Alexsander Silva Dias 140340978b Changes for the "Recent Scripts" menu. 2018-02-02 15:34:36 -02:00
Bernhard Liebl 89057dd289 Fix external editors always opening on scene change 2018-01-14 12:34:00 +01:00
Ignacio Etcheverry 1c6269f2dd External editor fixes
- Fix VS Code opening on the previous line to the desired one.
- Fix running MonoDevelop without the line and column parameters.
- Fix `ScriptEditor::_goto_script_line` not working with language overriden external editors.
2018-01-09 17:25:23 +01:00
Bernhard Liebl 7e1b39245f Don't delete edit menu too early when closing script tabs 2018-01-08 19:47:47 +01:00
Rémi Verschelde 2a1ce0fbc4 i18n: Sync translation templates with current source 2018-01-06 14:32:21 +01:00
Rémi Verschelde e4213e66b2 Add missing copyright headers and fix formatting
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-05 01:22:23 +01:00
sersoong 77c9698785 Add Show In File System to script editor tabs 2018-01-02 10:11:54 +08:00
Rémi Verschelde b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Poommetee Ketson 6c897707ca Add missing parameter names 2017-12-25 21:19:56 +07:00
Noshyaar b6c798a062
Merge pull request #14827 from RayKoopa/editor_patchwork
Some Editor UI patchwork
2017-12-25 08:28:53 +07:00
Ray Koopa 69ef89a8bd Limit code editor minimum width, clear Scene node subresource menu before refilling it 2017-12-19 18:29:01 +01:00
Michael Alexsander Silva Dias 36e835bbd4 Some fixes for the Script Editor and dead code cleaning. 2017-12-18 15:46:17 -02:00
Rémi Verschelde 03fb1fd7fa
Merge pull request #14613 from voithos/fold-jump-bugfix
Account for folded code blocks when navigating via members list
2017-12-16 01:16:25 +01:00
Will Nations c38cd9b963 Added open_script_create_dialog func 2017-12-13 22:14:17 -06:00
Zaven Muradyan f139d0e4e6 Account for folded code blocks when navigating via members list
Previously, the editor would attempt to set the scroll position to the
function's line number, but this would result in an invalid scroll
whenever functions above the target were folded.

This changes callback to use a combination of `goto_line` and
`set_edit_state` to navigate to the target line and reset the cursor to
column 0.

Using `goto_line` also has the side effect of automatically unfolding
the target function, which seems like useful behavior.

Fixes #14572.
2017-12-12 21:40:12 -08:00
sersoong f0fda9fd87 Add 'copy script path' to script editor plugin 2017-12-07 11:57:41 +08:00
Daniel J. Ramirez e5de5b4908 Visual fixes
Added some icons (Including the onion one)
Fixed text editor ellipsis style and editor tabs
2017-11-20 13:03:22 -06:00
sersoong 66f6a8b4b5 Add close other tabs to Script Editor 2017-11-20 15:06:52 +08:00
Rémi Verschelde ecf80fbbba
Merge pull request #12988 from akien-mga/xdg-home-paths
Add support for XDG Base Directory spec
2017-11-20 00:42:51 +01:00
Rémi Verschelde 6e3f2f44af Use new XDG folders to dehardcode paths 2017-11-19 20:54:26 +01:00
Omar Al Halabi cb86f6fbf6 fix set_current_tab: Indexp_current=-1 out of size 2017-11-19 13:14:00 +02:00
Rémi Verschelde ad199c3964 EditorSettings: Rename settings_path to settings_dir
Also to prepare for upcoming refactoring for XDG support.
2017-11-17 20:55:09 +01:00
Ian c478c1ded5 remove debug msg 2017-11-13 18:16:59 -05:00
Ian 9f6a06b992 add script list drag n drop 2017-11-12 15:45:42 -05:00
Ian 9126a2072c move item up/down context menu and shortcut 2017-11-12 15:45:42 -05:00
Ian 798a14eb33 add script editor list context menu 2017-11-12 15:45:42 -05:00
Chaosus 70566c0935 Added hotkey for Continue action 2017-10-25 00:01:18 +03:00
Felipe Seixas 651246cbff Fix drop-down size when resizing font #12207
Fixes Scene > Open Recent
Fixes ScriptEditor > File > Open Recent
2017-10-21 11:53:53 -04:00
Paulb23 ca24310a13 Fixed help overview visibility, issue 12011 and 10407 2017-10-14 18:51:35 +01:00
jagt 21c2bf84e6 fix script editor clear recent scripts crash 2017-10-11 16:24:57 +08:00
Paulb23 b07dfd75ea Consistant scroll when using members overview, issue 11648 2017-10-08 14:29:27 +01:00
Daniel J. Ramirez 6d874ea685 Added correct initialization for script editor theme.
Some style fixes for VS interface.
2017-10-02 18:33:42 -05:00
Paulb23 a48dc9aa17 Fixed segfault on loading text editor theme 2017-09-17 13:19:38 +00:00
Rémi Verschelde 8c08f2380d Merge pull request #11253 from djrm/pr_better_docs
Improved editor docs
2017-09-14 12:06:36 +02:00
Daniel J. Ramirez d21f20eb5f Several fixed to editor doc.
Improved style
Fixed editor help issues
Added editor help index
2017-09-14 01:13:37 -05:00
Daniel J. Ramirez 7a362afb88 More consistent script color temperatures. 2017-09-13 14:07:05 -05:00
volzhs 41cc85fb20 Fit script editor grid with others 2017-09-07 06:25:57 +09:00
Rémi Verschelde bba365fab7 Merge pull request #10931 from djrm/pr_style_fixes
Improved color temperature in script editor
2017-09-04 22:50:54 +02:00
Rémi Verschelde b5d2d0a9a5 Merge pull request #10939 from neikeq/fix-overridden-external-editors
Fixes language overridden external editors
2017-09-04 08:12:29 +02:00
Rémi Verschelde fb263b73aa Merge pull request #10901 from toger5/script_background_cleanup
StyleBoxSupport for RichTextLabel and cleanup for script+docs backgrounds fixes #10685
2017-09-04 08:05:17 +02:00
Ignacio Etcheverry 52a7be4eef Fixes language overridden external editors 2017-09-03 21:23:36 +02:00
Juan Linietsky adde89e8b1 -Added an optimization so physics shapes are configured later, speeds up grid map loading and editing 2017-09-03 14:54:15 -03:00
Daniel J. Ramirez 215b110cd3 Improved color temperature in script editor 2017-09-03 02:44:59 -05:00
toger5 b606285219 Unified script panel backgrounds.
- simplefied it with using the new rtl.
 - removed ("ScriptPanel", "EditorStyles") for since rtl now can be used
 - unified backgrounds when script editor color is set to transparent => option to set background color adapt to theme is deprecated.
2017-09-02 18:28:35 +02:00
Rémi Verschelde f00760b22c Merge pull request #10382 from toger5/dark_icons
Light Theme
2017-08-31 11:47:18 +02:00
toger5 7793bfc544 added icon updating to most ui elements 2017-08-30 21:47:09 +02:00
Rémi Verschelde fd7ad7d80a Merge pull request #10750 from Rubonnek/fix-duplicate-script-changed-signal
Renamed 'script_changed' signal in the script editor plugin to 'edited_script_changed'
2017-08-30 12:46:00 +02:00
Juan Linietsky 9c3bddfac2 Merge pull request #10745 from neikeq/fix-docdata-and-stuff
DocData and virtual method type hints fixes
2017-08-29 20:11:07 -03:00
Ignacio Etcheverry c16d00591b DocData and type hints fixes
- 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.
2017-08-29 19:40:21 +02:00
Wilson E. Alvarez a400a65c8a Renamed 'script_changed' signal in the script editor plugin to 'edited_script_changed' 2017-08-29 10:24:10 -04:00
Juan Linietsky d23f323cde -Moved script run to editor, removed from project
-fixed to code completion
-fix shader crash bug reported by tagcup
2017-08-27 19:04:19 -03:00
Rémi Verschelde 7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Rémi Verschelde bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Rémi Verschelde 565600e844 Cleanup tons of obsolete commented out code
Mostly in EditorNode, dropping some obsolete editor plugins and also a
cleanup of ProjectSettings/EditorSettings.
2017-08-26 17:47:57 +02:00
Andreas Haas 6134d8741d Editor: Add some more translatable strings. 2017-08-25 18:49:45 +02:00
Hein-Pieter van Braam cacced7e50 Convert Object::cast_to() to the static version
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/
2017-08-24 23:08:24 +02:00
Rémi Verschelde b759fc47e6 Merge pull request #10538 from groud/fix_useless_separator
Fix unneeded separator in Script Editor's Debug menu
2017-08-22 08:49:11 +02:00
Gilles Roudiere 5ea403c0ce Fix uneeded separator 2017-08-22 08:43:23 +02:00
Hein-Pieter van Braam 24bc47b179 Add null check to ScriptEditor get_current_tab_control() call
This fixes #10517
2017-08-22 02:35:04 +02:00
toger5 475502e638 Removed style box border for script panel. Fixes #10410 2017-08-19 17:30:48 +02:00
Juan Linietsky b20952ebff Update script signals in real-time when script changes. Fixes #8980 2017-08-18 16:44:03 -03:00
Rémi Verschelde ebf19d72b5 Merge pull request #9878 from toger5/theme_border_settings_change
Theme border settings change + updating styles
2017-08-07 14:07:57 +02:00
toger5 3b2a4cc52a editor: update helps and script panel on theme could change. 2017-08-04 14:57:15 +02:00
Jakub Grzesik ff5ffeafeb ScriptEditor -> 'script_close' signal hint correction 2017-07-29 14:22:06 +02:00
Rémi Verschelde ba7fdcfd02 Merge pull request #9762 from Paulb23/_scipt_close_tab_selection_issue_8400
Fixed script tab selection on file close, issue 8400
2017-07-23 13:09:59 +02:00
Rémi Verschelde 50ab88bf15 Merge pull request #9761 from Noshyaar/pr-fix
ScriptEditor: suppress get_child errors
2017-07-23 13:09:47 +02:00
Rémi Verschelde c4918ca76b Merge pull request #9717 from kubecz3k/plugin-methods-rename
Rename of two EditorPlugin methods
2017-07-22 13:35:05 +02:00
Paulb23 3906134003 Fixed script tab selection on file close, issue 8400 2017-07-22 10:23:19 +01:00
Poommetee Ketson 843589d9d1 ScriptEditor: suppress get_child errors 2017-07-22 14:02:34 +07:00
Jakub Grzesik 218b1c223d EditorPlugin methods and signals rename 2017-07-20 19:16:34 +02:00
Juan Linietsky 25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Rémi Verschelde d4c73ea2b3 Merge pull request #9565 from kubecz3k/tool-signals
Make more informations available for Tool Plugins about the editor
2017-07-19 09:54:02 +02:00
Jakub Grzesik 708d825001 Make available more informations about editor for Tool Plugins 2017-07-18 17:48:19 +02:00
Daniel J. Ramirez a3c2d9a6bd Improvements and fixes for the default theme.
Added customizable border size and window highlight.
2017-07-16 13:23:59 -05:00
Jakub Grzesik 98897d0415 Ability to toggle script panel visibility 2017-07-10 14:25:06 +02:00
Rémi Verschelde 71f6c96288 Script editor help: Prevent loading empty instances from layout 2017-07-02 12:31:34 +02:00
Juan Linietsky 2a3e00c8c7 -Many fixes to VisualScript, fixed property names, etc.
-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
2017-06-30 21:35:05 -03:00
geequlim 6687484958 Better user expirence with external text editors.
Implements open_in_external_editor for subclasses of ScriptLanguage.
Add option 'Debug with external editor' to debug menu to control the behavoir of script opened by editor.
2017-06-27 12:55:16 +08:00
Rémi Verschelde d3afecf681 Merge pull request #8974 from Paulb23/script_overview
Added script overview
2017-06-05 15:42:12 +02:00
Paulb23 a4e222ae71 Added members overview 2017-05-29 12:56:33 +01:00
Nuno Donato 7661cb5a62 Added an help menu
Also renamed the "tutorials" button in the script editor to be consistent with the help menu entry.
Fixed #8921
2017-05-26 16:20:33 +01:00
Juan Linietsky 5b3709d309 Removal of InputEvent as built-in Variant type..
this might cause bugs I haven't found yet..
2017-05-20 17:05:38 -03:00
Rémi Verschelde 231511b2a6 Merge pull request #8631 from volzhs/editor-theme-custom
New customizable editor theme
2017-05-20 07:16:11 +02:00
Rémi Verschelde 0aede444ef Merge pull request #8789 from Hinsbart/editor_shortcuts
Editor: Make "open 2d/3d/script editor" shortcuts configurable.
2017-05-18 18:59:22 +02:00
Andreas Haas 3be8a94868
Editor: Make "open 2d/3d/script editor" shortcuts configurable.
Also adds shortcuts for opening the AssetLib and for switching to the next/prev editor.
2017-05-18 18:36:16 +02:00
Rémi Verschelde 787dad5ac4 Adapt tutorials (Godot Docs) icon to new design 2017-05-17 21:22:01 +02:00
volzhs bb81293047 New customizable editor theme 2017-05-09 17:46:54 +09:00
volzhs 17e8e343fb Revert "Add new editor and default theme (WIP)"
This reverts commit f045efe007.
2017-05-03 06:19:15 +09:00
Rémi Verschelde a37364620f Merge pull request #8569 from volzhs/editor-theme-1
Fix to use editor theme instead of handling each UI
2017-05-02 11:28:52 +02:00
Rémi Verschelde 6b769ac625 Merge pull request #8559 from Paulb23/script_recent_files
Added recent scripts to script editor
2017-05-02 11:27:57 +02:00
volzhs 3223305e5a Fix to use editor theme instead of handling each UI 2017-04-28 22:42:52 +09:00
volzhs be454ba2d6 Update editor theme 2017-04-28 11:01:17 +09:00
Paulb23 e37928bb50 Added recent scripts to script editor 2017-04-27 16:07:39 +01:00
Daniel J. Ramirez f045efe007 Add new editor and default theme (WIP) 2017-04-27 08:04:57 +02:00
Paulb23 c4ffe89204 Changed indent type settings 2017-04-26 12:14:03 +01:00
Paulb23 165b7bab63 Fixed convert indent and trim whitespace on save 2017-04-23 19:19:30 +01:00
Rémi Verschelde 22b9c0207b Merge pull request #8417 from neikeq/hello-there
External editor improvements and fixes
2017-04-20 02:20:04 +02:00
Rémi Verschelde 5237bc952d Merge pull request #8424 from Paulb23/convert_indent
Support for space indentation
2017-04-18 14:16:58 +02:00
Paulb23 c59bd79e02 Convert indent on save 2017-04-18 12:30:52 +01:00
Paulb23 84bca4e72f Added support for space indentation 2017-04-18 12:30:46 +01:00
Ignacio Etcheverry 97c385dbb8 ScriptEditor: Fixes bug where menu option would be handled twice 2017-04-17 02:45:56 +02:00
Ignacio Etcheverry 4b8568006d External editor improvements and fixes
Notable changes:

- Now ScriptLanguages have the option to override the global external editor setting.
If `ScriptLanguage::open_in_external_editor()` returns `ERR_UNAVAILABLE` (which it does by default), then the global external editor option will be used.
- Added formatting to the external editor execution arguments. Now it's possible to write something like this: `{project} -g {file}:{line}:{col}`.
- `VisualScript::get_member_line()` now can return the line of functions (well, it returns the id of the _Function_ node of the function). I guess there is nothing else we can get a "line" from.

Fixes:

- Fixes a bug where `ScriptEditor::script_goto_method()` would not work if the script is not already open in the built-in editor.
- Fixes wrong DEFVAL for `cursor_set_column` and `cursor_set_line` in TextEdit.
- `Script::get_member_line()` now returns -1 ("found nothing") by default.
2017-04-17 01:51:30 +02:00
Rémi Verschelde df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Rémi Verschelde 5dbf1809c6 A Whole New World (clang-format edition)
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
2017-03-05 16:44:50 +01:00
Rémi Verschelde 49c065d29c Refactoring: rename tools/editor/ to editor/
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.
2017-03-05 14:21:25 +01:00