public AppDock() { InitializeComponent(); DataContext = DockViewModel.Instance; Singleton <BroadcastCenter> .Instance.Subscribe("status_create", delegate { StartComposing(); }); Singleton <BroadcastCenter> .Instance.Subscribe("status_share", (sender, args) => StartComposing()); Singleton <BroadcastCenter> .Instance.Subscribe("status_comment", (sender, args) => StartComposing()); Singleton <BroadcastCenter> .Instance.Subscribe("post_weibo_complete", (sender, args) => StopComposing()); Singleton <BroadcastCenter> .Instance.Subscribe("dock_image_count_changed", (sender, args) => { if (args is int intArgs) { _imageCount = intArgs; ToggleImageTeachingTip(); } }); Singleton <BroadcastCenter> .Instance.Subscribe("share_add_image", delegate { DockInput.Focus(FocusState.Programmatic); }); Singleton <BroadcastCenter> .Instance.Subscribe("share_add_text", delegate { DockInput.Focus(FocusState.Programmatic); }); }
public override void OnGUI() { Node_Color n = (Node_Color)node; DockOutput result = n.GetDockOutputByName("result"); Color resultColor = (Color)result.value; backgroundColor = SetOpacity(resultColor, Mathf.Clamp(resultColor.a, 0.25f, 1f)); for (int i = 0; i < n.inputs.Count; ++i) { GUILayout.BeginHorizontal(); DockInput dockInput = n.inputs [i]; DrawDock(dockInput); GUILayout.Label(dockInput.name, GUILayout.Width(10)); dockInput.value = numberFields[i].Float((float)dockInput.value); dockInput.value = GUILayout.HorizontalSlider((float)dockInput.value, 0, 255); GUILayout.EndHorizontal(); } GUILayout.BeginHorizontal(); GUILayout.Label(""); Rect textureRect = GUILayoutUtility.GetLastRect(); Color origColor = GUI.color; GUI.color = SetOpacity(resultColor, 1); GUI.DrawTexture(textureRect, Texture2D.whiteTexture); GUI.color = origColor; DrawDock(result); GUILayout.EndHorizontal(); }
public override void Update() { DockInput input = GetDockInputByName("input"); DockOutput result = GetDockOutputByName("result"); float inputValue = GetFirstTargetValue <float> (input, 0f); switch (opTrigonometry) { case Op_Trigonometry.Sin: result.value = Mathf.Sin(inputValue); break; case Op_Trigonometry.Cos: result.value = Mathf.Cos(inputValue); break; case Op_Trigonometry.Tg: result.value = Mathf.Tan(inputValue); break; case Op_Trigonometry.Ctg: result.value = 1f / Mathf.Tan(inputValue); break; } }
public override void OnGUI() { Node_Op_Trigonometry n = (Node_Op_Trigonometry)node; backgroundColor = Color.cyan; n.opTrigonometry = (Node_Op_Trigonometry.Op_Trigonometry)popup.EnumPopup((Enum)n.opTrigonometry); title = "Operator " + n.GetOperatorSymbol(); DockInput input = n.GetDockInputByName("input"); DockOutput result = n.GetDockOutputByName("result"); GUILayout.BeginHorizontal(); DrawDock(input); GUILayout.FlexibleSpace(); GUILayout.Label("= "); GUILayout.Box(((float)result.value).ToString("0.00")); DrawDock(result); GUILayout.EndHorizontal(); }