Project

General

Profile

« Previous | Next » 

Revision 224c0ff1

Added by Leszek Koltunski about 2 months ago

New TwistyObject API to only restore the stickers, and not the object positions.

View differences:

src/main/java/org/distorted/objectlib/main/ObjectControl.java
864 864
        }
865 865
      }
866 866

  
867
///////////////////////////////////////////////////////////////////////////////////////////////////
868

  
869
    public void restoreStickers()
870
      {
871
      mPreRender.restoreStickers(mOS);
872
      }
873

  
867 874
///////////////////////////////////////////////////////////////////////////////////////////////////
868 875

  
869 876
    public boolean retLocked()
src/main/java/org/distorted/objectlib/main/ObjectPreRender.java
60 60
  private float mFinishAngle, mAvgSpeed;
61 61
  private long mScrambleStartTime, mScrambleEndTime;
62 62
  private int mIconMode;
63
  private boolean mRestoreStickersOnly;
63 64

  
64 65
  // debugging only
65 66
  private long mAddRotationTime;
......
140 141

  
141 142
        if( mOS!=null )
142 143
          {
143
          mNewObject.restorePreferences(mOS);
144
          if( mRestoreStickersOnly ) mNewObject.restoreStickers(mOS);
145
          else                       mNewObject.restorePreferences(mOS);
146

  
144 147
          mOS = null;
145 148
          }
146 149

  
......
556 559

  
557 560
  public void restorePreferences(OperatingSystemInterface os)
558 561
    {
562
    mRestoreStickersOnly = false;
563
    mOS = os;
564
    }
565

  
566
///////////////////////////////////////////////////////////////////////////////////////////////////
567

  
568
  public void restoreStickers(OperatingSystemInterface os)
569
    {
570
    mRestoreStickersOnly = true;
559 571
    mOS = os;
560 572
    }
561 573

  
src/main/java/org/distorted/objectlib/main/TwistyObject.java
1416 1416
      }
1417 1417
    }
1418 1418

  
1419
///////////////////////////////////////////////////////////////////////////////////////////////////
1420

  
1421

  
1419 1422
///////////////////////////////////////////////////////////////////////////////////////////////////
1420 1423

  
1421 1424
  synchronized void restorePreferences(OperatingSystemInterface os)
......
1474 1477
      }
1475 1478
    }
1476 1479

  
1480
///////////////////////////////////////////////////////////////////////////////////////////////////
1481

  
1482
  synchronized void restoreStickers(OperatingSystemInterface os)
1483
    {
1484
    String key = getShortName();
1485
    mTextureBorderMultiplier = os.getFloat(key+"_border", 1.0f);
1486
    mTextureCornerMultiplier = os.getFloat(key+"_corner", 1.0f);
1487
    String colors = os.getString(key+"_colors", null);
1488
    boolean different = false;
1489

  
1490
    if( colors!=null ) different = restoreColors(colors,mColorTable);
1491

  
1492
    if( different || mTextureBorderMultiplier!=1.0f || mTextureCornerMultiplier!=1.0f )
1493
      {
1494
      createTexture(mTextureBorderMultiplier,mTextureCornerMultiplier);
1495
      setTexture();
1496
      mSolved.setPuzzleFaceColor(mColorTable);
1497
      }
1498
    }
1499

  
1500

  
1477 1501
///////////////////////////////////////////////////////////////////////////////////////////////////
1478 1502

  
1479 1503
  void savePreferences(OperatingSystemInterface os)

Also available in: Unified diff