public override void OnInspectorGUI() { ExternalDisplay source = (ExternalDisplay)target; EditorUtility.SetDirty(source); EditorGUILayout.HelpBox("The display where the mouse pointer is located will be denoted as (Current) in the following dropdown list.", MessageType.Info, true); source.DisplayNum = EditorGUILayout.Popup("Available Displays:", source.DisplayNum, displays); GUILayout.Label(""); if (GUILayout.Button("Show External Window")) { if (window == null) { window = (WebcamPreview)EditorWindow.GetWindow(typeof(WebcamPreview), true, "Webcam Preview"); window.init(source.DisplayNum, true); } else { window.Show(); } } if (GUILayout.Button("Hide External Window")) { if (window != null) { window.Close(); } } }
private void ToggleButton_Checked(object sender, RoutedEventArgs e) { if (!isVideoMaximized) { (this.Resources["VideoMaximized"] as Storyboard).Begin(); isVideoMaximized = true; InitTimer(); MainViewModel.Instance.CanPlayDemoVideo = true; WebcamPreview.PlayDemoVideo(); } }
void OnGUI() { if (window == null) { window = (WebcamPreview)EditorWindow.GetWindow(typeof(WebcamPreview)); } else { setWindowPosition(p1.x, p1.y, p2.x, p2.y); } // SHOW CAM FEED if (webcamTex != null) { if (!windowPositioned) { setWindowPosition(p1.x, p1.y, p2.x, p2.y); windowPositioned = true; } GUI.DrawTexture(new Rect(mirror?position.width:0, 0, position.width * (mirror?-1:1), position.height), webcamTex); GUILayout.FlexibleSpace(); if (GUILayout.Button("Close Window", GUILayout.Width(300))) { Close(); } } // SHOW GUI else { EditorGUILayout.LabelField("Mirror the webcam output"); mirror = EditorGUILayout.Toggle(mirror); EditorGUILayout.LabelField("\n"); this.source = (GameObject)EditorGUILayout.ObjectField("Webcam Quad", this.source, typeof(GameObject), true, GUILayout.Width(300)); EditorGUILayout.LabelField("\n"); p1 = EditorGUILayout.Vector2IntField("Set the position:", p1, GUILayout.Width(300)); //p2 = EditorGUILayout.Vector2IntField("Set the size:", p2); if (GUILayout.Button("Accept new position", GUILayout.Width(300))) { setWindowPosition(p1.x, p1.y, p2.x, p2.y); } EditorGUILayout.LabelField("\n"); if (GUILayout.Button("Close Window", GUILayout.Width(300))) { Close(); } } }
static void ShowWindow() { window = (WebcamPreview)EditorWindow.GetWindow(typeof(WebcamPreview)); window.init(); }