public static IUIBuilder AddUIComponents(this IUIBuilder builder) { AddAddTemplates(builder); AddComponents(builder.Services); return(builder); }
public virtual void CreateUI(IUIBuilder builder) { _group = new UIGroup(builder); var visible = false; var group = new UIGroup(_group); MainTitle = _group.CreateButton("Main", () => group.SetVisible(visible = !visible), new Color(0.3f, 0.3f, 0.3f), Color.white, true); SmoothingSlider = group.CreateSlider("Plugin:Smoothing", "Smoothing (%)", 0.1f, 0.0f, 0.99f, true, true, true, "P0"); ReferenceLengthScaleSlider = group.CreateSlider("Device:ReferenceLengthScale", "Reference Length (%)", 1.0f, 0, 3, true, true, true, "P0"); ReferenceRadiusScaleSlider = group.CreateSlider("Device:ReferenceRadiusScale", "Reference Radius (%)", 3.0f, 0, 5, true, true, true, "P0"); group.SetVisible(false); CreateL0AxisUI(_group); CreateL1AxisUI(_group); CreateL2AxisUI(_group); CreateR0AxisUI(_group); CreateR1AxisUI(_group); CreateR2AxisUI(_group); CreateV0AxisUI(_group); CreateA0AxisUI(_group); CreateA1AxisUI(_group); CreateA2AxisUI(_group); }
public virtual void DestroyUI(IUIBuilder builder) { builder.Destroy(RefreshButton); builder.Destroy(Spacer); UIManager.RemoveAction(RefreshAction); }
public override void DestroyUI(IUIBuilder builder) { base.DestroyUI(builder); builder.Destroy(TargetChooser); builder.Destroy(CaptureOriginButton); }
public void CreateUI(IUIBuilder builder) { DataParserChooser = builder.CreatePopup("Plugin:ValuesSource:DataParser", "Data type", new List <string> { "TCode" }, "TCode", DataParserChooserCallback); DataParserChooserCallback(DataParserChooser.val); CreateCustomUI(builder); StartStopButtonGroup = builder.CreateHorizontalGroup(510, 50, new Vector2(10, 0), 2, idx => builder.CreateButtonEx()); var startButton = StartStopButtonGroup.items[0].GetComponent <UIDynamicButton>(); startButton.buttonText.fontSize = 25; startButton.label = "Start"; startButton.buttonColor = new Color(0.309f, 1f, 0.039f) * 0.8f; startButton.textColor = Color.white; startButton.button.onClick.AddListener(StartCallback); var stopButton = StartStopButtonGroup.items[1].GetComponent <UIDynamicButton>(); stopButton.buttonText.fontSize = 25; stopButton.label = "Stop"; stopButton.buttonColor = new Color(1f, 0.168f, 0.039f) * 0.8f; stopButton.textColor = Color.white; stopButton.button.onClick.AddListener(StopCallback); }
protected override void CreateCustomUI(IUIBuilder builder) { TargetChooser = builder.CreateScrollablePopup("MotionSource:PhysicsLink:Target", "Select Target", null, null, TargetChooserCallback, true); CaptureOriginButton = builder.CreateButton("Capture Origin", CaptureOriginCallback, true); FindAtoms(); }
private static void AddTemplates(IUIBuilder builder) { const string blackTemplate = TemplateNames.TEST; const string assemblyName = "Liquidity2.UI.Present"; //builder.AddTemplate("name", "path"); }
public static IUIBuilder AddWindows(this IUIBuilder builder) { AddTemplates(builder); AddWindows(builder.Services); return(builder); }
public override void CreateUI(IUIBuilder builder) { AnimationChooser = builder.CreatePopup("MotionSource:Animation", "Select Animation", null, null, AnimationChooserCallback); base.CreateUI(builder); FindAnimations(); }
public void DestroyUI(IUIBuilder builder) { builder.Destroy(ComPortChooser); builder.Destroy(ButtonGroup); UIManager.RemoveAction(StartSerialAction); UIManager.RemoveAction(StopSerialAction); }
public override void CreateUI(IUIBuilder builder) { MaleChooser = builder.CreatePopup("MotionSource:Male", "Select Male", null, null, MaleChooserCallback); base.CreateUI(builder); FindMales(); }
public override void CreateUI(IUIBuilder builder) { DildoChooser = builder.CreatePopup("MotionSource:D***o", "Select D***o", null, null, DildoChooserCallback); base.CreateUI(builder); FindDildos(); }
public override void DestroyUI(IUIBuilder builder) { builder.Destroy(FemaleChooser); builder.Destroy(TargetChooser); builder.Destroy(TargetOffsetSlider); base.DestroyUI(builder); }
public override void DestroyUI(IUIBuilder builder) { base.DestroyUI(builder); builder.Destroy(AssetChooser); builder.Destroy(ComponentChooser); builder.Destroy(UpDirectionChooser); builder.Destroy(PositionOffsetSlider); builder.Destroy(LengthScaleSlider); }
public void DestroyUI(IUIBuilder builder) { builder.Destroy(AddressInput); builder.Destroy(PortInput); builder.Destroy(ButtonGroup); UIManager.RemoveAction(StartUdpAction); UIManager.RemoveAction(StopUdpAction); }
public void CreateUI(IUIBuilder builder) { CurveXAxisChooser = builder.CreateScrollablePopup($"Device:{_name}:CurveXAxis", "Curve X Axis", new List <string> { "L0", "L1", "L2", "L1+L2", "R0", "R1", "R2", "R1+R2", "L0+R1+R2", "Time" }, "L0", CurveXAxisChooserCallback, true); CreateTimeUI(builder); CurveXAxisChooserCallback("L0"); }
public void CreateUI(IUIBuilder builder) { SpeedSlider = builder.CreateSlider("MotionSource:Speed", "Speed", 1, 0, 10, true, true); AxisChooser = builder.CreateScrollablePopup("MotionSource:Axis", "Select Axis", new List <string> { "L0", "L1", "L2", "R0", "R1", "R2" }, "L0", AxisChooserCallback); MotionTypeChooser = builder.CreateScrollablePopup("MotionSource:Value", "Select Value", new List <string> { "Min", "Center", "Max", "Linear", "Smooth" }, "Min", AxisChooserCallback); }
public static IUIBuilder AddUIService(this IUIBuilder builder) { var service = builder.Services; AddServices(service); AddLifecycleStageObjects(service); AddEventObservers(service); return(builder); }
public void DestroyUI(IUIBuilder builder) { builder.Destroy(OutputTargetChooser); foreach (var item in _uiGroups) { item.Value?.Destroy(builder); } _uiGroups.Clear(); }
private static void AddAddTemplates(IUIBuilder builder) { const string blackTemplate = TemplateNames.BLACK; const string assemblyName = "Liquidity2.UI.Components"; //builder.AddTemplate("模板名", "路径"); builder.AddTemplate(blackTemplate, $"/{assemblyName};component/Templates/{blackTemplate}/Window_Template.xaml"); builder.AddTemplate(blackTemplate, $"/{assemblyName};component/Templates/{blackTemplate}/GroupWindow_Template.xaml"); builder.AddTemplate(blackTemplate, $"/{assemblyName};component/Templates/{blackTemplate}/SearchTextBox_Template.xaml"); builder.AddTemplate(blackTemplate, $"/{assemblyName};component/Templates/{blackTemplate}/TabControl_Template.xaml"); }
public override void CreateUI(IUIBuilder builder) { AssetChooser = builder.CreateScrollablePopup("MotionSource:Asset", "Select Asset", null, null, AssetChooserCallback); ComponentChooser = builder.CreateScrollablePopup("MotionSource:Component", "Select Component", null, null, ComponentChooserCallback); UpDirectionChooser = builder.CreateScrollablePopup("MotionSource:UpDirection", "Select Up Direction", new List <string> { "+Up", "+Right", "+Forward", "-Up", "-Right", "-Forward" }, "+Up", null); PositionOffsetSlider = builder.CreateSlider("MotionSource:PositionOffset", "Position Offset", 0, 0, 1, true, true); LengthScaleSlider = builder.CreateSlider("MotionSource:LengthScale", "Length Scale", 1, 0, 1, true, true); base.CreateUI(builder); FindAssets(); }
protected override void CreateCustomUI(IUIBuilder builder) { PortInputBox = builder.CreateTextField("ValuesSource:Udp:Port", _port.ToString(), 50, s => { var result = 0; if (int.TryParse(s, out result)) { _port = result; } else { SuperController.LogMessage($"Failed to parse port number from: {s}"); } }, canInput: true); }
private void CreateR2AxisUI(IUIBuilder builder) { var group = new UIGroup(builder); var visible = false; R2AxisTitle = builder.CreateButton("Pitch | R2", () => group.SetVisible(visible = !visible), Color.yellow * 0.8f, Color.white, true); RangeMaxR2Slider = group.CreateSlider("Device:R2:RangeMax", "Range Max (+/- \u00b0)", 30, 1, 89, true, true, true, "F0"); OutputMaxR2Slider = group.CreateSlider("Device:R2:OutputMax", "Output Max (+/- %)", 0.5f, 0.01f, 0.5f, true, true, true, "P0"); OffsetR2Slider = group.CreateSlider("Device:R2:Offset", "Offset (%)", 0f, -0.25f, 0.25f, true, true, true, "P0"); InvertR2Toggle = group.CreateToggle("Device:R2:Invert", "Invert", false, true); EnableOverrideR2Toggle = group.CreateToggle("Device:R2:EnableOverride", "Enable Override", false, true); OverrideR2Slider = group.CreateSlider("Device:R2:Override", "Override Value (%)", 0.5f, 0f, 1f, true, true, true, "P0"); group.SetVisible(false); }
private void CreateR0AxisUI(IUIBuilder builder) { var group = new UIGroup(builder); var visible = false; R0AxisTitle = builder.CreateButton("Twist | R0", () => group.SetVisible(visible = !visible), Color.cyan * 0.8f, Color.white, true); RangeMaxR0Slider = group.CreateSlider("Device:R0:RangeMax", "Range Max (+/- \u00b0)", 90, 1, 179, true, true, true, "F0"); OutputMaxR0Slider = group.CreateSlider("Device:R0:OutputMax", "Output Max (+/- %)", 0.5f, 0f, 0.5f, true, true, true, "P0"); OffsetR0Slider = group.CreateSlider("Device:R0:Offset", "Offset (%)", 0f, -0.25f, 0.25f, true, true, true, "P0"); InvertR0Toggle = group.CreateToggle("Device:R0:Invert", "Invert", false, true); EnableOverrideR0Toggle = group.CreateToggle("Device:R0:EnableOverride", "Enable Override", false, true); OverrideR0Slider = group.CreateSlider("Device:R0:Override", "Override Value (%)", 0.5f, 0f, 1f, true, true, true, "P0"); group.SetVisible(false); }
private void CreateL2AxisUI(IUIBuilder builder) { var group = new UIGroup(builder); var visible = false; L2AxisTitle = builder.CreateButton("Left/Right | L2", () => group.SetVisible(visible = !visible), Color.blue * 0.8f, Color.white, true); RangeMaxL2Slider = group.CreateSlider("Device:L2:RangeMax", "Range Max (+/- cm)", 0.15f, 0.01f, 1f, true, true, true, "P2"); OutputMaxL2Slider = group.CreateSlider("Device:L2:OutputMax", "Output Max (+/- %)", 0.5f, 0f, 0.5f, true, true, true, "P0"); OffsetL2Slider = group.CreateSlider("Device:L2:Offset", "Offset (%)", 0f, -0.25f, 0.25f, true, true, true, "P0"); InvertL2Toggle = group.CreateToggle("Device:L2:Invert", "Invert", false, true); EnableOverrideL2Toggle = group.CreateToggle("Device:L2:EnableOverride", "Enable Override", false, true); OverrideL2Slider = group.CreateSlider("Device:L2:Override", "Override Value (%)", 0.5f, 0f, 1f, true, true, true, "P0"); group.SetVisible(false); }
private void CreateL1AxisUI(IUIBuilder builder) { var group = new UIGroup(builder); var visible = false; L1AxisTitle = builder.CreateButton("Forward/Backward | L1", () => group.SetVisible(visible = !visible), Color.green * 0.8f, Color.white, true); RangeMaxL1Slider = group.CreateSlider("Device:L1:RangeMax", "Range Max (+/- cm)", 0.15f, 0.01f, 1f, true, true, true, "P2"); OutputMaxL1Slider = group.CreateSlider("Device:L1:OutputMax", "Output Max (+/- %)", 0.5f, 0f, 0.5f, true, true, true, "P0"); OffsetL1Slider = group.CreateSlider("Device:L1:Offset", "Offset (%)", 0f, -0.25f, 0.25f, true, true, true, "P0"); InvertL1Toggle = group.CreateToggle("Device:L1:Invert", "Invert", false, true); EnableOverrideL1Toggle = group.CreateToggle("Device:L1:EnableOverride", "Enable Override", false, true); OverrideL1Slider = group.CreateSlider("Device:L1:Override", "Override Value (%)", 0.5f, 0f, 1f, true, true, true, "P0"); group.SetVisible(false); }
public override void CreateUI(IUIBuilder builder) { var targets = new List <string> { "Auto", "V****a", "Pelvis", "Hips", "Anus", "Mouth", "Left Hand", "Right Hand", "Chest", "Left Foot", "Right Foot", "Feet" }; var defaultTarget = "V****a"; FemaleChooser = builder.CreatePopup("MotionSource:Female", "Select Female", null, null, FemaleChooserCallback); TargetChooser = builder.CreateScrollablePopup("MotionSource:FemaleTarget", "Select Target Point", targets, defaultTarget, null); TargetOffsetSlider = builder.CreateSlider("MotionSource:TargetOffset", "Target Offset (cm)", 0.0f, -0.15f, 0.15f, true, true, valueFormat: "P2"); base.CreateUI(builder); FindFemales(); }
private void CreateL0AxisUI(IUIBuilder builder) { var group = new UIGroup(builder); var visible = false; L0AxisTitle = builder.CreateButton("Up/Down | L0", () => group.SetVisible(visible = !visible), Color.red * 0.8f, Color.white, true); RangeMaxL0Slider = group.CreateSlider("Device:L0:RangeMax", "Range Max (%)", 1f, 0.01f, 1f, v => RangeMinL0Slider.max = v - 0.01f, true, true, true, "P0"); RangeMinL0Slider = group.CreateSlider("Device:L0:RangeMin", "Range Min (%)", 0f, 0f, 0.99f, v => RangeMaxL0Slider.min = v + 0.01f, true, true, true, "P0"); OutputMaxL0Slider = group.CreateSlider("Device:L0:OutputMax", "Output Max (%)", 1f, 0f, 1f, v => OutputMinL0Slider.max = v, true, true, true, "P0"); OutputMinL0Slider = group.CreateSlider("Device:L0:OutputMin", "Output Min (%)", 0, 0f, 1f, v => OutputMaxL0Slider.min = v, true, true, true, "P0"); InvertL0Toggle = group.CreateToggle("Device:L0:Invert", "Invert", true, true); EnableOverrideL0Toggle = group.CreateToggle("Device:L0:EnableOverride", "Enable Override", false, true); OverrideL0Slider = group.CreateSlider("Device:L0:Override", "Override Value (%)", 0.5f, 0f, 1f, true, true, true, "P0"); group.SetVisible(false); }
public void CreateUI(IUIBuilder builder) { var names = _outputTargets.Select(x => x.Key).ToList(); OutputTargetChooser = builder.CreateScrollablePopup("Device:OutputTarget", "Select Output Target", names, names.First(), OuputTargetChooserCallback); foreach (var item in _outputTargets) { var group = new UIGroup(builder); item.Value?.CreateUI(group); group.SetVisible(false); _uiGroups[item.Key] = group; } OuputTargetChooserCallback(OutputTargetChooser.val); }
public virtual void CreateUI(IUIBuilder builder) { RefreshButton = builder.CreateButton("Refresh", () => { ComponentCache.Clear(); RefreshButtonCallback(); }); RefreshButton.buttonColor = new Color(0, 0.75f, 1f) * 0.8f; RefreshButton.textColor = Color.white; Spacer = builder.CreateSpacer(200); RefreshAction = UIManager.CreateAction("Refresh Motion Source", () => { ComponentCache.Clear(); RefreshButtonCallback(); }); }