Commit graph

1878 commits

Author SHA1 Message Date
Juan Linietsky
5f4485d4ff Always use default theme for overrides, closes #13071 2018-11-14 21:21:51 -03:00
Juan Linietsky
88bfb27abf Show theme values from default theme always, fixes #16011, fixes #13071 2018-11-14 18:02:21 +01:00
Ibrahn Sahir
ed337085cf Fixed various uninitialised member variables in editor plugins. 2018-11-11 17:32:47 +00:00
Juan Linietsky
f2e54057ae -Moved EditorDefaultValue to ClassDB, made it core
-Removed one and zero hints for properties, replaced by default value
2018-11-08 11:30:59 -03:00
groud
0ec448d21d Fixes icons in itemlist not working 2018-11-07 18:29:24 +01:00
Rémi Verschelde
de0d306558
Merge pull request #23383 from groud/better_tilemap_transform
Enhance the tilemap transform buttons
2018-11-06 22:27:29 +01:00
K. S. Ernest (iFire) Lee
562d241b13 Fix creating a visual script virtual function after minimizing crashes #23536 2018-11-05 13:48:27 -08:00
Marcelo Fernandez
ea43218bca Fix possible crash with VideoPlayer _mix_audio function 2018-11-02 13:33:20 -03:00
Juan Linietsky
65e3ef705b
Merge pull request #21962 from YeldhamDev/switch_hover_submenu
Fix MenuButton hover switching not happening with submenus open
2018-11-01 17:01:51 -03:00
Rémi Verschelde
aec8ea4f47
Merge pull request #22780 from samuelpedrajas/fix_texture_button_hovering
Fix hovering on toggled link and texture buttons
2018-11-01 11:22:34 +01:00
groud
bdb5282ea0 Enhance the tilemap transform buttons 2018-10-30 14:43:52 +01:00
zhagsenkk
67ba4dc8cd Remove no longer necessary "raise_from_completion" in TextEdit
This is no longer needed to fix #1257 because the code-autocomplete hint stops
at the script editor’s edge now.
And #6690 will not arise because it is just caused by "raise_from_completion".

Fixes #22504 and fixes #16064.
2018-10-26 19:29:51 +02:00
Sean McCarthy
0ce185629d Fix "fill" justification in RichTextLabel to only affect lines that have automatically wrapped. 2018-10-25 16:19:15 -07:00
Rémi Verschelde
1169196f04
Merge pull request #22779 from Superwaitsum/LimitSettings
Limit several project settings
2018-10-25 11:38:06 +02:00
Superwaitsum
e5041ad0f5 Add some limits on the Editor Settings 2018-10-24 19:46:33 -05:00
lupoDharkael
e19520e8fe ColorPicker: extend access to presets from gds 2018-10-24 01:07:33 +02:00
M. Huri
90efe5be08 Fixed a typo, treshhold to threshold. 2018-10-23 03:46:16 +07:00
Rémi Verschelde
81c2ed61f6
Merge pull request #23196 from Paulb23/scene_tab_errors_issue_22890
Scene tabs closing and thumbnail errors, issue 22890
2018-10-21 18:08:31 +02:00
Paulb23
5c04535e10 Update Tab hover status when adding or removing tabs, issue 22890 2018-10-21 15:55:58 +01:00
Ibrahn Sahir
7bf54d2334 Initialise LineEdit clear_button_status.
Avoiding undefined behaviour and cleaning up Valgrind output.
2018-10-20 11:27:31 +01:00
M. Huri
596ba88869 Repaired mistyped of 'just_disconnected'. 2018-10-19 18:31:35 +07:00
Rémi Verschelde
47c0aff491
Merge pull request #22894 from OsamaElHariri/prevent-comment-indent
A colon ending a comment line no longer indents the next line
2018-10-16 14:47:33 +02:00
M. Huri
967831d9a0 [Docs] Fixed 'get_button_count's link and a typo related to 'button'. 2018-10-13 17:34:57 +07:00
Rémi Verschelde
ebdb374d80
Merge pull request #22844 from samgreen/fix_gui_dragging_spam
Fix spam when dragging in the editor
2018-10-11 17:48:19 +02:00
OsamaElHariri
317f7c91a2 A colon ending a comment line no longer indents the next line 2018-10-10 00:36:12 +03:00
dennisseong
14c0b75b63 Fix richtextlabel meta links shouldn't open when swiping to scroll 2018-10-09 09:04:59 +09:00
Sam Green
24a339245f Swap condition to prevent spam in editor. 2018-10-08 11:05:20 -07:00
Fabio Alessandrelli
e355a8fc4c Fix crash in Tree when moving using Joypad 2018-10-07 16:22:04 +02:00
Rémi Verschelde
13892f2668
Merge pull request #22822 from godotengine/revert-16977-master
Revert "Created a new function named get_element in GridContainer. This funct…"
2018-10-07 11:19:55 +02:00
Rémi Verschelde
bf6dcb9105
Merge pull request #22722 from akien-mga/fix-warnings
Fix more "may be used initialized" warnings from GCC 7
2018-10-07 11:07:13 +02:00
Rémi Verschelde
cb677e57c6
Revert "Created a new function named get_element in GridContainer. This funct…" 2018-10-07 10:32:34 +02:00
Aaron Franke
4f7b33cdcf Remove redundant "== false" code
Some of this code has been re-organized.
f
2018-10-06 16:20:41 -04:00
Aaron Franke
37386f112b Remove redundant "== true" code
If it can be compared to a boolean, it can be evaluated as one in-place.
2018-10-06 16:12:36 -04:00
Rémi Verschelde
dda6d80598
Merge pull request #22742 from YeldhamDev/textedit_margin_scroll
Fix TextEdit margin start spacing with two scrollbars
2018-10-06 13:32:08 +02:00
Samuel P
cf2bdcbb3f fix hovering on toggled texture buttons
fix hovering on toggled link buttons
2018-10-06 13:06:06 +02:00
Rémi Verschelde
d2043fad67
Merge pull request #22774 from kellams/master
Fix to scrolling, rounding error on max_v_scroll
2018-10-06 12:36:17 +02:00
Kellam Spencer
f51ce0f7b1 Fix to scrolling, rounding error on max_v_scroll 2018-10-05 16:50:49 -04:00
R. K
2ef29d35bd Fix to ColorPicker behaviour when entering html. 2018-10-05 13:04:23 +02:00
Michael Alexsander Silva Dias
8a64a44e0e Fix TextEdit margin start spacing with two scrollbars 2018-10-04 19:38:08 -03:00
Rémi Verschelde
3e9740ac93 Fix more "may be used initialized" warnings from GCC 7
Fixes the following GCC 7 warnings:
```
core/cowdata.h:269:47: warning: 'alloc_size' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/error_macros.h:163:26: warning: 'nearest_point' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/image.cpp:1579:5: warning: 'colormap_size' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/image.cpp:1582:12: warning: 'size_height' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/image.cpp:1590:23: warning: 'size_width' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/image.cpp:1599:29: warning: 'pixel_size' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/math/face3.cpp:207:15: warning: 'tri_max' may be used uninitialized in this function [-Wmaybe-uninitialized]
core/math/face3.cpp:209:15: warning: 'tri_min' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/gles3/rasterizer_scene_gles3.cpp:665:22: warning: 'best_used_frame' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/gles3/rasterizer_storage_gles3.cpp:865:27: warning: 'blit_target' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/gles3/rasterizer_storage_gles3.cpp:980:29: warning: 'blit_target' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/gles3/shader_gles3.h:122:9: warning: '<anonymous>.ShaderGLES3::Version::frag_id' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/gles3/shader_gles3.h:122:9: warning: '<anonymous>.ShaderGLES3::Version::id' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/gles3/shader_gles3.h:122:9: warning: '<anonymous>.ShaderGLES3::Version::vert_id' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/plugins/script_editor_plugin.cpp:1980:31: warning: 'se' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/scene_tree_dock.cpp:840:30: warning: 'new_node' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4259:9: warning: 'a1' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4259:9: warning: 'lll' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4259:9: warning: 'lul' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4260:9: warning: 'a2' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4261:9: warning: 'a3' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4265:3: warning: 'enable_lin' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4294:3: warning: 'enable_ang' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4311:34: warning: 'll' may be used uninitialized in this function [-Wmaybe-uninitialized]
editor/spatial_editor_gizmos.cpp:4311:34: warning: 'ul' may be used uninitialized in this function [-Wmaybe-uninitialized]
scene/3d/voxel_light_baker.cpp:1655:47: warning: 'cone_dirs' may be used uninitialized in this function [-Wmaybe-uninitialized]
scene/3d/voxel_light_baker.cpp:1656:73: warning: 'cone_weights' may be used uninitialized in this function [-Wmaybe-uninitialized]
scene/gui/texture_progress.cpp:181:6: warning: 'cp' may be used uninitialized in this function [-Wmaybe-uninitialized]
scene/gui/texture_progress.cpp:181:6: warning: 'cq' may be used uninitialized in this function [-Wmaybe-uninitialized]
servers/physics/shape_sw.cpp:1056:19: warning: 'support_max' may be used uninitialized in this function [-Wmaybe-uninitialized]
```
2018-10-04 18:54:20 +02:00
karroffel
a0f206aae8 fix enum cast warnings on clang 2018-10-04 09:17:59 +02:00
Rémi Verschelde
95131e6f23 Fix warnings on release builds (not DEBUG_ENABLED)
Fixes the following Clang 5 warnings:
```
modules/bmp/image_loader_bmp.cpp:46:60: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
modules/bmp/image_loader_bmp.cpp:48:61: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
drivers/png/image_loader_png.cpp:231:20: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare]
scene/gui/graph_edit.cpp:1045:8: warning: comparison of constant 0 with expression of type 'bool' is always false [-Wtautological-constant-out-of-range-compare]

core/class_db.cpp:812:13: warning: unused variable 'check' [-Wunused-variable]
core/io/file_access_pack.cpp:172:11: warning: unused variable 'ver_rev' [-Wunused-variable]
core/math/bsp_tree.cpp:195:13: warning: unused variable 'plane' [-Wunused-variable]
core/math/bsp_tree.cpp:168:6: warning: unused variable 'plane_count' [-Wunused-variable]
modules/gdscript/gdscript_function.cpp:685:10: warning: unused variable 'ok' [-Wunused-variable]
modules/gdscript/gdscript_function.cpp:706:10: warning: unused variable 'ok' [-Wunused-variable]
modules/gdscript/gdscript_function.cpp:755:19: warning: unused variable 'var_type' [-Wunused-variable]
modules/gdscript/gdscript_function.cpp:1306:12: warning: unused variable 'err' [-Wunused-variable]

modules/gdscript/gdscript_function.cpp:158:15: warning: unused function '_get_var_type' [-Wunused-function]
modules/gdscript/gdscript_parser.cpp:750:20: warning: unused variable 'lv' [-Wunused-variable]
modules/gdscript/gdscript_parser.cpp:59:15: warning: unused function '_find_function_name' [-Wunused-function]
scene/main/node.cpp:2489:13: warning: unused function '_Node_debug_sn' [-Wunused-function]
```
2018-10-03 17:34:55 +02:00
Hugo Locurcio
9c1d4f9da2
Use more subtle indentation guides in the script editor 2018-10-03 00:00:25 +02:00
Rémi Verschelde
3c173ebca4
Merge pull request #21395 from mrcdk/spin_box_expose_align
Expose the align property of the SpinBox's LineEdit control
2018-10-02 10:36:20 +02:00
Rémi Verschelde
08a24698eb
Merge pull request #22062 from Leytak/patch-1
Discard button pressing flags on disable
2018-10-02 09:49:17 +02:00
Rémi Verschelde
fb5cbf2d30
Merge pull request #22402 from DualMatrix/colorpicker_presets
Made ColorPicker save it's presets while in editor.
2018-10-02 09:24:33 +02:00
Rémi Verschelde
01e1c6e8b6
Merge pull request #22560 from lupoDharkael/clipboard
TextEdit: prevent the copy of an empty string
2018-09-30 22:49:45 +02:00
lupoDharkael
f5f948210c TextEdit: prevent the copy of an empty string 2018-09-30 17:17:29 +02:00
Rémi Verschelde
0378a9ba80
Merge pull request #22520 from akien-mga/fix-warnings
Fix warning about functions defined but not used [-Wunused-function]
2018-09-29 23:51:17 +02:00
Rémi Verschelde
62ecb44035 Fix warning about functions defined but not used [-Wunused-function]
Fixes the following GCC 5 warnings:
```
core/io/zip_io.h:128:26: warning: 'zlib_filefunc_def zipio_create_io_from_file(FileAccess**)' defined but not used [-Wunused-function]
core/script_debugger_remote.cpp:110:17: warning: 'ObjectID safe_get_instance_id(const Variant&)' defined but not used [-Wunused-function]
drivers/unix/socket_helpers.h:103:12: warning: 'int _socket_create(IP::Type&, int, int)' defined but not used [-Wunused-function]
drivers/unix/socket_helpers.h:45:15: warning: 'size_t _set_sockaddr(sockaddr_storage*, const IP_Address&, int, IP::Type)' defined but not used [-Wunused-function]
drivers/unix/socket_helpers.h:76:15: warning: 'size_t _set_listen_sockaddr(sockaddr_storage*, int, IP::Type, IP_Address)' defined but not used [-Wunused-function]
editor/editor_fonts.cpp:40:24: warning: 'Ref<BitmapFont> make_font(int, int, int, int, const int*, const Ref<Texture>&)' defined but not used [-Wunused-function]
editor/editor_themes.cpp:85:26: warning: 'Ref<StyleBoxFlat> change_border_color(Ref<StyleBoxFlat>, Color)' defined but not used [-Wunused-function]
editor/import/editor_import_collada.cpp:493:13: warning: 'void _generate_normals(const PoolVector<int>&, const PoolVector<Vector3>&, PoolVector<Vector3>&)' defined but not used [-Wunused-function]
editor/import/editor_import_collada.cpp:524:13: warning: 'void _generate_tangents_and_binormals(const PoolVector<int>&, const PoolVector<Vector3>&, const PoolVector<Vector3>&, const PoolVector<Vector3>&, PoolVector<float>&)' defined but not used [-Wunused-function]
editor/pvrtc_compress.cpp:118:13: warning: 'void _compress_etc(Image*)' defined but not used [-Wunused-function]
modules/etc/image_etc.cpp:89:13: warning: 'void _decompress_etc1(Image*)' defined but not used [-Wunused-function]
modules/etc/image_etc.cpp:93:13: warning: 'void _decompress_etc2(Image*)' defined but not used [-Wunused-function]
modules/gdscript/editor/gdscript_highlighter.cpp:46:13: warning: 'bool _is_whitespace(CharType)' defined but not used [-Wunused-function]
scene/2d/cpu_particles_2d.cpp:510:14: warning: 'float rand_from_seed_m1_p1(uint32_t&)' defined but not used [-Wunused-function]
scene/3d/cpu_particles.cpp:474:14: warning: 'float rand_from_seed_m1_p1(uint32_t&)' defined but not used [-Wunused-function]
scene/resources/default_theme/default_theme.cpp:123:20: warning: 'Ref<Shader> make_shader(const char*, const char*, const char*)' defined but not used [-Wunused-function]
scene/resources/default_theme/default_theme.cpp:130:24: warning: 'Ref<BitmapFont> make_font(int, int, int, int, const int*, const Ref<Texture>&)' defined but not used [-Wunused-function]
```

Had to split `core/io/zip_io.h` into header and .cpp file without 'static' keyword.

Not fixed yet (static definition in header used in some files but not all):
```
modules/websocket/lws_helper.h:111:13: warning: 'void _lws_make_protocols(void*, int (*)(lws*, lws_callback_reasons, void*, void*, size_t), PoolVector<String>, _LWSRef**)' defined but not used [-Wunused-function]
```

Also fixed a couple other warnings missed in previous commits.
2018-09-29 22:26:12 +02:00
Paulb23
f08eead3a2 Fix code folding taking into account empty lines, issue 15689 2018-09-29 18:08:56 +01:00
Rémi Verschelde
3a2ca68af3 SCons: Build thirdparty code in own env, disable warnings
Also remove unnecessary `Export('env')` in other SCsubs,
Export should only be used when exporting *new* objects.
2018-09-28 14:07:39 +02:00
Rémi Verschelde
c45ef38004
Merge pull request #22384 from DualMatrix/hover_pressed
Added hover_pressed style to CheckBox and CheckButton
2018-09-28 10:54:02 +02:00
Rémi Verschelde
28c6837219
Merge pull request #22381 from DualMatrix/range_exp_warning
Added warning when min_value of range <= 0 while exp_edit is true.
2018-09-28 10:53:24 +02:00
Rémi Verschelde
a5017f925f
Merge pull request #22405 from DualMatrix/better_step
Fixed step value not being respected for ranges in some cases.
2018-09-28 10:38:33 +02:00
Rémi Verschelde
c7e646c30a
Merge pull request #22447 from akien-mga/fix-warnings-Wswitch
Fix warnings about unhandled enum value in switch [-Wswitch]
2018-09-28 09:47:29 +02:00
elasota
9cf689183d Fix some wchar_t truncations 2018-09-28 00:31:15 -04:00
Rémi Verschelde
7b081a7fc8 Fix warnings about unhandled enum value in switch [-Wswitch]
Fixes GCC 5 warnings of the form:

core/io/http_client.cpp:288:9: warning: enumeration value 'STATUS_SSL_HANDSHAKE_ERROR' not handled in switch [-Wswitch]
core/io/marshalls.cpp:806:9: warning: enumeration value 'AABB' not handled in switch [-Wswitch]

Those can be trivial cases where adding a default fallback is the solution,
or more complex issues/hidden bugs where missed values are actually meant
to be handled.
2018-09-27 18:34:30 +02:00
Rémi Verschelde
cdc411fd54 Fix various warnings: [-Waddress], [-Wpointer-arith], [-Wwrite-strings], [-Wreturn-local-addr] and more
Fixes the following GCC 5 warnings:
```
core/os/file_access.cpp:49:19: warning: the address of 'FileAccess::create_func' will always evaluate as 'true' [-Waddress]
servers/audio_server.cpp:192:70: warning: comparison with string literal results in unspecified behaviour [-Waddress]

drivers/gles2/rasterizer_storage_gles2.cpp:4095:90: warning: NULL used in arithmetic [-Wpointer-arith]

modules/gdnative/register_types.cpp:237:3: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
platform/android/export/export.cpp:207:1: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

modules/gdscript/gdscript.h:150:67: warning: returning reference to temporary [-Wreturn-local-addr]
servers/physics_2d/collision_object_2d_sw.h:119:56: warning: returning reference to temporary [-Wreturn-local-addr]
servers/physics_2d/collision_object_2d_sw.h:123:56: warning: returning reference to temporary [-Wreturn-local-addr]
servers/physics_2d/collision_object_2d_sw.h:127:50: warning: returning reference to temporary [-Wreturn-local-addr]
servers/physics_2d/collision_object_2d_sw.h:131:52: warning: returning reference to temporary [-Wreturn-local-addr]

editor/plugins/skeleton_editor_plugin.cpp:34:36: warning: extra tokens at end of #include directive
modules/bullet/bullet_types_converter.cpp:31:9: warning: #pragma once in main file

editor/import/editor_scene_importer_gltf.cpp:1996:51: warning: name lookup of 'i' changed
modules/visual_script/visual_script_property_selector.cpp:402:45: warning: name lookup of 'E' changed
scene/gui/tree.cpp:1268:25: warning: name lookup of 'i' changed
scene/resources/visual_shader.cpp:808:32: warning: name lookup of 'i' changed
```
2018-09-27 16:33:52 +02:00
Rémi Verschelde
d95bbb8922 Fix warnings about set but unused variables [-Wunused-but-set-variable]
Fixes the following GCC 5 warnings:
```
drivers/gles2/rasterizer_canvas_gles2.cpp:814:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:2270:11: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:2673:22: warning: variable 'e' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:715:7: warning: variable 'no_cull' set but not used [-Wunused-but-set-variable]
drivers/gles2/shader_gles2.cpp:693:14: warning: variable 'cc' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_canvas_gles3.cpp:1226:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_scene_gles3.cpp:3039:10: warning: variable 'contrib' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_scene_gles3.cpp:4504:32: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable]
editor/editor_inspector.cpp:272:9: warning: variable 'guide_color' set but not used [-Wunused-but-set-variable]
editor/editor_themes.cpp:1067:14: warning: variable 'alpha3' set but not used [-Wunused-but-set-variable]
editor/editor_themes.cpp:263:8: warning: variable 'script_bg_color' set but not used [-Wunused-but-set-variable]
editor/plugins/collision_shape_2d_editor_plugin.cpp:326:11: warning: variable 'cpoint' set but not used [-Wunused-but-set-variable]
editor/plugins/mesh_editor_plugin.cpp:72:9: warning: variable 'size' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:471:12: warning: variable 'mpos' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:89:8: warning: variable 'basetype_color' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:90:8: warning: variable 'type_color' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:92:8: warning: variable 'string_color' set but not used [-Wunused-but-set-variable]
modules/visual_script/visual_script_editor.cpp:2521:7: warning: variable 'seq_connect' set but not used [-Wunused-but-set-variable]
platform/android/export/export.cpp:580:12: warning: variable 'styles_count' set but not used [-Wunused-but-set-variable]
platform/android/export/export.cpp:584:12: warning: variable 'styles_offset' set but not used [-Wunused-but-set-variable]
platform/osx/export/export.cpp:464:9: warning: variable 'zerr' set but not used [-Wunused-but-set-variable]
scene/2d/tile_map.cpp:260:10: warning: variable 'tcenter' set but not used [-Wunused-but-set-variable]
scene/3d/light.cpp:166:7: warning: variable 'editor_ok' set but not used [-Wunused-but-set-variable]
scene/3d/navigation.cpp:566:11: warning: variable 'closest_navmesh' set but not used [-Wunused-but-set-variable]
scene/gui/rich_text_label.cpp:869:8: warning: variable 'size' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:705:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:706:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:726:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:727:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable]
scene/resources/material.cpp:430:7: warning: variable 'using_world' set but not used [-Wunused-but-set-variable]
servers/visual/shader_language.cpp:2026:7: warning: variable 'all_const' set but not used [-Wunused-but-set-variable]
servers/visual/visual_server_scene.cpp:1383:28: warning: variable 'z_max_cam' set but not used [-Wunused-but-set-variable]
```

Also fixes two [-Wunused-value] warnings:
```
scene/gui/text_edit.cpp:4405:20: warning: statement has no effect [-Wunused-value]
servers/visual/visual_server_scene.cpp:905:48: warning: value computed is not used [-Wunused-value]
```

Some of those are bugs and need further work, they are identified with
`// FIXME` comments.
2018-09-27 16:25:24 +02:00
Rémi Verschelde
cda5b0bfe1 Fix warnings about unused variables [-Wunused-variable]
Fixes the following GCC 5 warnings:
```
drivers/gles2/rasterizer_scene_gles2.cpp:1139:15: warning: unused variable 'offset' [-Wunused-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:1205:39: warning: unused variable 'multi_mesh' [-Wunused-variable]
drivers/gles2/rasterizer_storage_gles2.cpp:359:7: warning: unused variable 'srgb' [-Wunused-variable]
drivers/gles2/shader_gles2.cpp:1016:45: warning: unused variable 'texture_hints' [-Wunused-variable]
editor/animation_track_editor.cpp:776:9: warning: unused variable 'keys_to' [-Wunused-variable]
editor/editor_inspector.cpp:273:7: warning: unused variable 'vs_height' [-Wunused-variable]
editor/editor_themes.cpp:202:10: warning: unused variable 'begin_time' [-Wunused-variable]
editor/editor_themes.cpp:239:10: warning: unused variable 'end_time' [-Wunused-variable]
editor/plugins/animation_blend_tree_editor_plugin.cpp:726:17: warning: unused variable 'an' [-Wunused-variable]
editor/plugins/script_text_editor.cpp:1278:8: warning: unused variable 'fold_state' [-Wunused-variable]
main/main.cpp:132:13: warning: 'use_vsync' defined but not used [-Wunused-variable]
modules/cvtt/image_compress_cvtt.cpp:231:8: warning: unused variable 'y_end' [-Wunused-variable]
modules/cvtt/image_compress_cvtt.cpp:311:6: warning: unused variable 'shift' [-Wunused-variable]
modules/gdscript/gdscript_editor.cpp:58:7: warning: unused variable 'th' [-Wunused-variable]
modules/gridmap/grid_map.cpp:1084:6: warning: unused variable 'ofs' [-Wunused-variable]
modules/theora/video_stream_theora.cpp:442:9: warning: unused variable 'tr' [-Wunused-variable]
modules/visual_script/visual_script_editor.cpp:2606:6: warning: unused variable 'count' [-Wunused-variable]
modules/visual_script/visual_script_editor.cpp:2829:6: warning: unused variable 'seq_count' [-Wunused-variable]
modules/visual_script/visual_script_editor.cpp:2844:24: warning: unused variable 'vnode_function' [-Wunused-variable]
modules/websocket/lws_peer.cpp:122:12: warning: unused variable 'peer_data' [-Wunused-variable]
modules/websocket/lws_peer.cpp:135:12: warning: unused variable 'peer_data' [-Wunused-variable]
modules/websocket/lws_peer.cpp:63:12: warning: unused variable 'peer_data' [-Wunused-variable]
modules/websocket/lws_peer.cpp:91:12: warning: unused variable 'peer_data' [-Wunused-variable]
platform/android/export/export.cpp:763:16: warning: unused variable 'node_size' [-Wunused-variable]
scene/gui/rich_text_label.cpp:850:10: warning: unused variable 'x_ofs' [-Wunused-variable]
scene/gui/text_edit.cpp:653:8: warning: unused variable 'tab_w' [-Wunused-variable]
scene/resources/bit_mask.cpp:186:6: warning: unused variable 'i' [-Wunused-variable]
scene/resources/mesh.cpp:549:20: warning: '_array_name' defined but not used [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:107:10: warning: unused variable 'v2' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:108:10: warning: unused variable 'v3' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:109:10: warning: unused variable 'v4' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:110:10: warning: unused variable 'v5' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:111:10: warning: unused variable 'v0n' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:112:10: warning: unused variable 'v1n' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:113:10: warning: unused variable 'v2n' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:114:10: warning: unused variable 'v3n' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:115:10: warning: unused variable 'v4n' [-Wunused-variable]
servers/audio/audio_rb_resampler.cpp:116:10: warning: unused variable 'v5n' [-Wunused-variable]
servers/visual/default_mouse_cursor.xpm:2:21: warning: 'default_mouse_cursor_xpm' defined but not used [-Wunused-variable]
```
2018-09-27 16:25:24 +02:00
Rémi Verschelde
d8b30d42f5 Fix warnings for operator precedence disambiguation [-Wparentheses]
Fixes the following GCC 5 warnings:
```
core/io/resource_format_binary.cpp:1721:29: warning: suggest parentheses around arithmetic in operand of '|' [-Wparentheses]
core/typedefs.h:108:24: warning: suggest parentheses around comparison in operand of '!=' [-Wparentheses]
editor/plugins/spatial_editor_plugin.cpp:2202:58: warning: suggest parentheses around comparison in operand of '!=' [-Wparentheses]
editor/plugins/spatial_editor_plugin.cpp:5002:12: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
main/input_default.cpp:346:59: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
main/input_default.cpp:348:60: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
main/input_default.cpp:579:57: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
modules/gridmap/grid_map_editor_plugin.cpp:613:14: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
modules/theora/video_stream_theora.cpp:335:34: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
modules/theora/video_stream_theora.cpp:336:35: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
modules/visual_script/visual_script_property_selector.cpp:215:38: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/rich_text_label.cpp:424:84: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/rich_text_label.cpp:512:80: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/scroll_container.cpp:173:36: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/scroll_container.cpp:173:86: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/tree.cpp:1419:98: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
```
2018-09-27 10:29:48 +02:00
Rémi Verschelde
ea63c9a870 Inspector: Enable wrap for multiline text widget
Fixes #22458.
2018-09-27 09:09:47 +02:00
Hugo Locurcio
c4770a5b5d
Tweak some editor texts' capitalization, use "Go to" instead of "Goto"
This also fixes a typo in the `debugger/debug_with_external_editor`
shortcut.
2018-09-25 22:51:13 +02:00
DualMatrix
16cac24c9d Fixed pivot tool not setting position of Controls correctly
Fixed pivot tool not setting position of Controls correctly
2018-09-25 21:20:03 +02:00
DualMatrix
4980ae5632 Made ColorPicker save it's presets while in editor.
Made ColorPicker save it's presets while in editor.
2018-09-24 19:32:36 +02:00
DualMatrix
98395f652c Fixed step value not being respected for ranges in some cases.
Fixed step value not being respected for ranges in some cases.
2018-09-24 18:09:00 +02:00
DualMatrix
99e3309296 Added hover_pressed style to CheckBox and CheckButton
Added hover_pressed style to CheckBox and CheckButton.
If no style is defined for this property it will default to the pressed property.
2018-09-24 02:31:03 +02:00
Michael Alexsander Silva Dias
d959e2ce78 Add proper strikethrough BBCode to RichTextLabel 2018-09-23 16:25:43 -03:00
DualMatrix
e78bfe19a7 Added warning when min_value of range is smaller than 0 while exp_edit is true.
Added warning when min_value of range is smaller than 0 while exp_edit is true.

The new warning is: "If exp_edit is true min_value must be > 0."
2018-09-23 20:59:35 +02:00
DualMatrix
f483460e38 Removed obsoleted core/helper/value_evaluator.h and moved math_fieldwise to core/math/
Removed obsoleted core/helper/value_evaluator.h and moved math_fieldwise to core/math/
2018-09-23 14:58:15 +02:00
Michael Alexsander Silva Dias
622bae393b Make EditorFileDialog be able to pick a folder when entering it 2018-09-21 19:42:06 -03:00
Rémi Verschelde
561a7772c6
Merge pull request #22198 from DualMatrix/input_was_eaten
Fixed ctrl+up/down shortcut no longer working in scene tree
2018-09-20 15:54:54 +02:00
DualMatrix
f8ead1a2ee Fixed ctrl+up/down shortcut no longer working in scene tree
Fixed ctrl+up/down shortcut no longer working in scene tree.
2018-09-20 15:27:37 +02:00
Guilherme Felipe
b0b88df016 Fix Label::get_minimum_size not updating cache size for autowrap 2018-09-19 14:05:44 -03:00
Rémi Verschelde
c25e23317c Rename ScrollBar's drag_slave to drag_node 2018-09-15 00:55:22 +02:00
Alexey Kashlakov
1e65916241
Discard button pressing flags on disable
Is it a bug?
1) Click the button and hold
2) Disable it (for example I bind this action on keyboard)
3) Release the mouse and move it outside the button
4) Enable the button
5) It's still pressed, but shouldn't
2018-09-14 14:21:58 +07:00
Rémi Verschelde
4ae78987b7
Merge pull request #22017 from YeldhamDev/errors_tab_changes
Add expand/collapse all buttons for the "Errors" tab
2018-09-13 11:21:31 +02:00
Rémi Verschelde
1a16dabfb5
Merge pull request #21982 from luzpaz/misc-typos
Misc. typos
2018-09-13 10:59:00 +02:00
Michael Alexsander Silva Dias
3a9df46b90 Add expand/collapse all buttons for the "Errors" tab 2018-09-12 23:53:10 -03:00
luz.paz
08bde5b2de Misc. typos
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12 21:39:17 -04:00
Guilherme Felipe
51e854846e Fix default_cursor_shape for TextEdit 2018-09-12 13:26:51 -03:00
Rémi Verschelde
06667b2fcf
Merge pull request #21219 from AlexHolly/fix-textedit-shows-nothing
TextEdit update cache.size on ENTER_TREE
2018-09-12 17:41:12 +02:00
Rémi Verschelde
82a0e752df
Merge pull request #21877 from DualMatrix/richlabel
Fixed the remove_line function in richtextlabel. It was totally broken
2018-09-12 14:59:34 +02:00
Rémi Verschelde
ead2c2eef2
Merge pull request #21705 from KellyThomas/tree-create-item
Change return value of Tree.create_item() from Object to TreeItem
2018-09-12 10:57:50 +02:00
Rémi Verschelde
0e8d31fdfa
Merge pull request #21654 from Calinou/textureprogress-transparent-tint
Allow transparent colors in TextureProgress tint properties
2018-09-12 10:51:23 +02:00
Rémi Verschelde
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
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.
2018-09-12 09:52:22 +02:00
Michael Alexsander Silva Dias
592eda7ad9 Fix MenuButton hover switching not happening with submenus open 2018-09-11 01:44:19 -03:00
Rémi Verschelde
e883edfac9
Merge pull request #21872 from Paulb23/fix_backwards_search
Fix backwards search in TextEdit selecting non-whole words, issue 15677
2018-09-10 18:52:35 +02:00
Rémi Verschelde
87e0563116
Merge pull request #21491 from AlexHolly/fix-textedit-uncomment-spamm
Uncommenting a selection was not updating the selection.
2018-09-10 18:48:41 +02:00
DualMatrix
dd6074010c Fixed the remove_line function in richtextlabel. It was totally broken
Fixed the remove_line function in richtextlabel. It was totally broken

This fixes #21037
2018-09-08 20:34:37 +02:00
Paulb23
e474b4a444 Fix backwards search in TextEdit selecting non-whole words, issue 15677 2018-09-08 14:54:41 +01:00
Paulb23
f051f5110e Fixed scientific notaion not highlighting correctly, issue 21435 2018-09-08 13:42:11 +01:00
Alexander Holland
5cb66b2776 Uncommenting a selection was not updating the selection.
Also adds uncomment lines(ctrl+u) where # is not in first place
2018-09-08 14:21:15 +02:00
Juan Linietsky
6ce9951d9e Many fixes to gradient editor, which was pretty broken. Closes #19308 2018-09-07 13:49:10 -03:00
Juan Linietsky
f6fbf841d5 Show a warning if you try to grab focus when not allowed, closes #15388 2018-09-06 13:32:34 -03:00
Kelly Thomas
3dc0d17c6f Change return value of Tree.create_item() from Object to TreeItem 2018-09-03 03:33:52 +08:00
Michael Alexsander Silva Dias
cf183efbcf Change some instances of args named "ev" to "event" 2018-09-01 17:03:41 -03:00
Hugo Locurcio
0b6c70fb59
Allow transparent colors in TextureProgress tint properties 2018-09-01 13:14:05 +02:00
Kelly Thomas
1dc8e7c05f Improve ClassDB information for some some signal parameters 2018-09-01 18:05:51 +08:00
Michael Alexsander Silva Dias
8c74257d68 Make "Search Classes" dialog have relationship lines if the setting is enabled 2018-08-31 21:48:56 -03:00
Alexander Holland
f2da51620d TextEdit replaced cache.size with get_size() 2018-08-25 16:21:47 +02:00
Rémi Verschelde
12290c172a
Merge pull request #21231 from AlexHolly/filedialog-fix-multi-selection
Check all selected items on OPEN_MANY/OPEN_FILES in FileDialog, also …
2018-08-25 11:13:31 +02:00
Rémi Verschelde
4a5579bf78
Merge pull request #21358 from MidZik/master
Disable ability to copy or cut text from LineEdit if secret mode is enabled.
2018-08-25 11:05:37 +02:00
MrCdK
dafa4072fc Expose the align property of the SpinBox's LineEdit control 2018-08-25 05:17:07 +02:00
Rémi Verschelde
f72f74486d
Merge pull request #21385 from groud/fix_itemlist_signal
Fix a mistake in itemlist multi_select signal
2018-08-24 23:28:05 +02:00
groud
5b5191ccf0 Fix a mistake in itemlist multiselect signal 2018-08-24 23:05:17 +02:00
Rémi Verschelde
6ce4078c5f
Merge pull request #20586 from AlexHolly/text-edit-auto-completion
text_edit auto_completion
2018-08-24 20:48:01 +02:00
Rémi Verschelde
dc09be4c57
Merge pull request #21156 from MednauN/atlas-texture-fix
Fix AtlasTexture with NinePatchRect and TextureProgress
2018-08-24 15:30:59 +02:00
Juan Linietsky
683c3f2fcf Avoid misuse of set_drag_preview() function where it shouldn't be. Closes #20100 2018-08-24 10:30:11 -03:00
Rémi Verschelde
571dab7d1e
Merge pull request #21356 from akien-mga/drop-shadergraph
Drop old ShaderGraph code, obsoleted by VisualShader
2018-08-24 15:02:26 +02:00
Rémi Verschelde
52466d57e9 Make some debug prints verbose-only, remove others 2018-08-24 14:59:01 +02:00
Rémi Verschelde
e22f0515c9 Drop old ShaderGraph code, obsoleted by VisualShader 2018-08-24 11:49:08 +02:00
MidZik
7aca4c32e2 Disable ability to copy or cut text from LineEdit if secret mode is enabled. 2018-08-24 04:45:05 -05:00
Rémi Verschelde
8b25c0513f
Merge pull request #21152 from DualMatrix/fileselect_error
Fixed !is_inside_tree() errors in file dialog
2018-08-22 14:27:17 +02:00
Guilherme Felipe
40f8ab6b1e Fix grab/select of gradient edit 2018-08-21 11:22:58 -03:00
Juan Linietsky
c7e4527a88 Massive rewrite to AnimationTree. Many APIs changed in order to:
-Reuse resources
-Expose properties in AnimationTree
2018-08-20 13:39:16 -03:00
Alexander Holland
0889d7e589 Check all selected items on OPEN_MANY/OPEN_FILES in FileDialog, also changed confusing naming. 2018-08-20 17:48:28 +02:00
pesets
15af0e9ec8 Fix AtlasTexture with NinePatchRect and TextureProgress 2018-08-18 23:06:38 +07:00
DualMatrix
2b13938459 Fixed !is_inside_tree() errors in file dialog
Fixed !is_inside_tree() errors appearing when current_file has a . in it.
2018-08-18 16:52:15 +02:00
Rémi Verschelde
099f74584a Bind ItemList's item_custom_fg_color methods
Fixes #21086.
2018-08-17 13:46:33 +02:00
Rémi Verschelde
68676c774d
Merge pull request #21091 from hpvb/fix-removing-popup-menu-item
Call minimum_size_changed() in PopupMenu::remove_item()
2018-08-17 02:27:16 +02:00
Hein-Pieter van Braam
2d032c1562 Call minimum_size_changed() in PopupMenu::remove_item()
When removing an item from a PopupMenu we need to update the control's
size cache otherwise the size of the PopupMenu itself lags behind by 1
item size. Meaning the PopupMenu will remain too large.
2018-08-16 21:51:41 +02:00
Hein-Pieter van Braam
fa7eac8a0d Delay emitting pressed signals in PopupMenu
When processing items we may actually delete the item we're processing
in the callback for the signal. To avoid this, call the signal after
we're done processing the items. But before hiding the popupmenu itself.

Thanks to @reduz for writing the whole solution.

This fixes #19842
2018-08-16 21:44:18 +02:00
Rémi Verschelde
c78bbfa669 Fix type of Range allow_greater/allow_lesser properties 2018-08-16 14:24:17 +02:00
Ovnuniarchos
9d0de7d417 PopupMenu item_pressed is sent before checking hide flags. 2018-08-16 07:22:18 +02:00
Juan Linietsky
4e55835e48
Merge pull request #18096 from aaronfranke/master
[Core] Split up math_2d.h
2018-08-14 18:58:32 -03:00
Rémi Verschelde
d6058b967d
Merge pull request #20906 from Chaosus/rrect_fix
Fix ReferenceRect border
2018-08-14 23:31:48 +02:00
Alexander Holland
6d684aae8a text_edit auto_completion
replaced "similarity filter" with "sequential checks" this give more control over the desired filtering.
2018-08-14 22:45:10 +02:00
Rémi Verschelde
a3d0b89892
Merge pull request #20876 from ttencate/cursor_blink
Reset caret blink when Ctrl+moving the cursor
2018-08-14 15:42:19 +02:00
Rémi Verschelde
98da0df894
Merge pull request #20982 from hpvb/fix-19842
Emit pressed events after processing items
2018-08-14 09:37:54 +02:00
Hein-Pieter van Braam
868efb8184 Emit pressed events after processing items
When processing items we may actually delete the item we're processing
in the callback for the signal. To avoid this, call the signal after
we're done processing the items.

This fixes #19842
2018-08-13 21:55:26 +02:00
James
109028f52b Editor autocomplete: prefer same case candidates 2018-08-13 20:45:33 +02:00
Rémi Verschelde
68ab428d4d
Merge pull request #20155 from Tunous/line-edit-clear
Add clear button to search fields
2018-08-13 12:54:57 +02:00
Rémi Verschelde
9ce33978db
Merge pull request #20666 from Calinou/script-editor-underline-hidpi
Scale underlines in the script editor with the editor scale
2018-08-13 12:21:23 +02:00
Łukasz Rutkowski
81fb81de9d Do not use theme to set LineEdit right_icon 2018-08-11 12:04:26 +02:00
Łukasz Rutkowski
e8a435c8cd Add clear text button to LineEdit
- Add pressed state to clear button
- Enable clear button on all inputs with search icon
- Remove duplicate clear buttons
- Fix rendering of icon for center and right alignments
- Add clear button to more search fields
- Add clear icon to default theme
- Add method to control enabled state of clear button
- Add property to enable clear button from inspector
2018-08-11 12:04:26 +02:00
Aaron Franke
cf136a91d6 [Core] Completely kill math_2d.h, change includes 2018-08-11 03:08:34 -05:00
Chaosus
aaf62fcecc Fix ReferenceRect border 2018-08-11 10:37:03 +03:00
Juan Linietsky
0fc1c4eda8
Merge pull request #20149 from Overblob/shader_float_typing
Shader language - Add optional float typings
2018-08-10 18:21:28 -03:00
Juan Linietsky
b9730a6956 Make line edit always vertically aligned, makes no sense otherwise. Fixes #17188 2018-08-10 13:15:26 -03:00
Thomas ten Cate
44d761e55c Reset caret blink when Ctrl+moving the cursor
There was a hardcoded exception to never reset caret blinking if Ctrl
(`command`) was pressed. This broke on Ctrl+arrows,
Ctrl+Home/End/PgUp/PgDn, Ctrl+C, Ctrl+V, Ctrl+Backspace and Ctrl+Delete.

Resetting blink only for those Ctrl operations that actually touch the
cursor somehow would clutter the code a lot, so I removed the check
entirely. That means we now also reset blinking on unrelated operations
like Ctrl+O, but that seems pretty harmless. I actually like the
additional bit of feedback even in that case (most of these will
immediately defocus the editor anyway, so you never see it).

Fixes #18100
2018-08-10 11:23:13 +02:00
Hugo Locurcio
501fc98c63
Scale underlines in the script editor with the editor scale 2018-08-02 09:38:56 +02:00
Juan Linietsky
c752c26427 Expose _clips_input as a virtual function, closes #15358 2018-07-29 12:48:17 -03:00
Juan Linietsky
0fcc28b6f3
Merge pull request #15269 from ianb96/context_menu_improvements
Context Menu Improvements
2018-07-29 12:31:20 -03:00
Rémi Verschelde
7056dc6011
Merge pull request #20498 from Calinou/caret-width-hidpi
Make the caret thicker in TextEdit and scale it with the editor scale
2018-07-27 09:01:58 +02:00
Hugo Locurcio
f8a2cb3e15
Multiply TextEdit line spacing by the editor scale
This makes sure the default line spacing in the script editor
is consistent with the editor scale in use.
2018-07-26 23:50:16 +02:00
Hugo Locurcio
8d05f89bc1
Make the caret thicker in TextEdit and scale it with the editor scale
The caret in LineEdit is still 1 pixel thick, but it will become
2 pixels thick at editor scales higher than or equal to 150%.
2018-07-26 23:43:43 +02:00
Ian
1bb13e95a8 context menu improvements 2018-07-26 08:58:35 -04: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