/// <summary> /// Sample : Parsing firmware information dictionary object. /// </summary> private void ParseFirmwareInformation(Dictionary <string, string> firmwareInformation) { List <ListBoxItemWithDetail> listBoxItemList = new List <ListBoxItemWithDetail>(); ListBoxItemWithDetail modelNameListBoxItem = new ListBoxItemWithDetail("Model Name"); ListBoxItemWithDetail firmwareVersionListBoxItem = new ListBoxItemWithDetail("Firmware Version"); string modelName, firmwareVersion; if (firmwareInformation != null) { modelName = firmwareInformation["ModelName"]; modelNameListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } else { modelName = "Unable to get F/W info from an error."; modelNameListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } modelNameListBoxItem.Detail = modelName; listBoxItemList.Add(modelNameListBoxItem); if (firmwareInformation != null) { firmwareVersion = firmwareInformation["FirmwareVersion"]; firmwareVersionListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } else { firmwareVersion = "Unable to get F/W info from an error."; firmwareVersionListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } firmwareVersionListBoxItem.Detail = firmwareVersion; listBoxItemList.Add(firmwareVersionListBoxItem); FirmwareInformationListBox.ItemsSource = listBoxItemList.ToArray(); }
/// <summary> /// Sample : Parsing printer status object. /// </summary> private void ParsePrinterStatus(StarPrinterStatus status, bool cashDrawerOpenActiveHigh) { List <ListBoxItemWithDetail> listBoxItemList = new List <ListBoxItemWithDetail>(); if (status == null) { DeviceStatusListBox.ItemsSource = listBoxItemList.ToArray(); return; } ListBoxItemWithDetail onlineListBoxItem = new ListBoxItemWithDetail("Online"); ListBoxItemWithDetail coverListBoxItem = new ListBoxItemWithDetail("Cover"); ListBoxItemWithDetail paperListBoxItem = new ListBoxItemWithDetail("Paper"); ListBoxItemWithDetail cashDrawerListBoxItem = new ListBoxItemWithDetail("Cash Drawer"); ListBoxItemWithDetail headTemperatureListBoxItem = new ListBoxItemWithDetail("Head Temperature"); ListBoxItemWithDetail nonRecoverableErrorListBoxItem = new ListBoxItemWithDetail("Non Recoverable Error"); ListBoxItemWithDetail paperCutterListBoxItem = new ListBoxItemWithDetail("Paper Cutter"); ListBoxItemWithDetail headThermistorListBoxItem = new ListBoxItemWithDetail("Head Thermistor"); ListBoxItemWithDetail voltageListBoxItem = new ListBoxItemWithDetail("Voltage"); ListBoxItemWithDetail etbCounterListBoxItem = new ListBoxItemWithDetail("ETB Counter"); if (status.Offline) { onlineListBoxItem.Detail = "Offline"; onlineListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { onlineListBoxItem.Detail = "Online"; onlineListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(onlineListBoxItem); if (status.CoverOpen) { coverListBoxItem.Detail = "Open"; coverListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { coverListBoxItem.Detail = "Closed"; coverListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(coverListBoxItem); if (status.ReceiptPaperEmpty) { paperListBoxItem.Detail = "Empty"; paperListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else if (status.ReceiptPaperNearEmptyInner || status.ReceiptPaperNearEmptyOuter) { paperListBoxItem.Detail = "Near Empty"; paperListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Yellow); } else { paperListBoxItem.Detail = "Ready"; paperListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(paperListBoxItem); if (cashDrawerOpenActiveHigh) { if (status.CompulsionSwitch) { cashDrawerListBoxItem.Detail = "Open"; cashDrawerListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { cashDrawerListBoxItem.Detail = "Closed"; cashDrawerListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } } else { if (status.CompulsionSwitch) { cashDrawerListBoxItem.Detail = "Closed"; cashDrawerListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } else { cashDrawerListBoxItem.Detail = "Open"; cashDrawerListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } } listBoxItemList.Add(cashDrawerListBoxItem); if (status.OverTemp) { headTemperatureListBoxItem.Detail = "High"; headTemperatureListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { headTemperatureListBoxItem.Detail = "Normal"; headTemperatureListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(headTemperatureListBoxItem); if (status.UnrecoverableError) { nonRecoverableErrorListBoxItem.Detail = "Error"; nonRecoverableErrorListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { nonRecoverableErrorListBoxItem.Detail = "Ready"; nonRecoverableErrorListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(nonRecoverableErrorListBoxItem); if (status.CutterError) { paperCutterListBoxItem.Detail = "Error"; paperCutterListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { paperCutterListBoxItem.Detail = "Ready"; paperCutterListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(paperCutterListBoxItem); if (status.HeadThermistorError) { headThermistorListBoxItem.Detail = "Abnormal"; headThermistorListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { headThermistorListBoxItem.Detail = "Normal"; headThermistorListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(headThermistorListBoxItem); if (status.VoltageError) { voltageListBoxItem.Detail = "Abnormal"; voltageListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Red); } else { voltageListBoxItem.Detail = "Normal"; voltageListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); } listBoxItemList.Add(voltageListBoxItem); if (status.ETBAvailable) { etbCounterListBoxItem.Detail = status.ETBCounter.ToString(); etbCounterListBoxItem.ForeGroundColor = new SolidColorBrush(Colors.Blue); listBoxItemList.Add(etbCounterListBoxItem); } DeviceStatusListBox.ItemsSource = listBoxItemList.ToArray(); }