瀏覽代碼

Zero initialize all pointer class and struct members

This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
Rémi Verschelde 3 年之前
父節點
當前提交
f8ab79e68a
共有 100 個文件被更改,包括 1144 次插入1167 次删除
  1. 1 1
      core/config/engine.h
  2. 1 1
      core/core_bind.h
  3. 1 1
      core/io/file_access.h
  4. 3 3
      core/io/file_access_pack.h
  5. 1 1
      core/io/ip.h
  6. 1 1
      core/io/resource_format_binary.h
  7. 1 1
      core/io/resource_uid.h
  8. 1 1
      core/io/udp_server.h
  9. 10 17
      core/math/bvh.h
  10. 2 5
      core/math/dynamic_bvh.h
  11. 1 1
      core/math/expression.h
  12. 13 24
      core/math/octree.h
  13. 1 1
      core/object/callable_method_pointer.h
  14. 2 2
      core/object/class_db.h
  15. 2 2
      core/object/message_queue.h
  16. 3 3
      core/object/object.h
  17. 2 2
      core/object/script_language.h
  18. 3 3
      core/os/memory.h
  19. 0 2
      core/os/os.h
  20. 4 4
      core/os/pool_allocator.h
  21. 1 1
      core/string/string_name.h
  22. 1 1
      core/templates/command_queue_mt.h
  23. 3 3
      core/templates/map.h
  24. 1 1
      core/templates/oa_hash_map.h
  25. 4 4
      core/templates/safe_list.h
  26. 1 1
      core/templates/self_list.h
  27. 2 2
      core/templates/set.h
  28. 1 1
      core/templates/thread_work_pool.h
  29. 4 4
      drivers/gles3/rasterizer_canvas_gles3.h
  30. 2 2
      drivers/gles3/storage/material_storage.h
  31. 5 5
      drivers/gles3/storage/texture_storage.h
  32. 1 1
      drivers/unix/dir_access_unix.h
  33. 18 18
      editor/action_map_editor.h
  34. 2 2
      editor/animation_bezier_editor.h
  35. 61 61
      editor/animation_track_editor.h
  36. 30 30
      editor/code_editor.h
  37. 25 25
      editor/connections_dialog.h
  38. 6 6
      editor/create_dialog.h
  39. 1 1
      editor/debugger/debug_adapter/debug_adapter_protocol.h
  40. 1 1
      editor/debugger/editor_debugger_inspector.h
  41. 6 6
      editor/debugger/editor_network_profiler.h
  42. 3 3
      editor/debugger/editor_performance_profiler.h
  43. 10 10
      editor/debugger/editor_profiler.h
  44. 11 11
      editor/debugger/editor_visual_profiler.h
  45. 39 39
      editor/debugger/script_editor_debugger.h
  46. 13 13
      editor/dependency_editor.h
  47. 5 5
      editor/editor_about.h
  48. 3 3
      editor/editor_asset_installer.h
  49. 28 28
      editor/editor_audio_buses.h
  50. 2 2
      editor/editor_command_palette.h
  51. 5 5
      editor/editor_dir_dialog.h
  52. 1 1
      editor/editor_export.h
  53. 15 15
      editor/editor_feature_profile.h
  54. 39 39
      editor/editor_file_dialog.h
  55. 3 3
      editor/editor_file_system.h
  56. 14 14
      editor/editor_help.h
  57. 7 7
      editor/editor_help_search.h
  58. 28 28
      editor/editor_inspector.h
  59. 3 3
      editor/editor_layouts_dialog.h
  60. 8 8
      editor/editor_log.h
  61. 113 113
      editor/editor_node.h
  62. 5 5
      editor/editor_path.h
  63. 4 4
      editor/editor_plugin_settings.h
  64. 42 42
      editor/editor_properties.h
  65. 21 21
      editor/editor_properties_array_dict.h
  66. 3 3
      editor/editor_resource_picker.h
  67. 1 1
      editor/editor_run_script.h
  68. 3 3
      editor/editor_sectioned_inspector.h
  69. 14 14
      editor/editor_settings_dialog.h
  70. 1 1
      editor/editor_spin_slider.h
  71. 4 4
      editor/editor_toaster.h
  72. 3 3
      editor/editor_zoom_widget.h
  73. 20 20
      editor/export_template_manager.h
  74. 1 1
      editor/fileserver/editor_file_server.h
  75. 39 39
      editor/filesystem_dock.h
  76. 22 22
      editor/find_in_files.h
  77. 22 22
      editor/groups_editor.h
  78. 1 1
      editor/import/dynamic_font_import_settings.h
  79. 27 27
      editor/import/scene_import_settings.h
  80. 5 5
      editor/import_defaults_editor.h
  81. 12 12
      editor/import_dock.h
  82. 20 20
      editor/inspector_dock.h
  83. 12 12
      editor/localization_editor.h
  84. 6 6
      editor/node_dock.h
  85. 11 11
      editor/plugin_config_dialog.h
  86. 8 8
      editor/plugins/abstract_polygon_2d_editor.h
  87. 26 26
      editor/plugins/animation_blend_space_1d_editor.h
  88. 32 32
      editor/plugins/animation_blend_space_2d_editor.h
  89. 9 9
      editor/plugins/animation_blend_tree_editor_plugin.h
  90. 25 25
      editor/plugins/animation_player_editor_plugin.h
  91. 22 22
      editor/plugins/animation_state_machine_editor.h
  92. 6 6
      editor/plugins/animation_tree_editor_plugin.h
  93. 50 50
      editor/plugins/asset_library_editor_plugin.h
  94. 1 1
      editor/plugins/audio_stream_editor_plugin.h
  95. 3 3
      editor/plugins/camera_3d_editor_plugin.h
  96. 58 58
      editor/plugins/canvas_item_editor_plugin.h
  97. 1 1
      editor/plugins/collision_polygon_2d_editor_plugin.h
  98. 4 4
      editor/plugins/collision_shape_2d_editor_plugin.h
  99. 12 12
      editor/plugins/control_editor_plugin.h
  100. 9 9
      editor/plugins/cpu_particles_2d_editor_plugin.h

+ 1 - 1
core/config/engine.h

@@ -40,7 +40,7 @@ class Engine {
 public:
 	struct Singleton {
 		StringName name;
-		Object *ptr;
+		Object *ptr = nullptr;
 		StringName class_name; //used for binding generation hinting
 		bool user_created = false;
 		Singleton(const StringName &p_name = StringName(), Object *p_ptr = nullptr, const StringName &p_class_name = StringName());

+ 1 - 1
core/core_bind.h

@@ -447,7 +447,7 @@ public:
 
 class Directory : public RefCounted {
 	GDCLASS(Directory, RefCounted);
-	DirAccess *d;
+	DirAccess *d = nullptr;
 
 	bool dir_open = false;
 	bool include_navigational = false;

+ 1 - 1
core/io/file_access.h

@@ -183,7 +183,7 @@ struct FileAccessRef {
 
 	operator bool() const { return f != nullptr; }
 
-	FileAccess *f;
+	FileAccess *f = nullptr;
 
 	operator FileAccess *() { return f; }
 

+ 3 - 3
core/io/file_access_pack.h

@@ -64,7 +64,7 @@ public:
 		uint64_t offset; //if offset is ZERO, the file was ERASED
 		uint64_t size;
 		uint8_t md5[16];
-		PackSource *src;
+		PackSource *src = nullptr;
 		bool encrypted;
 	};
 
@@ -103,7 +103,7 @@ private:
 
 	Vector<PackSource *> sources;
 
-	PackedDir *root;
+	PackedDir *root = nullptr;
 
 	static PackedData *singleton;
 	bool disabled = false;
@@ -150,7 +150,7 @@ class FileAccessPack : public FileAccess {
 	mutable bool eof;
 	uint64_t off;
 
-	FileAccess *f;
+	FileAccess *f = nullptr;
 	virtual Error _open(const String &p_path, int p_mode_flags);
 	virtual uint64_t _get_modified_time(const String &p_file) { return 0; }
 	virtual uint32_t _get_unix_permissions(const String &p_file) { return 0; }

+ 1 - 1
core/io/ip.h

@@ -62,7 +62,7 @@ public:
 	typedef int ResolverID;
 
 private:
-	_IP_ResolverPrivate *resolver;
+	_IP_ResolverPrivate *resolver = nullptr;
 
 protected:
 	static IP *singleton;

+ 1 - 1
core/io/resource_format_binary.h

@@ -127,7 +127,7 @@ class ResourceFormatSaverBinaryInstance {
 	bool skip_editor;
 	bool big_endian;
 	bool takeover_paths;
-	FileAccess *f;
+	FileAccess *f = nullptr;
 	String magic;
 	Set<RES> resource_set;
 

+ 1 - 1
core/io/resource_uid.h

@@ -46,7 +46,7 @@ public:
 	static String get_cache_file();
 
 private:
-	void *crypto; // CryptoCore::RandomGenerator (avoid including crypto_core.h)
+	void *crypto = nullptr; // CryptoCore::RandomGenerator (avoid including crypto_core.h)
 	Mutex mutex;
 	struct Cache {
 		CharString cs;

+ 1 - 1
core/io/udp_server.h

@@ -43,7 +43,7 @@ protected:
 	};
 
 	struct Peer {
-		PacketPeerUDP *peer;
+		PacketPeerUDP *peer = nullptr;
 		IPAddress ip;
 		uint16_t port = 0;
 

+ 10 - 17
core/math/bvh.h

@@ -763,19 +763,19 @@ private:
 		tree._extra[p_handle.id()].last_updated_tick = 0;
 	}
 
-	PairCallback pair_callback;
-	UnpairCallback unpair_callback;
-	CheckPairCallback check_pair_callback;
-	void *pair_callback_userdata;
-	void *unpair_callback_userdata;
-	void *check_pair_callback_userdata;
+	PairCallback pair_callback = nullptr;
+	UnpairCallback unpair_callback = nullptr;
+	CheckPairCallback check_pair_callback = nullptr;
+	void *pair_callback_userdata = nullptr;
+	void *unpair_callback_userdata = nullptr;
+	void *check_pair_callback_userdata = nullptr;
 
 	BVHTREE_CLASS tree;
 
 	// for collision pairing,
 	// maintain a list of all items moved etc on each frame / tick
 	LocalVector<BVHHandle, uint32_t, true> changed_items;
-	uint32_t _tick;
+	uint32_t _tick = 1; // Start from 1 so items with 0 indicate never updated.
 
 	class BVHLockedFunction {
 	public:
@@ -801,23 +801,16 @@ private:
 		}
 
 	private:
-		Mutex *_mutex;
+		Mutex *_mutex = nullptr;
 	};
 
 	Mutex _mutex;
 
 	// local toggle for turning on and off thread safety in project settings
-	bool _thread_safe;
+	bool _thread_safe = BVH_THREAD_SAFE;
 
 public:
-	BVH_Manager() {
-		_tick = 1; // start from 1 so items with 0 indicate never updated
-		pair_callback = nullptr;
-		unpair_callback = nullptr;
-		pair_callback_userdata = nullptr;
-		unpair_callback_userdata = nullptr;
-		_thread_safe = BVH_THREAD_SAFE;
-	}
+	BVH_Manager() {}
 };
 
 #undef BVHTREE_CLASS

+ 2 - 5
core/math/dynamic_bvh.h

@@ -183,7 +183,7 @@ private:
 		Node *parent = nullptr;
 		union {
 			Node *childs[2];
-			void *data;
+			void *data = nullptr;
 		};
 
 		_FORCE_INLINE_ bool is_leaf() const { return childs[1] == nullptr; }
@@ -215,10 +215,7 @@ private:
 			return axis.dot(volume.get_center() - org) <= 0;
 		}
 
-		Node() {
-			childs[0] = nullptr;
-			childs[1] = nullptr;
-		}
+		Node() {}
 	};
 
 	PagedAllocator<Node> node_allocator;

+ 1 - 1
core/math/expression.h

@@ -147,7 +147,7 @@ private:
 		bool is_op = false;
 		union {
 			Variant::Operator op;
-			ENode *node;
+			ENode *node = nullptr;
 		};
 	};
 

+ 13 - 24
core/math/octree.h

@@ -134,7 +134,7 @@ private:
 		List<PairData *, AL> pair_list;
 
 		struct OctantOwner {
-			Octant *octant;
+			Octant *octant = nullptr;
 			typename List<Element *, AL>::Element *E;
 		}; // an element can be in max 8 octants
 
@@ -147,7 +147,7 @@ private:
 		int refcount;
 		bool intersect;
 		Element *A, *B;
-		void *ud;
+		void *ud = nullptr;
 		typename List<PairData *, AL>::Element *eA, *eB;
 	};
 
@@ -156,18 +156,18 @@ private:
 	ElementMap element_map;
 	PairMap pair_map;
 
-	PairCallback pair_callback;
-	UnpairCallback unpair_callback;
-	void *pair_callback_userdata;
-	void *unpair_callback_userdata;
+	PairCallback pair_callback = nullptr;
+	UnpairCallback unpair_callback = nullptr;
+	void *pair_callback_userdata = nullptr;
+	void *unpair_callback_userdata = nullptr;
 
-	OctreeElementID last_element_id;
-	uint64_t pass;
+	OctreeElementID last_element_id = 1;
+	uint64_t pass = 1;
 
-	real_t unit_size;
-	Octant *root;
-	int octant_count;
-	int pair_count;
+	real_t unit_size = 1.0;
+	Octant *root = nullptr;
+	int octant_count = 0;
+	int pair_count = 0;
 
 	_FORCE_INLINE_ void _pair_check(PairData *p_pair) {
 		bool intersect = p_pair->A->aabb.intersects_inclusive(p_pair->B->aabb);
@@ -294,7 +294,7 @@ private:
 		const Vector3 *points;
 		int point_count;
 		T **result_array;
-		int *result_idx;
+		int *result_idx = nullptr;
 		int result_max;
 		uint32_t mask;
 	};
@@ -1265,18 +1265,7 @@ void Octree<T, use_pairs, AL>::set_unpair_callback(UnpairCallback p_callback, vo
 
 template <class T, bool use_pairs, class AL>
 Octree<T, use_pairs, AL>::Octree(real_t p_unit_size) {
-	last_element_id = 1;
-	pass = 1;
 	unit_size = p_unit_size;
-	root = nullptr;
-
-	octant_count = 0;
-	pair_count = 0;
-
-	pair_callback = nullptr;
-	unpair_callback = nullptr;
-	pair_callback_userdata = nullptr;
-	unpair_callback_userdata = nullptr;
 }
 
 #endif // OCTREE_H

+ 1 - 1
core/object/callable_method_pointer.h

@@ -38,7 +38,7 @@
 #include "core/variant/callable.h"
 
 class CallableCustomMethodPointerBase : public CallableCustom {
-	uint32_t *comp_ptr;
+	uint32_t *comp_ptr = nullptr;
 	uint32_t comp_size;
 	uint32_t h;
 #ifdef DEBUG_METHODS_ENABLED

+ 2 - 2
core/object/class_db.h

@@ -85,8 +85,8 @@ public:
 		int index;
 		StringName setter;
 		StringName getter;
-		MethodBind *_setptr;
-		MethodBind *_getptr;
+		MethodBind *_setptr = nullptr;
+		MethodBind *_getptr = nullptr;
 		Variant::Type type;
 	};
 

+ 2 - 2
core/object/message_queue.h

@@ -62,10 +62,10 @@ class MessageQueue {
 		};
 	};
 
-	uint8_t *buffer;
+	uint8_t *buffer = nullptr;
 	uint32_t buffer_end = 0;
 	uint32_t buffer_max_used = 0;
-	uint32_t buffer_size;
+	uint32_t buffer_size = 0;
 
 	void _call_function(const Callable &p_callable, const Variant *p_args, int p_argcount, bool p_show_error);
 

+ 3 - 3
core/object/object.h

@@ -538,8 +538,8 @@ private:
 
 	std::mutex _instance_binding_mutex;
 	struct InstanceBinding {
-		void *binding;
-		void *token;
+		void *binding = nullptr;
+		void *token = nullptr;
 		GDNativeInstanceBindingFreeCallback free_callback = nullptr;
 		GDNativeInstanceBindingReferenceCallback reference_callback = nullptr;
 	};
@@ -849,7 +849,7 @@ class ObjectDB {
 		uint64_t validator : OBJECTDB_VALIDATOR_BITS;
 		uint64_t next_free : OBJECTDB_SLOT_MAX_COUNT_BITS;
 		uint64_t is_ref_counted : 1;
-		Object *object;
+		Object *object = nullptr;
 	};
 
 	static SpinLock spin_lock;

+ 2 - 2
core/object/script_language.h

@@ -430,11 +430,11 @@ public:
 extern uint8_t script_encryption_key[32];
 
 class PlaceHolderScriptInstance : public ScriptInstance {
-	Object *owner;
+	Object *owner = nullptr;
 	List<PropertyInfo> properties;
 	Map<StringName, Variant> values;
 	Map<StringName, Variant> constants;
-	ScriptLanguage *language;
+	ScriptLanguage *language = nullptr;
 	Ref<Script> script;
 
 public:

+ 3 - 3
core/os/memory.h

@@ -186,9 +186,9 @@ void memdelete_arr(T *p_class) {
 
 struct _GlobalNil {
 	int color = 1;
-	_GlobalNil *right;
-	_GlobalNil *left;
-	_GlobalNil *parent;
+	_GlobalNil *right = nullptr;
+	_GlobalNil *left = nullptr;
+	_GlobalNil *parent = nullptr;
 
 	_GlobalNil();
 };

+ 0 - 2
core/os/os.h

@@ -60,8 +60,6 @@ class OS {
 	bool _stdout_enabled = true;
 	bool _stderr_enabled = true;
 
-	char *last_error;
-
 	CompositeLogger *_logger = nullptr;
 
 	bool restart_on_exit = false;

+ 4 - 4
core/os/pool_allocator.h

@@ -75,13 +75,13 @@ private:
 	typedef int EntryArrayPos;
 	typedef int EntryIndicesPos;
 
-	Entry *entry_array;
-	int *entry_indices;
+	Entry *entry_array = nullptr;
+	int *entry_indices = nullptr;
 	int entry_max;
 	int entry_count;
 
-	uint8_t *pool;
-	void *mem_ptr;
+	uint8_t *pool = nullptr;
+	void *mem_ptr = nullptr;
 	int pool_size;
 
 	int free_mem;

+ 1 - 1
core/string/string_name.h

@@ -70,7 +70,7 @@ class StringName {
 	_Data *_data = nullptr;
 
 	union _HashUnion {
-		_Data *ptr;
+		_Data *ptr = nullptr;
 		uint32_t hash;
 	};
 

+ 1 - 1
core/templates/command_queue_mt.h

@@ -311,7 +311,7 @@ class CommandQueueMT {
 	};
 
 	struct SyncCommand : public CommandBase {
-		SyncSemaphore *sync_sem;
+		SyncSemaphore *sync_sem = nullptr;
 
 		virtual void post() {
 			sync_sem->sem.post();

+ 3 - 3
core/templates/map.h

@@ -178,7 +178,7 @@ public:
 private:
 	struct _Data {
 		Element *_root = nullptr;
-		Element *_nil;
+		Element *_nil = nullptr;
 		int size_cache = 0;
 
 		_FORCE_INLINE_ _Data() {
@@ -344,7 +344,7 @@ private:
 	void _insert_rb_fix(Element *p_new_node) {
 		Element *node = p_new_node;
 		Element *nparent = node->parent;
-		Element *ngrand_parent;
+		Element *ngrand_parent = nullptr;
 
 		while (nparent->color == RED) {
 			ngrand_parent = nparent->parent;
@@ -500,7 +500,7 @@ private:
 		Element *rp = ((p_node->left == _data._nil) || (p_node->right == _data._nil)) ? p_node : p_node->_next;
 		Element *node = (rp->left == _data._nil) ? rp->right : rp->left;
 
-		Element *sibling;
+		Element *sibling = nullptr;
 		if (rp == rp->parent->left) {
 			rp->parent->left = node;
 			sibling = rp->parent->right;

+ 1 - 1
core/templates/oa_hash_map.h

@@ -306,7 +306,7 @@ public:
 		bool valid;
 
 		const TKey *key;
-		TValue *value;
+		TValue *value = nullptr;
 
 	private:
 		uint32_t pos;

+ 4 - 4
core/templates/safe_list.h

@@ -75,8 +75,8 @@ public:
 	class Iterator {
 		friend class SafeList;
 
-		SafeListNode *cursor;
-		SafeList *list;
+		SafeListNode *cursor = nullptr;
+		SafeList *list = nullptr;
 
 		Iterator(SafeListNode *p_cursor, SafeList *p_list) :
 				cursor(p_cursor), list(p_list) {
@@ -253,8 +253,8 @@ public:
 	class Iterator {
 		friend class SafeList;
 
-		SafeListNode *cursor;
-		SafeList *list;
+		SafeListNode *cursor = nullptr;
+		SafeList *list = nullptr;
 
 	public:
 		Iterator(SafeListNode *p_cursor, SafeList *p_list) :

+ 1 - 1
core/templates/self_list.h

@@ -108,7 +108,7 @@ public:
 
 private:
 	List *_root = nullptr;
-	T *_self;
+	T *_self = nullptr;
 	SelfList<T> *_next = nullptr;
 	SelfList<T> *_prev = nullptr;
 

+ 2 - 2
core/templates/set.h

@@ -328,7 +328,7 @@ private:
 	void _insert_rb_fix(Element *p_new_node) {
 		Element *node = p_new_node;
 		Element *nparent = node->parent;
-		Element *ngrand_parent;
+		Element *ngrand_parent = nullptr;
 
 		while (nparent->color == RED) {
 			ngrand_parent = nparent->parent;
@@ -482,7 +482,7 @@ private:
 		Element *rp = ((p_node->left == _data._nil) || (p_node->right == _data._nil)) ? p_node : p_node->_next;
 		Element *node = (rp->left == _data._nil) ? rp->right : rp->left;
 
-		Element *sibling;
+		Element *sibling = nullptr;
 		if (rp == rp->parent->left) {
 			rp->parent->left = node;
 			sibling = rp->parent->right;

+ 1 - 1
core/templates/thread_work_pool.h

@@ -68,7 +68,7 @@ class ThreadWorkPool {
 		Semaphore start;
 		Semaphore completed;
 		std::atomic<bool> exit;
-		BaseWork *work;
+		BaseWork *work = nullptr;
 	};
 
 	ThreadData *threads = nullptr;

+ 4 - 4
drivers/gles3/rasterizer_canvas_gles3.h

@@ -169,7 +169,7 @@ public:
 		LocalVector<GLsync> fences;
 		uint32_t current_buffer = 0;
 
-		InstanceData *instance_data_array;
+		InstanceData *instance_data_array = nullptr;
 		bool canvas_texscreen_used;
 		CanvasShaderGLES3 canvas_shader;
 		RID canvas_shader_current_version;
@@ -198,7 +198,7 @@ public:
 		bool end_batch = false;
 
 		Transform3D vp;
-		Light *using_light;
+		Light *using_light = nullptr;
 		bool using_shadow;
 		bool using_transparent_rt;
 
@@ -220,9 +220,9 @@ public:
 
 	typedef void Texture;
 
-	RasterizerSceneGLES3 *scene_render;
+	RasterizerSceneGLES3 *scene_render = nullptr;
 
-	RasterizerStorageGLES3 *storage;
+	RasterizerStorageGLES3 *storage = nullptr;
 
 	void _set_uniforms();
 

+ 2 - 2
drivers/gles3/storage/material_storage.h

@@ -66,7 +66,7 @@ struct Shader {
 	RID self;
 
 	RS::ShaderMode mode;
-	ShaderGLES3 *shader;
+	ShaderGLES3 *shader = nullptr;
 	String code;
 	SelfList<Material>::List materials;
 
@@ -185,7 +185,7 @@ struct Shader {
 
 struct Material {
 	RID self;
-	Shader *shader;
+	Shader *shader = nullptr;
 	Map<StringName, Variant> params;
 	SelfList<Material> list;
 	SelfList<Material> dirty_list;

+ 5 - 5
drivers/gles3/storage/texture_storage.h

@@ -93,7 +93,7 @@ enum OpenGLTextureFlags {
 struct Texture {
 	RID self;
 
-	Texture *proxy;
+	Texture *proxy = nullptr;
 	Set<Texture *> proxy_owners;
 
 	String path;
@@ -125,20 +125,20 @@ struct Texture {
 
 	uint16_t stored_cube_sides;
 
-	RenderTarget *render_target;
+	RenderTarget *render_target = nullptr;
 
 	Vector<Ref<Image>> images;
 
 	bool redraw_if_visible;
 
 	RS::TextureDetectCallback detect_3d;
-	void *detect_3d_ud;
+	void *detect_3d_ud = nullptr;
 
 	RS::TextureDetectCallback detect_srgb;
-	void *detect_srgb_ud;
+	void *detect_srgb_ud = nullptr;
 
 	RS::TextureDetectCallback detect_normal;
-	void *detect_normal_ud;
+	void *detect_normal_ud = nullptr;
 
 	CanvasTexture *canvas_texture = nullptr;
 

+ 1 - 1
drivers/unix/dir_access_unix.h

@@ -41,7 +41,7 @@
 #include <unistd.h>
 
 class DirAccessUnix : public DirAccess {
-	DIR *dir_stream;
+	DIR *dir_stream = nullptr;
 
 	static DirAccess *create_fs();
 

+ 18 - 18
editor/action_map_editor.h

@@ -63,24 +63,24 @@ private:
 
 	Ref<InputEvent> event = Ref<InputEvent>();
 
-	TabContainer *tab_container;
+	TabContainer *tab_container = nullptr;
 
 	// Listening for input
-	Label *event_as_text;
-	ColorRect *mouse_detection_rect;
+	Label *event_as_text = nullptr;
+	ColorRect *mouse_detection_rect = nullptr;
 
 	// List of All Key/Mouse/Joypad input options.
 	int allowed_input_types;
-	Tree *input_list_tree;
-	LineEdit *input_list_search;
+	Tree *input_list_tree = nullptr;
+	LineEdit *input_list_search = nullptr;
 
 	// Additional Options, shown depending on event selected
-	VBoxContainer *additional_options_container;
+	VBoxContainer *additional_options_container = nullptr;
 
-	HBoxContainer *device_container;
-	OptionButton *device_id_option;
+	HBoxContainer *device_container = nullptr;
+	OptionButton *device_id_option = nullptr;
 
-	HBoxContainer *mod_container; // Contains the subcontainer and the store command checkbox.
+	HBoxContainer *mod_container = nullptr; // Contains the subcontainer and the store command checkbox.
 
 	enum ModCheckbox {
 		MOD_ALT,
@@ -93,9 +93,9 @@ private:
 	String mods[MOD_MAX] = { "Alt", "Shift", "Command", "Ctrl", "Metakey" };
 
 	CheckBox *mod_checkboxes[MOD_MAX];
-	CheckBox *store_command_checkbox;
+	CheckBox *store_command_checkbox = nullptr;
 
-	CheckBox *physical_key_checkbox;
+	CheckBox *physical_key_checkbox = nullptr;
 
 	void _set_event(const Ref<InputEvent> &p_event);
 
@@ -149,7 +149,7 @@ private:
 	};
 
 	Vector<ActionInfo> actions_cache;
-	Tree *action_tree;
+	Tree *action_tree = nullptr;
 
 	// Storing which action/event is currently being edited in the InputEventConfigurationDialog.
 
@@ -159,17 +159,17 @@ private:
 
 	// Popups
 
-	InputEventConfigurationDialog *event_config_dialog;
-	AcceptDialog *message;
+	InputEventConfigurationDialog *event_config_dialog = nullptr;
+	AcceptDialog *message = nullptr;
 
 	// Filtering and Adding actions
 
 	bool show_builtin_actions = false;
-	CheckButton *show_builtin_actions_checkbutton;
-	LineEdit *action_list_search;
+	CheckButton *show_builtin_actions_checkbutton = nullptr;
+	LineEdit *action_list_search = nullptr;
 
-	HBoxContainer *add_hbox;
-	LineEdit *add_edit;
+	HBoxContainer *add_hbox = nullptr;
+	LineEdit *add_edit = nullptr;
 
 	void _event_config_confirmed();
 

+ 2 - 2
editor/animation_bezier_editor.h

@@ -49,7 +49,7 @@ class AnimationBezierTrackEdit : public Control {
 	AnimationTimelineEdit *timeline = nullptr;
 	UndoRedo *undo_redo = nullptr;
 	Node *root = nullptr;
-	Control *play_position; //separate control used to draw so updates for only position changed are much faster
+	Control *play_position = nullptr; //separate control used to draw so updates for only position changed are much faster
 	float play_position_pos = 0;
 
 	Ref<Animation> animation;
@@ -130,7 +130,7 @@ class AnimationBezierTrackEdit : public Control {
 		float transition = 0;
 	};
 
-	AnimationTrackEditor *editor;
+	AnimationTrackEditor *editor = nullptr;
 
 	struct EditPoint {
 		Rect2 point_rect;

+ 61 - 61
editor/animation_track_editor.h

@@ -54,27 +54,27 @@ class AnimationTimelineEdit : public Range {
 	GDCLASS(AnimationTimelineEdit, Range);
 
 	Ref<Animation> animation;
-	AnimationTrackEdit *track_edit;
+	AnimationTrackEdit *track_edit = nullptr;
 	int name_limit;
-	Range *zoom;
-	Range *h_scroll;
+	Range *zoom = nullptr;
+	Range *h_scroll = nullptr;
 	float play_position_pos;
 
-	HBoxContainer *len_hb;
-	EditorSpinSlider *length;
-	Button *loop;
-	TextureRect *time_icon;
+	HBoxContainer *len_hb = nullptr;
+	EditorSpinSlider *length = nullptr;
+	Button *loop = nullptr;
+	TextureRect *time_icon = nullptr;
 
-	MenuButton *add_track;
-	Control *play_position; //separate control used to draw so updates for only position changed are much faster
-	HScrollBar *hscroll;
+	MenuButton *add_track = nullptr;
+	Control *play_position = nullptr; //separate control used to draw so updates for only position changed are much faster
+	HScrollBar *hscroll = nullptr;
 
 	void _zoom_changed(double);
 	void _anim_length_changed(double p_new_len);
 	void _anim_loop_pressed();
 
 	void _play_position_draw();
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 	Rect2 hsize_rect;
 
 	bool editing = false;
@@ -146,12 +146,12 @@ class AnimationTrackEdit : public Control {
 		MENU_KEY_ADD_RESET,
 		MENU_KEY_DELETE
 	};
-	AnimationTimelineEdit *timeline;
-	UndoRedo *undo_redo;
-	Popup *path_popup;
-	LineEdit *path;
-	Node *root;
-	Control *play_position; //separate control used to draw so updates for only position changed are much faster
+	AnimationTimelineEdit *timeline = nullptr;
+	UndoRedo *undo_redo = nullptr;
+	Popup *path_popup = nullptr;
+	LineEdit *path = nullptr;
+	Node *root = nullptr;
+	Control *play_position = nullptr; //separate control used to draw so updates for only position changed are much faster
 	float play_position_pos;
 	NodePath node_path;
 
@@ -169,7 +169,7 @@ class AnimationTrackEdit : public Control {
 	Ref<Texture2D> type_icon;
 	Ref<Texture2D> selected_icon;
 
-	PopupMenu *menu;
+	PopupMenu *menu = nullptr;
 
 	bool clicking_on_name = false;
 
@@ -194,7 +194,7 @@ class AnimationTrackEdit : public Control {
 	float moving_selection_from_ofs;
 
 	bool in_group = false;
-	AnimationTrackEditor *editor;
+	AnimationTrackEditor *editor = nullptr;
 
 protected:
 	static void _bind_methods();
@@ -285,27 +285,27 @@ class AnimationTrackEditor : public VBoxContainer {
 	GDCLASS(AnimationTrackEditor, VBoxContainer);
 
 	Ref<Animation> animation;
-	Node *root;
-
-	MenuButton *edit;
+	Node *root = nullptr;
 
-	PanelContainer *main_panel;
-	HScrollBar *hscroll;
-	ScrollContainer *scroll;
-	VBoxContainer *track_vbox;
-	AnimationBezierTrackEdit *bezier_edit;
+	MenuButton *edit = nullptr;
 
-	Label *info_message;
+	PanelContainer *main_panel = nullptr;
+	HScrollBar *hscroll = nullptr;
+	ScrollContainer *scroll = nullptr;
+	VBoxContainer *track_vbox = nullptr;
+	AnimationBezierTrackEdit *bezier_edit = nullptr;
 
-	AnimationTimelineEdit *timeline;
-	HSlider *zoom;
-	EditorSpinSlider *step;
-	TextureRect *zoom_icon;
-	Button *snap;
-	Button *bezier_edit_icon;
-	OptionButton *snap_mode;
+	Label *info_message = nullptr;
 
-	Button *imported_anim_warning;
+	AnimationTimelineEdit *timeline = nullptr;
+	HSlider *zoom = nullptr;
+	EditorSpinSlider *step = nullptr;
+	TextureRect *zoom_icon = nullptr;
+	Button *snap = nullptr;
+	Button *bezier_edit_icon = nullptr;
+	OptionButton *snap_mode = nullptr;
+
+	Button *imported_anim_warning = nullptr;
 	void _show_imported_anim_warning();
 
 	void _snap_mode_changed(int p_mode);
@@ -323,7 +323,7 @@ class AnimationTrackEditor : public VBoxContainer {
 	void _track_remove_request(int p_track);
 	void _track_grab_focus(int p_track);
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	void _update_scroll(double);
 	void _update_step(double p_new_step);
@@ -336,9 +336,9 @@ class AnimationTrackEditor : public VBoxContainer {
 
 	void _update_step_spinbox();
 
-	PropertySelector *prop_selector;
-	PropertySelector *method_selector;
-	SceneTreeDialog *pick_track;
+	PropertySelector *prop_selector = nullptr;
+	PropertySelector *method_selector = nullptr;
+	SceneTreeDialog *pick_track = nullptr;
 	int adding_track_type;
 	NodePath adding_track_path;
 
@@ -353,10 +353,10 @@ class AnimationTrackEditor : public VBoxContainer {
 		bool advance = false;
 	}; /* insert_data;*/
 
-	Label *insert_confirm_text;
-	CheckBox *insert_confirm_bezier;
-	CheckBox *insert_confirm_reset;
-	ConfirmationDialog *insert_confirm;
+	Label *insert_confirm_text = nullptr;
+	CheckBox *insert_confirm_bezier = nullptr;
+	CheckBox *insert_confirm_reset = nullptr;
+	ConfirmationDialog *insert_confirm = nullptr;
 	bool insert_queue = false;
 	List<InsertData> insert_data;
 
@@ -419,13 +419,13 @@ class AnimationTrackEditor : public VBoxContainer {
 	void _move_selection_commit();
 	void _move_selection_cancel();
 
-	AnimationTrackKeyEdit *key_edit;
-	AnimationMultiTrackKeyEdit *multi_key_edit;
+	AnimationTrackKeyEdit *key_edit = nullptr;
+	AnimationMultiTrackKeyEdit *multi_key_edit = nullptr;
 	void _update_key_edit();
 
 	void _clear_key_edit();
 
-	Control *box_selection;
+	Control *box_selection = nullptr;
 	void _box_selection_draw();
 	bool box_selecting = false;
 	Vector2 box_selecting_from;
@@ -440,18 +440,18 @@ class AnimationTrackEditor : public VBoxContainer {
 
 	////////////// edit menu stuff
 
-	ConfirmationDialog *optimize_dialog;
-	SpinBox *optimize_linear_error;
-	SpinBox *optimize_angular_error;
-	SpinBox *optimize_max_angle;
+	ConfirmationDialog *optimize_dialog = nullptr;
+	SpinBox *optimize_linear_error = nullptr;
+	SpinBox *optimize_angular_error = nullptr;
+	SpinBox *optimize_max_angle = nullptr;
 
-	ConfirmationDialog *cleanup_dialog;
-	CheckBox *cleanup_keys;
-	CheckBox *cleanup_tracks;
-	CheckBox *cleanup_all;
+	ConfirmationDialog *cleanup_dialog = nullptr;
+	CheckBox *cleanup_keys = nullptr;
+	CheckBox *cleanup_tracks = nullptr;
+	CheckBox *cleanup_all = nullptr;
 
-	ConfirmationDialog *scale_dialog;
-	SpinBox *scale;
+	ConfirmationDialog *scale_dialog = nullptr;
+	SpinBox *scale = nullptr;
 
 	void _select_all_tracks_for_copy();
 
@@ -464,13 +464,13 @@ class AnimationTrackEditor : public VBoxContainer {
 	void _anim_duplicate_keys(bool transpose);
 
 	void _view_group_toggle();
-	Button *view_group;
-	Button *selected_filter;
+	Button *view_group = nullptr;
+	Button *selected_filter = nullptr;
 
 	void _selection_changed();
 
-	ConfirmationDialog *track_copy_dialog;
-	Tree *track_copy_select;
+	ConfirmationDialog *track_copy_dialog = nullptr;
+	Tree *track_copy_select = nullptr;
 
 	struct TrackClipboard {
 		NodePath full_path;

+ 30 - 30
editor/code_editor.h

@@ -43,10 +43,10 @@
 class GotoLineDialog : public ConfirmationDialog {
 	GDCLASS(GotoLineDialog, ConfirmationDialog);
 
-	Label *line_label;
-	LineEdit *line;
+	Label *line_label = nullptr;
+	LineEdit *line = nullptr;
 
-	CodeEdit *text_editor;
+	CodeEdit *text_editor = nullptr;
 
 	virtual void ok_pressed() override;
 
@@ -62,25 +62,25 @@ class CodeTextEditor;
 class FindReplaceBar : public HBoxContainer {
 	GDCLASS(FindReplaceBar, HBoxContainer);
 
-	LineEdit *search_text;
-	Label *matches_label;
-	Button *find_prev;
-	Button *find_next;
-	CheckBox *case_sensitive;
-	CheckBox *whole_words;
-	TextureButton *hide_button;
+	LineEdit *search_text = nullptr;
+	Label *matches_label = nullptr;
+	Button *find_prev = nullptr;
+	Button *find_next = nullptr;
+	CheckBox *case_sensitive = nullptr;
+	CheckBox *whole_words = nullptr;
+	TextureButton *hide_button = nullptr;
 
-	LineEdit *replace_text;
-	Button *replace;
-	Button *replace_all;
-	CheckBox *selection_only;
+	LineEdit *replace_text = nullptr;
+	Button *replace = nullptr;
+	Button *replace_all = nullptr;
+	CheckBox *selection_only = nullptr;
 
-	VBoxContainer *vbc_lineedit;
-	HBoxContainer *hbc_button_replace;
-	HBoxContainer *hbc_option_replace;
+	VBoxContainer *vbc_lineedit = nullptr;
+	HBoxContainer *hbc_button_replace = nullptr;
+	HBoxContainer *hbc_option_replace = nullptr;
 
 	CodeTextEditor *base_text_editor = nullptr;
-	CodeEdit *text_editor;
+	CodeEdit *text_editor = nullptr;
 
 	int result_line;
 	int result_col;
@@ -139,25 +139,25 @@ typedef void (*CodeTextEditorCodeCompleteFunc)(void *p_ud, const String &p_code,
 class CodeTextEditor : public VBoxContainer {
 	GDCLASS(CodeTextEditor, VBoxContainer);
 
-	CodeEdit *text_editor;
+	CodeEdit *text_editor = nullptr;
 	FindReplaceBar *find_replace_bar = nullptr;
-	HBoxContainer *status_bar;
+	HBoxContainer *status_bar = nullptr;
 
-	Button *toggle_scripts_button;
-	Button *error_button;
-	Button *warning_button;
+	Button *toggle_scripts_button = nullptr;
+	Button *error_button = nullptr;
+	Button *warning_button = nullptr;
 
-	Label *line_and_col_txt;
+	Label *line_and_col_txt = nullptr;
 
-	Label *info;
-	Timer *idle;
-	Timer *code_complete_timer;
+	Label *info = nullptr;
+	Timer *idle = nullptr;
+	Timer *code_complete_timer = nullptr;
 
-	Timer *font_resize_timer;
+	Timer *font_resize_timer = nullptr;
 	int font_resize_val;
 	real_t font_size;
 
-	Label *error;
+	Label *error = nullptr;
 	int error_line;
 	int error_column;
 
@@ -181,7 +181,7 @@ class CodeTextEditor : public VBoxContainer {
 	Color completion_string_color;
 	Color completion_comment_color;
 	CodeTextEditorCodeCompleteFunc code_complete_func;
-	void *code_complete_ud;
+	void *code_complete_ud = nullptr;
 
 	void _error_button_pressed();
 	void _warning_button_pressed();

+ 25 - 25
editor/connections_dialog.h

@@ -105,27 +105,27 @@ public:
 	};
 
 private:
-	Label *connect_to_label;
-	LineEdit *from_signal;
-	Node *source;
+	Label *connect_to_label = nullptr;
+	LineEdit *from_signal = nullptr;
+	Node *source = nullptr;
 	StringName signal;
-	LineEdit *dst_method;
-	ConnectDialogBinds *cdbinds;
+	LineEdit *dst_method = nullptr;
+	ConnectDialogBinds *cdbinds = nullptr;
 	bool edit_mode;
 	NodePath dst_path;
-	VBoxContainer *vbc_right;
-
-	SceneTreeEditor *tree;
-	AcceptDialog *error;
-	SpinBox *unbind_count;
-	EditorInspector *bind_editor;
-	OptionButton *type_list;
-	CheckBox *deferred;
-	CheckBox *oneshot;
-	CheckButton *advanced;
+	VBoxContainer *vbc_right = nullptr;
+
+	SceneTreeEditor *tree = nullptr;
+	AcceptDialog *error = nullptr;
+	SpinBox *unbind_count = nullptr;
+	EditorInspector *bind_editor = nullptr;
+	OptionButton *type_list = nullptr;
+	CheckBox *deferred = nullptr;
+	CheckBox *oneshot = nullptr;
+	CheckButton *advanced = nullptr;
 	Vector<Control *> bind_controls;
 
-	Label *error_label;
+	Label *error_label = nullptr;
 
 	void ok_pressed() override;
 	void _cancel_pressed();
@@ -186,16 +186,16 @@ class ConnectionsDock : public VBoxContainer {
 		DISCONNECT
 	};
 
-	Node *selected_node;
-	ConnectionsDockTree *tree;
+	Node *selected_node = nullptr;
+	ConnectionsDockTree *tree = nullptr;
 
-	ConfirmationDialog *disconnect_all_dialog;
-	ConnectDialog *connect_dialog;
-	Button *connect_button;
-	PopupMenu *signal_menu;
-	PopupMenu *slot_menu;
-	UndoRedo *undo_redo;
-	LineEdit *search_box;
+	ConfirmationDialog *disconnect_all_dialog = nullptr;
+	ConnectDialog *connect_dialog = nullptr;
+	Button *connect_button = nullptr;
+	PopupMenu *signal_menu = nullptr;
+	PopupMenu *slot_menu = nullptr;
+	UndoRedo *undo_redo = nullptr;
+	LineEdit *search_box = nullptr;
 
 	Map<StringName, Map<StringName, String>> descr_cache;
 

+ 6 - 6
editor/create_dialog.h

@@ -47,18 +47,18 @@ class CreateDialog : public ConfirmationDialog {
 		OTHER_TYPE
 	};
 
-	LineEdit *search_box;
-	Tree *search_options;
+	LineEdit *search_box = nullptr;
+	Tree *search_options = nullptr;
 
 	String base_type;
 	String icon_fallback;
 	String preferred_search_result_type;
 
-	Button *favorite;
+	Button *favorite = nullptr;
 	Vector<String> favorite_list;
-	Tree *favorites;
-	ItemList *recent;
-	EditorHelpBit *help_bit;
+	Tree *favorites = nullptr;
+	ItemList *recent = nullptr;
+	EditorHelpBit *help_bit = nullptr;
 
 	HashMap<String, TreeItem *> search_options_types;
 	HashMap<String, String> custom_type_parents;

+ 1 - 1
editor/debugger/debug_adapter/debug_adapter_protocol.h

@@ -76,7 +76,7 @@ class DebugAdapterProtocol : public Object {
 
 private:
 	static DebugAdapterProtocol *singleton;
-	DebugAdapterParser *parser;
+	DebugAdapterParser *parser = nullptr;
 
 	List<Ref<DAPeer>> clients;
 	Ref<TCPServer> server;

+ 1 - 1
editor/debugger/editor_debugger_inspector.h

@@ -70,7 +70,7 @@ private:
 	ObjectID inspected_object_id;
 	Map<ObjectID, EditorDebuggerRemoteObject *> remote_objects;
 	Set<RES> remote_dependencies;
-	EditorDebuggerRemoteObject *variables;
+	EditorDebuggerRemoteObject *variables = nullptr;
 
 	void _object_selected(ObjectID p_object);
 	void _object_edited(ObjectID p_id, const String &p_prop, const Variant &p_value);

+ 6 - 6
editor/debugger/editor_network_profiler.h

@@ -42,13 +42,13 @@ class EditorNetworkProfiler : public VBoxContainer {
 	GDCLASS(EditorNetworkProfiler, VBoxContainer)
 
 private:
-	Button *activate;
-	Button *clear_button;
-	Tree *counters_display;
-	LineEdit *incoming_bandwidth_text;
-	LineEdit *outgoing_bandwidth_text;
+	Button *activate = nullptr;
+	Button *clear_button = nullptr;
+	Tree *counters_display = nullptr;
+	LineEdit *incoming_bandwidth_text = nullptr;
+	LineEdit *outgoing_bandwidth_text = nullptr;
 
-	Timer *frame_delay;
+	Timer *frame_delay = nullptr;
 
 	Map<ObjectID, SceneDebugger::RPCNodeInfo> nodes_data;
 

+ 3 - 3
editor/debugger/editor_performance_profiler.h

@@ -62,9 +62,9 @@ private:
 	OrderedHashMap<StringName, Monitor> monitors;
 
 	Map<StringName, TreeItem *> base_map;
-	Tree *monitor_tree;
-	Control *monitor_draw;
-	Label *info_message;
+	Tree *monitor_tree = nullptr;
+	Control *monitor_draw = nullptr;
+	Label *info_message = nullptr;
 	StringName marker_key;
 	int marker_frame;
 	const int MARGIN = 4;

+ 10 - 10
editor/debugger/editor_profiler.h

@@ -90,20 +90,20 @@ public:
 	};
 
 private:
-	Button *activate;
-	Button *clear_button;
-	TextureRect *graph;
+	Button *activate = nullptr;
+	Button *clear_button = nullptr;
+	TextureRect *graph = nullptr;
 	Ref<ImageTexture> graph_texture;
 	Vector<uint8_t> graph_image;
-	Tree *variables;
-	HSplitContainer *h_split;
+	Tree *variables = nullptr;
+	HSplitContainer *h_split = nullptr;
 
 	Set<StringName> plot_sigs;
 
-	OptionButton *display_mode;
-	OptionButton *display_time;
+	OptionButton *display_mode = nullptr;
+	OptionButton *display_time = nullptr;
 
-	SpinBox *cursor_metric_edit;
+	SpinBox *cursor_metric_edit = nullptr;
 
 	Vector<Metric> frame_metrics;
 	int total_metrics;
@@ -119,8 +119,8 @@ private:
 
 	bool seeking;
 
-	Timer *frame_delay;
-	Timer *plot_delay;
+	Timer *frame_delay = nullptr;
+	Timer *plot_delay = nullptr;
 
 	void _update_frame();
 

+ 11 - 11
editor/debugger/editor_visual_profiler.h

@@ -67,20 +67,20 @@ public:
 	};
 
 private:
-	Button *activate;
-	Button *clear_button;
+	Button *activate = nullptr;
+	Button *clear_button = nullptr;
 
-	TextureRect *graph;
+	TextureRect *graph = nullptr;
 	Ref<ImageTexture> graph_texture;
 	Vector<uint8_t> graph_image;
-	Tree *variables;
-	HSplitContainer *h_split;
-	CheckBox *frame_relative;
-	CheckBox *linked;
+	Tree *variables = nullptr;
+	HSplitContainer *h_split = nullptr;
+	CheckBox *frame_relative = nullptr;
+	CheckBox *linked = nullptr;
 
-	OptionButton *display_mode;
+	OptionButton *display_mode = nullptr;
 
-	SpinBox *cursor_metric_edit;
+	SpinBox *cursor_metric_edit = nullptr;
 
 	Vector<Metric> frame_metrics;
 	int last_metric;
@@ -99,8 +99,8 @@ private:
 
 	bool seeking;
 
-	Timer *frame_delay;
-	Timer *plot_delay;
+	Timer *frame_delay = nullptr;
+	Timer *plot_delay = nullptr;
 
 	void _update_frame(bool p_focus_selected = false);
 

+ 39 - 39
editor/debugger/script_editor_debugger.h

@@ -85,26 +85,26 @@ private:
 		ACTION_DELETE_ALL_BREAKPOINTS,
 	};
 
-	AcceptDialog *msgdialog;
-
-	LineEdit *clicked_ctrl;
-	LineEdit *clicked_ctrl_type;
-	LineEdit *live_edit_root;
-	Button *le_set;
-	Button *le_clear;
-	Button *export_csv;
-
-	VBoxContainer *errors_tab;
-	Tree *error_tree;
-	Button *expand_all_button;
-	Button *collapse_all_button;
-	Button *clear_button;
-	PopupMenu *item_menu;
-
-	Tree *breakpoints_tree;
-	PopupMenu *breakpoints_menu;
-
-	EditorFileDialog *file_dialog;
+	AcceptDialog *msgdialog = nullptr;
+
+	LineEdit *clicked_ctrl = nullptr;
+	LineEdit *clicked_ctrl_type = nullptr;
+	LineEdit *live_edit_root = nullptr;
+	Button *le_set = nullptr;
+	Button *le_clear = nullptr;
+	Button *export_csv = nullptr;
+
+	VBoxContainer *errors_tab = nullptr;
+	Tree *error_tree = nullptr;
+	Button *expand_all_button = nullptr;
+	Button *collapse_all_button = nullptr;
+	Button *clear_button = nullptr;
+	PopupMenu *item_menu = nullptr;
+
+	Tree *breakpoints_tree = nullptr;
+	PopupMenu *breakpoints_menu = nullptr;
+
+	EditorFileDialog *file_dialog = nullptr;
 	enum FileDialogPurpose {
 		SAVE_MONITORS_CSV,
 		SAVE_VRAM_CSV,
@@ -117,31 +117,31 @@ private:
 	bool skip_breakpoints_value = false;
 	Ref<Script> stack_script;
 
-	TabContainer *tabs;
+	TabContainer *tabs = nullptr;
 
-	Label *reason;
+	Label *reason = nullptr;
 
-	Button *skip_breakpoints;
-	Button *copy;
-	Button *step;
-	Button *next;
-	Button *dobreak;
-	Button *docontinue;
+	Button *skip_breakpoints = nullptr;
+	Button *copy = nullptr;
+	Button *step = nullptr;
+	Button *next = nullptr;
+	Button *dobreak = nullptr;
+	Button *docontinue = nullptr;
 	// Reference to "Remote" tab in scene tree. Needed by _live_edit_set and buttons state.
 	// Each debugger should have it's tree in the future I guess.
 	const Tree *editor_remote_tree = nullptr;
 
 	Map<int, String> profiler_signature;
 
-	Tree *vmem_tree;
-	Button *vmem_refresh;
-	Button *vmem_export;
-	LineEdit *vmem_total;
+	Tree *vmem_tree = nullptr;
+	Button *vmem_refresh = nullptr;
+	Button *vmem_export = nullptr;
+	LineEdit *vmem_total = nullptr;
 
-	Tree *stack_dump;
+	Tree *stack_dump = nullptr;
 	LineEdit *search = nullptr;
-	EditorDebuggerInspector *inspector;
-	SceneDebuggerTree *scene_tree;
+	EditorDebuggerInspector *inspector = nullptr;
+	SceneDebuggerTree *scene_tree = nullptr;
 
 	Ref<RemoteDebuggerPeer> peer;
 
@@ -149,10 +149,10 @@ private:
 	int last_path_id;
 	Map<String, int> res_path_cache;
 
-	EditorProfiler *profiler;
-	EditorVisualProfiler *visual_profiler;
-	EditorNetworkProfiler *network_profiler;
-	EditorPerformanceProfiler *performance_profiler;
+	EditorProfiler *profiler = nullptr;
+	EditorVisualProfiler *visual_profiler = nullptr;
+	EditorNetworkProfiler *network_profiler = nullptr;
+	EditorPerformanceProfiler *performance_profiler = nullptr;
 
 	OS::ProcessID remote_pid = 0;
 	bool breaked = false;

+ 13 - 13
editor/dependency_editor.h

@@ -42,10 +42,10 @@ class EditorFileSystemDirectory;
 class DependencyEditor : public AcceptDialog {
 	GDCLASS(DependencyEditor, AcceptDialog);
 
-	Tree *tree;
-	Button *fixdeps;
+	Tree *tree = nullptr;
+	Button *fixdeps = nullptr;
 
-	EditorFileDialog *search;
+	EditorFileDialog *search = nullptr;
 
 	String replacing;
 	String editing;
@@ -71,8 +71,8 @@ public:
 class DependencyEditorOwners : public AcceptDialog {
 	GDCLASS(DependencyEditorOwners, AcceptDialog);
 
-	ItemList *owners;
-	PopupMenu *file_options;
+	ItemList *owners = nullptr;
+	PopupMenu *file_options = nullptr;
 	String editing;
 
 	void _fill_owners(EditorFileSystemDirectory *efsd);
@@ -95,8 +95,8 @@ public:
 class DependencyRemoveDialog : public ConfirmationDialog {
 	GDCLASS(DependencyRemoveDialog, ConfirmationDialog);
 
-	Label *text;
-	Tree *owners;
+	Label *text = nullptr;
+	Tree *owners = nullptr;
 
 	Map<String, String> all_remove_files;
 	Vector<String> dirs_to_delete;
@@ -142,9 +142,9 @@ public:
 private:
 	String for_file;
 	Mode mode;
-	Button *fdep;
-	Label *text;
-	Tree *files;
+	Button *fdep = nullptr;
+	Label *text = nullptr;
+	Tree *files = nullptr;
 	void ok_pressed() override;
 	void custom_action(const String &) override;
 
@@ -156,9 +156,9 @@ public:
 class OrphanResourcesDialog : public ConfirmationDialog {
 	GDCLASS(OrphanResourcesDialog, ConfirmationDialog);
 
-	DependencyEditor *dep_edit;
-	Tree *files;
-	ConfirmationDialog *delete_confirm;
+	DependencyEditor *dep_edit = nullptr;
+	Tree *files = nullptr;
+	ConfirmationDialog *delete_confirm = nullptr;
 	void ok_pressed() override;
 
 	bool _fill_owners(EditorFileSystemDirectory *efsd, HashMap<String, int> &refs, TreeItem *p_parent);

+ 5 - 5
editor/editor_about.h

@@ -56,11 +56,11 @@ private:
 	void _version_button_pressed();
 	ScrollContainer *_populate_list(const String &p_name, const List<String> &p_sections, const char *const *const p_src[], const int p_flag_single_column = 0);
 
-	LinkButton *version_btn;
-	Tree *_tpl_tree;
-	RichTextLabel *_license_text;
-	RichTextLabel *_tpl_text;
-	TextureRect *_logo;
+	LinkButton *version_btn = nullptr;
+	Tree *_tpl_tree = nullptr;
+	RichTextLabel *_license_text = nullptr;
+	RichTextLabel *_tpl_text = nullptr;
+	TextureRect *_logo = nullptr;
 
 	void _theme_changed();
 

+ 3 - 3
editor/editor_asset_installer.h

@@ -36,11 +36,11 @@
 class EditorAssetInstaller : public ConfirmationDialog {
 	GDCLASS(EditorAssetInstaller, ConfirmationDialog);
 
-	Tree *tree;
-	Label *asset_contents;
+	Tree *tree = nullptr;
+	Label *asset_contents = nullptr;
 	String package_path;
 	String asset_name;
-	AcceptDialog *error;
+	AcceptDialog *error = nullptr;
 	Map<String, TreeItem *> status_map;
 	bool updating = false;
 	void _item_edited();

+ 28 - 28
editor/editor_audio_buses.h

@@ -52,9 +52,9 @@ class EditorAudioBus : public PanelContainer {
 	GDCLASS(EditorAudioBus, PanelContainer);
 
 	Ref<Texture2D> disabled_vu;
-	LineEdit *track_name;
-	MenuButton *bus_options;
-	VSlider *slider;
+	LineEdit *track_name = nullptr;
+	MenuButton *bus_options = nullptr;
+	VSlider *slider = nullptr;
 
 	int cc;
 	static const int CHANNELS_MAX = 4;
@@ -69,21 +69,21 @@ class EditorAudioBus : public PanelContainer {
 		TextureProgressBar *vu_r = nullptr;
 	} channel[CHANNELS_MAX];
 
-	OptionButton *send;
+	OptionButton *send = nullptr;
 
-	PopupMenu *effect_options;
-	PopupMenu *bus_popup;
-	PopupMenu *delete_effect_popup;
+	PopupMenu *effect_options = nullptr;
+	PopupMenu *bus_popup = nullptr;
+	PopupMenu *delete_effect_popup = nullptr;
 
-	Panel *audio_value_preview_box;
-	Label *audio_value_preview_label;
-	Timer *preview_timer;
+	Panel *audio_value_preview_box = nullptr;
+	Label *audio_value_preview_label = nullptr;
+	Timer *preview_timer = nullptr;
 
-	Button *solo;
-	Button *mute;
-	Button *bypass;
+	Button *solo = nullptr;
+	Button *mute = nullptr;
+	Button *bypass = nullptr;
 
-	Tree *effects;
+	Tree *effects = nullptr;
 
 	bool updating_bus = false;
 	bool is_master;
@@ -121,7 +121,7 @@ class EditorAudioBus : public PanelContainer {
 
 	friend class EditorAudioBuses;
 
-	EditorAudioBuses *buses;
+	EditorAudioBuses *buses = nullptr;
 
 protected:
 	static void _bind_methods();
@@ -153,22 +153,22 @@ public:
 class EditorAudioBuses : public VBoxContainer {
 	GDCLASS(EditorAudioBuses, VBoxContainer);
 
-	HBoxContainer *top_hb;
+	HBoxContainer *top_hb = nullptr;
 
-	ScrollContainer *bus_scroll;
-	HBoxContainer *bus_hb;
+	ScrollContainer *bus_scroll = nullptr;
+	HBoxContainer *bus_hb = nullptr;
 
-	EditorAudioBusDrop *drop_end;
+	EditorAudioBusDrop *drop_end = nullptr;
 
-	Label *file;
+	Label *file = nullptr;
 
-	Button *add;
-	Button *load;
-	Button *save_as;
-	Button *_default;
-	Button *_new;
+	Button *add = nullptr;
+	Button *load = nullptr;
+	Button *save_as = nullptr;
+	Button *_default = nullptr;
+	Button *_new = nullptr;
 
-	Timer *save_timer;
+	Timer *save_timer = nullptr;
 	String edited_path;
 
 	void _add_bus();
@@ -191,7 +191,7 @@ class EditorAudioBuses : public VBoxContainer {
 	void _load_default_layout();
 	void _new_layout();
 
-	EditorFileDialog *file_dialog;
+	EditorFileDialog *file_dialog = nullptr;
 	bool new_layout;
 
 	void _file_dialog_callback(const String &p_string);
@@ -262,7 +262,7 @@ public:
 class AudioBusesEditorPlugin : public EditorPlugin {
 	GDCLASS(AudioBusesEditorPlugin, EditorPlugin);
 
-	EditorAudioBuses *audio_bus_editor;
+	EditorAudioBuses *audio_bus_editor = nullptr;
 
 public:
 	virtual String get_name() const override { return "SampleLibrary"; }

+ 2 - 2
editor/editor_command_palette.h

@@ -40,8 +40,8 @@ class EditorCommandPalette : public ConfirmationDialog {
 	GDCLASS(EditorCommandPalette, ConfirmationDialog);
 
 	static EditorCommandPalette *singleton;
-	LineEdit *command_search_box;
-	Tree *search_options;
+	LineEdit *command_search_box = nullptr;
+	Tree *search_options = nullptr;
 
 	struct Command {
 		Callable callable;

+ 5 - 5
editor/editor_dir_dialog.h

@@ -39,14 +39,14 @@
 class EditorDirDialog : public ConfirmationDialog {
 	GDCLASS(EditorDirDialog, ConfirmationDialog);
 
-	ConfirmationDialog *makedialog;
-	LineEdit *makedirname;
-	AcceptDialog *mkdirerr;
+	ConfirmationDialog *makedialog = nullptr;
+	LineEdit *makedirname = nullptr;
+	AcceptDialog *mkdirerr = nullptr;
 
-	Button *makedir;
+	Button *makedir = nullptr;
 	Set<String> opened_paths;
 
-	Tree *tree;
+	Tree *tree = nullptr;
 	bool updating = false;
 
 	void _item_collapsed(Object *p_item);

+ 1 - 1
editor/editor_export.h

@@ -380,7 +380,7 @@ class EditorExport : public Node {
 
 	StringName _export_presets_updated;
 
-	Timer *save_timer;
+	Timer *save_timer = nullptr;
 	bool block_save = false;
 
 	static EditorExport *singleton;

+ 15 - 15
editor/editor_feature_profile.h

@@ -117,25 +117,25 @@ class EditorFeatureProfileManager : public AcceptDialog {
 		CLASS_OPTION_DISABLE_EDITOR
 	};
 
-	ConfirmationDialog *erase_profile_dialog;
-	ConfirmationDialog *new_profile_dialog;
-	LineEdit *new_profile_name;
+	ConfirmationDialog *erase_profile_dialog = nullptr;
+	ConfirmationDialog *new_profile_dialog = nullptr;
+	LineEdit *new_profile_name = nullptr;
 
-	LineEdit *current_profile_name;
-	OptionButton *profile_list;
+	LineEdit *current_profile_name = nullptr;
+	OptionButton *profile_list = nullptr;
 	Button *profile_actions[PROFILE_MAX];
 
-	HSplitContainer *h_split;
+	HSplitContainer *h_split = nullptr;
 
-	VBoxContainer *class_list_vbc;
-	Tree *class_list;
-	VBoxContainer *property_list_vbc;
-	Tree *property_list;
-	EditorHelpBit *description_bit;
-	Label *no_profile_selected_help;
+	VBoxContainer *class_list_vbc = nullptr;
+	Tree *class_list = nullptr;
+	VBoxContainer *property_list_vbc = nullptr;
+	Tree *property_list = nullptr;
+	EditorHelpBit *description_bit = nullptr;
+	Label *no_profile_selected_help = nullptr;
 
-	EditorFileDialog *import_profiles;
-	EditorFileDialog *export_profile;
+	EditorFileDialog *import_profiles = nullptr;
+	EditorFileDialog *export_profile = nullptr;
 
 	void _profile_action(int p_action);
 	void _profile_selected(int p_what);
@@ -163,7 +163,7 @@ class EditorFeatureProfileManager : public AcceptDialog {
 	void _property_item_edited();
 	void _save_and_update();
 
-	Timer *update_timer;
+	Timer *update_timer = nullptr;
 	void _emit_current_profile_changed();
 
 	static EditorFeatureProfileManager *singleton;

+ 39 - 39
editor/editor_file_dialog.h

@@ -84,50 +84,50 @@ private:
 		ITEM_MENU_SHOW_IN_EXPLORER
 	};
 
-	ConfirmationDialog *makedialog;
-	LineEdit *makedirname;
+	ConfirmationDialog *makedialog = nullptr;
+	LineEdit *makedirname = nullptr;
 
-	Button *makedir;
+	Button *makedir = nullptr;
 	Access access;
 
-	VBoxContainer *vbox;
+	VBoxContainer *vbox = nullptr;
 	FileMode mode;
 	bool can_create_dir;
-	LineEdit *dir;
-
-	Button *dir_prev;
-	Button *dir_next;
-	Button *dir_up;
-
-	HBoxContainer *drives_container;
-	HBoxContainer *shortcuts_container;
-	OptionButton *drives;
-	ItemList *item_list;
-	PopupMenu *item_menu;
-	TextureRect *preview;
-	VBoxContainer *preview_vb;
-	HSplitContainer *list_hb;
-	HBoxContainer *file_box;
-	LineEdit *file;
-	OptionButton *filter;
-	AcceptDialog *error_dialog;
-	DirAccess *dir_access;
-	ConfirmationDialog *confirm_save;
-	DependencyRemoveDialog *dep_remove_dialog;
-	ConfirmationDialog *global_remove_dialog;
-
-	Button *mode_thumbnails;
-	Button *mode_list;
-
-	Button *refresh;
-	Button *favorite;
-	Button *show_hidden;
-
-	Button *fav_up;
-	Button *fav_down;
-
-	ItemList *favorites;
-	ItemList *recent;
+	LineEdit *dir = nullptr;
+
+	Button *dir_prev = nullptr;
+	Button *dir_next = nullptr;
+	Button *dir_up = nullptr;
+
+	HBoxContainer *drives_container = nullptr;
+	HBoxContainer *shortcuts_container = nullptr;
+	OptionButton *drives = nullptr;
+	ItemList *item_list = nullptr;
+	PopupMenu *item_menu = nullptr;
+	TextureRect *preview = nullptr;
+	VBoxContainer *preview_vb = nullptr;
+	HSplitContainer *list_hb = nullptr;
+	HBoxContainer *file_box = nullptr;
+	LineEdit *file = nullptr;
+	OptionButton *filter = nullptr;
+	AcceptDialog *error_dialog = nullptr;
+	DirAccess *dir_access = nullptr;
+	ConfirmationDialog *confirm_save = nullptr;
+	DependencyRemoveDialog *dep_remove_dialog = nullptr;
+	ConfirmationDialog *global_remove_dialog = nullptr;
+
+	Button *mode_thumbnails = nullptr;
+	Button *mode_list = nullptr;
+
+	Button *refresh = nullptr;
+	Button *favorite = nullptr;
+	Button *show_hidden = nullptr;
+
+	Button *fav_up = nullptr;
+	Button *fav_down = nullptr;
+
+	ItemList *favorites = nullptr;
+	ItemList *recent = nullptr;
 
 	Vector<String> local_history;
 	int local_history_pos;

+ 3 - 3
editor/editor_file_system.h

@@ -49,7 +49,7 @@ class EditorFileSystemDirectory : public Object {
 	uint64_t modified_time;
 	bool verified = false; //used for checking changes
 
-	EditorFileSystemDirectory *parent;
+	EditorFileSystemDirectory *parent = nullptr;
 	Vector<EditorFileSystemDirectory *> subdirs;
 
 	struct FileInfo {
@@ -167,7 +167,7 @@ class EditorFileSystem : public Node {
 	Thread thread;
 	static void _thread_func(void *_userdata);
 
-	EditorFileSystemDirectory *new_filesystem;
+	EditorFileSystemDirectory *new_filesystem = nullptr;
 
 	bool abort_scan = false;
 	bool scanning = false;
@@ -184,7 +184,7 @@ class EditorFileSystem : public Node {
 
 	void _save_late_updated_files();
 
-	EditorFileSystemDirectory *filesystem;
+	EditorFileSystemDirectory *filesystem = nullptr;
 
 	static EditorFileSystem *singleton;
 

+ 14 - 14
editor/editor_help.h

@@ -47,14 +47,14 @@
 class FindBar : public HBoxContainer {
 	GDCLASS(FindBar, HBoxContainer);
 
-	LineEdit *search_text;
-	Button *find_prev;
-	Button *find_next;
-	Label *matches_label;
-	TextureButton *hide_button;
+	LineEdit *search_text = nullptr;
+	Button *find_prev = nullptr;
+	Button *find_next = nullptr;
+	Label *matches_label = nullptr;
+	TextureButton *hide_button = nullptr;
 	String prev_search;
 
-	RichTextLabel *rich_text_label;
+	RichTextLabel *rich_text_label = nullptr;
 
 	int results_count;
 
@@ -114,15 +114,15 @@ class EditorHelp : public VBoxContainer {
 	Map<String, Map<String, int>> enum_values_line;
 	int description_line;
 
-	RichTextLabel *class_desc;
-	HSplitContainer *h_split;
+	RichTextLabel *class_desc = nullptr;
+	HSplitContainer *h_split = nullptr;
 	static DocTools *doc;
 
-	ConfirmationDialog *search_dialog;
-	LineEdit *search;
-	FindBar *find_bar;
-	HBoxContainer *status_bar;
-	Button *toggle_scripts_button;
+	ConfirmationDialog *search_dialog = nullptr;
+	LineEdit *search = nullptr;
+	FindBar *find_bar = nullptr;
+	HBoxContainer *status_bar = nullptr;
+	Button *toggle_scripts_button = nullptr;
 
 	String base_path;
 
@@ -210,7 +210,7 @@ public:
 class EditorHelpBit : public MarginContainer {
 	GDCLASS(EditorHelpBit, MarginContainer);
 
-	RichTextLabel *rich_text;
+	RichTextLabel *rich_text = nullptr;
 	void _go_to_help(String p_what);
 	void _meta_clicked(String p_select);
 

+ 7 - 7
editor/editor_help_search.h

@@ -55,11 +55,11 @@ class EditorHelpSearch : public ConfirmationDialog {
 		SEARCH_SHOW_HIERARCHY = 1 << 30
 	};
 
-	LineEdit *search_box;
-	Button *case_sensitive_button;
-	Button *hierarchy_button;
-	OptionButton *filter_combo;
-	Tree *results_tree;
+	LineEdit *search_box = nullptr;
+	Button *case_sensitive_button = nullptr;
+	Button *hierarchy_button = nullptr;
+	OptionButton *filter_combo = nullptr;
+	Tree *results_tree = nullptr;
 	bool old_search = false;
 	String old_term;
 
@@ -114,8 +114,8 @@ class EditorHelpSearch::Runner : public RefCounted {
 		}
 	};
 
-	Control *ui_service;
-	Tree *results_tree;
+	Control *ui_service = nullptr;
+	Tree *results_tree = nullptr;
 	String term;
 	int search_flags;
 

+ 28 - 28
editor/editor_inspector.h

@@ -68,7 +68,7 @@ private:
 	String label;
 	int text_size;
 	friend class EditorInspector;
-	Object *object;
+	Object *object = nullptr;
 	StringName property;
 	String property_path;
 
@@ -111,9 +111,9 @@ private:
 	float split_ratio;
 
 	Vector<Control *> focusables;
-	Control *label_reference;
-	Control *bottom_editor;
-	PopupMenu *menu;
+	Control *label_reference = nullptr;
+	Control *bottom_editor = nullptr;
+	PopupMenu *menu = nullptr;
 
 	mutable String tooltip_text;
 
@@ -269,14 +269,14 @@ class EditorInspectorSection : public Container {
 	bool foldable = false;
 	int indent_depth = 0;
 
-	Timer *dropping_unfold_timer;
+	Timer *dropping_unfold_timer = nullptr;
 	bool dropping = false;
 
 	void _test_unfold();
 
 protected:
 	Object *object = nullptr;
-	VBoxContainer *vbox;
+	VBoxContainer *vbox = nullptr;
 
 	void _notification(int p_what);
 	static void _bind_methods();
@@ -297,7 +297,7 @@ public:
 class EditorInspectorArray : public EditorInspectorSection {
 	GDCLASS(EditorInspectorArray, EditorInspectorSection);
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	enum Mode {
 		MODE_NONE,
@@ -309,16 +309,16 @@ class EditorInspectorArray : public EditorInspectorSection {
 
 	int count = 0;
 
-	VBoxContainer *elements_vbox;
+	VBoxContainer *elements_vbox = nullptr;
 
-	Control *control_dropping;
+	Control *control_dropping = nullptr;
 	bool dropping = false;
 
-	Button *add_button;
+	Button *add_button = nullptr;
 
-	AcceptDialog *resize_dialog;
+	AcceptDialog *resize_dialog = nullptr;
 	int new_size = 0;
-	LineEdit *new_size_line_edit;
+	LineEdit *new_size_line_edit = nullptr;
 
 	// Pagination
 	int page_length = 5;
@@ -337,14 +337,14 @@ class EditorInspectorArray : public EditorInspectorSection {
 		OPTION_RESIZE_ARRAY,
 	};
 	int popup_array_index_pressed = -1;
-	PopupMenu *rmb_popup;
+	PopupMenu *rmb_popup = nullptr;
 
 	struct ArrayElement {
-		PanelContainer *panel;
-		MarginContainer *margin;
-		HBoxContainer *hbox;
-		TextureRect *move_texture_rect;
-		VBoxContainer *vbox;
+		PanelContainer *panel = nullptr;
+		MarginContainer *margin = nullptr;
+		HBoxContainer *hbox = nullptr;
+		TextureRect *move_texture_rect = nullptr;
+		VBoxContainer *vbox = nullptr;
 	};
 	LocalVector<ArrayElement> array_elements;
 
@@ -399,12 +399,12 @@ class EditorPaginator : public HBoxContainer {
 
 	int page = 0;
 	int max_page = 0;
-	Button *first_page_button;
-	Button *prev_page_button;
-	LineEdit *page_line_edit;
-	Label *page_count_label;
-	Button *next_page_button;
-	Button *last_page_button;
+	Button *first_page_button = nullptr;
+	Button *prev_page_button = nullptr;
+	LineEdit *page_line_edit = nullptr;
+	Label *page_count_label = nullptr;
+	Button *next_page_button = nullptr;
+	Button *last_page_button = nullptr;
 
 	void _first_page_button_pressed();
 	void _prev_page_button_pressed();
@@ -425,14 +425,14 @@ public:
 class EditorInspector : public ScrollContainer {
 	GDCLASS(EditorInspector, ScrollContainer);
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 	enum {
 		MAX_PLUGINS = 1024
 	};
 	static Ref<EditorInspectorPlugin> inspector_plugins[MAX_PLUGINS];
 	static int inspector_plugin_count;
 
-	VBoxContainer *main_vbox;
+	VBoxContainer *main_vbox = nullptr;
 
 	//map use to cache the instantiated editors
 	Map<StringName, List<EditorProperty *>> editor_property_map;
@@ -440,11 +440,11 @@ class EditorInspector : public ScrollContainer {
 	Set<StringName> pending;
 
 	void _clear();
-	Object *object;
+	Object *object = nullptr;
 
 	//
 
-	LineEdit *search_box;
+	LineEdit *search_box = nullptr;
 	bool show_categories = false;
 	bool hide_script = true;
 	bool hide_metadata = true;

+ 3 - 3
editor/editor_layouts_dialog.h

@@ -39,9 +39,9 @@ class ItemList;
 class EditorLayoutsDialog : public ConfirmationDialog {
 	GDCLASS(EditorLayoutsDialog, ConfirmationDialog);
 
-	LineEdit *name;
-	ItemList *layout_names;
-	VBoxContainer *makevb;
+	LineEdit *name = nullptr;
+	ItemList *layout_names = nullptr;
+	VBoxContainer *makevb = nullptr;
 
 	void _line_gui_input(const Ref<InputEvent> &p_event);
 

+ 8 - 8
editor/editor_log.h

@@ -117,23 +117,23 @@ private:
 	// Maps MessageTypes to LogFilters for convenient access and storage (don't need 1 member per filter).
 	Map<MessageType, LogFilter *> type_filter_map;
 
-	RichTextLabel *log;
+	RichTextLabel *log = nullptr;
 
-	Button *clear_button;
-	Button *copy_button;
+	Button *clear_button = nullptr;
+	Button *copy_button = nullptr;
 
-	Button *collapse_button;
+	Button *collapse_button = nullptr;
 	bool collapse = false;
 
-	Button *show_search_button;
-	LineEdit *search_box;
+	Button *show_search_button = nullptr;
+	LineEdit *search_box = nullptr;
 
 	// Reference to the "Output" button on the toolbar so we can update it's icon when
 	// Warnings or Errors are encounetered.
-	Button *tool_button;
+	Button *tool_button = nullptr;
 
 	bool is_loading_state = false; // Used to disable saving requests while loading (some signals from buttons will try trigger a save, which happens during loading).
-	Timer *save_state_timer;
+	Timer *save_state_timer = nullptr;
 
 	static void _error_handler(void *p_self, const char *p_func, const char *p_file, int p_line, const char *p_error, const char *p_errorexp, bool p_editor_notify, ErrorHandlerType p_type);
 

+ 113 - 113
editor/editor_node.h

@@ -275,161 +275,161 @@ private:
 	bool _initializing_plugins = false;
 	Map<String, EditorPlugin *> addon_name_to_plugin;
 
-	PanelContainer *scene_root_parent;
-	Control *theme_base;
-	Control *gui_base;
-	VBoxContainer *main_vbox;
-	OptionButton *rendering_driver;
+	PanelContainer *scene_root_parent = nullptr;
+	Control *theme_base = nullptr;
+	Control *gui_base = nullptr;
+	VBoxContainer *main_vbox = nullptr;
+	OptionButton *rendering_driver = nullptr;
 
-	ConfirmationDialog *video_restart_dialog;
+	ConfirmationDialog *video_restart_dialog = nullptr;
 
 	int rendering_driver_current;
 	String rendering_driver_request;
 
 	// Split containers.
-	HSplitContainer *left_l_hsplit;
-	VSplitContainer *left_l_vsplit;
-	HSplitContainer *left_r_hsplit;
-	VSplitContainer *left_r_vsplit;
-	HSplitContainer *main_hsplit;
-	HSplitContainer *right_hsplit;
-	VSplitContainer *right_l_vsplit;
-	VSplitContainer *right_r_vsplit;
-	VSplitContainer *center_split;
+	HSplitContainer *left_l_hsplit = nullptr;
+	VSplitContainer *left_l_vsplit = nullptr;
+	HSplitContainer *left_r_hsplit = nullptr;
+	VSplitContainer *left_r_vsplit = nullptr;
+	HSplitContainer *main_hsplit = nullptr;
+	HSplitContainer *right_hsplit = nullptr;
+	VSplitContainer *right_l_vsplit = nullptr;
+	VSplitContainer *right_r_vsplit = nullptr;
+	VSplitContainer *center_split = nullptr;
 	// To access those easily by index.
 	Vector<VSplitContainer *> vsplits;
 	Vector<HSplitContainer *> hsplits;
 
 	// Main tabs.
-	TabBar *scene_tabs;
-	PopupMenu *scene_tabs_context_menu;
-	Panel *tab_preview_panel;
-	TextureRect *tab_preview;
+	TabBar *scene_tabs = nullptr;
+	PopupMenu *scene_tabs_context_menu = nullptr;
+	Panel *tab_preview_panel = nullptr;
+	TextureRect *tab_preview = nullptr;
 	int tab_closing_idx;
 
 	bool exiting = false;
 	bool dimmed = false;
 
 	int old_split_ofs;
-	VSplitContainer *top_split;
-	HBoxContainer *bottom_hb;
-	Control *vp_base;
-
-	HBoxContainer *menu_hb;
-	Control *main_control;
-	MenuButton *file_menu;
-	MenuButton *project_menu;
-	MenuButton *debug_menu;
-	MenuButton *settings_menu;
-	MenuButton *help_menu;
-	PopupMenu *tool_menu;
-	Button *export_button;
-	Button *prev_scene;
-	Button *play_button;
-	Button *pause_button;
-	Button *stop_button;
-	Button *run_settings_button;
-	Button *play_scene_button;
-	Button *play_custom_scene_button;
-	Button *search_button;
-	TextureProgressBar *audio_vu;
-
-	Timer *screenshot_timer;
-
-	PluginConfigDialog *plugin_config_dialog;
-
-	RichTextLabel *load_errors;
-	AcceptDialog *load_error_dialog;
-
-	RichTextLabel *execute_outputs;
-	AcceptDialog *execute_output_dialog;
+	VSplitContainer *top_split = nullptr;
+	HBoxContainer *bottom_hb = nullptr;
+	Control *vp_base = nullptr;
+
+	HBoxContainer *menu_hb = nullptr;
+	Control *main_control = nullptr;
+	MenuButton *file_menu = nullptr;
+	MenuButton *project_menu = nullptr;
+	MenuButton *debug_menu = nullptr;
+	MenuButton *settings_menu = nullptr;
+	MenuButton *help_menu = nullptr;
+	PopupMenu *tool_menu = nullptr;
+	Button *export_button = nullptr;
+	Button *prev_scene = nullptr;
+	Button *play_button = nullptr;
+	Button *pause_button = nullptr;
+	Button *stop_button = nullptr;
+	Button *run_settings_button = nullptr;
+	Button *play_scene_button = nullptr;
+	Button *play_custom_scene_button = nullptr;
+	Button *search_button = nullptr;
+	TextureProgressBar *audio_vu = nullptr;
+
+	Timer *screenshot_timer = nullptr;
+
+	PluginConfigDialog *plugin_config_dialog = nullptr;
+
+	RichTextLabel *load_errors = nullptr;
+	AcceptDialog *load_error_dialog = nullptr;
+
+	RichTextLabel *execute_outputs = nullptr;
+	AcceptDialog *execute_output_dialog = nullptr;
 
 	Ref<Theme> theme;
 
-	PopupMenu *recent_scenes;
+	PopupMenu *recent_scenes = nullptr;
 	String _recent_scene;
 	List<String> previous_scenes;
 	String defer_load_scene;
-	Node *_last_instantiated_scene;
-
-	ConfirmationDialog *confirmation;
-	ConfirmationDialog *save_confirmation;
-	ConfirmationDialog *import_confirmation;
-	ConfirmationDialog *pick_main_scene;
-	Button *select_current_scene_button;
-	AcceptDialog *accept;
-	AcceptDialog *save_accept;
-	EditorAbout *about;
-	AcceptDialog *warning;
+	Node *_last_instantiated_scene = nullptr;
+
+	ConfirmationDialog *confirmation = nullptr;
+	ConfirmationDialog *save_confirmation = nullptr;
+	ConfirmationDialog *import_confirmation = nullptr;
+	ConfirmationDialog *pick_main_scene = nullptr;
+	Button *select_current_scene_button = nullptr;
+	AcceptDialog *accept = nullptr;
+	AcceptDialog *save_accept = nullptr;
+	EditorAbout *about = nullptr;
+	AcceptDialog *warning = nullptr;
 
 	int overridden_default_layout;
 	Ref<ConfigFile> default_layout;
-	PopupMenu *editor_layouts;
-	EditorLayoutsDialog *layout_dialog;
-
-	ConfirmationDialog *custom_build_manage_templates;
-	ConfirmationDialog *install_android_build_template;
-	ConfirmationDialog *remove_android_build_template;
-
-	PopupMenu *vcs_actions_menu;
-	EditorFileDialog *file;
-	ExportTemplateManager *export_template_manager;
-	EditorFeatureProfileManager *feature_profile_manager;
-	EditorFileDialog *file_templates;
-	EditorFileDialog *file_export_lib;
-	EditorFileDialog *file_script;
-	EditorFileDialog *file_android_build_source;
-	CheckBox *file_export_lib_merge;
-	CheckBox *file_export_lib_apply_xforms;
+	PopupMenu *editor_layouts = nullptr;
+	EditorLayoutsDialog *layout_dialog = nullptr;
+
+	ConfirmationDialog *custom_build_manage_templates = nullptr;
+	ConfirmationDialog *install_android_build_template = nullptr;
+	ConfirmationDialog *remove_android_build_template = nullptr;
+
+	PopupMenu *vcs_actions_menu = nullptr;
+	EditorFileDialog *file = nullptr;
+	ExportTemplateManager *export_template_manager = nullptr;
+	EditorFeatureProfileManager *feature_profile_manager = nullptr;
+	EditorFileDialog *file_templates = nullptr;
+	EditorFileDialog *file_export_lib = nullptr;
+	EditorFileDialog *file_script = nullptr;
+	EditorFileDialog *file_android_build_source = nullptr;
+	CheckBox *file_export_lib_merge = nullptr;
+	CheckBox *file_export_lib_apply_xforms = nullptr;
 	String current_path;
-	MenuButton *update_spinner;
+	MenuButton *update_spinner = nullptr;
 
-	HBoxContainer *main_editor_button_vb;
+	HBoxContainer *main_editor_button_vb = nullptr;
 	Vector<Button *> main_editor_buttons;
 	Vector<EditorPlugin *> editor_table;
 
-	AudioStreamPreviewGenerator *audio_preview_gen;
-	ProgressDialog *progress_dialog;
-	BackgroundProgress *progress_hb;
+	AudioStreamPreviewGenerator *audio_preview_gen = nullptr;
+	ProgressDialog *progress_dialog = nullptr;
+	BackgroundProgress *progress_hb = nullptr;
 
-	DependencyErrorDialog *dependency_error;
+	DependencyErrorDialog *dependency_error = nullptr;
 	Map<String, Set<String>> dependency_errors;
-	DependencyEditor *dependency_fixer;
-	OrphanResourcesDialog *orphan_resources;
-	ConfirmationDialog *open_imported;
-	Button *new_inherited_button;
+	DependencyEditor *dependency_fixer = nullptr;
+	OrphanResourcesDialog *orphan_resources = nullptr;
+	ConfirmationDialog *open_imported = nullptr;
+	Button *new_inherited_button = nullptr;
 	String open_import_request;
 
 	Vector<Control *> floating_docks;
 
-	Button *dock_float;
-	Button *dock_tab_move_left;
-	Button *dock_tab_move_right;
-	Control *dock_select;
-	PopupPanel *dock_select_popup;
+	Button *dock_float = nullptr;
+	Button *dock_tab_move_left = nullptr;
+	Button *dock_tab_move_right = nullptr;
+	Control *dock_select = nullptr;
+	PopupPanel *dock_select_popup = nullptr;
 	Rect2 dock_select_rect[DOCK_SLOT_MAX];
 	TabContainer *dock_slot[DOCK_SLOT_MAX];
-	Timer *dock_drag_timer;
+	Timer *dock_drag_timer = nullptr;
 	bool docks_visible = true;
 	int dock_popup_selected_idx;
 	int dock_select_rect_over_idx;
 
-	HBoxContainer *tabbar_container;
-	Button *distraction_free;
-	Button *scene_tab_add;
-	Control *scene_tab_add_ph;
+	HBoxContainer *tabbar_container = nullptr;
+	Button *distraction_free = nullptr;
+	Button *scene_tab_add = nullptr;
+	Control *scene_tab_add_ph = nullptr;
 
 	Vector<BottomPanelItem> bottom_panel_items;
-	PanelContainer *bottom_panel;
-	HBoxContainer *bottom_panel_hb;
-	HBoxContainer *bottom_panel_hb_editors;
-	VBoxContainer *bottom_panel_vb;
-	EditorToaster *editor_toaster;
-	LinkButton *version_btn;
-	Button *bottom_panel_raise;
+	PanelContainer *bottom_panel = nullptr;
+	HBoxContainer *bottom_panel_hb = nullptr;
+	HBoxContainer *bottom_panel_hb_editors = nullptr;
+	VBoxContainer *bottom_panel_vb = nullptr;
+	EditorToaster *editor_toaster = nullptr;
+	LinkButton *version_btn = nullptr;
+	Button *bottom_panel_raise = nullptr;
 
-	Tree *disk_changed_list;
-	ConfirmationDialog *disk_changed;
+	Tree *disk_changed_list = nullptr;
+	ConfirmationDialog *disk_changed = nullptr;
 
 	bool scene_distraction_free = false;
 	bool script_distraction_free = false;
@@ -447,8 +447,8 @@ private:
 
 	int current_menu_option;
 
-	SubViewport *scene_root; // Root of the scene being edited.
-	Object *current;
+	SubViewport *scene_root = nullptr; // Root of the scene being edited.
+	Object *current = nullptr;
 
 	Ref<Resource> saving_resource;
 
@@ -464,8 +464,8 @@ private:
 	uint64_t saved_version;
 	uint64_t last_checked_version;
 
-	DynamicFontImportSettings *fontdata_import_settings;
-	SceneImportSettings *scene_import_settings;
+	DynamicFontImportSettings *fontdata_import_settings = nullptr;
+	SceneImportSettings *scene_import_settings = nullptr;
 
 	String import_reload_fn;
 

+ 5 - 5
editor/editor_path.h

@@ -42,12 +42,12 @@ class EditorSelectionHistory;
 class EditorPath : public Button {
 	GDCLASS(EditorPath, Button);
 
-	EditorSelectionHistory *history;
+	EditorSelectionHistory *history = nullptr;
 
-	TextureRect *current_object_icon;
-	Label *current_object_label;
-	TextureRect *sub_objects_icon;
-	PopupMenu *sub_objects_menu;
+	TextureRect *current_object_icon = nullptr;
+	Label *current_object_label = nullptr;
+	TextureRect *sub_objects_icon = nullptr;
+	PopupMenu *sub_objects_menu = nullptr;
 
 	Vector<ObjectID> objects;
 

+ 4 - 4
editor/editor_plugin_settings.h

@@ -44,10 +44,10 @@ class EditorPluginSettings : public VBoxContainer {
 		BUTTON_PLUGIN_EDIT
 	};
 
-	PluginConfigDialog *plugin_config_dialog;
-	Button *create_plugin;
-	Button *update_list;
-	Tree *plugin_list;
+	PluginConfigDialog *plugin_config_dialog = nullptr;
+	Button *create_plugin = nullptr;
+	Button *update_list = nullptr;
+	Tree *plugin_list = nullptr;
 	bool updating = false;
 
 	void _plugin_activity_changed();

+ 42 - 42
editor/editor_properties.h

@@ -52,7 +52,7 @@ public:
 
 class EditorPropertyText : public EditorProperty {
 	GDCLASS(EditorPropertyText, EditorProperty);
-	LineEdit *text;
+	LineEdit *text = nullptr;
 
 	bool updating = false;
 	bool string_name = false;
@@ -72,11 +72,11 @@ public:
 
 class EditorPropertyMultilineText : public EditorProperty {
 	GDCLASS(EditorPropertyMultilineText, EditorProperty);
-	TextEdit *text;
+	TextEdit *text = nullptr;
 
-	AcceptDialog *big_text_dialog;
-	TextEdit *big_text;
-	Button *open_big_text;
+	AcceptDialog *big_text_dialog = nullptr;
+	TextEdit *big_text = nullptr;
+	Button *open_big_text = nullptr;
 
 	void _big_text_changed();
 	void _text_changed();
@@ -95,15 +95,15 @@ public:
 class EditorPropertyTextEnum : public EditorProperty {
 	GDCLASS(EditorPropertyTextEnum, EditorProperty);
 
-	HBoxContainer *default_layout;
-	HBoxContainer *edit_custom_layout;
+	HBoxContainer *default_layout = nullptr;
+	HBoxContainer *edit_custom_layout = nullptr;
 
-	OptionButton *option_button;
-	Button *edit_button;
+	OptionButton *option_button = nullptr;
+	Button *edit_button = nullptr;
 
-	LineEdit *custom_value_edit;
-	Button *accept_button;
-	Button *cancel_button;
+	LineEdit *custom_value_edit = nullptr;
+	Button *accept_button = nullptr;
+	Button *cancel_button = nullptr;
 
 	Vector<String> options;
 	bool string_name = false;
@@ -134,9 +134,9 @@ class EditorPropertyPath : public EditorProperty {
 	bool folder = false;
 	bool global = false;
 	bool save_mode = false;
-	EditorFileDialog *dialog;
-	LineEdit *path;
-	Button *path_edit;
+	EditorFileDialog *dialog = nullptr;
+	LineEdit *path = nullptr;
+	Button *path_edit = nullptr;
 
 	void _path_selected(const String &p_path);
 	void _path_pressed();
@@ -156,9 +156,9 @@ public:
 
 class EditorPropertyLocale : public EditorProperty {
 	GDCLASS(EditorPropertyLocale, EditorProperty);
-	EditorLocaleDialog *dialog;
-	LineEdit *locale;
-	Button *locale_edit;
+	EditorLocaleDialog *dialog = nullptr;
+	LineEdit *locale = nullptr;
+	Button *locale_edit = nullptr;
 
 	void _locale_selected(const String &p_locale);
 	void _locale_pressed();
@@ -178,8 +178,8 @@ class EditorPropertyClassName : public EditorProperty {
 	GDCLASS(EditorPropertyClassName, EditorProperty);
 
 private:
-	CreateDialog *dialog;
-	Button *property;
+	CreateDialog *dialog = nullptr;
+	Button *property = nullptr;
 	String selected_type;
 	String base_type;
 	void _property_selected();
@@ -212,8 +212,8 @@ public:
 
 private:
 	Type hint;
-	PropertySelector *selector;
-	Button *property;
+	PropertySelector *selector = nullptr;
+	Button *property = nullptr;
 	String hint_text;
 
 	void _property_selected(const String &p_selected);
@@ -231,7 +231,7 @@ public:
 
 class EditorPropertyCheck : public EditorProperty {
 	GDCLASS(EditorPropertyCheck, EditorProperty);
-	CheckBox *checkbox;
+	CheckBox *checkbox = nullptr;
 
 	void _checkbox_pressed();
 
@@ -246,7 +246,7 @@ public:
 
 class EditorPropertyEnum : public EditorProperty {
 	GDCLASS(EditorPropertyEnum, EditorProperty);
-	OptionButton *options;
+	OptionButton *options = nullptr;
 
 	void _option_selected(int p_which);
 
@@ -263,7 +263,7 @@ public:
 
 class EditorPropertyFlags : public EditorProperty {
 	GDCLASS(EditorPropertyFlags, EditorProperty);
-	VBoxContainer *vbox;
+	VBoxContainer *vbox = nullptr;
 	Vector<CheckBox *> flags;
 	Vector<int> flag_indices;
 
@@ -293,9 +293,9 @@ private:
 	int hovered_index = -1;
 	bool read_only = false;
 	int renamed_layer_index = -1;
-	PopupMenu *layer_rename;
-	ConfirmationDialog *rename_dialog;
-	LineEdit *rename_dialog_text;
+	PopupMenu *layer_rename = nullptr;
+	ConfirmationDialog *rename_dialog = nullptr;
+	LineEdit *rename_dialog_text = nullptr;
 
 	void _rename_pressed(int p_menu);
 	void _rename_operation_confirm();
@@ -334,12 +334,12 @@ public:
 	};
 
 private:
-	EditorPropertyLayersGrid *grid;
+	EditorPropertyLayersGrid *grid = nullptr;
 	void _grid_changed(uint32_t p_grid);
 	String basename;
 	LayerType layer_type;
-	PopupMenu *layers;
-	Button *button;
+	PopupMenu *layers = nullptr;
+	Button *button = nullptr;
 
 	void _button_pressed();
 	void _menu_pressed(int p_menu);
@@ -358,7 +358,7 @@ public:
 
 class EditorPropertyInteger : public EditorProperty {
 	GDCLASS(EditorPropertyInteger, EditorProperty);
-	EditorSpinSlider *spin;
+	EditorSpinSlider *spin = nullptr;
 	bool setting = false;
 	void _value_changed(int64_t p_val);
 
@@ -374,7 +374,7 @@ public:
 
 class EditorPropertyObjectID : public EditorProperty {
 	GDCLASS(EditorPropertyObjectID, EditorProperty);
-	Button *edit;
+	Button *edit = nullptr;
 	String base_type;
 	void _edit_pressed();
 
@@ -390,7 +390,7 @@ public:
 
 class EditorPropertyFloat : public EditorProperty {
 	GDCLASS(EditorPropertyFloat, EditorProperty);
-	EditorSpinSlider *spin;
+	EditorSpinSlider *spin = nullptr;
 	bool setting = false;
 	bool angle_in_radians = false;
 	void _value_changed(double p_val);
@@ -407,9 +407,9 @@ public:
 
 class EditorPropertyEasing : public EditorProperty {
 	GDCLASS(EditorPropertyEasing, EditorProperty);
-	Control *easing_draw;
-	PopupMenu *preset;
-	EditorSpinSlider *spin;
+	Control *easing_draw = nullptr;
+	PopupMenu *preset = nullptr;
+	EditorSpinSlider *spin = nullptr;
 	bool setting = false;
 
 	bool dragging = false;
@@ -657,7 +657,7 @@ public:
 
 class EditorPropertyColor : public EditorProperty {
 	GDCLASS(EditorPropertyColor, EditorProperty);
-	ColorPickerButton *picker;
+	ColorPickerButton *picker = nullptr;
 	void _color_changed(const Color &p_color);
 	void _popup_closed();
 	void _picker_created();
@@ -677,9 +677,9 @@ public:
 
 class EditorPropertyNodePath : public EditorProperty {
 	GDCLASS(EditorPropertyNodePath, EditorProperty);
-	Button *assign;
-	Button *clear;
-	SceneTreeDialog *scene_tree;
+	Button *assign = nullptr;
+	Button *clear = nullptr;
+	SceneTreeDialog *scene_tree = nullptr;
 	NodePath base_hint;
 	bool use_path_from_scene_root = false;
 
@@ -705,7 +705,7 @@ public:
 
 class EditorPropertyRID : public EditorProperty {
 	GDCLASS(EditorPropertyRID, EditorProperty);
-	Label *label;
+	Label *label = nullptr;
 
 public:
 	virtual void update_property() override;

+ 21 - 21
editor/editor_properties_array_dict.h

@@ -80,7 +80,7 @@ public:
 class EditorPropertyArray : public EditorProperty {
 	GDCLASS(EditorPropertyArray, EditorProperty);
 
-	PopupMenu *change_type;
+	PopupMenu *change_type = nullptr;
 	bool updating = false;
 	bool dropping = false;
 
@@ -88,12 +88,12 @@ class EditorPropertyArray : public EditorProperty {
 	int page_length = 20;
 	int page_index = 0;
 	int changing_type_index;
-	Button *edit;
-	VBoxContainer *vbox;
-	VBoxContainer *property_vbox;
-	EditorSpinSlider *size_slider;
-	Button *button_add_item;
-	EditorPaginator *paginator;
+	Button *edit = nullptr;
+	VBoxContainer *vbox = nullptr;
+	VBoxContainer *property_vbox = nullptr;
+	EditorSpinSlider *size_slider = nullptr;
+	Button *button_add_item = nullptr;
+	EditorPaginator *paginator = nullptr;
 	Variant::Type array_type;
 	Variant::Type subtype;
 	PropertyHint subtype_hint;
@@ -138,19 +138,19 @@ public:
 class EditorPropertyDictionary : public EditorProperty {
 	GDCLASS(EditorPropertyDictionary, EditorProperty);
 
-	PopupMenu *change_type;
+	PopupMenu *change_type = nullptr;
 	bool updating = false;
 
 	Ref<EditorPropertyDictionaryObject> object;
 	int page_length = 20;
 	int page_index = 0;
 	int changing_type_index;
-	Button *edit;
-	VBoxContainer *vbox;
-	VBoxContainer *property_vbox;
-	EditorSpinSlider *size_slider;
-	Button *button_add_item;
-	EditorPaginator *paginator;
+	Button *edit = nullptr;
+	VBoxContainer *vbox = nullptr;
+	VBoxContainer *property_vbox = nullptr;
+	EditorSpinSlider *size_slider = nullptr;
+	Button *button_add_item = nullptr;
+	EditorPaginator *paginator = nullptr;
 
 	void _page_changed(int p_page);
 	void _edit_pressed();
@@ -173,19 +173,19 @@ public:
 class EditorPropertyLocalizableString : public EditorProperty {
 	GDCLASS(EditorPropertyLocalizableString, EditorProperty);
 
-	EditorLocaleDialog *locale_select;
+	EditorLocaleDialog *locale_select = nullptr;
 
 	bool updating;
 
 	Ref<EditorPropertyDictionaryObject> object;
 	int page_length = 20;
 	int page_index = 0;
-	Button *edit;
-	VBoxContainer *vbox;
-	VBoxContainer *property_vbox;
-	EditorSpinSlider *size_slider;
-	Button *button_add_item;
-	EditorPaginator *paginator;
+	Button *edit = nullptr;
+	VBoxContainer *vbox = nullptr;
+	VBoxContainer *property_vbox = nullptr;
+	EditorSpinSlider *size_slider = nullptr;
+	Button *button_add_item = nullptr;
+	EditorPaginator *paginator = nullptr;
 
 	void _page_changed(int p_page);
 	void _edit_pressed();

+ 3 - 3
editor/editor_resource_picker.h

@@ -52,9 +52,9 @@ class EditorResourcePicker : public HBoxContainer {
 
 	Vector<String> inheritors_array;
 
-	Button *assign_button;
-	TextureRect *preview_rect;
-	Button *edit_button;
+	Button *assign_button = nullptr;
+	TextureRect *preview_rect = nullptr;
+	Button *edit_button = nullptr;
 	EditorFileDialog *file_dialog = nullptr;
 	EditorQuickOpen *quick_open = nullptr;
 

+ 1 - 1
editor/editor_run_script.h

@@ -39,7 +39,7 @@ class EditorNode;
 class EditorScript : public RefCounted {
 	GDCLASS(EditorScript, RefCounted);
 
-	EditorNode *editor;
+	EditorNode *editor = nullptr;
 
 protected:
 	static void _bind_methods();

+ 3 - 3
editor/editor_sectioned_inspector.h

@@ -42,11 +42,11 @@ class SectionedInspector : public HSplitContainer {
 
 	ObjectID obj;
 
-	Tree *sections;
-	SectionedInspectorFilter *filter;
+	Tree *sections = nullptr;
+	SectionedInspectorFilter *filter = nullptr;
 
 	Map<String, TreeItem *> section_map;
-	EditorInspector *inspector;
+	EditorInspector *inspector = nullptr;
 	LineEdit *search_box = nullptr;
 
 	String selected_category;

+ 14 - 14
editor/editor_settings_dialog.h

@@ -45,13 +45,13 @@ class EditorSettingsDialog : public AcceptDialog {
 
 	bool updating = false;
 
-	TabContainer *tabs;
-	Control *tab_general;
-	Control *tab_shortcuts;
+	TabContainer *tabs = nullptr;
+	Control *tab_general = nullptr;
+	Control *tab_shortcuts = nullptr;
 
-	LineEdit *search_box;
-	LineEdit *shortcut_search_box;
-	SectionedInspector *inspector;
+	LineEdit *search_box = nullptr;
+	LineEdit *shortcut_search_box = nullptr;
+	SectionedInspector *inspector = nullptr;
 
 	// Shortcuts
 	enum ShortcutButton {
@@ -61,19 +61,19 @@ class EditorSettingsDialog : public AcceptDialog {
 		SHORTCUT_REVERT
 	};
 
-	Tree *shortcuts;
+	Tree *shortcuts = nullptr;
 	String shortcut_filter;
 
-	InputEventConfigurationDialog *shortcut_editor;
+	InputEventConfigurationDialog *shortcut_editor = nullptr;
 
 	bool is_editing_action = false;
 	String current_edited_identifier;
 	Array current_events;
 	int current_event_index = -1;
 
-	Timer *timer;
+	Timer *timer = nullptr;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	virtual void cancel_pressed() override;
 	virtual void ok_pressed() override;
@@ -110,10 +110,10 @@ class EditorSettingsDialog : public AcceptDialog {
 
 	static void _undo_redo_callback(void *p_self, const String &p_name);
 
-	Label *restart_label;
-	TextureRect *restart_icon;
-	PanelContainer *restart_container;
-	Button *restart_close_button;
+	Label *restart_label = nullptr;
+	TextureRect *restart_icon = nullptr;
+	PanelContainer *restart_container = nullptr;
+	Button *restart_close_button = nullptr;
 
 	void _editor_restart_request();
 	void _editor_restart();

+ 1 - 1
editor/editor_spin_slider.h

@@ -44,7 +44,7 @@ class EditorSpinSlider : public Range {
 	bool hover_updown = false;
 	bool mouse_hover = false;
 
-	TextureRect *grabber;
+	TextureRect *grabber = nullptr;
 	int grabber_range;
 
 	bool mouse_over_spin = false;

+ 4 - 4
editor/editor_toaster.h

@@ -61,11 +61,11 @@ private:
 	Ref<StyleBoxFlat> warning_panel_style_progress;
 	Ref<StyleBoxFlat> error_panel_style_progress;
 
-	Button *main_button;
-	PanelContainer *disable_notifications_panel;
-	Button *disable_notifications_button;
+	Button *main_button = nullptr;
+	PanelContainer *disable_notifications_panel = nullptr;
+	Button *disable_notifications_button = nullptr;
 
-	VBoxContainer *vbox_container;
+	VBoxContainer *vbox_container = nullptr;
 	const int max_temporary_count = 5;
 	struct Toast {
 		Severity severity = SEVERITY_INFO;

+ 3 - 3
editor/editor_zoom_widget.h

@@ -37,9 +37,9 @@
 class EditorZoomWidget : public HBoxContainer {
 	GDCLASS(EditorZoomWidget, HBoxContainer);
 
-	Button *zoom_minus;
-	Button *zoom_reset;
-	Button *zoom_plus;
+	Button *zoom_minus = nullptr;
+	Button *zoom_reset = nullptr;
+	Button *zoom_plus = nullptr;
 
 	float zoom = 1.0;
 	void _update_zoom_label();

+ 20 - 20
editor/export_template_manager.h

@@ -51,42 +51,42 @@ class ExportTemplateManager : public AcceptDialog {
 	bool is_downloading_templates = false;
 	float update_countdown = 0;
 
-	Label *current_value;
-	Label *current_missing_label;
-	Label *current_installed_label;
+	Label *current_value = nullptr;
+	Label *current_missing_label = nullptr;
+	Label *current_installed_label = nullptr;
 
-	HBoxContainer *current_installed_hb;
-	LineEdit *current_installed_path;
-	Button *current_open_button;
-	Button *current_uninstall_button;
+	HBoxContainer *current_installed_hb = nullptr;
+	LineEdit *current_installed_path = nullptr;
+	Button *current_open_button = nullptr;
+	Button *current_uninstall_button = nullptr;
 
-	VBoxContainer *install_options_vb;
-	OptionButton *mirrors_list;
+	VBoxContainer *install_options_vb = nullptr;
+	OptionButton *mirrors_list = nullptr;
 
 	enum MirrorAction {
 		VISIT_WEB_MIRROR,
 		COPY_MIRROR_URL,
 	};
 
-	MenuButton *mirror_options_button;
-	HBoxContainer *download_progress_hb;
-	ProgressBar *download_progress_bar;
-	Label *download_progress_label;
-	HTTPRequest *download_templates;
-	Button *install_file_button;
-	HTTPRequest *request_mirrors;
+	MenuButton *mirror_options_button = nullptr;
+	HBoxContainer *download_progress_hb = nullptr;
+	ProgressBar *download_progress_bar = nullptr;
+	Label *download_progress_label = nullptr;
+	HTTPRequest *download_templates = nullptr;
+	Button *install_file_button = nullptr;
+	HTTPRequest *request_mirrors = nullptr;
 
 	enum TemplatesAction {
 		OPEN_TEMPLATE_FOLDER,
 		UNINSTALL_TEMPLATE,
 	};
 
-	Tree *installed_table;
+	Tree *installed_table = nullptr;
 
-	ConfirmationDialog *uninstall_confirm;
+	ConfirmationDialog *uninstall_confirm = nullptr;
 	String uninstall_version;
-	FileDialog *install_file_dialog;
-	AcceptDialog *hide_dialog_accept;
+	FileDialog *install_file_dialog = nullptr;
+	AcceptDialog *hide_dialog_accept = nullptr;
 
 	void _update_template_status();
 

+ 1 - 1
editor/fileserver/editor_file_server.h

@@ -47,7 +47,7 @@ class EditorFileServer : public Object {
 	};
 
 	struct ClientData {
-		Thread *thread;
+		Thread *thread = nullptr;
 		Ref<StreamPeerTCP> connection;
 		Map<int, FileAccess *> files;
 		EditorFileServer *efs = nullptr;

+ 39 - 39
editor/filesystem_dock.h

@@ -102,57 +102,57 @@ private:
 
 	FileSortOption file_sort = FILE_SORT_NAME;
 
-	VBoxContainer *scanning_vb;
-	ProgressBar *scanning_progress;
-	VSplitContainer *split_box;
-	VBoxContainer *file_list_vb;
+	VBoxContainer *scanning_vb = nullptr;
+	ProgressBar *scanning_progress = nullptr;
+	VSplitContainer *split_box = nullptr;
+	VBoxContainer *file_list_vb = nullptr;
 
 	Set<String> favorites;
 
-	Button *button_toggle_display_mode;
-	Button *button_reload;
-	Button *button_file_list_display_mode;
-	Button *button_hist_next;
-	Button *button_hist_prev;
-	LineEdit *current_path;
+	Button *button_toggle_display_mode = nullptr;
+	Button *button_reload = nullptr;
+	Button *button_file_list_display_mode = nullptr;
+	Button *button_hist_next = nullptr;
+	Button *button_hist_prev = nullptr;
+	LineEdit *current_path = nullptr;
 
-	HBoxContainer *toolbar2_hbc;
-	LineEdit *tree_search_box;
-	MenuButton *tree_button_sort;
+	HBoxContainer *toolbar2_hbc = nullptr;
+	LineEdit *tree_search_box = nullptr;
+	MenuButton *tree_button_sort = nullptr;
 
-	LineEdit *file_list_search_box;
-	MenuButton *file_list_button_sort;
+	LineEdit *file_list_search_box = nullptr;
+	MenuButton *file_list_button_sort = nullptr;
 
 	String searched_string;
 	Vector<String> uncollapsed_paths_before_search;
 
-	TextureRect *search_icon;
-	HBoxContainer *path_hb;
+	TextureRect *search_icon = nullptr;
+	HBoxContainer *path_hb = nullptr;
 
 	FileListDisplayMode file_list_display_mode;
 	DisplayMode display_mode;
 	DisplayMode old_display_mode;
 
-	PopupMenu *file_list_popup;
-	PopupMenu *tree_popup;
-
-	DependencyEditor *deps_editor;
-	DependencyEditorOwners *owners_editor;
-	DependencyRemoveDialog *remove_dialog;
-
-	EditorDirDialog *move_dialog;
-	ConfirmationDialog *rename_dialog;
-	LineEdit *rename_dialog_text;
-	ConfirmationDialog *duplicate_dialog;
-	LineEdit *duplicate_dialog_text;
-	ConfirmationDialog *make_dir_dialog;
-	LineEdit *make_dir_dialog_text;
-	ConfirmationDialog *make_scene_dialog;
-	LineEdit *make_scene_dialog_text;
-	ConfirmationDialog *overwrite_dialog;
-	ScriptCreateDialog *make_script_dialog;
-	ShaderCreateDialog *make_shader_dialog;
-	CreateDialog *new_resource_dialog;
+	PopupMenu *file_list_popup = nullptr;
+	PopupMenu *tree_popup = nullptr;
+
+	DependencyEditor *deps_editor = nullptr;
+	DependencyEditorOwners *owners_editor = nullptr;
+	DependencyRemoveDialog *remove_dialog = nullptr;
+
+	EditorDirDialog *move_dialog = nullptr;
+	ConfirmationDialog *rename_dialog = nullptr;
+	LineEdit *rename_dialog_text = nullptr;
+	ConfirmationDialog *duplicate_dialog = nullptr;
+	LineEdit *duplicate_dialog_text = nullptr;
+	ConfirmationDialog *make_dir_dialog = nullptr;
+	LineEdit *make_dir_dialog_text = nullptr;
+	ConfirmationDialog *make_scene_dialog = nullptr;
+	LineEdit *make_scene_dialog_text = nullptr;
+	ConfirmationDialog *overwrite_dialog = nullptr;
+	ScriptCreateDialog *make_script_dialog = nullptr;
+	ShaderCreateDialog *make_shader_dialog = nullptr;
+	CreateDialog *new_resource_dialog = nullptr;
 
 	bool always_show_folders = false;
 
@@ -181,8 +181,8 @@ private:
 
 	bool updating_tree = false;
 	int tree_update_id;
-	Tree *tree;
-	ItemList *files;
+	Tree *tree = nullptr;
+	ItemList *files = nullptr;
 	bool import_dock_needs_update = false;
 
 	bool holding_branch = false;

+ 22 - 22
editor/find_in_files.h

@@ -132,18 +132,18 @@ private:
 	void _on_replace_text_submitted(String text);
 
 	FindInFilesMode _mode;
-	LineEdit *_search_text_line_edit;
-
-	Label *_replace_label;
-	LineEdit *_replace_text_line_edit;
-
-	LineEdit *_folder_line_edit;
-	CheckBox *_match_case_checkbox;
-	CheckBox *_whole_words_checkbox;
-	Button *_find_button;
-	Button *_replace_button;
-	FileDialog *_folder_dialog;
-	HBoxContainer *_filters_container;
+	LineEdit *_search_text_line_edit = nullptr;
+
+	Label *_replace_label = nullptr;
+	LineEdit *_replace_text_line_edit = nullptr;
+
+	LineEdit *_folder_line_edit = nullptr;
+	CheckBox *_match_case_checkbox = nullptr;
+	CheckBox *_whole_words_checkbox = nullptr;
+	Button *_find_button = nullptr;
+	Button *_replace_button = nullptr;
+	FileDialog *_folder_dialog = nullptr;
+	HBoxContainer *_filters_container = nullptr;
 	HashMap<String, bool> _filters_preferences;
 };
 
@@ -201,20 +201,20 @@ private:
 	void set_progress_visible(bool visible);
 	void clear();
 
-	FindInFiles *_finder;
-	Label *_search_text_label;
-	Tree *_results_display;
-	Label *_status_label;
-	Button *_refresh_button;
-	Button *_cancel_button;
-	ProgressBar *_progress_bar;
+	FindInFiles *_finder = nullptr;
+	Label *_search_text_label = nullptr;
+	Tree *_results_display = nullptr;
+	Label *_status_label = nullptr;
+	Button *_refresh_button = nullptr;
+	Button *_cancel_button = nullptr;
+	ProgressBar *_progress_bar = nullptr;
 	Map<String, TreeItem *> _file_items;
 	Map<TreeItem *, Result> _result_items;
 	bool _with_replace = false;
 
-	HBoxContainer *_replace_container;
-	LineEdit *_replace_line_edit;
-	Button *_replace_all_button;
+	HBoxContainer *_replace_container = nullptr;
+	LineEdit *_replace_line_edit = nullptr;
+	Button *_replace_all_button = nullptr;
 };
 
 #endif // FIND_IN_FILES_H

+ 22 - 22
editor/groups_editor.h

@@ -43,32 +43,32 @@
 class GroupDialog : public AcceptDialog {
 	GDCLASS(GroupDialog, AcceptDialog);
 
-	ConfirmationDialog *error;
+	ConfirmationDialog *error = nullptr;
 
-	SceneTree *scene_tree;
-	TreeItem *groups_root;
+	SceneTree *scene_tree = nullptr;
+	TreeItem *groups_root = nullptr;
 
-	LineEdit *add_group_text;
-	Button *add_group_button;
+	LineEdit *add_group_text = nullptr;
+	Button *add_group_button = nullptr;
 
-	Tree *groups;
+	Tree *groups = nullptr;
 
-	Tree *nodes_to_add;
-	TreeItem *add_node_root;
-	LineEdit *add_filter;
+	Tree *nodes_to_add = nullptr;
+	TreeItem *add_node_root = nullptr;
+	LineEdit *add_filter = nullptr;
 
-	Tree *nodes_to_remove;
-	TreeItem *remove_node_root;
-	LineEdit *remove_filter;
+	Tree *nodes_to_remove = nullptr;
+	TreeItem *remove_node_root = nullptr;
+	LineEdit *remove_filter = nullptr;
 
-	Label *group_empty;
+	Label *group_empty = nullptr;
 
-	Button *add_button;
-	Button *remove_button;
+	Button *add_button = nullptr;
+	Button *remove_button = nullptr;
 
 	String selected_group;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	void _group_selected();
 
@@ -111,15 +111,15 @@ public:
 class GroupsEditor : public VBoxContainer {
 	GDCLASS(GroupsEditor, VBoxContainer);
 
-	Node *node;
+	Node *node = nullptr;
 
-	GroupDialog *group_dialog;
+	GroupDialog *group_dialog = nullptr;
 
-	LineEdit *group_name;
-	Button *add;
-	Tree *tree;
+	LineEdit *group_name = nullptr;
+	Button *add = nullptr;
+	Tree *tree = nullptr;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	void update_tree();
 	void _add_group(const String &p_group = "");

+ 1 - 1
editor/import/dynamic_font_import_settings.h

@@ -66,7 +66,7 @@ class DynamicFontImportSettings : public ConfirmationDialog {
 	List<ResourceImporter::ImportOption> options_variations;
 	List<ResourceImporter::ImportOption> options_general;
 
-	EditorLocaleDialog *locale_select;
+	EditorLocaleDialog *locale_select = nullptr;
 	Vector<String> script_codes;
 
 	// Root layout

+ 27 - 27
editor/import/scene_import_settings.h

@@ -62,26 +62,26 @@ class SceneImportSettings : public ConfirmationDialog {
 
 	Node *scene = nullptr;
 
-	HSplitContainer *tree_split;
-	HSplitContainer *property_split;
-	TabContainer *data_mode;
-	Tree *scene_tree;
-	Tree *mesh_tree;
-	Tree *material_tree;
+	HSplitContainer *tree_split = nullptr;
+	HSplitContainer *property_split = nullptr;
+	TabContainer *data_mode = nullptr;
+	Tree *scene_tree = nullptr;
+	Tree *mesh_tree = nullptr;
+	Tree *material_tree = nullptr;
 
-	EditorInspector *inspector;
+	EditorInspector *inspector = nullptr;
 
-	SubViewport *base_viewport;
+	SubViewport *base_viewport = nullptr;
 
-	Camera3D *camera;
+	Camera3D *camera = nullptr;
 	bool first_aabb = false;
 	AABB contents_aabb;
 
-	DirectionalLight3D *light;
+	DirectionalLight3D *light = nullptr;
 	Ref<ArrayMesh> selection_mesh;
-	MeshInstance3D *node_selected;
+	MeshInstance3D *node_selected = nullptr;
 
-	MeshInstance3D *mesh_preview;
+	MeshInstance3D *mesh_preview = nullptr;
 	Ref<SphereMesh> material_preview;
 
 	Ref<StandardMaterial3D> collider_mat;
@@ -95,9 +95,9 @@ class SceneImportSettings : public ConfirmationDialog {
 	struct MaterialData {
 		bool has_import_id;
 		Ref<Material> material;
-		TreeItem *scene_node;
-		TreeItem *mesh_node;
-		TreeItem *material_node;
+		TreeItem *scene_node = nullptr;
+		TreeItem *mesh_node = nullptr;
+		TreeItem *material_node = nullptr;
 
 		float cam_rot_x = -Math_PI / 4;
 		float cam_rot_y = -Math_PI / 4;
@@ -110,8 +110,8 @@ class SceneImportSettings : public ConfirmationDialog {
 	struct MeshData {
 		bool has_import_id;
 		Ref<Mesh> mesh;
-		TreeItem *scene_node;
-		TreeItem *mesh_node;
+		TreeItem *scene_node = nullptr;
+		TreeItem *mesh_node = nullptr;
 
 		float cam_rot_x = -Math_PI / 4;
 		float cam_rot_y = -Math_PI / 4;
@@ -122,14 +122,14 @@ class SceneImportSettings : public ConfirmationDialog {
 
 	struct AnimationData {
 		Ref<Animation> animation;
-		TreeItem *scene_node;
+		TreeItem *scene_node = nullptr;
 		Map<StringName, Variant> settings;
 	};
 	Map<String, AnimationData> animation_map;
 
 	struct NodeData {
-		Node *node;
-		TreeItem *scene_node;
+		Node *node = nullptr;
+		TreeItem *scene_node = nullptr;
 		Map<StringName, Variant> settings;
 	};
 	Map<String, NodeData> node_map;
@@ -158,20 +158,20 @@ class SceneImportSettings : public ConfirmationDialog {
 
 	Map<StringName, Variant> defaults;
 
-	SceneImportSettingsData *scene_import_settings_data;
+	SceneImportSettingsData *scene_import_settings_data = nullptr;
 
 	void _re_import();
 
 	String base_path;
 
-	MenuButton *action_menu;
+	MenuButton *action_menu = nullptr;
 
-	ConfirmationDialog *external_paths;
-	Tree *external_path_tree;
-	EditorFileDialog *save_path;
-	OptionButton *external_extension_type;
+	ConfirmationDialog *external_paths = nullptr;
+	Tree *external_path_tree = nullptr;
+	EditorFileDialog *save_path = nullptr;
+	OptionButton *external_extension_type = nullptr;
 
-	EditorFileDialog *item_save_path;
+	EditorFileDialog *item_save_path = nullptr;
 
 	void _menu_callback(int p_id);
 	void _save_dir_callback(const String &p_path);

+ 5 - 5
editor/import_defaults_editor.h

@@ -41,13 +41,13 @@ class EditorInspector;
 class ImportDefaultsEditor : public VBoxContainer {
 	GDCLASS(ImportDefaultsEditor, VBoxContainer)
 
-	OptionButton *importers;
-	Button *save_defaults;
-	Button *reset_defaults;
+	OptionButton *importers = nullptr;
+	Button *save_defaults = nullptr;
+	Button *reset_defaults = nullptr;
 
-	EditorInspector *inspector;
+	EditorInspector *inspector = nullptr;
 
-	ImportDefaultsEditorSettings *settings;
+	ImportDefaultsEditorSettings *settings = nullptr;
 
 	void _update_importer();
 	void _importer_selected(int p_index);

+ 12 - 12
editor/import_dock.h

@@ -45,25 +45,25 @@ class ImportDockParameters;
 class ImportDock : public VBoxContainer {
 	GDCLASS(ImportDock, VBoxContainer);
 
-	Label *imported;
-	OptionButton *import_as;
-	MenuButton *preset;
-	EditorInspector *import_opts;
+	Label *imported = nullptr;
+	OptionButton *import_as = nullptr;
+	MenuButton *preset = nullptr;
+	EditorInspector *import_opts = nullptr;
 
 	List<PropertyInfo> properties;
 	Map<StringName, Variant> property_values;
 
-	ConfirmationDialog *reimport_confirm;
-	Label *label_warning;
-	Button *import;
+	ConfirmationDialog *reimport_confirm = nullptr;
+	Label *label_warning = nullptr;
+	Button *import = nullptr;
 
-	Control *advanced_spacer;
-	Button *advanced;
+	Control *advanced_spacer = nullptr;
+	Button *advanced = nullptr;
 
-	ImportDockParameters *params;
+	ImportDockParameters *params = nullptr;
 
-	VBoxContainer *content;
-	Label *select_a_resource;
+	VBoxContainer *content = nullptr;
+	Label *select_a_resource = nullptr;
 
 	void _preset_selected(int p_idx);
 	void _importer_selected(int i_idx);

+ 20 - 20
editor/inspector_dock.h

@@ -70,34 +70,34 @@ class InspectorDock : public VBoxContainer {
 		OBJECT_METHOD_BASE = 500
 	};
 
-	EditorData *editor_data;
+	EditorData *editor_data = nullptr;
 
-	EditorInspector *inspector;
+	EditorInspector *inspector = nullptr;
 
-	Object *current;
+	Object *current = nullptr;
 
-	Button *backward_button;
-	Button *forward_button;
+	Button *backward_button = nullptr;
+	Button *forward_button = nullptr;
 
-	EditorFileDialog *load_resource_dialog;
-	CreateDialog *new_resource_dialog;
-	Button *resource_new_button;
-	Button *resource_load_button;
-	MenuButton *resource_save_button;
-	MenuButton *resource_extra_button;
-	MenuButton *history_menu;
-	LineEdit *search;
+	EditorFileDialog *load_resource_dialog = nullptr;
+	CreateDialog *new_resource_dialog = nullptr;
+	Button *resource_new_button = nullptr;
+	Button *resource_load_button = nullptr;
+	MenuButton *resource_save_button = nullptr;
+	MenuButton *resource_extra_button = nullptr;
+	MenuButton *history_menu = nullptr;
+	LineEdit *search = nullptr;
 
-	Button *open_docs_button;
-	MenuButton *object_menu;
-	EditorPath *editor_path;
+	Button *open_docs_button = nullptr;
+	MenuButton *object_menu = nullptr;
+	EditorPath *editor_path = nullptr;
 
-	Button *warning;
-	AcceptDialog *warning_dialog;
+	Button *warning = nullptr;
+	AcceptDialog *warning_dialog = nullptr;
 
 	int current_option = -1;
-	ConfirmationDialog *unique_resources_confirmation;
-	Tree *unique_resources_list_tree;
+	ConfirmationDialog *unique_resources_confirmation = nullptr;
+	Tree *unique_resources_list_tree = nullptr;
 
 	EditorPropertyNameProcessor::Style property_name_style;
 

+ 12 - 12
editor/localization_editor.h

@@ -40,22 +40,22 @@ class EditorFileDialog;
 class LocalizationEditor : public VBoxContainer {
 	GDCLASS(LocalizationEditor, VBoxContainer);
 
-	Tree *translation_list;
+	Tree *translation_list = nullptr;
 
-	EditorLocaleDialog *locale_select;
-	EditorFileDialog *translation_file_open;
+	EditorLocaleDialog *locale_select = nullptr;
+	EditorFileDialog *translation_file_open = nullptr;
 
-	Button *translation_res_option_add_button;
-	EditorFileDialog *translation_res_file_open_dialog;
-	EditorFileDialog *translation_res_option_file_open_dialog;
-	Tree *translation_remap;
-	Tree *translation_remap_options;
+	Button *translation_res_option_add_button = nullptr;
+	EditorFileDialog *translation_res_file_open_dialog = nullptr;
+	EditorFileDialog *translation_res_option_file_open_dialog = nullptr;
+	Tree *translation_remap = nullptr;
+	Tree *translation_remap_options = nullptr;
 
-	Tree *translation_pot_list;
-	EditorFileDialog *pot_file_open_dialog;
-	EditorFileDialog *pot_generate_dialog;
+	Tree *translation_pot_list = nullptr;
+	EditorFileDialog *pot_file_open_dialog = nullptr;
+	EditorFileDialog *pot_generate_dialog = nullptr;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 	bool updating_translations = false;
 	String localization_changed;
 

+ 6 - 6
editor/node_dock.h

@@ -38,15 +38,15 @@ class ConnectionsDock;
 class NodeDock : public VBoxContainer {
 	GDCLASS(NodeDock, VBoxContainer);
 
-	Button *connections_button;
-	Button *groups_button;
+	Button *connections_button = nullptr;
+	Button *groups_button = nullptr;
 
-	ConnectionsDock *connections;
-	GroupsEditor *groups;
+	ConnectionsDock *connections = nullptr;
+	GroupsEditor *groups = nullptr;
 
-	HBoxContainer *mode_hb;
+	HBoxContainer *mode_hb = nullptr;
 
-	Label *select_a_node;
+	Label *select_a_node = nullptr;
 
 private:
 	static NodeDock *singleton;

+ 11 - 11
editor/plugin_config_dialog.h

@@ -41,18 +41,18 @@
 class PluginConfigDialog : public ConfirmationDialog {
 	GDCLASS(PluginConfigDialog, ConfirmationDialog);
 
-	LineEdit *name_edit;
-	LineEdit *subfolder_edit;
-	TextEdit *desc_edit;
-	LineEdit *author_edit;
-	LineEdit *version_edit;
-	OptionButton *script_option_edit;
-	LineEdit *script_edit;
-	CheckBox *active_edit;
+	LineEdit *name_edit = nullptr;
+	LineEdit *subfolder_edit = nullptr;
+	TextEdit *desc_edit = nullptr;
+	LineEdit *author_edit = nullptr;
+	LineEdit *version_edit = nullptr;
+	OptionButton *script_option_edit = nullptr;
+	LineEdit *script_edit = nullptr;
+	CheckBox *active_edit = nullptr;
 
-	TextureRect *name_validation;
-	TextureRect *subfolder_validation;
-	TextureRect *script_validation;
+	TextureRect *name_validation = nullptr;
+	TextureRect *subfolder_validation = nullptr;
+	TextureRect *script_validation = nullptr;
 
 	bool _edit_mode;
 

+ 8 - 8
editor/plugins/abstract_polygon_2d_editor.h

@@ -40,9 +40,9 @@ class CanvasItemEditor;
 class AbstractPolygon2DEditor : public HBoxContainer {
 	GDCLASS(AbstractPolygon2DEditor, HBoxContainer);
 
-	Button *button_create;
-	Button *button_edit;
-	Button *button_delete;
+	Button *button_create = nullptr;
+	Button *button_edit = nullptr;
+	Button *button_delete = nullptr;
 
 	struct Vertex {
 		Vertex() {}
@@ -85,9 +85,9 @@ class AbstractPolygon2DEditor : public HBoxContainer {
 
 	bool _polygon_editing_enabled;
 
-	CanvasItemEditor *canvas_item_editor;
-	Panel *panel;
-	ConfirmationDialog *create_resource;
+	CanvasItemEditor *canvas_item_editor = nullptr;
+	Panel *panel = nullptr;
+	ConfirmationDialog *create_resource = nullptr;
 
 protected:
 	enum {
@@ -99,7 +99,7 @@ protected:
 
 	int mode;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	virtual void _menu_option(int p_option);
 	void _wip_changed();
@@ -149,7 +149,7 @@ public:
 class AbstractPolygon2DEditorPlugin : public EditorPlugin {
 	GDCLASS(AbstractPolygon2DEditorPlugin, EditorPlugin);
 
-	AbstractPolygon2DEditor *polygon_editor;
+	AbstractPolygon2DEditor *polygon_editor = nullptr;
 	String klass;
 
 public:

+ 26 - 26
editor/plugins/animation_blend_space_1d_editor.h

@@ -45,36 +45,36 @@ class AnimationNodeBlendSpace1DEditor : public AnimationTreeNodeEditorPlugin {
 
 	Ref<AnimationNodeBlendSpace1D> blend_space;
 
-	HBoxContainer *goto_parent_hb;
-	Button *goto_parent;
-
-	PanelContainer *panel;
-	Button *tool_blend;
-	Button *tool_select;
-	Button *tool_create;
-	VSeparator *tool_erase_sep;
-	Button *tool_erase;
-	Button *snap;
-	SpinBox *snap_value;
-
-	LineEdit *label_value;
-	SpinBox *max_value;
-	SpinBox *min_value;
-
-	HBoxContainer *edit_hb;
-	SpinBox *edit_value;
-	Button *open_editor;
+	HBoxContainer *goto_parent_hb = nullptr;
+	Button *goto_parent = nullptr;
+
+	PanelContainer *panel = nullptr;
+	Button *tool_blend = nullptr;
+	Button *tool_select = nullptr;
+	Button *tool_create = nullptr;
+	VSeparator *tool_erase_sep = nullptr;
+	Button *tool_erase = nullptr;
+	Button *snap = nullptr;
+	SpinBox *snap_value = nullptr;
+
+	LineEdit *label_value = nullptr;
+	SpinBox *max_value = nullptr;
+	SpinBox *min_value = nullptr;
+
+	HBoxContainer *edit_hb = nullptr;
+	SpinBox *edit_value = nullptr;
+	Button *open_editor = nullptr;
 
 	int selected_point;
 
-	Control *blend_space_draw;
+	Control *blend_space_draw = nullptr;
 
-	PanelContainer *error_panel;
-	Label *error_label;
+	PanelContainer *error_panel = nullptr;
+	Label *error_label = nullptr;
 
 	bool updating;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	static AnimationNodeBlendSpace1DEditor *singleton;
 
@@ -87,8 +87,8 @@ class AnimationNodeBlendSpace1DEditor : public AnimationTreeNodeEditorPlugin {
 	void _labels_changed(String);
 	void _snap_toggled();
 
-	PopupMenu *menu;
-	PopupMenu *animations_menu;
+	PopupMenu *menu = nullptr;
+	PopupMenu *animations_menu = nullptr;
 	Vector<String> animations_to_add;
 	float add_point_pos;
 	Vector<real_t> points;
@@ -108,7 +108,7 @@ class AnimationNodeBlendSpace1DEditor : public AnimationTreeNodeEditorPlugin {
 	void _edit_point_pos(double);
 	void _open_editor();
 
-	EditorFileDialog *open_file;
+	EditorFileDialog *open_file = nullptr;
 	Ref<AnimationNode> file_loaded;
 	void _file_opened(const String &p_file);
 

+ 32 - 32
editor/plugins/animation_blend_space_2d_editor.h

@@ -45,43 +45,43 @@ class AnimationNodeBlendSpace2DEditor : public AnimationTreeNodeEditorPlugin {
 
 	Ref<AnimationNodeBlendSpace2D> blend_space;
 
-	PanelContainer *panel;
-	Button *tool_blend;
-	Button *tool_select;
-	Button *tool_create;
-	Button *tool_triangle;
-	VSeparator *tool_erase_sep;
-	Button *tool_erase;
-	Button *snap;
-	SpinBox *snap_x;
-	SpinBox *snap_y;
-	OptionButton *interpolation;
-
-	Button *auto_triangles;
-
-	LineEdit *label_x;
-	LineEdit *label_y;
-	SpinBox *max_x_value;
-	SpinBox *min_x_value;
-	SpinBox *max_y_value;
-	SpinBox *min_y_value;
-
-	HBoxContainer *edit_hb;
-	SpinBox *edit_x;
-	SpinBox *edit_y;
-	Button *open_editor;
+	PanelContainer *panel = nullptr;
+	Button *tool_blend = nullptr;
+	Button *tool_select = nullptr;
+	Button *tool_create = nullptr;
+	Button *tool_triangle = nullptr;
+	VSeparator *tool_erase_sep = nullptr;
+	Button *tool_erase = nullptr;
+	Button *snap = nullptr;
+	SpinBox *snap_x = nullptr;
+	SpinBox *snap_y = nullptr;
+	OptionButton *interpolation = nullptr;
+
+	Button *auto_triangles = nullptr;
+
+	LineEdit *label_x = nullptr;
+	LineEdit *label_y = nullptr;
+	SpinBox *max_x_value = nullptr;
+	SpinBox *min_x_value = nullptr;
+	SpinBox *max_y_value = nullptr;
+	SpinBox *min_y_value = nullptr;
+
+	HBoxContainer *edit_hb = nullptr;
+	SpinBox *edit_x = nullptr;
+	SpinBox *edit_y = nullptr;
+	Button *open_editor = nullptr;
 
 	int selected_point;
 	int selected_triangle;
 
-	Control *blend_space_draw;
+	Control *blend_space_draw = nullptr;
 
-	PanelContainer *error_panel;
-	Label *error_label;
+	PanelContainer *error_panel = nullptr;
+	Label *error_label = nullptr;
 
 	bool updating;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	static AnimationNodeBlendSpace2DEditor *singleton;
 
@@ -94,8 +94,8 @@ class AnimationNodeBlendSpace2DEditor : public AnimationTreeNodeEditorPlugin {
 	void _labels_changed(String);
 	void _snap_toggled();
 
-	PopupMenu *menu;
-	PopupMenu *animations_menu;
+	PopupMenu *menu = nullptr;
+	PopupMenu *animations_menu = nullptr;
 	Vector<String> animations_to_add;
 	Vector2 add_point_pos;
 	Vector<Vector2> points;
@@ -123,7 +123,7 @@ class AnimationNodeBlendSpace2DEditor : public AnimationTreeNodeEditorPlugin {
 
 	StringName get_blend_position_path() const;
 
-	EditorFileDialog *open_file;
+	EditorFileDialog *open_file = nullptr;
 	Ref<AnimationNode> file_loaded;
 	void _file_opened(const String &p_file);
 

+ 9 - 9
editor/plugins/animation_blend_tree_editor_plugin.h

@@ -47,19 +47,19 @@ class AnimationNodeBlendTreeEditor : public AnimationTreeNodeEditorPlugin {
 	GDCLASS(AnimationNodeBlendTreeEditor, AnimationTreeNodeEditorPlugin);
 
 	Ref<AnimationNodeBlendTree> blend_tree;
-	GraphEdit *graph;
-	MenuButton *add_node;
+	GraphEdit *graph = nullptr;
+	MenuButton *add_node = nullptr;
 	Vector2 position_from_popup_menu;
 	bool use_position_from_popup_menu;
 
-	PanelContainer *error_panel;
-	Label *error_label;
+	PanelContainer *error_panel = nullptr;
+	Label *error_label = nullptr;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
-	AcceptDialog *filter_dialog;
-	Tree *filters;
-	CheckBox *filter_enabled;
+	AcceptDialog *filter_dialog = nullptr;
+	Tree *filters = nullptr;
+	CheckBox *filter_enabled = nullptr;
 
 	Map<StringName, ProgressBar *> animations;
 	Vector<EditorProperty *> visible_properties;
@@ -122,7 +122,7 @@ class AnimationNodeBlendTreeEditor : public AnimationTreeNodeEditorPlugin {
 	void _update_editor_settings();
 	void _update_theme();
 
-	EditorFileDialog *open_file;
+	EditorFileDialog *open_file = nullptr;
 	Ref<AnimationNode> file_loaded;
 	void _file_opened(const String &p_file);
 

+ 25 - 25
editor/plugins/animation_player_editor_plugin.h

@@ -46,8 +46,8 @@ class AnimationPlayerEditorPlugin;
 class AnimationPlayerEditor : public VBoxContainer {
 	GDCLASS(AnimationPlayerEditor, VBoxContainer);
 
-	AnimationPlayerEditorPlugin *plugin;
-	AnimationPlayer *player;
+	AnimationPlayerEditorPlugin *plugin = nullptr;
+	AnimationPlayer *player = nullptr;
 
 	enum {
 		TOOL_NEW_ANIM,
@@ -88,31 +88,31 @@ class AnimationPlayerEditor : public VBoxContainer {
 		RESOURCE_SAVE
 	};
 
-	OptionButton *animation;
-	Button *stop;
-	Button *play;
-	Button *play_from;
-	Button *play_bw;
-	Button *play_bw_from;
-	Button *autoplay;
-
-	MenuButton *tool_anim;
-	Button *onion_toggle;
-	MenuButton *onion_skinning;
-	Button *pin;
-	SpinBox *frame;
-	LineEdit *scale;
-	LineEdit *name;
-	Label *name_title;
-	UndoRedo *undo_redo;
+	OptionButton *animation = nullptr;
+	Button *stop = nullptr;
+	Button *play = nullptr;
+	Button *play_from = nullptr;
+	Button *play_bw = nullptr;
+	Button *play_bw_from = nullptr;
+	Button *autoplay = nullptr;
+
+	MenuButton *tool_anim = nullptr;
+	Button *onion_toggle = nullptr;
+	MenuButton *onion_skinning = nullptr;
+	Button *pin = nullptr;
+	SpinBox *frame = nullptr;
+	LineEdit *scale = nullptr;
+	LineEdit *name = nullptr;
+	Label *name_title = nullptr;
+	UndoRedo *undo_redo = nullptr;
 	Ref<Texture2D> autoplay_icon;
 	Ref<Texture2D> reset_icon;
 	Ref<ImageTexture> autoplay_reset_icon;
 	bool last_active;
 	float timeline_position;
 
-	EditorFileDialog *file;
-	ConfirmationDialog *delete_dialog;
+	EditorFileDialog *file = nullptr;
+	ConfirmationDialog *delete_dialog = nullptr;
 
 	struct BlendEditor {
 		AcceptDialog *dialog = nullptr;
@@ -121,14 +121,14 @@ class AnimationPlayerEditor : public VBoxContainer {
 
 	} blend_editor;
 
-	ConfirmationDialog *name_dialog;
-	ConfirmationDialog *error_dialog;
+	ConfirmationDialog *name_dialog = nullptr;
+	ConfirmationDialog *error_dialog = nullptr;
 	int name_dialog_op = TOOL_NEW_ANIM;
 
 	bool updating;
 	bool updating_blends;
 
-	AnimationTrackEditor *track_editor;
+	AnimationTrackEditor *track_editor = nullptr;
 	static AnimationPlayerEditor *singleton;
 
 	// Onion skinning.
@@ -250,7 +250,7 @@ public:
 class AnimationPlayerEditorPlugin : public EditorPlugin {
 	GDCLASS(AnimationPlayerEditorPlugin, EditorPlugin);
 
-	AnimationPlayerEditor *anim_editor;
+	AnimationPlayerEditor *anim_editor = nullptr;
 
 protected:
 	void _notification(int p_what);

+ 22 - 22
editor/plugins/animation_state_machine_editor.h

@@ -47,36 +47,36 @@ class AnimationNodeStateMachineEditor : public AnimationTreeNodeEditorPlugin {
 
 	Ref<AnimationNodeStateMachine> state_machine;
 
-	Button *tool_select;
-	Button *tool_create;
-	Button *tool_connect;
-	Popup *name_edit_popup;
-	LineEdit *name_edit;
+	Button *tool_select = nullptr;
+	Button *tool_create = nullptr;
+	Button *tool_connect = nullptr;
+	Popup *name_edit_popup = nullptr;
+	LineEdit *name_edit = nullptr;
 
-	HBoxContainer *tool_erase_hb;
-	Button *tool_erase;
-	Button *tool_autoplay;
-	Button *tool_end;
+	HBoxContainer *tool_erase_hb = nullptr;
+	Button *tool_erase = nullptr;
+	Button *tool_autoplay = nullptr;
+	Button *tool_end = nullptr;
 
-	OptionButton *transition_mode;
-	OptionButton *play_mode;
+	OptionButton *transition_mode = nullptr;
+	OptionButton *play_mode = nullptr;
 
-	PanelContainer *panel;
+	PanelContainer *panel = nullptr;
 
 	StringName selected_node;
 
-	HScrollBar *h_scroll;
-	VScrollBar *v_scroll;
+	HScrollBar *h_scroll = nullptr;
+	VScrollBar *v_scroll = nullptr;
 
-	Control *state_machine_draw;
-	Control *state_machine_play_pos;
+	Control *state_machine_draw = nullptr;
+	Control *state_machine_play_pos = nullptr;
 
-	PanelContainer *error_panel;
-	Label *error_label;
+	PanelContainer *error_panel = nullptr;
+	Label *error_label = nullptr;
 
 	bool updating;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	static AnimationNodeStateMachineEditor *singleton;
 
@@ -87,8 +87,8 @@ class AnimationNodeStateMachineEditor : public AnimationTreeNodeEditorPlugin {
 
 	void _update_graph();
 
-	PopupMenu *menu;
-	PopupMenu *animations_menu;
+	PopupMenu *menu = nullptr;
+	PopupMenu *animations_menu = nullptr;
 	Vector<String> animations_to_add;
 
 	Vector2 add_node_pos;
@@ -166,7 +166,7 @@ class AnimationNodeStateMachineEditor : public AnimationTreeNodeEditorPlugin {
 	float error_time;
 	String error_text;
 
-	EditorFileDialog *open_file;
+	EditorFileDialog *open_file = nullptr;
 	Ref<AnimationNode> file_loaded;
 	void _file_opened(const String &p_file);
 

+ 6 - 6
editor/plugins/animation_tree_editor_plugin.h

@@ -52,11 +52,11 @@ public:
 class AnimationTreeEditor : public VBoxContainer {
 	GDCLASS(AnimationTreeEditor, VBoxContainer);
 
-	ScrollContainer *path_edit;
-	HBoxContainer *path_hb;
+	ScrollContainer *path_edit = nullptr;
+	HBoxContainer *path_hb = nullptr;
 
-	AnimationTree *tree;
-	MarginContainer *editor_base;
+	AnimationTree *tree = nullptr;
+	MarginContainer *editor_base = nullptr;
 
 	Vector<String> button_path;
 	Vector<String> edited_path;
@@ -96,8 +96,8 @@ public:
 class AnimationTreeEditorPlugin : public EditorPlugin {
 	GDCLASS(AnimationTreeEditorPlugin, EditorPlugin);
 
-	AnimationTreeEditor *anim_tree_editor;
-	Button *button;
+	AnimationTreeEditor *anim_tree_editor = nullptr;
+	Button *button = nullptr;
 
 public:
 	virtual String get_name() const override { return "AnimationTree"; }

+ 50 - 50
editor/plugins/asset_library_editor_plugin.h

@@ -53,12 +53,12 @@
 class EditorAssetLibraryItem : public PanelContainer {
 	GDCLASS(EditorAssetLibraryItem, PanelContainer);
 
-	TextureButton *icon;
-	LinkButton *title;
-	LinkButton *category;
-	LinkButton *author;
+	TextureButton *icon = nullptr;
+	LinkButton *title = nullptr;
+	LinkButton *category = nullptr;
+	LinkButton *author = nullptr;
 	TextureRect *stars[5];
-	Label *price;
+	Label *price = nullptr;
 
 	int asset_id;
 	int category_id;
@@ -83,11 +83,11 @@ public:
 class EditorAssetLibraryItemDescription : public ConfirmationDialog {
 	GDCLASS(EditorAssetLibraryItemDescription, ConfirmationDialog);
 
-	EditorAssetLibraryItem *item;
-	RichTextLabel *description;
-	ScrollContainer *previews;
-	HBoxContainer *preview_hb;
-	PanelContainer *previews_bg;
+	EditorAssetLibraryItem *item = nullptr;
+	RichTextLabel *description = nullptr;
+	ScrollContainer *previews = nullptr;
+	HBoxContainer *preview_hb = nullptr;
+	PanelContainer *previews_bg = nullptr;
 
 	struct Preview {
 		int id = 0;
@@ -98,7 +98,7 @@ class EditorAssetLibraryItemDescription : public ConfirmationDialog {
 	};
 
 	Vector<Preview> preview_images;
-	TextureRect *preview;
+	TextureRect *preview = nullptr;
 
 	void set_image(int p_type, int p_index, const Ref<Texture2D> &p_image);
 
@@ -130,19 +130,19 @@ public:
 class EditorAssetLibraryItemDownload : public MarginContainer {
 	GDCLASS(EditorAssetLibraryItemDownload, MarginContainer);
 
-	PanelContainer *panel;
-	TextureRect *icon;
-	Label *title;
-	ProgressBar *progress;
-	Button *install_button;
-	Button *retry_button;
-	TextureButton *dismiss_button;
+	PanelContainer *panel = nullptr;
+	TextureRect *icon = nullptr;
+	Label *title = nullptr;
+	ProgressBar *progress = nullptr;
+	Button *install_button = nullptr;
+	Button *retry_button = nullptr;
+	TextureButton *dismiss_button = nullptr;
 
-	AcceptDialog *download_error;
-	HTTPRequest *download;
+	AcceptDialog *download_error = nullptr;
+	HTTPRequest *download = nullptr;
 	String host;
 	String sha256;
-	Label *status;
+	Label *status = nullptr;
 
 	int prev_status;
 
@@ -150,7 +150,7 @@ class EditorAssetLibraryItemDownload : public MarginContainer {
 
 	bool external_install;
 
-	EditorAssetInstaller *asset_installer;
+	EditorAssetInstaller *asset_installer = nullptr;
 
 	void _close();
 	void _make_request();
@@ -176,35 +176,35 @@ class EditorAssetLibrary : public PanelContainer {
 
 	String host;
 
-	EditorFileDialog *asset_open;
-	EditorAssetInstaller *asset_installer;
+	EditorFileDialog *asset_open = nullptr;
+	EditorAssetInstaller *asset_installer = nullptr;
 
 	void _asset_open();
 	void _asset_file_selected(const String &p_file);
 	void _update_repository_options();
 
-	PanelContainer *library_scroll_bg;
-	ScrollContainer *library_scroll;
-	VBoxContainer *library_vb;
-	Label *library_loading;
-	Label *library_error;
-	LineEdit *filter;
-	Timer *filter_debounce_timer;
-	OptionButton *categories;
-	OptionButton *repository;
-	OptionButton *sort;
-	HBoxContainer *error_hb;
-	TextureRect *error_tr;
-	Label *error_label;
-	MenuButton *support;
-
-	HBoxContainer *contents;
-
-	HBoxContainer *asset_top_page;
-	GridContainer *asset_items;
-	HBoxContainer *asset_bottom_page;
-
-	HTTPRequest *request;
+	PanelContainer *library_scroll_bg = nullptr;
+	ScrollContainer *library_scroll = nullptr;
+	VBoxContainer *library_vb = nullptr;
+	Label *library_loading = nullptr;
+	Label *library_error = nullptr;
+	LineEdit *filter = nullptr;
+	Timer *filter_debounce_timer = nullptr;
+	OptionButton *categories = nullptr;
+	OptionButton *repository = nullptr;
+	OptionButton *sort = nullptr;
+	HBoxContainer *error_hb = nullptr;
+	TextureRect *error_tr = nullptr;
+	Label *error_label = nullptr;
+	MenuButton *support = nullptr;
+
+	HBoxContainer *contents = nullptr;
+
+	HBoxContainer *asset_top_page = nullptr;
+	GridContainer *asset_items = nullptr;
+	HBoxContainer *asset_bottom_page = nullptr;
+
+	HTTPRequest *request = nullptr;
 
 	bool templates_only;
 	bool initial_loading;
@@ -260,7 +260,7 @@ class EditorAssetLibrary : public PanelContainer {
 	HBoxContainer *_make_pages(int p_page, int p_page_count, int p_page_len, int p_total_items, int p_current_items);
 
 	//
-	EditorAssetLibraryItemDescription *description;
+	EditorAssetLibraryItemDescription *description = nullptr;
 	//
 
 	enum RequestType {
@@ -273,8 +273,8 @@ class EditorAssetLibrary : public PanelContainer {
 	RequestType requesting;
 	Dictionary category_map;
 
-	ScrollContainer *downloads_scroll;
-	HBoxContainer *downloads_hb;
+	ScrollContainer *downloads_scroll = nullptr;
+	HBoxContainer *downloads_hb = nullptr;
 
 	void _install_asset();
 
@@ -315,7 +315,7 @@ public:
 class AssetLibraryEditorPlugin : public EditorPlugin {
 	GDCLASS(AssetLibraryEditorPlugin, EditorPlugin);
 
-	EditorAssetLibrary *addon_library;
+	EditorAssetLibrary *addon_library = nullptr;
 
 public:
 	virtual String get_name() const override { return "AssetLib"; }

+ 1 - 1
editor/plugins/audio_stream_editor_plugin.h

@@ -75,7 +75,7 @@ public:
 class AudioStreamEditorPlugin : public EditorPlugin {
 	GDCLASS(AudioStreamEditorPlugin, EditorPlugin);
 
-	AudioStreamEditor *audio_editor;
+	AudioStreamEditor *audio_editor = nullptr;
 
 public:
 	virtual String get_name() const override { return "Audio"; }

+ 3 - 3
editor/plugins/camera_3d_editor_plugin.h

@@ -37,9 +37,9 @@
 class Camera3DEditor : public Control {
 	GDCLASS(Camera3DEditor, Control);
 
-	Panel *panel;
-	Button *preview;
-	Node *node;
+	Panel *panel = nullptr;
+	Button *preview = nullptr;
+	Node *node = nullptr;
 
 	void _pressed();
 

+ 58 - 58
editor/plugins/canvas_item_editor_plugin.h

@@ -183,16 +183,16 @@ private:
 	bool selection_menu_additive_selection;
 
 	Tool tool = TOOL_SELECT;
-	Control *viewport;
-	Control *viewport_scrollable;
+	Control *viewport = nullptr;
+	Control *viewport_scrollable = nullptr;
 
-	HScrollBar *h_scroll;
-	VScrollBar *v_scroll;
-	HBoxContainer *hb;
+	HScrollBar *h_scroll = nullptr;
+	VScrollBar *v_scroll = nullptr;
+	HBoxContainer *hb = nullptr;
 	// Used for secondary menu items which are displayed depending on the currently selected node
 	// (such as MeshInstance's "Mesh" menu).
-	PanelContainer *context_menu_container;
-	HBoxContainer *hbc_context_menu;
+	PanelContainer *context_menu_container = nullptr;
+	HBoxContainer *hbc_context_menu = nullptr;
 
 	Transform2D transform;
 	GridVisibility grid_visibility = GRID_VISIBILITY_SHOW_WHEN_SNAPPING;
@@ -293,47 +293,47 @@ private:
 	};
 	List<PoseClipboard> pose_clipboard;
 
-	Button *select_button;
+	Button *select_button = nullptr;
 
-	Button *move_button;
-	Button *scale_button;
-	Button *rotate_button;
+	Button *move_button = nullptr;
+	Button *scale_button = nullptr;
+	Button *rotate_button = nullptr;
 
-	Button *list_select_button;
-	Button *pivot_button;
-	Button *pan_button;
+	Button *list_select_button = nullptr;
+	Button *pivot_button = nullptr;
+	Button *pan_button = nullptr;
 
-	Button *ruler_button;
+	Button *ruler_button = nullptr;
 
-	Button *smart_snap_button;
-	Button *grid_snap_button;
-	MenuButton *snap_config_menu;
-	PopupMenu *smartsnap_config_popup;
+	Button *smart_snap_button = nullptr;
+	Button *grid_snap_button = nullptr;
+	MenuButton *snap_config_menu = nullptr;
+	PopupMenu *smartsnap_config_popup = nullptr;
 
-	Button *lock_button;
-	Button *unlock_button;
+	Button *lock_button = nullptr;
+	Button *unlock_button = nullptr;
 
-	Button *group_button;
-	Button *ungroup_button;
+	Button *group_button = nullptr;
+	Button *ungroup_button = nullptr;
 
-	MenuButton *skeleton_menu;
-	Button *override_camera_button;
-	MenuButton *view_menu;
-	PopupMenu *grid_menu;
-	HBoxContainer *animation_hb;
-	MenuButton *animation_menu;
+	MenuButton *skeleton_menu = nullptr;
+	Button *override_camera_button = nullptr;
+	MenuButton *view_menu = nullptr;
+	PopupMenu *grid_menu = nullptr;
+	HBoxContainer *animation_hb = nullptr;
+	MenuButton *animation_menu = nullptr;
 
-	Button *key_loc_button;
-	Button *key_rot_button;
-	Button *key_scale_button;
-	Button *key_insert_button;
-	Button *key_auto_insert_button;
+	Button *key_loc_button = nullptr;
+	Button *key_rot_button = nullptr;
+	Button *key_scale_button = nullptr;
+	Button *key_insert_button = nullptr;
+	Button *key_auto_insert_button = nullptr;
 
-	PopupMenu *selection_menu;
-	PopupMenu *add_node_menu;
+	PopupMenu *selection_menu = nullptr;
+	PopupMenu *add_node_menu = nullptr;
 
-	Control *top_ruler;
-	Control *left_ruler;
+	Control *top_ruler = nullptr;
+	Control *left_ruler = nullptr;
 
 	Point2 drag_start_origin;
 	DragType drag_type = DRAG_NONE;
@@ -374,9 +374,9 @@ private:
 	void _find_canvas_items_in_rect(const Rect2 &p_rect, Node *p_node, List<CanvasItem *> *r_items, const Transform2D &p_parent_xform = Transform2D(), const Transform2D &p_canvas_xform = Transform2D());
 	bool _select_click_on_item(CanvasItem *item, Point2 p_click_pos, bool p_append);
 
-	ConfirmationDialog *snap_dialog;
+	ConfirmationDialog *snap_dialog = nullptr;
 
-	CanvasItem *ref_item;
+	CanvasItem *ref_item = nullptr;
 
 	void _save_canvas_item_state(List<CanvasItem *> p_canvas_items, bool save_bones = false);
 	void _restore_canvas_item_state(List<CanvasItem *> p_canvas_items, bool restore_bones = false);
@@ -400,7 +400,7 @@ private:
 	void _prepare_grid_menu();
 	void _on_grid_menu_id_pressed(int p_id);
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 
 	List<CanvasItem *> _get_edited_canvas_items(bool retrieve_locked = false, bool remove_canvas_item_if_parent_in_selection = true);
 	Rect2 _get_encompassing_rect_from_list(List<CanvasItem *> p_list);
@@ -476,8 +476,8 @@ private:
 			const SnapTarget p_snap_target, List<const CanvasItem *> p_exceptions,
 			const Node *p_current);
 
-	VBoxContainer *controls_vb;
-	EditorZoomWidget *zoom_widget;
+	VBoxContainer *controls_vb = nullptr;
+	EditorZoomWidget *zoom_widget = nullptr;
 	void _update_zoom(real_t p_zoom);
 	void _shortcut_zoom_set(real_t p_zoom);
 	void _zoom_on_position(real_t p_zoom, Point2 p_position = Point2());
@@ -488,9 +488,9 @@ private:
 
 	void _update_override_camera_button(bool p_game_running);
 
-	HSplitContainer *left_panel_split;
-	HSplitContainer *right_panel_split;
-	VSplitContainer *bottom_split;
+	HSplitContainer *left_panel_split = nullptr;
+	HSplitContainer *right_panel_split = nullptr;
+	VSplitContainer *bottom_split = nullptr;
 
 	void _update_context_menu_stylebox();
 
@@ -555,7 +555,7 @@ public:
 
 	void focus_selection();
 
-	EditorSelection *editor_selection;
+	EditorSelection *editor_selection = nullptr;
 
 	CanvasItemEditor();
 };
@@ -563,7 +563,7 @@ public:
 class CanvasItemEditorPlugin : public EditorPlugin {
 	GDCLASS(CanvasItemEditorPlugin, EditorPlugin);
 
-	CanvasItemEditor *canvas_item_editor;
+	CanvasItemEditor *canvas_item_editor = nullptr;
 
 public:
 	virtual String get_name() const override { return "2D"; }
@@ -589,18 +589,18 @@ class CanvasItemEditorViewport : public Control {
 	Vector<String> texture_node_types;
 
 	Vector<String> selected_files;
-	Node *target_node;
+	Node *target_node = nullptr;
 	Point2 drop_pos;
 
-	EditorData *editor_data;
-	CanvasItemEditor *canvas_item_editor;
-	Control *preview_node;
-	AcceptDialog *accept;
-	AcceptDialog *selector;
-	Label *selector_label;
-	Label *label;
-	Label *label_desc;
-	VBoxContainer *btn_group;
+	EditorData *editor_data = nullptr;
+	CanvasItemEditor *canvas_item_editor = nullptr;
+	Control *preview_node = nullptr;
+	AcceptDialog *accept = nullptr;
+	AcceptDialog *selector = nullptr;
+	Label *selector_label = nullptr;
+	Label *label = nullptr;
+	Label *label_desc = nullptr;
+	VBoxContainer *btn_group = nullptr;
 	Ref<ButtonGroup> button_group;
 
 	void _on_mouse_exit();

+ 1 - 1
editor/plugins/collision_polygon_2d_editor_plugin.h

@@ -37,7 +37,7 @@
 class CollisionPolygon2DEditor : public AbstractPolygon2DEditor {
 	GDCLASS(CollisionPolygon2DEditor, AbstractPolygon2DEditor);
 
-	CollisionPolygon2D *node;
+	CollisionPolygon2D *node = nullptr;
 
 protected:
 	virtual Node2D *_get_node() const override;

+ 4 - 4
editor/plugins/collision_shape_2d_editor_plugin.h

@@ -61,9 +61,9 @@ class CollisionShape2DEditor : public Control {
 		Point2(1, -1),
 	};
 
-	UndoRedo *undo_redo;
-	CanvasItemEditor *canvas_item_editor;
-	CollisionShape2D *node;
+	UndoRedo *undo_redo = nullptr;
+	CanvasItemEditor *canvas_item_editor = nullptr;
+	CollisionShape2D *node = nullptr;
 
 	Vector<Point2> handles;
 
@@ -96,7 +96,7 @@ public:
 class CollisionShape2DEditorPlugin : public EditorPlugin {
 	GDCLASS(CollisionShape2DEditorPlugin, EditorPlugin);
 
-	CollisionShape2DEditor *collision_shape_2d_editor;
+	CollisionShape2DEditor *collision_shape_2d_editor = nullptr;
 
 public:
 	virtual bool forward_canvas_gui_input(const Ref<InputEvent> &p_event) override { return collision_shape_2d_editor->forward_canvas_gui_input(p_event); }

+ 12 - 12
editor/plugins/control_editor_plugin.h

@@ -70,7 +70,7 @@ public:
 
 class EditorPropertyAnchorsPreset : public EditorProperty {
 	GDCLASS(EditorPropertyAnchorsPreset, EditorProperty);
-	OptionButton *options;
+	OptionButton *options = nullptr;
 
 	void _option_selected(int p_which);
 
@@ -94,9 +94,9 @@ class EditorPropertySizeFlags : public EditorProperty {
 		SIZE_FLAGS_PRESET_CUSTOM,
 	};
 
-	OptionButton *flag_presets;
-	CheckBox *flag_expand;
-	VBoxContainer *flag_options;
+	OptionButton *flag_presets = nullptr;
+	CheckBox *flag_expand = nullptr;
+	VBoxContainer *flag_options = nullptr;
 	Vector<CheckBox *> flag_checks;
 
 	bool vertical = false;
@@ -128,8 +128,8 @@ public:
 class ControlEditorToolbar : public HBoxContainer {
 	GDCLASS(ControlEditorToolbar, HBoxContainer);
 
-	UndoRedo *undo_redo;
-	EditorSelection *editor_selection;
+	UndoRedo *undo_redo = nullptr;
+	EditorSelection *editor_selection = nullptr;
 
 	enum MenuOption {
 		ANCHORS_AND_OFFSETS_PRESET_TOP_LEFT,
@@ -198,12 +198,12 @@ class ControlEditorToolbar : public HBoxContainer {
 		CONTAINERS_V_PRESET_SHRINK_END,
 	};
 
-	MenuButton *anchor_presets_menu;
-	PopupMenu *anchors_popup;
-	MenuButton *container_h_presets_menu;
-	MenuButton *container_v_presets_menu;
+	MenuButton *anchor_presets_menu = nullptr;
+	PopupMenu *anchors_popup = nullptr;
+	MenuButton *container_h_presets_menu = nullptr;
+	MenuButton *container_v_presets_menu = nullptr;
 
-	Button *anchor_mode_button;
+	Button *anchor_mode_button = nullptr;
 
 	bool anchors_mode = false;
 
@@ -239,7 +239,7 @@ public:
 class ControlEditorPlugin : public EditorPlugin {
 	GDCLASS(ControlEditorPlugin, EditorPlugin);
 
-	ControlEditorToolbar *toolbar;
+	ControlEditorToolbar *toolbar = nullptr;
 
 public:
 	virtual String get_name() const override { return "Control"; }

+ 9 - 9
editor/plugins/cpu_particles_2d_editor_plugin.h

@@ -55,22 +55,22 @@ class CPUParticles2DEditorPlugin : public EditorPlugin {
 		EMISSION_MODE_BORDER_DIRECTED
 	};
 
-	CPUParticles2D *particles;
+	CPUParticles2D *particles = nullptr;
 
-	EditorFileDialog *file;
+	EditorFileDialog *file = nullptr;
 
-	HBoxContainer *toolbar;
-	MenuButton *menu;
+	HBoxContainer *toolbar = nullptr;
+	MenuButton *menu = nullptr;
 
-	SpinBox *epoints;
+	SpinBox *epoints = nullptr;
 
-	ConfirmationDialog *emission_mask;
-	OptionButton *emission_mask_mode;
-	CheckBox *emission_colors;
+	ConfirmationDialog *emission_mask = nullptr;
+	OptionButton *emission_mask_mode = nullptr;
+	CheckBox *emission_colors = nullptr;
 
 	String source_emission_file;
 
-	UndoRedo *undo_redo;
+	UndoRedo *undo_redo = nullptr;
 	void _file_selected(const String &p_file);
 	void _menu_callback(int p_idx);
 	void _generate_emission_mask();

Some files were not shown because too many files changed in this diff