private void LoadFrame(SignSetGraphicsFrame f) { cbFrmFrameType.SelectedIndex = 1; tbFrmFrameRev.Text = f.frameRev.ToString(); cbFrmColour.SelectedValue = f.colour.ToString(); cbFrmConspicuity.SelectedValue = ((ConspicuityDevices)f.conspicuity).ToString(); LoadGfx(f.pixels); }
private void SetFrameToCtrller(SignSetGraphicsFrame f, byte frmId, byte frmRev) { try { f.frameId = frmId; f.frameRev = frmRev; if (cbFrmColour.SelectedIndex < 0 || cbFrmColour.SelectedIndex > 10) { throw new Exception("Illegal colour"); } if (pixelHeight > 255 || pixelWidth > 255) { throw new Exception("Can't fit in Graphics Frame"); } f.colour = (FrameColour)Enum.Parse(typeof(FrameColour), cbFrmColour.SelectedValue.ToString()); f.cd = (ConspicuityDevices)Enum.Parse(typeof(ConspicuityDevices), cbFrmConspicuity.SelectedValue.ToString()); f.columns = (byte)pixelWidth; f.rows = (byte)pixelHeight; f.pixels = new int[pixelWidth, pixelHeight]; for (int x = 0; x < pixelWidth; x++) { for (int y = 0; y < pixelHeight; y++) { f.pixels[x, y] = treatedPixels[x, y].R * 0x10000 + treatedPixels[x, y].G * 0x100 + treatedPixels[x, y].B; } } RemoteControllerLink ctrl = remoteConctrollerLinks[parameters.ControllerID]; ControllerReply rpl; lock (ctrl) { rpl = ctrl.SignSetGraphicsFrame(f); } if (rpl.status != ControllerReply.Status.SUCCESS) { throw new Exception(rpl.status.ToString()); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }