private void UpdateEntryValue(InfoPanelEntry entry) { if (!entry.sqm.HasValue) { ClearEntry(entry); return; } var sufix = ""; float area = (float)(entry.sqm * selectedUnit.factor); if (area > 1e+12) { area *= 1e-12f; sufix = Translator.Get("trillion"); } else if (area > 1e+9) { area *= 1e-9f; sufix = Translator.Get("billion"); } else if (area > 1e+6) { area *= 1e-6f; sufix = Translator.Get("million"); } entry.pair.SetValue(area.ToString("N") + " " + sufix + " " + selectedUnit.symbol); if (entry.pair.Disabled) { entry.pair.Disabled = false; } }
// // Private Methods // private void ClearEntry(InfoPanelEntry entry) { entry.snapshotInfo.SetValue(Translator.Get("N/A")); if (!entry.snapshotInfo.Disabled) { entry.snapshotInfo.Disabled = true; } }
public void AddEntry(string id, string keylabel) { // Hide "no data layers" message message.SetActive(false); var pair = Instantiate(itemPrefab, container, false); pair.SetKey(keylabel); var entry = new InfoPanelEntry { pair = pair, }; entries.Add(id, entry); UpdateEntryValue(entry); }
private void UpdateEntryValue(InfoPanelEntry entry) { if (!entry.sqm.HasValue) { ClearEntry(entry); return; } var sufix = ""; float area = !isPercentage ? (float)(entry.sqm * selectedUnit.factor) : (float)(entry.sqm * selectedUnit.factor / selectedEntry?.sqm.Value); if (!isPercentage) { if (area > 1e+12) { area *= 1e-12f; sufix = Translator.Get("trillion"); } else if (area > 1e+9) { area *= 1e-9f; sufix = Translator.Get("billion"); } else if (area > 1e+6) { area *= 1e-6f; sufix = Translator.Get("million"); } entry.snapshotInfo.SetValue(area.ToString("N") + " " + sufix + " " + selectedUnit.symbol); } else { entry.snapshotInfo.SetValue($"{(int)area} {selectedUnit.symbol} of {selectedEntry?.snapshotInfo.GetTitle()}"); } if (entry.snapshotInfo.Disabled) { entry.snapshotInfo.Disabled = false; } }
public void AddEntry(string id, string titlelabel, bool isSnapshot = false) { // Hide "no data layers" message message.SetActive(false); var info = Instantiate(itemPrefab, container, false); info.SetTitle(titlelabel); info.SetAsSnapshot(isSnapshot); var entry = new InfoPanelEntry { snapshotInfo = info, }; entries.Add(id, entry); UpdateEntryValue(entry); }
// // Event Methods // private void OnUnitsChanged(int value) { selectedUnit = units[value]; isPercentage = value == (units.Length - 1); relativeToSnapshotPanel.SetActive(isPercentage); if (isPercentage) { string key = $"S{selectedRelativeSnapshotValue}"; selectedEntry = entries.ContainsKey(key) ? entries[key] : entries.Values.First(); } else { selectedEntry = null; prevUnitsOption = value; } UpdateAll(); }
private void WriteContourInfo(InfoPanelEntry entry, TextWriter csv) { string value = entry.snapshotInfo.GetValue(); csv.WriteLine("{0},{1}", entry.snapshotInfo.GetTitle().ToUpper(), CsvHelper.Escape(value)); }