commit 318c0a7d0608970f7fd2384d4eb3f39f06dae880
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Fri Oct 1 16:33:33 2021 +0200

    Reename ObjectList to a more logical ObjectType.

diff --git a/src/main/java/org/distorted/dialogs/RubikDialogNewRecord.java b/src/main/java/org/distorted/dialogs/RubikDialogNewRecord.java
index 3c4a49e5..3820317d 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogNewRecord.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogNewRecord.java
@@ -35,8 +35,6 @@ import android.view.Window;
 import android.widget.Button;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
-
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
 import org.distorted.network.RubikScores;
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogPattern.java b/src/main/java/org/distorted/dialogs/RubikDialogPattern.java
index ebcc20fd..585a4cb3 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogPattern.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogPattern.java
@@ -39,7 +39,7 @@ import android.widget.Button;
 import android.widget.ImageView;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
@@ -104,7 +104,7 @@ public class RubikDialogPattern extends AppCompatDialogFragment
 
     for(int i=0; i< RubikPatternList.NUM_OBJECTS; i++)
       {
-      ObjectList list = RubikPatternList.getObject(i);
+      ObjectType list = RubikPatternList.getObject(i);
       int iconSize    = RubikActivity.getDrawableSize();
       int iconID      = list.getIconID(iconSize);
 
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogPatternView.java b/src/main/java/org/distorted/dialogs/RubikDialogPatternView.java
index d5d5e224..fff0fc14 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogPatternView.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogPatternView.java
@@ -26,7 +26,7 @@ import android.view.View;
 import android.widget.ExpandableListView;
 import android.widget.FrameLayout;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
@@ -94,7 +94,7 @@ public class RubikDialogPatternView extends FrameLayout
         {
         RubikPattern pattern = RubikPattern.getInstance();
         int[][] moves   = pattern.reInitialize(mTab, groupPosition, childPosition);
-        ObjectList list = RubikPatternList.getObject(mTab);
+        ObjectType list = RubikPatternList.getObject(mTab);
 
         ract.setupObject(list, moves);
 
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogScores.java b/src/main/java/org/distorted/dialogs/RubikDialogScores.java
index 769480ae..865bcb1e 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogScores.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogScores.java
@@ -38,7 +38,7 @@ import android.widget.Button;
 import android.widget.ImageView;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
@@ -104,12 +104,12 @@ public class RubikDialogScores extends AppCompatDialogFragment
     tabLayout.setupWithViewPager(viewPager);
 
     viewPager.setCurrentItem(curTab);
-    ObjectList list;
+    ObjectType list;
     int iconSize = RubikActivity.getDrawableSize();
 
-    for (int object = 0; object< ObjectList.NUM_OBJECTS; object++)
+    for (int object = 0; object< ObjectType.NUM_OBJECTS; object++)
       {
-      list = ObjectList.getObject(object);
+      list = ObjectType.getObject(object);
       int iconID = list.getIconID(iconSize);
       ImageView imageView = new ImageView(act);
       imageView.setImageResource(iconID);
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java b/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java
index 63bc78bc..b8dc0df3 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java
@@ -30,7 +30,7 @@ import android.view.View;
 import android.view.ViewGroup;
 import android.widget.LinearLayout;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.R;
 import org.distorted.network.RubikScores;
@@ -117,7 +117,7 @@ class RubikDialogScoresPagerAdapter extends PagerAdapter implements RubikNetwork
 
     for(int i=0; i<mNumTabs; i++)
       {
-      lastTab[i]= ObjectList.getDBLevel(i);
+      lastTab[i]= ObjectType.getDBLevel(i);
       maxTab[i] = Math.min(lastTab[i],MAX);
       toDoTab[i]= 0;
 
@@ -208,7 +208,7 @@ class RubikDialogScoresPagerAdapter extends PagerAdapter implements RubikNetwork
     {
     mAct = act;
     mDialog = diag;
-    mNumTabs = ObjectList.NUM_OBJECTS;
+    mNumTabs = ObjectType.NUM_OBJECTS;
     mViews = new RubikDialogScoresView[mNumTabs];
     mViewPager = viewPager;
     mIsSubmitting = isSubmitting;
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java b/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java
index 3fa5e30c..f97f4014 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java
@@ -31,8 +31,6 @@ import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
-
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
 import org.distorted.network.RubikScores;
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogSetName.java b/src/main/java/org/distorted/dialogs/RubikDialogSetName.java
index c1c1cd8e..a085b3fc 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogSetName.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogSetName.java
@@ -38,8 +38,6 @@ import android.widget.Button;
 import android.widget.EditText;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
-
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
 import org.distorted.network.RubikScores;
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogTutorialView.java b/src/main/java/org/distorted/dialogs/RubikDialogTutorialView.java
index f3b9eb8c..d592a1b2 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogTutorialView.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogTutorialView.java
@@ -35,7 +35,7 @@ import androidx.fragment.app.FragmentActivity;
 
 import com.google.firebase.analytics.FirebaseAnalytics;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.BuildConfig;
 import org.distorted.main.R;
@@ -76,7 +76,7 @@ public class RubikDialogTutorialView extends FrameLayout
     String packageName = act.getPackageName();
 
     TutorialList list  = TutorialList.getObject(position);
-    ObjectList objList = list.getObjectList();
+    ObjectType objList = list.getObjectList();
 
     View tab = inflate( act, R.layout.dialog_tutorial_tab, null);
     LinearLayout layout = tab.findViewById(R.id.tabLayout);
@@ -109,7 +109,7 @@ public class RubikDialogTutorialView extends FrameLayout
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   private View createRow(final RubikActivity act, int countryID, final String desc, final String url,
-                         final String auth, int width, final ObjectList obj)
+                         final String auth, int width, final ObjectType obj)
     {
     View row = inflate( act, R.layout.dialog_tutorial_row, null);
     Button butt = row.findViewById(R.id.tutorialButton);
@@ -149,7 +149,7 @@ public class RubikDialogTutorialView extends FrameLayout
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  private void analyticsReport(RubikActivity act, String desc, String author, ObjectList obj)
+  private void analyticsReport(RubikActivity act, String desc, String author, ObjectType obj)
     {
     String message = desc+" ("+author+")";
 
diff --git a/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java b/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java
index 7de0c200..ccd79844 100644
--- a/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java
+++ b/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java
@@ -27,7 +27,7 @@ import org.distorted.library.main.DistortedEffects;
 import org.distorted.library.main.DistortedScreen;
 import org.distorted.library.message.EffectListener;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.main.TwistyObject;
 
 import org.distorted.effects.BaseEffect;
@@ -89,7 +89,7 @@ public abstract class ScrambleEffect extends BaseEffect implements EffectListene
   ScrambleEffect()
     {
     mRnd = new Random( System.currentTimeMillis() );
-    mScrambles = new int[ObjectList.MAX_SCRAMBLE][3];
+    mScrambles = new int[ObjectType.MAX_SCRAMBLE][3];
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/main/RubikActivity.java b/src/main/java/org/distorted/main/RubikActivity.java
index a997816b..7ce62efd 100644
--- a/src/main/java/org/distorted/main/RubikActivity.java
+++ b/src/main/java/org/distorted/main/RubikActivity.java
@@ -40,7 +40,7 @@ import org.distorted.library.main.DistortedScreen;
 import org.distorted.library.type.Static4D;
 
 import org.distorted.objectlib.main.TwistyObject;
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.dialogs.RubikDialogError;
 import org.distorted.dialogs.RubikDialogPrivacy;
@@ -277,16 +277,16 @@ public class RubikActivity extends TwistyActivity
       RubikScreenPlay play = (RubikScreenPlay) ScreenList.PLAY.getScreenClass();
       int object = play.getObject();
 
-      if( object>=0 && object< ObjectList.NUM_OBJECTS )
+      if( object>=0 && object< ObjectType.NUM_OBJECTS )
         {
         success = true;
-        ObjectList nextObj = ObjectList.values()[object];
+        ObjectType nextObj = ObjectType.values()[object];
         view.getPreRender().changeObject(nextObj);
         }
 
       if( !success )
         {
-        ObjectList obj = ObjectList.getObject(RubikScreenPlay.DEF_OBJECT);
+        ObjectType obj = ObjectType.getObject(RubikScreenPlay.DEF_OBJECT);
         play.setObject(this,obj);
         view.getPreRender().changeObject(obj);
         }
@@ -457,7 +457,7 @@ public class RubikActivity extends TwistyActivity
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public void changeObject(ObjectList newObject, boolean reportChange)
+    public void changeObject(ObjectType newObject, boolean reportChange)
       {
       RubikSurfaceView view = findViewById(R.id.rubikSurfaceView);
       RubikPreRender pre = view.getPreRender();
@@ -468,7 +468,7 @@ public class RubikActivity extends TwistyActivity
 
         if( oldObject!=null )
           {
-          ObjectList oldList = oldObject.getObjectList();
+          ObjectType oldList = oldObject.getObjectList();
           float fps = view.getRenderer().getFPS();
           fps = (int)(fps+0.5f);
           StringBuilder name = new StringBuilder();
@@ -501,7 +501,7 @@ public class RubikActivity extends TwistyActivity
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public void setupObject(ObjectList object, int[][] moves)
+    public void setupObject(ObjectType object, int[][] moves)
       {
       RubikSurfaceView view = findViewById(R.id.rubikSurfaceView);
       RubikPreRender pre = view.getPreRender();
@@ -628,7 +628,7 @@ public class RubikActivity extends TwistyActivity
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-    public void switchTutorial(String url, ObjectList object)
+    public void switchTutorial(String url, ObjectType object)
       {
       Intent myIntent = new Intent(this, TutorialActivity.class);
       myIntent.putExtra("url", url);
diff --git a/src/main/java/org/distorted/main/RubikPreRender.java b/src/main/java/org/distorted/main/RubikPreRender.java
index 42d8d7fb..b467d02c 100644
--- a/src/main/java/org/distorted/main/RubikPreRender.java
+++ b/src/main/java/org/distorted/main/RubikPreRender.java
@@ -35,7 +35,7 @@ import com.google.android.play.core.tasks.Task;
 import com.google.firebase.analytics.FirebaseAnalytics;
 
 import org.distorted.objectlib.main.TwistyObject;
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.dialogs.RubikDialogNewRecord;
 import org.distorted.dialogs.RubikDialogSolved;
@@ -60,7 +60,7 @@ public class RubikPreRender implements EffectController, TwistyPreRender
                   mInitializeObject, mSetTextureMap, mResetAllTextureMaps, mSolve;
   private boolean mUIBlocked, mTouchBlocked;
   private boolean mIsSolved;
-  private ObjectList mNextObject;
+  private ObjectType mNextObject;
   private long mRotationFinishedID;
   private final long[] mEffectID;
   private boolean mIsNewRecord;
@@ -114,7 +114,7 @@ public class RubikPreRender implements EffectController, TwistyPreRender
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  private void createObjectNow(ObjectList object, int[][] moves)
+  private void createObjectNow(ObjectType object, int[][] moves)
     {
     boolean firstTime = (mNewObject==null);
 
@@ -344,7 +344,7 @@ public class RubikPreRender implements EffectController, TwistyPreRender
 
     int object      = play.getObject();
     int level       = play.getLevel();
-    ObjectList list = ObjectList.getObject(object);
+    ObjectType list = ObjectType.getObject(object);
     String name     = scores.getName();
 
     String record = list.name()+" level "+level+" time "+mNewRecord+" isNew: "+mIsNewRecord+" scrambleNum: "+mScrambleObjectNum;
@@ -497,7 +497,7 @@ public class RubikPreRender implements EffectController, TwistyPreRender
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  void changeObject(ObjectList object)
+  void changeObject(ObjectType object)
     {
     mChangeObject = true;
     mNextObject = object;
@@ -505,7 +505,7 @@ public class RubikPreRender implements EffectController, TwistyPreRender
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  void setupObject(ObjectList object, int[][] moves)
+  void setupObject(ObjectType object, int[][] moves)
     {
     mSetupObject= true;
     mNextObject = object;
diff --git a/src/main/java/org/distorted/network/RubikNetwork.java b/src/main/java/org/distorted/network/RubikNetwork.java
index 1ab4e994..2a104813 100644
--- a/src/main/java/org/distorted/network/RubikNetwork.java
+++ b/src/main/java/org/distorted/network/RubikNetwork.java
@@ -34,10 +34,10 @@ import androidx.appcompat.app.AppCompatActivity;
 import androidx.fragment.app.FragmentActivity;
 
 import org.distorted.library.main.DistortedLibrary;
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
-import static org.distorted.objectlib.main.ObjectList.MAX_LEVEL;
-import static org.distorted.objectlib.main.ObjectList.NUM_OBJECTS;
+import static org.distorted.objectlib.main.ObjectType.MAX_LEVEL;
+import static org.distorted.objectlib.main.ObjectType.NUM_OBJECTS;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
@@ -204,7 +204,7 @@ public class RubikNetwork implements Runnable
 
     if( s5>s4 && s4>s3 && s3>s2 && s2>s1 && s1>0 )
       {
-      int object = ObjectList.getOrdinal( row.substring(0,s1) );
+      int object = ObjectType.getOrdinal( row.substring(0,s1) );
 
       if( object>=0 && object<NUM_OBJECTS )
         {
@@ -471,7 +471,7 @@ public class RubikNetwork implements Runnable
 
     String url="https://distorted.org/magic/cgi-bin/download.cgi";
     url += "?n="+name+"&v="+veri+"&r="+numRuns+"&p="+numPlay+"&c="+country+"&e="+mVersion+"d";
-    url += "&o="+ ObjectList.getObjectList()+"&min=0&max="+MAX_LEVEL+"&l="+MAX_PLACES;
+    url += "&o="+ ObjectType.getObjectList()+"&min=0&max="+MAX_LEVEL+"&l="+MAX_PLACES;
 
     return url;
     }
@@ -501,7 +501,7 @@ public class RubikNetwork implements Runnable
     String url1="https://distorted.org/magic/cgi-bin/submit.cgi";
     String url2 = "n="+name+"&v="+veri+"&r="+numRuns+"&p="+numPlay+"&i="+deviceID+"&e="+mVersion+"d";
     url2 += "&d="+renderer+"&s="+version;
-    url2 += reclist+"&c="+country+"&f="+epoch+"&oo="+ ObjectList.getObjectList();
+    url2 += reclist+"&c="+country+"&f="+epoch+"&oo="+ ObjectType.getObjectList();
     url2 += "&min=0&max="+MAX_LEVEL+"&lo="+MAX_PLACES;
     String hash = computeHash( url2, salt.getBytes() );
 
diff --git a/src/main/java/org/distorted/network/RubikScores.java b/src/main/java/org/distorted/network/RubikScores.java
index 35754329..8abdafe5 100644
--- a/src/main/java/org/distorted/network/RubikScores.java
+++ b/src/main/java/org/distorted/network/RubikScores.java
@@ -27,10 +27,10 @@ import android.telephony.TelephonyManager;
 
 import com.google.firebase.crashlytics.FirebaseCrashlytics;
 
-import static org.distorted.objectlib.main.ObjectList.NUM_OBJECTS;
-import static org.distorted.objectlib.main.ObjectList.MAX_LEVEL;
+import static org.distorted.objectlib.main.ObjectType.NUM_OBJECTS;
+import static org.distorted.objectlib.main.ObjectType.MAX_LEVEL;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.BuildConfig;
 
@@ -143,7 +143,7 @@ public class RubikScores
 
     for(int object=0; object<NUM_OBJECTS; object++)
       {
-      String name = ObjectList.getObject(object).name();
+      String name = ObjectType.getObject(object).name();
 
       for(int level=0; level<MAX_LEVEL; level++)
         {
@@ -314,7 +314,7 @@ public class RubikScores
 
       for(int object=0; object<NUM_OBJECTS; object++)
         {
-        name = ObjectList.getObject(object).name();
+        name = ObjectType.getObject(object).name();
         builder.append(name);
         builder.append("=");
         builder.append(mRecords[object][level]);
@@ -368,7 +368,7 @@ public class RubikScores
           timeStr = subStr.substring(equals+1,comma);
           submStr = subStr.substring(comma+1);
 
-          object = ObjectList.getOrdinal(nameStr);
+          object = ObjectType.getOrdinal(nameStr);
 
           if( object>=0 && object< NUM_OBJECTS )
             {
diff --git a/src/main/java/org/distorted/patterns/RubikPatternList.java b/src/main/java/org/distorted/patterns/RubikPatternList.java
index 4c5d85a1..c8a5e8ea 100644
--- a/src/main/java/org/distorted/patterns/RubikPatternList.java
+++ b/src/main/java/org/distorted/patterns/RubikPatternList.java
@@ -19,25 +19,25 @@
 
 package org.distorted.patterns;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
 public enum RubikPatternList
   {
-  CUBE2 (ObjectList.CUBE_2, PatternCube2.patterns),
-  CUBE3 (ObjectList.CUBE_3, PatternCube3.patterns),
-  CUBE4 (ObjectList.CUBE_4, PatternCube4.patterns),
-  CUBE5 (ObjectList.CUBE_5, PatternCube5.patterns),
-  PYRA3 (ObjectList.PYRA_3, PatternPyraminx3.patterns),
-  PYRA4 (ObjectList.PYRA_4, PatternPyraminx4.patterns),
-  PYRA5 (ObjectList.PYRA_5, PatternPyraminx5.patterns),
-  MEGA3 (ObjectList.MEGA_3, PatternMegaminx.patterns),
-  MEGA5 (ObjectList.MEGA_5, PatternGigaminx.patterns),
+  CUBE2 (ObjectType.CUBE_2, PatternCube2.patterns),
+  CUBE3 (ObjectType.CUBE_3, PatternCube3.patterns),
+  CUBE4 (ObjectType.CUBE_4, PatternCube4.patterns),
+  CUBE5 (ObjectType.CUBE_5, PatternCube5.patterns),
+  PYRA3 (ObjectType.PYRA_3, PatternPyraminx3.patterns),
+  PYRA4 (ObjectType.PYRA_4, PatternPyraminx4.patterns),
+  PYRA5 (ObjectType.PYRA_5, PatternPyraminx5.patterns),
+  MEGA3 (ObjectType.MEGA_3, PatternMegaminx.patterns),
+  MEGA5 (ObjectType.MEGA_5, PatternGigaminx.patterns),
   ;
 
   public static final int NUM_OBJECTS = values().length;
-  private final ObjectList mObject;
+  private final ObjectType mObject;
   private final String[][] mPatterns;
 
   private static final RubikPatternList[] objects;
@@ -62,7 +62,7 @@ public enum RubikPatternList
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  RubikPatternList(ObjectList object, String[][] patterns)
+  RubikPatternList(ObjectType object, String[][] patterns)
     {
     mObject   = object;
     mPatterns = patterns;
@@ -87,7 +87,7 @@ public enum RubikPatternList
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  public static ObjectList getObject(int ordinal)
+  public static ObjectType getObject(int ordinal)
     {
     return objects[ordinal].mObject;
     }
diff --git a/src/main/java/org/distorted/screens/RubikScreenAbstract.java b/src/main/java/org/distorted/screens/RubikScreenAbstract.java
index 33243be6..e7a3697c 100644
--- a/src/main/java/org/distorted/screens/RubikScreenAbstract.java
+++ b/src/main/java/org/distorted/screens/RubikScreenAbstract.java
@@ -21,8 +21,6 @@ package org.distorted.screens;
 
 import android.content.SharedPreferences;
 
-import org.distorted.objectlib.main.ObjectList;
-
 import org.distorted.main.RubikActivity;
 import org.distorted.patterns.RubikPatternList;
 import org.distorted.tutorials.TutorialList;
diff --git a/src/main/java/org/distorted/screens/RubikScreenPattern.java b/src/main/java/org/distorted/screens/RubikScreenPattern.java
index b9a30a6f..482ca625 100644
--- a/src/main/java/org/distorted/screens/RubikScreenPattern.java
+++ b/src/main/java/org/distorted/screens/RubikScreenPattern.java
@@ -30,7 +30,7 @@ import android.widget.ImageButton;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.R;
 import org.distorted.dialogs.RubikDialogPattern;
@@ -63,13 +63,13 @@ public class RubikScreenPattern extends RubikScreenAbstract
   void leaveScreen(RubikActivity act)
     {
     RubikScreenPlay play = (RubikScreenPlay) ScreenList.PLAY.getScreenClass();
-    ObjectList object = RubikPatternList.getObject(mPatternOrdinal);
+    ObjectType object = RubikPatternList.getObject(mPatternOrdinal);
 
     if( !play.setObject(act,object) )
       {
       int objectPlay= play.getObject();
 
-      act.changeObject(ObjectList.getObject(objectPlay),false);
+      act.changeObject(ObjectType.getObject(objectPlay),false);
       }
     }
 
diff --git a/src/main/java/org/distorted/screens/RubikScreenPlay.java b/src/main/java/org/distorted/screens/RubikScreenPlay.java
index 85ef269e..b305a3f9 100644
--- a/src/main/java/org/distorted/screens/RubikScreenPlay.java
+++ b/src/main/java/org/distorted/screens/RubikScreenPlay.java
@@ -35,7 +35,7 @@ import android.widget.LinearLayout;
 import android.widget.PopupWindow;
 import android.widget.ScrollView;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
@@ -53,7 +53,7 @@ import org.distorted.network.RubikScores;
 public class RubikScreenPlay extends RubikScreenBase
   {
   public static final int LEVELS_SHOWN = 10;
-  public static final int DEF_OBJECT= ObjectList.CUBE_3.ordinal();
+  public static final int DEF_OBJECT= ObjectType.CUBE_3.ordinal();
 
   private static final int[] BUTTON_LABELS = { R.string.scores,
                                                R.string.patterns,
@@ -96,8 +96,8 @@ public class RubikScreenPlay extends RubikScreenBase
     mButtonSize   = width*RubikActivity.BUTTON_TEXT_SIZE;
     mMenuItemSize = width*RubikActivity.MENU_ITEM_SIZE;
 
-    mRowCount = ObjectList.getRowCount();
-    mColCount = ObjectList.getColumnCount();
+    mRowCount = ObjectType.getRowCount();
+    mColCount = ObjectType.getColumnCount();
 
     // TOP ////////////////////////////
     LinearLayout layoutTop = act.findViewById(R.id.upperBar);
@@ -162,7 +162,7 @@ public class RubikScreenPlay extends RubikScreenBase
           {
           View popupView = mPlayPopup.getContentView();
           popupView.setSystemUiVisibility(RubikActivity.FLAGS);
-          final int dbLevel = ObjectList.getDBLevel(mObject);
+          final int dbLevel = ObjectType.getDBLevel(mObject);
           final int levelsShown = Math.min(dbLevel,LEVELS_SHOWN);
           final int popupHeight = (int)(levelsShown*(mMenuItemSize+margin)+3*margin+mMenuItemSize*(LAST_BUTTON-1.0f));
           final int realHeight = Math.min(popupHeight,maxHeight);
@@ -222,7 +222,7 @@ public class RubikScreenPlay extends RubikScreenBase
       mObjectPopup.setContentView(objectGrid);
       }
 
-    int[] indices = ObjectList.getIndices();
+    int[] indices = ObjectType.getIndices();
 
     GridLayout.Spec[] rowSpecs = new GridLayout.Spec[mRowCount];
     GridLayout.Spec[] colSpecs = new GridLayout.Spec[mColCount];
@@ -242,9 +242,9 @@ public class RubikScreenPlay extends RubikScreenBase
       colSpecs[col] = GridLayout.spec(col);
       }
 
-    for(int object=0; object< ObjectList.NUM_OBJECTS; object++)
+    for(int object = 0; object< ObjectType.NUM_OBJECTS; object++)
       {
-      final ObjectList list = ObjectList.getObject(object);
+      final ObjectType list = ObjectType.getObject(object);
       int iconSize = RubikActivity.getDrawableSize();
       int icons = list.getIconID(iconSize);
       final int obj = object;
@@ -430,7 +430,7 @@ public class RubikScreenPlay extends RubikScreenBase
   public void restorePreferences(SharedPreferences preferences)
     {
     mObject= preferences.getInt("statePlay_object", DEF_OBJECT);
-    int dbLevel = ObjectList.getDBLevel(mObject);
+    int dbLevel = ObjectType.getDBLevel(mObject);
 
     // This means the app has been upgraded to a new version which swapped the
     // Object for a new one with larger sizeIndex and now getMaxLevel() returns
@@ -441,7 +441,7 @@ public class RubikScreenPlay extends RubikScreenBase
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  public boolean setObject(RubikActivity act, ObjectList obj)
+  public boolean setObject(RubikActivity act, ObjectType obj)
     {
     if( mObject!=obj.ordinal() )
       {
@@ -494,8 +494,8 @@ public class RubikScreenPlay extends RubikScreenBase
 
   private void adjustLevels(final RubikActivity act)
     {
-    int dbLevel = ObjectList.getDBLevel(mObject);
-    int numScrambles = ObjectList.getNumScramble(mObject);
+    int dbLevel = ObjectType.getDBLevel(mObject);
+    int numScrambles = ObjectType.getNumScramble(mObject);
     int numLevel = Math.min(dbLevel, LEVELS_SHOWN);
     String[] levels = new String[numLevel];
 
diff --git a/src/main/java/org/distorted/screens/RubikScreenSolver.java b/src/main/java/org/distorted/screens/RubikScreenSolver.java
index dc105a56..568e81ba 100644
--- a/src/main/java/org/distorted/screens/RubikScreenSolver.java
+++ b/src/main/java/org/distorted/screens/RubikScreenSolver.java
@@ -34,7 +34,7 @@ import android.widget.ImageButton;
 import android.widget.LinearLayout;
 
 import org.distorted.objectlib.main.TwistyObject;
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.dialogs.RubikDialogSolverError;
 import org.distorted.helpers.TransparentImageButton;
@@ -79,7 +79,7 @@ public class RubikScreenSolver extends RubikScreenAbstract
     mWeakAct = new WeakReference<>(act);
     mSolving = false;
 
-    ObjectList currentObject= ImplementedSolversList.getObject(0);
+    ObjectType currentObject= ImplementedSolversList.getObject(0);
 
     act.setupObject(currentObject,null);
     RubikScreenPlay play = (RubikScreenPlay) ScreenList.PLAY.getScreenClass();
diff --git a/src/main/java/org/distorted/screens/RubikScreenSolving.java b/src/main/java/org/distorted/screens/RubikScreenSolving.java
index a03d0518..de39caa3 100644
--- a/src/main/java/org/distorted/screens/RubikScreenSolving.java
+++ b/src/main/java/org/distorted/screens/RubikScreenSolving.java
@@ -30,8 +30,6 @@ import android.widget.ImageButton;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
-import org.distorted.objectlib.main.ObjectList;
-
 import org.distorted.dialogs.RubikDialogAbandon;
 import org.distorted.helpers.TransparentImageButton;
 import org.distorted.main.R;
diff --git a/src/main/java/org/distorted/solvers/ImplementedSolversList.java b/src/main/java/org/distorted/solvers/ImplementedSolversList.java
index 272cb20a..a2dcb0c5 100644
--- a/src/main/java/org/distorted/solvers/ImplementedSolversList.java
+++ b/src/main/java/org/distorted/solvers/ImplementedSolversList.java
@@ -19,18 +19,18 @@
 
 package org.distorted.solvers;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
 public enum ImplementedSolversList
 {
-  CUBE3 ( ObjectList.CUBE_3),
+  CUBE3 ( ObjectType.CUBE_3),
   ;
 
   public static final int NUM_OBJECTS = values().length;
 
-  private final ObjectList mObject;
+  private final ObjectType mObject;
 
   private static final ImplementedSolversList[] objects;
 
@@ -47,14 +47,14 @@ public enum ImplementedSolversList
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  public static ObjectList getObject(int ordinal)
+  public static ObjectType getObject(int ordinal)
     {
     return objects[ordinal].mObject;
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  ImplementedSolversList(ObjectList object)
+  ImplementedSolversList(ObjectType object)
     {
     mObject= object;
     }
diff --git a/src/main/java/org/distorted/solvers/SolverMain.java b/src/main/java/org/distorted/solvers/SolverMain.java
index 419b5c9d..2c13fc66 100644
--- a/src/main/java/org/distorted/solvers/SolverMain.java
+++ b/src/main/java/org/distorted/solvers/SolverMain.java
@@ -21,7 +21,7 @@ package org.distorted.solvers;
 
 import android.content.res.Resources;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.main.TwistyObject;
 
 import org.distorted.main.R;
@@ -49,9 +49,9 @@ public class SolverMain implements Runnable
 // If a certain cubit is locked, return the color (index into it's FACE_COLORS array) it
 // must have. Otherwise return -1.
 
-  public static int cubitIsLocked(ObjectList object, int cubit)
+  public static int cubitIsLocked(ObjectType object, int cubit)
     {
-    if( object == ObjectList.CUBE_3 )
+    if( object == ObjectType.CUBE_3 )
       {
       if( cubit==21 ) return 0; // center of the right  face
       if( cubit== 4 ) return 1; // center of the left   face
@@ -248,7 +248,7 @@ public class SolverMain implements Runnable
     {
     RubikScreenSolver solver = (RubikScreenSolver) ScreenList.SVER.getScreenClass();
 
-    if( mObject.getObjectList()==ObjectList.CUBE_3 )
+    if( mObject.getObjectList()== ObjectType.CUBE_3 )
       {
       solveCube3(solver);
       }
diff --git a/src/main/java/org/distorted/tutorials/TutorialActivity.java b/src/main/java/org/distorted/tutorials/TutorialActivity.java
index 67e61d2c..172457dc 100644
--- a/src/main/java/org/distorted/tutorials/TutorialActivity.java
+++ b/src/main/java/org/distorted/tutorials/TutorialActivity.java
@@ -32,7 +32,7 @@ import com.google.firebase.analytics.FirebaseAnalytics;
 
 import org.distorted.library.main.DistortedLibrary;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.main.TwistyObject;
 
 import org.distorted.dialogs.RubikDialogError;
@@ -207,9 +207,9 @@ public class TutorialActivity extends TwistyActivity
 
       if( mWebView!=null ) mWebView.onResume();
 
-      if( mObjectOrdinal>=0 && mObjectOrdinal< ObjectList.NUM_OBJECTS )
+      if( mObjectOrdinal>=0 && mObjectOrdinal< ObjectType.NUM_OBJECTS )
         {
-        ObjectList obj = ObjectList.getObject(mObjectOrdinal);
+        ObjectType obj = ObjectType.getObject(mObjectOrdinal);
         view.getPreRender().changeObject(obj);
         }
       }
diff --git a/src/main/java/org/distorted/tutorials/TutorialList.java b/src/main/java/org/distorted/tutorials/TutorialList.java
index b08e82a1..80daf4f3 100644
--- a/src/main/java/org/distorted/tutorials/TutorialList.java
+++ b/src/main/java/org/distorted/tutorials/TutorialList.java
@@ -19,14 +19,14 @@
 
 package org.distorted.tutorials;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 import org.distorted.main.RubikActivity;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
 public enum TutorialList
 {
-  CUBE2 ( ObjectList.CUBE_2,
+  CUBE2 ( ObjectType.CUBE_2,
           new String[][] {
                           {"gb","rJlh5p2wAKA","How to Solve a 2x2 Rubik's Cube","Z3"},
                           {"es","f85wqJTIDlw","Resolver cubo de Rubik 2X2","Cuby"},
@@ -39,7 +39,7 @@ public enum TutorialList
                          }
         ),
 
-  CUBE3 ( ObjectList.CUBE_3,
+  CUBE3 ( ObjectType.CUBE_3,
           new String[][] {
                           {"gb","-8ohoCKN0Zw","How to Solve a Rubik's Cube","Z3"},
                           {"es","GyY0OxDk5lI","Resolver cubo de Rubik 3x3","Cuby"},
@@ -54,7 +54,7 @@ public enum TutorialList
                          }
         ),
 
-  CUBE4 ( ObjectList.CUBE_4,
+  CUBE4 ( ObjectType.CUBE_4,
           new String[][] {
                           {"gb","RR77Md71Ymc","How to Solve the 4x4 Rubik's Cube","Z3"},
                           {"es","d_4xk1r9hxU","Resolver cubo de Rubik 4x4","Cuby"},
@@ -71,7 +71,7 @@ public enum TutorialList
                          }
         ),
 
-  CUBE5 ( ObjectList.CUBE_5,
+  CUBE5 ( ObjectType.CUBE_5,
           new String[][] {
                           {"gb","zMkNkXHzQts","How to Solve the 5x5 Rubik's Cube","Z3"},
                           {"es","6uaq-xfFs98","Resolver cubo de Rubik 5x5","Cuby"},
@@ -83,7 +83,7 @@ public enum TutorialList
                          }
         ),
 
-  JING  ( ObjectList.JING_2,
+  JING  ( ObjectType.JING_2,
           new String[][] {
                           {"gb","0T8Iw6aI2gA","Jing's Pyraminx Tutorial","SuperAntoniovivaldi"},
                           {"es","Na27_GUIzqY","Resolver Jing Pyraminx","Cuby"},
@@ -94,7 +94,7 @@ public enum TutorialList
                          }
         ),
 
-  PYRA3 ( ObjectList.PYRA_3,
+  PYRA3 ( ObjectType.PYRA_3,
           new String[][] {
                           {"gb","xIQtn2qazvg","Pyraminx Layer By Layer","Z3"},
                           {"es","4cJJe9RAzAU","Resolver Pyraminx","Cuby"},
@@ -107,7 +107,7 @@ public enum TutorialList
                          }
         ),
 
-  PYRA4 ( ObjectList.PYRA_4,
+  PYRA4 ( ObjectType.PYRA_4,
           new String[][] {
                           {"gb","tGQDqDcSa6U","How to Solve the Master Pyraminx","Z3"},
                           {"es","74PIPm9-uPg","Resolver Master Pyraminx 4x4","Cuby"},
@@ -119,7 +119,7 @@ public enum TutorialList
                          }
         ),
 
-  PYRA5 ( ObjectList.PYRA_5,
+  PYRA5 ( ObjectType.PYRA_5,
           new String[][] {
                           {"gb","2nsPEECDdN0","Professor Pyraminx Solve","RedKB"},
                           {"es","cSDj8OQK3TU","Tutorial del Professor Pyraminx","QBAndo"},
@@ -129,7 +129,7 @@ public enum TutorialList
                          }
         ),
 
-  KILO3( ObjectList.KILO_3,
+  KILO3( ObjectType.KILO_3,
           new String[][] {
                           {"gb","grgGgUSxiQg","How to Solve the Kilominx","Z3"},
                           {"es","g6WMYjkCLok","Resolver Kilominx","Cuby"},
@@ -141,7 +141,7 @@ public enum TutorialList
                          }
        ),
 
-  KILO5( ObjectList.KILO_5,
+  KILO5( ObjectType.KILO_5,
           new String[][] {
                           {"gb","VAnzC2SYVc4","How To Solve A Master Kilominx","Grizz Media"},
                           {"es","ozINTg-61Fs","Tutorial Master Kilominx","RubikArt"},
@@ -156,7 +156,7 @@ public enum TutorialList
                          }
        ),
 
-  MEGA3( ObjectList.MEGA_3,
+  MEGA3( ObjectType.MEGA_3,
           new String[][] {
                           {"gb","j4x61L5Onzk","How to Solve the Megaminx","Z3"},
                           {"es","xuKbT6Il0Ko","Resolver Megaminx","Cuby"},
@@ -168,7 +168,7 @@ public enum TutorialList
                          }
        ),
 
-  MEGA5( ObjectList.MEGA_5,
+  MEGA5( ObjectType.MEGA_5,
           new String[][] {
                           {"gb","MNBMm8BnHtQ","Solve the Gigaminx Part 1","BeardedCubing"},
                           {"gb","QrrP4GwqVMw","Solve the Gigaminx Part 2","BeardedCubing"},
@@ -186,7 +186,7 @@ public enum TutorialList
                          }
        ),
 
-  ULTI ( ObjectList.ULTI_2,
+  ULTI ( ObjectType.ULTI_2,
           new String[][] {
                           {"gb","n1ikPKZxGEo","Ultimate Skewb Tutorial","BeardedCubing"},
                           {"es","wNL1WJ_sCfs","Resolver Skewb ULTIMATE","Cuby"},
@@ -198,7 +198,7 @@ public enum TutorialList
                          }
         ),
 
-  DIAM2 ( ObjectList.DIAM_2,
+  DIAM2 ( ObjectType.DIAM_2,
           new String[][] {
                           {"gb","R2wrbJJ3izM","How to Solve a Skewb Diamond","Dr. Penguin^3"},
                           {"es","2RCusYQdYYE","Como resolver Skewb Diamond","Tutoriales Rubik"},
@@ -210,7 +210,7 @@ public enum TutorialList
                          }
        ),
 
-  DIAM3 ( ObjectList.DIAM_3,
+  DIAM3 ( ObjectType.DIAM_3,
           new String[][] {
                           {"gb","n_mBSUDLUZw","Face Turning Octahedron Tutorial","SuperAntoniovivaldi"},
                           {"es","ogf0t6fGxZI","FTO - Tutorial en español","Gadi Rubik"},
@@ -220,7 +220,7 @@ public enum TutorialList
                          }
        ),
 
-  DIAM4 ( ObjectList.DIAM_4,
+  DIAM4 ( ObjectType.DIAM_4,
           new String[][] {
                           {"gb","3GJkySk5zeQ","Master Face Turning Octahedron","SuperAntoniovivaldi"},
                           {"gb","zW_1htxy52k","Master FTO Tutorial","Michele Regano"},
@@ -229,7 +229,7 @@ public enum TutorialList
                          }
        ),
 
-  DINO3 ( ObjectList.DINO_3,
+  DINO3 ( ObjectType.DINO_3,
           new String[][] {
                           {"gb","puTJZqFBQwo","Dino Skewb Cube Tutorial","Bearded Cubing"},
                           {"es","6o1Yo5iCxvI","Resolver Cubo Dino","Cuby"},
@@ -241,7 +241,7 @@ public enum TutorialList
                          }
         ),
 
-  REDI3 ( ObjectList.REDI_3,
+  REDI3 ( ObjectType.REDI_3,
           new String[][] {
                           {"gb","Qn7TJED6O-4","How to Solve the MoYu Redi Cube","Z3"},
                           {"es","g0M38Aotgac","Resolver Redi Cube","Cuby"},
@@ -253,7 +253,7 @@ public enum TutorialList
                          }
         ),
 
-  HELI3 ( ObjectList.HELI_3,
+  HELI3 ( ObjectType.HELI_3,
           new String[][] {
                           {"gb","-suwJpd_PO8","Helicopter Cube Tutorial","Bearded Cubing"},
                           {"es","DWG9n_YyGPA","Resolver Helicopter Cube","Cuby"},
@@ -265,7 +265,7 @@ public enum TutorialList
                          }
         ),
 
-  SKEW2 ( ObjectList.SKEW_2,
+  SKEW2 ( ObjectType.SKEW_2,
           new String[][] {
                           {"gb","I6132yshkeU","How to Solve the Skewb","Z3"},
                           {"es","wxQX3HhPgds","Resolver Skewb (Principiantes)","Cuby"},
@@ -278,7 +278,7 @@ public enum TutorialList
                          }
         ),
 
-  SKEW3 ( ObjectList.SKEW_3,
+  SKEW3 ( ObjectType.SKEW_3,
           new String[][] {
                           {"gb","Jiuf7zQyPYI","Master Skewb Cube Tutorial","Bearded Cubing"},
                           {"es","8TP6p63KQCA","Master Skewb en Español","jorlozCubes"},
@@ -293,7 +293,7 @@ public enum TutorialList
                          }
         ),
 
-  IVY2 ( ObjectList.IVY_2,
+  IVY2 ( ObjectType.IVY_2,
           new String[][] {
                           {"gb","QMzeJobSu1M","How to Solve the Ivy Cube","Z3"},
                           {"es","2-Gf2cmEJDs","Resolver Ivy Cube","Cuby"},
@@ -305,7 +305,7 @@ public enum TutorialList
                          }
         ),
 
-  REX3 ( ObjectList.REX_3,
+  REX3 ( ObjectType.REX_3,
           new String[][] {
                           {"gb","noAQfWqlMbk","Rex Cube Tutorial","CrazyBadCuber"},
                           {"es","Q90x9rjLJzw","Resolver Cubo Rex","Cuby"},
@@ -317,7 +317,7 @@ public enum TutorialList
                          }
         ),
 
-  BAN1( ObjectList.BAN1_3,
+  BAN1( ObjectType.BAN1_3,
           new String[][] {
                           {"gb","F_iJk_IvpVo","Bandaged Cube","CanChrisSolve"},
                           {"es","_lTgw5aEFOg","Tutorial 3x3 Fuse Cube","QBAndo"},
@@ -328,7 +328,7 @@ public enum TutorialList
                          }
        ),
 
-  BAN2( ObjectList.BAN2_3,
+  BAN2( ObjectType.BAN2_3,
           new String[][] {
                           {"ru","lS_EK0PMWI8","Как собрать 2-bar Cube","Алексей Ярыгин"},
                           {"pl","tX8ubTLh6p8","Bandaged 3x3 (Two bar)","MrUK"},
@@ -336,7 +336,7 @@ public enum TutorialList
                          }
        ),
 
-  BAN3( ObjectList.BAN3_3,
+  BAN3( ObjectType.BAN3_3,
           new String[][] {
                           {"gb","7UiCVGygUT4","Bandage Cube C Tutorial","PolyakB"},
                           {"ru","gXenRA92Wdc","Как собрать Bandaged 3x3 Type C","YG Cuber"},
@@ -345,7 +345,7 @@ public enum TutorialList
                          }
        ),
 
-  BAN4( ObjectList.BAN4_3,
+  BAN4( ObjectType.BAN4_3,
           new String[][] {
                           {"gb","AnpdIKICBpM","Trying to Solve a Bandaged Cube","RedKB"},
                           {"es","cUyo5fycrvI","Tutorial Bandaged Cube en español","Rafa Garcia Benacazon"},
@@ -357,7 +357,7 @@ public enum TutorialList
                          }
        ),
 
-  SQUA1 ( ObjectList.SQU1_3,
+  SQUA1 ( ObjectType.SQU1_3,
           new String[][] {
                           {"gb","0tX-f6RLgac","How to Solve the Square-1","Z3"},
                           {"es","mGtHDWj_i1o","Resolver SQUARE-1","Cuby"},
@@ -372,7 +372,7 @@ public enum TutorialList
                          }
        ),
 
-  SQUA2 ( ObjectList.SQU2_3,
+  SQUA2 ( ObjectType.SQU2_3,
           new String[][] {
                           {"gb","PPXojiFthEs","Square-2 Tutorial","SuperAntoniovivaldi"},
                           {"es","IiMwc51xKBQ","Cómo resolver Square-2","skieur cubb"},
@@ -383,7 +383,7 @@ public enum TutorialList
                          }
        ),
 
-  MIRR2 ( ObjectList.MIRR_2,
+  MIRR2 ( ObjectType.MIRR_2,
           new String[][] {
                           {"gb","rSH-ZEqTmxs","Solve 2x2 Mirror Blocks","King of Cubing"},
                           {"es","Ipz-Ajpd4Fg","Como resolver el mirror 2x2","RUBI CUBI"},
@@ -394,7 +394,7 @@ public enum TutorialList
                          }
        ),
 
-  MIRR3 ( ObjectList.MIRR_3,
+  MIRR3 ( ObjectType.MIRR_3,
           new String[][] {
                           {"gb","YkzXIWnqbSw","How to Solve the Mirror Cube","Z3"},
                           {"es","ZTkunMo51l0","Resolver cubo de Rubik MIRROR","Cuby"},
@@ -408,7 +408,7 @@ public enum TutorialList
 
 
   public static final int NUM_OBJECTS = values().length;
-  private final ObjectList mObject;
+  private final ObjectType mObject;
   private final String[][] mTutorials;
   private final int mNumTutorials;
 
@@ -427,7 +427,7 @@ public enum TutorialList
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  TutorialList(ObjectList object, String[][] tutorials)
+  TutorialList(ObjectType object, String[][] tutorials)
     {
     mObject       = object;
     mTutorials    = tutorials;
@@ -445,9 +445,9 @@ public enum TutorialList
 
   public static int getOrdinal(int object)
     {
-    if( object==ObjectList.DIN4_3.ordinal() )
+    if( object== ObjectType.DIN4_3.ordinal() )
       {
-      object= ObjectList.DINO_3.ordinal();
+      object= ObjectType.DINO_3.ordinal();
       }
 
     for(int i=0; i<NUM_OBJECTS; i++)
@@ -463,7 +463,7 @@ public enum TutorialList
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  public ObjectList getObjectList()
+  public ObjectType getObjectList()
     {
     return mObject;
     }
diff --git a/src/main/java/org/distorted/tutorials/TutorialPreRender.java b/src/main/java/org/distorted/tutorials/TutorialPreRender.java
index 97d540e5..e3655f07 100644
--- a/src/main/java/org/distorted/tutorials/TutorialPreRender.java
+++ b/src/main/java/org/distorted/tutorials/TutorialPreRender.java
@@ -22,7 +22,7 @@ package org.distorted.tutorials;
 import android.content.Context;
 import android.content.res.Resources;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.main.TwistyObject;
 
 import org.distorted.effects.BaseEffect;
@@ -42,7 +42,7 @@ public class TutorialPreRender implements EffectController, TwistyPreRender
                   mInitializeObject, mResetAllTextureMaps, mRemovePatternRotation, mSolve;
   private boolean mUIBlocked, mTouchBlocked;
   private boolean mIsSolved;
-  private ObjectList mNextObject;
+  private ObjectType mNextObject;
   private long mRotationFinishedID;
   private int mScreenWidth;
   private TwistyObject mOldObject, mNewObject;
@@ -84,7 +84,7 @@ public class TutorialPreRender implements EffectController, TwistyPreRender
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  private void createObjectNow(ObjectList object)
+  private void createObjectNow(ObjectType object)
     {
     if( mOldObject!=null ) mOldObject.releaseResources();
     mOldObject = mNewObject;
@@ -291,7 +291,7 @@ public class TutorialPreRender implements EffectController, TwistyPreRender
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  void changeObject(ObjectList object)
+  void changeObject(ObjectType object)
     {
     mChangeObject = true;
     mNextObject = object;
diff --git a/src/main/java/org/distorted/tutorials/TutorialState.java b/src/main/java/org/distorted/tutorials/TutorialState.java
index d91c17cd..9eb339bc 100644
--- a/src/main/java/org/distorted/tutorials/TutorialState.java
+++ b/src/main/java/org/distorted/tutorials/TutorialState.java
@@ -23,7 +23,7 @@ import android.view.View;
 import android.widget.ImageButton;
 import android.widget.LinearLayout;
 
-import org.distorted.objectlib.main.ObjectList;
+import org.distorted.objectlib.main.ObjectType;
 
 import org.distorted.helpers.MovesAndLockController;
 import org.distorted.helpers.TwistyActivity;
@@ -72,7 +72,7 @@ public class TutorialState
       public void onClick(View v)
         {
         RubikScreenPlay play = (RubikScreenPlay) ScreenList.PLAY.getScreenClass();
-        int numScrambles = ObjectList.getNumScramble(play.getObject());
+        int numScrambles = ObjectType.getNumScramble(play.getObject());
         act.getPreRender().scrambleObject(numScrambles);
         }
       });
