protected ThreeWayToggleSwitch AddRocker(string name, Point posn, Size size, ThreeWayToggleSwitchPosition defaultPosition, ThreeWayToggleSwitchType defaultType, string interfaceDeviceName, string interfaceElementName, bool fromCenter, string positionOneImage = "{Helios}/Images/Toggles/round-up.png", string positionTwoImage = "{Helios}/Images/Toggles/round-norm.png", string positionThreeImage = "{Helios}/Images/Toggles/round-down.png", LinearClickType clickType = LinearClickType.Touch, bool horizontal = false) { string componentName = GetComponentName(name); ThreeWayToggleSwitch rocker = new ThreeWayToggleSwitch { Top = posn.Y, Left = posn.X, Width = size.Width, Height = size.Height, DefaultPosition = defaultPosition, PositionOneImage = positionOneImage, PositionTwoImage = positionTwoImage, PositionThreeImage = positionThreeImage, SwitchType = defaultType, Name = componentName, ClickType = clickType }; if (horizontal) { rocker.Rotation = HeliosVisualRotation.CW; rocker.Orientation = ToggleSwitchOrientation.Horizontal; } Children.Add(rocker); foreach (IBindingTrigger trigger in rocker.Triggers) { AddTrigger(trigger, componentName); } AddAction(rocker.Actions["set.position"], componentName); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position one.entered", interfaceActionName: interfaceDeviceName + ".push up." + interfaceElementName ); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position two.entered", interfaceActionName: interfaceDeviceName + ".release." + interfaceElementName ); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position three.entered", interfaceActionName: interfaceDeviceName + ".push down." + interfaceElementName ); AddDefaultInputBinding( childName: componentName, interfaceTriggerName: interfaceDeviceName + "." + interfaceElementName + ".changed", deviceActionName: "set.position"); return(rocker); }
public M2000C_TESTPanel() : base("Test Panel", new Size(690, 680)) { int row0 = 51, row1 = 214, row2 = 277; int column0 = 106, column1 = 220, column2 = 424; //Pannes en vol AddIndicator("HYD", "hyd", new Point(column0, row0), new Size(65, 160)); AddIndicator("ELEC", "elec", new Point(column0, row2), new Size(65, 160)); //Test lights AddIndicator("Test Fail", "test-fail", new Point(column1, row1), new Size(156, 65)); AddIndicator("Test Ok", "test-ok", new Point(column2, row1), new Size(156, 65)); ThreeWayToggleSwitch fbwTestSwitch = Add3PosnToggle( name: "FBW Test Switch", posn: new Point(330, 65), image: "long-black-", fromCenter: true ); AddGuard("FBW Test Guard", "fbw-test-", new Point(286, 5), new Size(200, 170), ToggleSwitchPosition.Two, ToggleSwitchType.OnOn, new NonClickableZone[] { new NonClickableZone(new Rect(0, 30, 200, 140), ToggleSwitchPosition.Two, fbwTestSwitch, ToggleSwitchPosition.Two) }, false, false); ToggleSwitch autopilotTestSwitch = AddSwitch("Autopilot Test Switch", "long-black-down", "long-black-up", new Point(365, 428), ToggleSwitchPosition.Two, ToggleSwitchType.OnOn, true); AddGuard("Autopilot Test Guard", "autopilot-test-", new Point(285, 355), new Size(180, 80), ToggleSwitchPosition.Two, ToggleSwitchType.OnOn, new NonClickableZone[] { new NonClickableZone(new Rect(30, 0, 180, 80), ToggleSwitchPosition.Two, autopilotTestSwitch, ToggleSwitchPosition.Two) }, false, false); ToggleSwitch cdve5Switch = AddSwitch("FBW Channel 5 Switch", "long-black-up", "long-black-down", new Point(187, 563), ToggleSwitchPosition.One, ToggleSwitchType.OnOn, false); AddGuard("FBW Channel 5 Guard", "cdve5-", new Point(160, 490), new Size(65, 180), ToggleSwitchPosition.Two, ToggleSwitchType.OnOn, new NonClickableZone[] { new NonClickableZone(new Rect(0, 30, 65, 150), ToggleSwitchPosition.Two, cdve5Switch, ToggleSwitchPosition.One) }, false, false); }
protected ThreeWayToggleSwitch AddThreeWayToggle(string name, Point pos, Size size, ThreeWayToggleSwitchPosition defaultPosition, ThreeWayToggleSwitchType switchType, string interfaceDeviceName, string interfaceElementName, bool fromCenter, string positionOneImage = "{Helios}/Images/Toggles/round-up.png", string positionTwoImage = "{Helios}/Images/Toggles/round-norm.png", string positionThreeImage = "{Helios}/Images/Toggles/round-down.png", ClickType clickType = ClickType.Swipe, bool horizontal = false, bool horizontalRender = false) { string componentName = GetComponentName(name); ThreeWayToggleSwitch toggle = new ThreeWayToggleSwitch { Top = pos.Y, Left = pos.X, Width = size.Width, Height = size.Height, DefaultPosition = defaultPosition, PositionOneImage = positionOneImage, PositionTwoImage = positionTwoImage, PositionThreeImage = positionThreeImage, SwitchType = switchType, Name = componentName }; toggle.ClickType = clickType; if (horizontal) { toggle.Orientation = ToggleSwitchOrientation.Horizontal; } else { toggle.Orientation = ToggleSwitchOrientation.Vertical; } if (horizontalRender) { toggle.Rotation = HeliosVisualRotation.CW; toggle.Orientation = ToggleSwitchOrientation.Horizontal; } Children.Add(toggle); foreach (IBindingTrigger trigger in toggle.Triggers) { AddTrigger(trigger, componentName); } AddAction(toggle.Actions["set.position"], componentName); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position.changed", interfaceActionName: interfaceDeviceName + ".set." + interfaceElementName ); AddDefaultInputBinding( childName: componentName, interfaceTriggerName: interfaceDeviceName + "." + interfaceElementName + ".changed", deviceActionName: "set.position"); return(toggle); }
private void AddThreeWayToggle(string name, double x, double y, Size size, string interfaceElementName, string imageStem) { ThreeWayToggleSwitch toggle = AddThreeWayToggle( name: name, posn: new Point(x, y), size: size, defaultPosition: ThreeWayToggleSwitchPosition.Two, defaultType: ThreeWayToggleSwitchType.OnOnOn, positionOneImage: _imageLocation + imageStem + "Up.png", positionTwoImage: _imageLocation + imageStem + "Normal.png", positionThreeImage: _imageLocation + imageStem + "Down.png", interfaceDeviceName: _interfaceDeviceName, interfaceElementName: interfaceElementName, fromCenter: false ); }
private void AddThreeWayToggle(string name, double x, double y, Size size, ThreeWayToggleSwitchType switchType, string interfaceElementName, string imageName) { ThreeWayToggleSwitch toggle = AddThreeWayToggle( name: name, posn: new Point(x, y), size: size, defaultPosition: ThreeWayToggleSwitchPosition.Two, defaultType: switchType, positionOneImage: _imageLocation + "WQHD/Switch/" + imageName + " Up.png", positionTwoImage: _imageLocation + "WQHD/Switch/" + imageName + " Normal.png", positionThreeImage: _imageLocation + "WQHD/Switch/" + imageName + " Down.png", interfaceDeviceName: _interfaceDeviceName, interfaceElementName: interfaceElementName, fromCenter: false ); toggle.Name = "Flaps and Gear Panel_" + name; }
private void AddThreeWayToggle(string name, double x, double y, Size size, string interfaceElementName) { ThreeWayToggleSwitch toggle = AddThreeWayToggle( name: name, posn: new Point(x, y), size: size, defaultPosition: ThreeWayToggleSwitchPosition.Two, defaultType: ThreeWayToggleSwitchType.OnOnOn, positionOneImage: "{Helios}/Images/Toggles/round-up.png", positionTwoImage: "{Helios}/Images/Toggles/round-norm.png", positionThreeImage: "{Helios}/Images/Toggles/round-down.png", interfaceDeviceName: _interfaceDeviceName, interfaceElementName: interfaceElementName, fromCenter: false ); toggle.Name = "UFC1_" + name; }
private void AddThreeWayToggle(string name, double x, double y, Size size, string interfaceElementName) { ThreeWayToggleSwitch toggle = AddThreeWayToggle( name: name, posn: new Point(x, y), size: size, defaultPosition: ThreeWayToggleSwitchPosition.Two, defaultType: ThreeWayToggleSwitchType.MomOnMom, positionOneImage: "{AV-8B}/Images/3 Way Toggle Square Up 1.png", positionTwoImage: "{AV-8B}/Images/3 Way Toggle Square Mid 1.png", positionThreeImage: "{AV-8B}/Images/3 Way Toggle Square Down 1.png", interfaceDeviceName: _interfaceDeviceName, interfaceElementName: interfaceElementName, fromCenter: false ); toggle.Name = "SMC1_" + name; }
private void AddRocker(string name, string imagePrefix, string imageOrientation, double x, double y, string interfaceElementName) { ThreeWayToggleSwitch rocker = AddThreeWayToggle( name: name, posn: new Point(x, y), size: new Size(0, 0), defaultPosition: ThreeWayToggleSwitchPosition.Two, defaultType: ThreeWayToggleSwitchType.MomOnMom, interfaceDeviceName: _interfaceDeviceName, interfaceElementName: interfaceElementName, positionTwoImage: "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Mid.png", clickType: LinearClickType.Touch, fromCenter: false ); rocker.Name = _side + "_" + name; switch (imageOrientation) { case ("V"): rocker.PositionOneImage = "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Up.png"; rocker.PositionThreeImage = "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Dn.png"; rocker.Width = 54; rocker.Height = 114; break; case ("L"): rocker.PositionOneImage = "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Up.png"; rocker.PositionThreeImage = "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Dn.png"; rocker.Width = 120; rocker.Height = 110; break; case ("R"): rocker.PositionOneImage = "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Up.png"; rocker.PositionThreeImage = "{AV-8B}/Images/" + imagePrefix + " " + imageOrientation + " Dn.png"; rocker.Width = 120; rocker.Height = 110; break; default: break; } }
protected ThreeWayToggleSwitch AddThreeWayToggle(string name, Point pos, Size size, ThreeWayToggleSwitchPosition defaultPosition, ThreeWayToggleSwitchType switchType, string interfaceDeviceName, string interfaceElementName, bool fromCenter, string positionOneImage = "{Helios}/Images/Toggles/round-up.png", string positionTwoImage = "{Helios}/Images/Toggles/round-norm.png", string positionThreeImage = "{Helios}/Images/Toggles/round-down.png") { string componentName = GetComponentName(name); ThreeWayToggleSwitch toggle = new ThreeWayToggleSwitch { Top = pos.Y, Left = pos.X, Width = size.Width, Height = size.Height, DefaultPosition = defaultPosition, PositionOneImage = positionOneImage, PositionTwoImage = positionTwoImage, PositionThreeImage = positionThreeImage, SwitchType = switchType, Name = componentName }; Children.Add(toggle); foreach (IBindingTrigger trigger in toggle.Triggers) { AddTrigger(trigger, componentName); } AddAction(toggle.Actions["set.position"], componentName); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position.changed", interfaceActionName: interfaceDeviceName + ".set." + interfaceElementName ); AddDefaultInputBinding( childName: componentName, interfaceTriggerName: interfaceDeviceName + "." + interfaceElementName + ".changed", deviceActionName: "set.position"); return(toggle); }
private void AddThreeWayToggle(string name, Point posn, Size size, string interfaceElementName) { string componentName = _interfaceDeviceName + "_" + name; ThreeWayToggleSwitch toggle = new ThreeWayToggleSwitch { Top = posn.Y, Left = posn.X, Width = size.Width, Height = size.Height, DefaultPosition = ThreeWayToggleSwitchPosition.Two, PositionOneImage = _imageLocation + "A-10C_CMSP_Toggle_Up.png", PositionTwoImage = _imageLocation + "A-10C_CMSP_Toggle_Middle.png", PositionThreeImage = _imageLocation + "A-10C_CMSP_Toggle_Down.png", SwitchType = ThreeWayToggleSwitchType.MomOnOn, Name = _interfaceDeviceName + "_" + name, ClickType = LinearClickType.Swipe }; Children.Add(toggle); foreach (IBindingTrigger trigger in toggle.Triggers) { AddTrigger(trigger, componentName); } AddAction(toggle.Actions["set.position"], componentName); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position.changed", interfaceActionName: _interfaceDeviceName + ".set." + interfaceElementName); AddDefaultOutputBinding( childName: componentName, deviceTriggerName: "position two.entered", interfaceActionName: _interfaceDeviceName + ".release." + interfaceElementName); AddDefaultInputBinding( childName: componentName, interfaceTriggerName: _interfaceDeviceName + "." + interfaceElementName + ".changed", deviceActionName: "set.position"); }
private void AddRocker(string name, string imagePrefix, double x, double y, bool horizontal) { ThreeWayToggleSwitch rocker = new ThreeWayToggleSwitch(); rocker.Name = name; rocker.SwitchType = ThreeWayToggleSwitchType.MomOnMom; rocker.ClickType = LinearClickType.Touch; rocker.PositionTwoImage = "{Helios}/Images/F-16/" + imagePrefix + "-middle.png"; rocker.Top = y; rocker.Left = x; if (horizontal) { rocker.Orientation = ToggleSwitchOrientation.Horizontal; rocker.PositionOneImage = "{Helios}/Images/F-16/" + imagePrefix + "-left.png"; rocker.PositionThreeImage = "{Helios}/Images/F-16/" + imagePrefix + "-right.png"; rocker.Width = 56; rocker.Height = 32; } else { rocker.Orientation = ToggleSwitchOrientation.Vertical; rocker.PositionOneImage = "{Helios}/Images/F-16/" + imagePrefix + "-up.png"; rocker.PositionThreeImage = "{Helios}/Images/F-16/" + imagePrefix + "-down.png"; rocker.Width = 32; rocker.Height = 56; } Children.Add(rocker); foreach (IBindingTrigger trigger in rocker.Triggers) { AddTrigger(trigger, name); } AddAction(rocker.Actions["set.position"], name); }