Commit 3b84e2ca authored by Sylvain Renault's avatar Sylvain Renault
Browse files

Some change in the Server/Editor UI (light weight).

parent 96573066
Loading
Loading
Loading
Loading
+47 −50
Original line number Diff line number Diff line
@@ -113,8 +113,9 @@ namespace ETSI.ARF.WorldStorage.UI
            ori = GUI.backgroundColor; // remember ori color

            gsTest = new GUIStyle("window");
            gsTest.normal.textColor = WorldStorageWindow.arfColors[0];
            //gsTest.normal.textColor = WorldStorageWindow.arfColors[0];
            gsTest.fontStyle = FontStyle.Bold;
            gsTest.fontSize = 16;

            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.ExpandWidth(true));
            WorldStorageWindow.DrawCopyright();
@@ -137,7 +138,6 @@ namespace ETSI.ARF.WorldStorage.UI
            GUILayout.Label("User: " + worldStorageUser.userName, EditorStyles.whiteLargeLabel);
            EditorGUILayout.Space();

            //GUILayout.BeginHorizontal();
            customName = EditorGUILayout.TextField("Name of Trackable:", customName);
#if isDEBUG
            GUILayout.Label("UUID: " + UUID, EditorStyles.miniLabel); // readonly
@@ -145,48 +145,12 @@ namespace ETSI.ARF.WorldStorage.UI
#endif
            EditorGUILayout.Space();

            //GUI.backgroundColor = WorldStorageWindow.arfColors[1];
            //if (GUILayout.Button("Read Parameters"))
            //{
            //    UUID = WorldStorageWindow.GetUUIDFromString(customName);
            //    if (UUID == null) UUID = customName; // try this
            //    GetTrackableParams();
            //}
            //GUI.backgroundColor = ori;

            type = (Trackable.TrackableTypeEnum)EditorGUILayout.EnumPopup("Trackable Type:", type);
            unit = (UnitSystem)EditorGUILayout.EnumPopup("Unit System:", unit);

            EditorGUILayout.Space(10);
            trackableSize = EditorGUILayout.Vector3Field("Trackable Size:", trackableSize);

            EditorGUILayout.Space(10);
            GUILayout.Label("Local CRS:");
            localCRS_pos = EditorGUILayout.Vector3Field("   Position:", localCRS_pos);
            localCRS_rot = EditorGUILayout.Vector3Field("   Rotation:", localCRS_rot);

            EditorGUILayout.Space();
            if (GUILayout.Button("Generate Dummy Payload"))
            {
                // dummy
                trackablePayload = new byte[100];
                for (int i = 0; i < trackablePayload.Length; i++)
                {
                    trackablePayload[i] = (byte)i;
                }
            }

            EditorGUILayout.Space();
            groupEnabled = EditorGUILayout.BeginToggleGroup("Optional Parameters:", groupEnabled);
            key1 = EditorGUILayout.TextField("Key 1", key1);
            value1 = EditorGUILayout.TextField("Value 1", value1);
            EditorGUILayout.EndToggleGroup();
            //
            GUILayout.EndVertical();

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[1];
            if (GUILayout.Button("Create New Trackable"))
            // ---------------------
            // Toolbar
            // ---------------------
            EditorGUILayout.BeginHorizontal();
            GUI.backgroundColor = WorldStorageWindow.arfColors[2];
            if (GUILayout.Button("Create"))
            {
                Debug.Log("POST Trackable");

@@ -199,8 +163,8 @@ namespace ETSI.ARF.WorldStorage.UI
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }

            GUI.backgroundColor = WorldStorageWindow.arfColors[2];
            if (GUILayout.Button("Modify Trackable"))
            GUI.backgroundColor = WorldStorageWindow.arfColors[0];
            if (GUILayout.Button("Update"))
            {
                Debug.Log("PUT Trackable");

@@ -214,9 +178,8 @@ namespace ETSI.ARF.WorldStorage.UI
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[3];
            if (GUILayout.Button("Delete Trackable"))
            if (GUILayout.Button("Delete"))
            {
                Debug.Log("Delete Trackable");
                TrackableRequest.DeleteTrackable(worldStorageServer, UUID);
@@ -229,13 +192,47 @@ namespace ETSI.ARF.WorldStorage.UI
            }
            GUI.backgroundColor = ori;

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[5];
            if (GUILayout.Button("Generate/Update GameObject Visual"))
            if (GUILayout.Button("Generate GameObject"))
            {
                GenerateAndUpdateVisual(UUID, customName, localCRS_pos, localCRS_rot);
            }
            GUI.backgroundColor = ori;
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.Space();

            // ---------------------
            // Params
            // ---------------------
            type = (Trackable.TrackableTypeEnum)EditorGUILayout.EnumPopup("Trackable Type:", type);
            unit = (UnitSystem)EditorGUILayout.EnumPopup("Unit System:", unit);

            EditorGUILayout.Space();
            trackableSize = EditorGUILayout.Vector3Field("Trackable Size:", trackableSize);

            EditorGUILayout.Space();
            GUILayout.Label("Local CRS:");
            localCRS_pos = EditorGUILayout.Vector3Field("   Position:", localCRS_pos);
            localCRS_rot = EditorGUILayout.Vector3Field("   Rotation:", localCRS_rot);

            EditorGUILayout.Space();
            if (GUILayout.Button("Generate Dummy Payload"))
            {
                // dummy
                trackablePayload = new byte[100];
                for (int i = 0; i < trackablePayload.Length; i++)
                {
                    trackablePayload[i] = (byte)i;
                }
            }

            EditorGUILayout.Space();
            groupEnabled = EditorGUILayout.BeginToggleGroup("Optional Parameters:", groupEnabled);
            key1 = EditorGUILayout.TextField("Key 1", key1);
            value1 = EditorGUILayout.TextField("Value 1", value1);
            EditorGUILayout.EndToggleGroup();
            //
            GUILayout.EndVertical();
        }

        private void GetTrackableParams()
+35 −38
Original line number Diff line number Diff line
@@ -110,8 +110,9 @@ namespace ETSI.ARF.WorldStorage.UI
            ori = GUI.backgroundColor; // remember ori color

            gsTest = new GUIStyle("window");
            gsTest.normal.textColor = WorldStorageWindow.arfColors[0];
            //gsTest.normal.textColor = WorldStorageWindow.arfColors[0];
            gsTest.fontStyle = FontStyle.Bold;
            gsTest.fontSize = 16;

            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.ExpandWidth(true));
            WorldStorageWindow.DrawCopyright();
@@ -134,7 +135,6 @@ namespace ETSI.ARF.WorldStorage.UI
            GUILayout.Label("User: " + worldStorageUser.userName, EditorStyles.whiteLargeLabel);
            EditorGUILayout.Space();

            //GUILayout.BeginHorizontal();
            customName = EditorGUILayout.TextField("Name of Anchor:", customName);
#if isDEBUG
            GUILayout.Label("UUID: " + UUID, EditorStyles.miniLabel); // readonly
@@ -142,36 +142,12 @@ namespace ETSI.ARF.WorldStorage.UI
#endif
            EditorGUILayout.Space();

            //GUI.backgroundColor = WorldStorageWindow.arfColors[1];
            //if (GUILayout.Button("Read Parameters"))
            //{
            //    UUID = WorldStorageWindow.GetUUIDFromString(customName);
            //    if (UUID == null) UUID = customName; // try this
            //    GetWorldAnchorParams();
            //}
            //GUI.backgroundColor = ori;

            unit = (UnitSystem)EditorGUILayout.EnumPopup("Unit System:", unit);

            EditorGUILayout.Space(10);
            worldAnchorSize = EditorGUILayout.Vector3Field("Trackable Size:", worldAnchorSize);

            EditorGUILayout.Space(10);
            GUILayout.Label("Local CRS:");
            localCRS_pos = EditorGUILayout.Vector3Field("   Position:", localCRS_pos);
            localCRS_rot = EditorGUILayout.Vector3Field("   Rotation:", localCRS_rot);

            EditorGUILayout.Space();
            groupEnabled = EditorGUILayout.BeginToggleGroup("Optional Parameters:", groupEnabled);
            key1 = EditorGUILayout.TextField("Key 1", key1);
            value1 = EditorGUILayout.TextField("Value 1", value1);
            EditorGUILayout.EndToggleGroup();
            //
            GUILayout.EndVertical();

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[1];
            if (GUILayout.Button("Create New World Anchor"))
            // ---------------------
            // Toolbar
            // ---------------------
            EditorGUILayout.BeginHorizontal();
            GUI.backgroundColor = WorldStorageWindow.arfColors[2];
            if (GUILayout.Button("Create"))
            {
                Debug.Log("POST World Anchor");

@@ -184,8 +160,8 @@ namespace ETSI.ARF.WorldStorage.UI
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }

            GUI.backgroundColor = WorldStorageWindow.arfColors[2];
            if (GUILayout.Button("Modify World Anchor"))
            GUI.backgroundColor = WorldStorageWindow.arfColors[0];
            if (GUILayout.Button("Update"))
            {
                Debug.Log("PUT World Anchor");

@@ -199,9 +175,8 @@ namespace ETSI.ARF.WorldStorage.UI
                }
            }

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[3];
            if (GUILayout.Button("Delete World Anchor"))
            if (GUILayout.Button("Delete"))
            {
                Debug.Log("Delete World Anchor");
                WorldAnchorRequest.DeleteWorldAnchor(worldStorageServer, UUID);
@@ -213,13 +188,35 @@ namespace ETSI.ARF.WorldStorage.UI
            }
            GUI.backgroundColor = ori;

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[5];
            if (GUILayout.Button("Generate/Update GameObject Visual"))
            if (GUILayout.Button("Generate GameObject"))
            {
                GenerateAndUpdateVisual(UUID, customName, localCRS_pos, localCRS_rot);
            }
            GUI.backgroundColor = ori;
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.Space();

            // ---------------------
            // Params
            // ---------------------
            unit = (UnitSystem)EditorGUILayout.EnumPopup("Unit System:", unit);

            EditorGUILayout.Space();
            worldAnchorSize = EditorGUILayout.Vector3Field("Trackable Size:", worldAnchorSize);

            EditorGUILayout.Space();
            GUILayout.Label("Local CRS:");
            localCRS_pos = EditorGUILayout.Vector3Field("   Position:", localCRS_pos);
            localCRS_rot = EditorGUILayout.Vector3Field("   Rotation:", localCRS_rot);

            EditorGUILayout.Space();
            groupEnabled = EditorGUILayout.BeginToggleGroup("Optional Parameters:", groupEnabled);
            key1 = EditorGUILayout.TextField("Key 1", key1);
            value1 = EditorGUILayout.TextField("Value 1", value1);
            EditorGUILayout.EndToggleGroup();
            //
            GUILayout.EndVertical();
        }

        private void GetWorldAnchorParams()
+63 −60
Original line number Diff line number Diff line
@@ -125,8 +125,9 @@ namespace ETSI.ARF.WorldStorage.UI
            ori = GUI.backgroundColor; // remember ori color

            gsTest = new GUIStyle("window");
            gsTest.normal.textColor = WorldStorageWindow.arfColors[0];
            //gsTest.normal.textColor = WorldStorageWindow.arfColors[0];
            gsTest.fontStyle = FontStyle.Bold;
            gsTest.fontSize = 16;

            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.ExpandWidth(true));
            WorldStorageWindow.DrawCopyright();
@@ -216,16 +217,73 @@ namespace ETSI.ARF.WorldStorage.UI
            GUILayout.Label("User: " + worldStorageUser.userName, EditorStyles.whiteLargeLabel);
            EditorGUILayout.Space();

            //GUILayout.BeginHorizontal();
            //customName = EditorGUILayout.TextField("Name of Link", customName);
#if isDEBUG
            GUILayout.Label("UUID: " + UUID, EditorStyles.miniLabel); // readonly
            GUILayout.Label("Creator UID: " + creatorUUID, EditorStyles.miniLabel); // readonly
#endif
            EditorGUILayout.Space();

            // ---------------------
            // Toolbar
            // ---------------------
            EditorGUILayout.BeginHorizontal();
            GUI.backgroundColor = WorldStorageWindow.arfColors[2];
            if (GUILayout.Button("Create"))
            {
                Debug.Log("POST World Link");

                UUID = "0";
                if (string.IsNullOrEmpty(UUID) || UUID == "0") UUID = System.Guid.Empty.ToString();
                WorldLink obj = GenerateWorldLink();
                UUID = WorldLinkRequest.AddWorldLink(worldStorageServer, obj);
                UUID = UUID.Trim('"'); //Bugfix: remove " from server return value
                WorldStorageWindow.WorldStorageWindowSingleton.GetWorldLinks();
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }

            GUI.backgroundColor = WorldStorageWindow.arfColors[0];
            if (GUILayout.Button("Update"))
            {
                Debug.Log("PUT World Link");

                if (!string.IsNullOrEmpty(UUID) && UUID != "0")
                {
                    WorldLink obj = GenerateWorldLink();
                    UUID = WorldLinkRequest.UpdateWorldLink(worldStorageServer, obj);
                    UUID = UUID.Trim('"'); //Bugfix: remove " from server return value
                    WorldStorageWindow.WorldStorageWindowSingleton.GetWorldLinks();
                    WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
                }
            }

            GUI.backgroundColor = WorldStorageWindow.arfColors[3];
            if (GUILayout.Button("Delete"))
            {
                Debug.Log("Delete World Link");
                WorldLinkRequest.DeleteWorldLink(worldStorageServer, UUID);
                UUID = System.Guid.Empty.ToString();
                creatorUUID = System.Guid.Empty.ToString();
                unit = UnitSystem.CM;
                WorldStorageWindow.WorldStorageWindowSingleton.GetWorldLinks();
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }
            GUI.backgroundColor = ori;

            GUI.backgroundColor = WorldStorageWindow.arfColors[5];
            if (GUILayout.Button("Generate GameObject"))
            {
                //TODO: Value between from and to
                Vector3 pos = (FROM.pos + TO.pos) * 0.5f;
                Vector3 rot = Vector3.zero;  // Direction
                GenerateAndUpdateVisual(UUID, FROM.name, TO.name, pos, rot);
            }
            GUI.backgroundColor = ori;
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.Space();

            // ---------------------
            // Params
            // ---------------------
            showListFrom = EditorGUILayout.Foldout(showListFrom, "From (parent object)");
            if (showListFrom)
            {
@@ -261,10 +319,10 @@ namespace ETSI.ARF.WorldStorage.UI
                TO.type = (ObjectType)EditorGUILayout.EnumPopup("Type:", TO.type);
            }

            EditorGUILayout.Space(10);
            EditorGUILayout.Space();
            unit = (UnitSystem)EditorGUILayout.EnumPopup("Unit System:", unit);

            EditorGUILayout.Space(10);
            EditorGUILayout.Space();
            //TODO Is this required???
            GUILayout.Label("Transform:");
            transf_pos = EditorGUILayout.Vector3Field("Position:", transf_pos);
@@ -277,61 +335,6 @@ namespace ETSI.ARF.WorldStorage.UI
            EditorGUILayout.EndToggleGroup();
            //
            GUILayout.EndVertical();

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[1];
            if (GUILayout.Button("Create New World Link"))
            {
                Debug.Log("POST World Link");

                UUID = "0";
                if (string.IsNullOrEmpty(UUID) || UUID == "0") UUID = System.Guid.Empty.ToString();
                WorldLink obj = GenerateWorldLink();
                UUID = WorldLinkRequest.AddWorldLink(worldStorageServer, obj);
                UUID = UUID.Trim('"'); //Bugfix: remove " from server return value
                WorldStorageWindow.WorldStorageWindowSingleton.GetWorldLinks();
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }

            GUI.backgroundColor = WorldStorageWindow.arfColors[2];
            if (GUILayout.Button("Modify World Link"))
            {
                Debug.Log("PUT World Link");

                if (!string.IsNullOrEmpty(UUID) && UUID != "0")
                {
                    WorldLink obj = GenerateWorldLink();
                    UUID = WorldLinkRequest.UpdateWorldLink(worldStorageServer, obj);
                    UUID = UUID.Trim('"'); //Bugfix: remove " from server return value
                    WorldStorageWindow.WorldStorageWindowSingleton.GetWorldLinks();
                    WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
                }
            }

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[3];
            if (GUILayout.Button("Delete World Link"))
            {
                Debug.Log("Delete World Link");
                WorldLinkRequest.DeleteWorldLink(worldStorageServer, UUID);
                UUID = System.Guid.Empty.ToString();
                creatorUUID = System.Guid.Empty.ToString();
                unit = UnitSystem.CM;
                WorldStorageWindow.WorldStorageWindowSingleton.GetWorldLinks();
                WorldStorageWindow.WorldStorageWindowSingleton.Repaint();
            }
            GUI.backgroundColor = ori;

            // ###########################################################
            GUI.backgroundColor = WorldStorageWindow.arfColors[5];
            if (GUILayout.Button("Generate/Update GameObject Visual"))
            {
                //TODO: Value between from and to
                Vector3 pos = (FROM.pos + TO.pos) * 0.5f;
                Vector3 rot = Vector3.zero;  // Direction
                GenerateAndUpdateVisual(UUID, FROM.name, TO.name, pos, rot);
            }
            GUI.backgroundColor = ori;
        }

        private void GetWorldLinkParams()
Loading