commit b3786da4ded739ab0735c824e6520637013b83f2
Author: leszek <leszek@koltunski.pl>
Date:   Tue Aug 29 09:53:22 2023 +0200

    progress with FactoryBandagedMegaminx.

diff --git a/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java b/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java
index 86aec96b..791147b1 100644
--- a/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java
+++ b/src/main/java/org/distorted/bandaged/BandagedCreatorActivity.java
@@ -191,6 +191,7 @@ public class BandagedCreatorActivity extends AppCompatActivity
     protected void onResume() 
       {
       super.onResume();
+
       DistortedLibrary.onResume(ACTIVITY_NUMBER);
       BandagedCreatorView view = findViewById(R.id.bandagedCreatorObjectView);
       view.onResume();
diff --git a/src/main/java/org/distorted/bandaged/BandagedCreatorScreen.java b/src/main/java/org/distorted/bandaged/BandagedCreatorScreen.java
index baaf2650..83250775 100644
--- a/src/main/java/org/distorted/bandaged/BandagedCreatorScreen.java
+++ b/src/main/java/org/distorted/bandaged/BandagedCreatorScreen.java
@@ -47,12 +47,14 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
   private final int mOrdinal;
   private final int mDimension;
   private final int mMaxSupported;
+  private final int mMinSupported;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   public BandagedCreatorScreen(int ordinal)
     {
     mOrdinal      = ordinal;
+    mMinSupported = LocallyBandagedList.getMinSupported(ordinal);
     mMaxSupported = LocallyBandagedList.getMaxSupported(ordinal);
     mDimension    = LocallyBandagedList.getDimension(ordinal);
     mSpinnersReady= false;
@@ -120,11 +122,12 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
 
   private String[] createSizes(String mark)
     {
-    String[] ret = new String[mMaxSupported];
+    int num = mMaxSupported-mMinSupported+1;
+    String[] ret = new String[num];
 
-    for(int i=1; i<=mMaxSupported; i++)
+    for(int i=1; i<=num; i++)
       {
-      ret[i-1] = mark+" : "+i;
+      ret[i-1] = mark+" : "+(mMinSupported+i-1);
       }
 
     return ret;
@@ -137,7 +140,7 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
     if( mSpinnersReady )
       {
       BandagedCreatorActivity act = mAct.get();
-      if( act!=null ) act.changeObject(mX+1,mY+1,mZ+1);
+      if( act!=null ) act.changeObject(mX+mMinSupported,mY+mMinSupported,mZ+mMinSupported);
       }
     }
 
@@ -145,6 +148,8 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
 
   void onAttachedToWindow(final BandagedCreatorActivity act)
     {
+    android.util.Log.e("D", "attached1");
+
     mAct = new WeakReference<>(act);
     mObjectView = act.findViewById(R.id.bandagedCreatorView);
     mTextSize = act.getScreenHeightInPixels()*BandagedCreatorActivity.SPINNER_TEXT_SIZE;
@@ -219,6 +224,9 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
       {
       mSpinnerZ.setVisibility(View.INVISIBLE);
       }
+
+
+    android.util.Log.e("D", "attached2");
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -388,6 +396,8 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
 
     public void restorePreferences(BandagedCreatorActivity act, SharedPreferences preferences)
       {
+      android.util.Log.e("D", "restore1");
+
       String objects = preferences.getString(generateObjectKey(),"");
       addObjects(act,objects);
 
@@ -395,11 +405,19 @@ public class BandagedCreatorScreen implements AdapterView.OnItemSelectedListener
       mY = preferences.getInt("bandagedY"+mOrdinal, 2);
       mZ = preferences.getInt("bandagedZ"+mOrdinal, 2);
 
+      int max = mMaxSupported-mMinSupported+1;
+
+      if( mX>max ) mX = max;
+      if( mY>max ) mY = max;
+      if( mZ>max ) mZ = max;
+
       mSpinnerX.setSelection(mX);
       mSpinnerY.setSelection(mY);
       mSpinnerZ.setSelection(mZ);
 
       mSpinnersReady = true;
       changeObject();
+
+      android.util.Log.e("D", "restore2");
       }
 }
