commit d8cf6f49aba2d13032715c4d2bc086c618bee6d8
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Jan 23 16:45:03 2023 +0100

    Progress with SolverScreen.

diff --git a/src/main/java/org/distorted/screens/RubikScreenSolver.java b/src/main/java/org/distorted/screens/RubikScreenSolver.java
index 37d5de36..ce8b851f 100644
--- a/src/main/java/org/distorted/screens/RubikScreenSolver.java
+++ b/src/main/java/org/distorted/screens/RubikScreenSolver.java
@@ -24,12 +24,18 @@ import android.widget.ImageButton;
 import android.widget.LinearLayout;
 
 import org.distorted.objectlib.main.ObjectControl;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.TwistyObject;
 
 import org.distorted.dialogs.RubikDialogSolverError;
 import org.distorted.helpers.TransparentImageButton;
 import org.distorted.main.R;
 import org.distorted.main.RubikActivity;
+import org.distorted.objectlib.shape.ShapeDiamond;
+import org.distorted.objectlib.shape.ShapeDodecahedron;
+import org.distorted.objectlib.shape.ShapeHexahedron;
+import org.distorted.objectlib.shape.ShapeOctahedron;
+import org.distorted.objectlib.shape.ShapeTetrahedron;
 import org.distorted.objects.RubikObjectList;
 import org.distorted.solvers.ImplementedSolversList;
 import org.distorted.solvers.SolverMain;
@@ -80,7 +86,7 @@ public class RubikScreenSolver extends RubikScreenAbstract
     control.solveOnly();
     RubikObjectList.setCurrObject(currentObject);
 
-    generateFaceColors();
+    generateFaceColors(currentObject);
 
     // TOP ////////////////////////////
     LinearLayout layoutTop = act.findViewById(R.id.upperBar);
@@ -120,16 +126,54 @@ public class RubikScreenSolver extends RubikScreenAbstract
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
+// This doesn't quite work in many cases, but in case of the solvers that will pop up in foreseeable
+// future it should be ok.
 
-  public void generateFaceColors()
+  public void generateFaceColors(int object)
     {
-    mFaceColors= new int[] {  TwistyObject.COLOR_YELLOW,
-                              TwistyObject.COLOR_WHITE,
-                              TwistyObject.COLOR_BLUE ,
-                              TwistyObject.COLOR_GREEN,
-                              TwistyObject.COLOR_RED   ,
-                              TwistyObject.COLOR_ORANGE };
-    mNumFaces = 6;
+    if( object== ObjectSignatures.PYRA_3 ||
+        object== ObjectSignatures.PYRA_4 ||
+        object== ObjectSignatures.PYRA_5 ||
+        object== ObjectSignatures.PDUO_2 ||
+        object== ObjectSignatures.JING_2 ||
+        object== ObjectSignatures.MORP_2 ||
+        object== ObjectSignatures.MORP_3 ||
+        object== ObjectSignatures.MORP_4  )
+      {
+      mNumFaces = ShapeTetrahedron.NUM_FACES;
+      mFaceColors = ShapeTetrahedron.FACE_COLORS;
+      }
+    else if( object== ObjectSignatures.DIAM_2 ||
+        object== ObjectSignatures.DIAM_3 ||
+        object== ObjectSignatures.DIAM_4 ||
+        object== ObjectSignatures.TRAJ_3 ||
+        object== ObjectSignatures.TRAJ_4 ||
+        object== ObjectSignatures.PDIA_3  )
+      {
+      mNumFaces   = ShapeOctahedron.NUM_FACES;
+      mFaceColors = ShapeOctahedron.FACE_COLORS;
+      }
+    else if( object== ObjectSignatures.CRYS_3 ||
+        object== ObjectSignatures.STAR_3 ||
+        object== ObjectSignatures.PENT_2 ||
+        object== ObjectSignatures.KILO_3 ||
+        object== ObjectSignatures.KILO_5 ||
+        object== ObjectSignatures.MEGA_3 ||
+        object== ObjectSignatures.MEGA_5  )
+      {
+      mNumFaces   = ShapeDodecahedron.NUM_FACES;
+      mFaceColors = ShapeDodecahedron.FACE_COLORS;
+      }
+    else if( object== ObjectSignatures.BALL_4 )
+      {
+      mNumFaces   = ShapeDiamond.NUM_FACES;
+      mFaceColors = ShapeDiamond.FACE_COLORS;
+      }
+    else
+      {
+      mNumFaces   = ShapeHexahedron.NUM_FACES;
+      mFaceColors = ShapeHexahedron.FACE_COLORS;
+      }
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
