summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/editor/editor_settings.cpp2
-rw-r--r--tools/editor/plugins/editor_preview_plugins.cpp10
-rw-r--r--tools/editor/plugins/sample_editor_plugin.cpp14
-rw-r--r--tools/editor/plugins/spatial_editor_plugin.cpp2
-rw-r--r--tools/editor/scene_tree_dock.cpp12
5 files changed, 26 insertions, 14 deletions
diff --git a/tools/editor/editor_settings.cpp b/tools/editor/editor_settings.cpp
index 0fffaca782..49a1158ec6 100644
--- a/tools/editor/editor_settings.cpp
+++ b/tools/editor/editor_settings.cpp
@@ -583,7 +583,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) {
set("3d_editor/zoom_modifier",4);
hints["3d_editor/zoom_modifier"]=PropertyInfo(Variant::INT,"3d_editor/zoom_modifier",PROPERTY_HINT_ENUM,"None,Shift,Alt,Meta,Ctrl");
set("3d_editor/emulate_numpad",false);
- set("3d_editor/trackpad_hint", false);
+ set("3d_editor/emulate_3_button_mouse", false);
set("2d_editor/bone_width",5);
set("2d_editor/bone_color1",Color(1.0,1.0,1.0,0.9));
diff --git a/tools/editor/plugins/editor_preview_plugins.cpp b/tools/editor/plugins/editor_preview_plugins.cpp
index f5470451ba..a057e6c2a1 100644
--- a/tools/editor/plugins/editor_preview_plugins.cpp
+++ b/tools/editor/plugins/editor_preview_plugins.cpp
@@ -669,7 +669,7 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) {
for(int j=0;j<h;j++) {
float v = (j/(float)h) * 2.0 - 1.0;
- uint8_t* imgofs = &imgw[(j*w+i)*3];
+ uint8_t* imgofs = &imgw[(uint64_t(j)*w+i)*3];
if (v>min[0] && v<max[0]) {
imgofs[0]=255;
imgofs[1]=150;
@@ -687,8 +687,8 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) {
float max[2]={-1e10,-1e10};
float min[2]={1e10,1e10};
int c=stereo?2:1;
- int from = i*len/w;
- int to = (i+1)*len/w;
+ int from = uint64_t(i)*len/w;
+ int to = (uint64_t(i)+1)*len/w;
if (to>=len)
to=len-1;
@@ -699,7 +699,7 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) {
for(int k=from;k<=to;k++) {
- float v = src[k*c+j]/32768.0;
+ float v = src[uint64_t(k)*c+j]/32768.0;
if (v>max[j])
max[j]=v;
if (v<min[j])
@@ -715,7 +715,7 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) {
for(int k=from;k<=to;k++) {
- float v = src[k*c+j]/128.0;
+ float v = src[uint64_t(k)*c+j]/128.0;
if (v>max[j])
max[j]=v;
if (v<min[j])
diff --git a/tools/editor/plugins/sample_editor_plugin.cpp b/tools/editor/plugins/sample_editor_plugin.cpp
index a3891a648b..b094184a29 100644
--- a/tools/editor/plugins/sample_editor_plugin.cpp
+++ b/tools/editor/plugins/sample_editor_plugin.cpp
@@ -211,7 +211,7 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag
for(int j=0;j<h;j++) {
float v = (j/(float)h) * 2.0 - 1.0;
- uint8_t* imgofs = &imgw[(j*w+i)*3];
+ uint8_t* imgofs = &imgw[(uint64_t(j)*w+i)*3];
if (v>min[0] && v<max[0]) {
imgofs[0]=255;
imgofs[1]=150;
@@ -229,8 +229,8 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag
float max[2]={-1e10,-1e10};
float min[2]={1e10,1e10};
int c=stereo?2:1;
- int from = i*len/w;
- int to = (i+1)*len/w;
+ int from = uint64_t(i)*len/w;
+ int to = (uint64_t(i)+1)*len/w;
if (to>=len)
to=len-1;
@@ -241,7 +241,7 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag
for(int k=from;k<=to;k++) {
- float v = src[k*c+j]/32768.0;
+ float v = src[uint64_t(k)*c+j]/32768.0;
if (v>max[j])
max[j]=v;
if (v<min[j])
@@ -257,7 +257,7 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag
for(int k=from;k<=to;k++) {
- float v = src[k*c+j]/128.0;
+ float v = src[uint64_t(k)*c+j]/128.0;
if (v>max[j])
max[j]=v;
if (v<min[j])
@@ -270,7 +270,7 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag
if (!stereo) {
for(int j=0;j<h;j++) {
float v = (j/(float)h) * 2.0 - 1.0;
- uint8_t* imgofs = &imgw[(j*w+i)*3];
+ uint8_t* imgofs = &imgw[(uint64_t(j)*w+i)*3];
if (v>min[0] && v<max[0]) {
imgofs[0]=255;
imgofs[1]=150;
@@ -297,7 +297,7 @@ void SampleEditor::generate_preview_texture(const Ref<Sample>& p_sample,Ref<Imag
v = ((j-(h/2))/(float)(h/2)) * 2.0 - 1.0;
}
- uint8_t* imgofs = &imgw[(j*w+i)*3];
+ uint8_t* imgofs = &imgw[(uint64_t(j)*w+i)*3];
if (v>min[half] && v<max[half]) {
imgofs[0]=255;
imgofs[1]=150;
diff --git a/tools/editor/plugins/spatial_editor_plugin.cpp b/tools/editor/plugins/spatial_editor_plugin.cpp
index fdb654571a..8d72178f23 100644
--- a/tools/editor/plugins/spatial_editor_plugin.cpp
+++ b/tools/editor/plugins/spatial_editor_plugin.cpp
@@ -1580,7 +1580,7 @@ void SpatialEditorViewport::_sinput(const InputEvent &p_event) {
nav_mode = NAVIGATION_PAN;
}
- } else if (EditorSettings::get_singleton()->get("3d_editor/trackpad_hint")) {
+ } else if (EditorSettings::get_singleton()->get("3d_editor/emulate_3_button_mouse")) {
// Handle trackpad (no external mouse) use case
int mod = 0;
if (m.mod.shift)
diff --git a/tools/editor/scene_tree_dock.cpp b/tools/editor/scene_tree_dock.cpp
index 69d6d97980..30ffdf6664 100644
--- a/tools/editor/scene_tree_dock.cpp
+++ b/tools/editor/scene_tree_dock.cpp
@@ -1388,6 +1388,13 @@ void SceneTreeDock::_create() {
}
String newname=n->get_name();
+
+ List<Node*> to_erase;
+ for(int i=0;i<n->get_child_count();i++) {
+ if (n->get_child(i)->get_owner()==NULL && n->is_owned_by_parent()) {
+ to_erase.push_back(n->get_child(i));
+ }
+ }
n->replace_by(newnode,true);
if (n==edited_scene) {
@@ -1408,6 +1415,11 @@ void SceneTreeDock::_create() {
memdelete(n);
+ while(to_erase.front()) {
+ memdelete(to_erase.front()->get());
+ to_erase.pop_front();
+ }
+
}