Jelajahi Sumber

Another fix for BitmapText cloning where the regular clone() was
completely bypassing the JME cloner framework... and making a bad
clone.

Paul Speed 8 tahun lalu
induk
melakukan
735397f16e
1 mengubah file dengan 2 tambahan dan 8 penghapusan
  1. 2 8
      jme3-core/src/main/java/com/jme3/font/BitmapText.java

+ 2 - 8
jme3-core/src/main/java/com/jme3/font/BitmapText.java

@@ -76,13 +76,7 @@ public class BitmapText extends Node {
 
     @Override
     public BitmapText clone() {
-        BitmapText clone = (BitmapText) super.clone();
-        for (int i = 0; i < textPages.length; i++) {
-            clone.textPages[i] = textPages[i].clone();
-        }
-        clone.block = block.clone();
-        clone.needRefresh = true;
-        return clone;
+        return (BitmapText)super.clone(false);
     }
 
     /**
@@ -105,7 +99,7 @@ public class BitmapText extends Node {
         // Change in behavior: The 'letters' field was not cloned or recreated
         // before.  I'm not sure how this worked and suspect BitmapText was just
         // not cloneable if you planned to change the text later. -pspeed
-        this.letters = new Letters(font, this.block, letters.getQuad().isRightToLeft());
+        this.letters = new Letters(font, block, letters.getQuad().isRightToLeft());
 
         // Just noticed BitmapText is not even writable/readable really...
         // so I guess cloning doesn't come up that often.