private void OnButtonClick(object sender, EventArgs e) { if (ItemOrButtonClick != null) { PEDCalcValue pcv; PEDC unit = PEDC.Days; PEDCListItem i = m_cbUnit.Items[m_cbUnit.SelectedIndex] as PEDCListItem; unit = i.Unit; int dummy = -1; if (!int.TryParse(m_tbValue.Text, out dummy) || (dummy == -1)) { pcv = new PEDCalcValue(PEDC.Inherit); PluginDebug.AddInfo("Converted expiry value", 0, "Given: " + m_tbValue.Text, "Converted: " + pcv.unit.ToString()); } else if (dummy <= 0) { pcv = new PEDCalcValue(PEDC.Off); PluginDebug.AddInfo("Converted expiry value", 0, "Given: " + m_tbValue.Text, "Converted: " + pcv.unit.ToString()); } else { pcv = new PEDCalcValue(unit, dummy); } QuickActionEventArgs qe = new QuickActionEventArgs(pcv); ItemOrButtonClick(this, qe); } }
internal void SetValue(PEDCalcValue pcv) { FontStyle fs = DropDown.Items[0].Font.Style & ~FontStyle.Bold; Font f = new Font(DropDown.Items[0].Font, fs); Font fActive = new Font(DropDown.Items[0].Font, fs | FontStyle.Bold); DropDown.Items[1].Font = pcv.Off ? fActive : f; DropDown.Items[3].Font = pcv.Inherit ? fActive : f; if (KeePassLib.Native.NativeLib.IsUnix()) //Mono does not support changing the fontstyle { DropDown.Items[0].Text = DropDown.Items[1].Text.Replace("-> ", ""); DropDown.Items[1].Text = DropDown.Items[3].Text.Replace("-> ", ""); if (pcv.Off) { DropDown.Items[1].Text = "-> " + DropDown.Items[1].Text; } if (pcv.Inherit) { DropDown.Items[3].Text = "-> " + DropDown.Items[3].Text; } } DropDown.Items[0].Image = pcv.Off ? PEDCalcExt.m_iconActive : PEDCalcExt.m_iconInactive; DropDown.Items[2].Image = pcv.Inherit ? PEDCalcExt.m_iconActive : PEDCalcExt.m_iconInactive; if (pcv.Specific) { m_tbValue.Text = pcv.value.ToString(); for (int i = 0; i < m_cbUnit.Items.Count; i++) { PEDCListItem pli = m_cbUnit.Items[i] as PEDCListItem; if (pli != null && pli.Unit == pcv.unit) { m_cbUnit.SelectedIndex = i; break; } } } else { if (KeePass.Program.Config.Defaults.NewEntryExpiresInDays > 0) { m_tbValue.Text = KeePass.Program.Config.Defaults.NewEntryExpiresInDays.ToString(); } m_cbUnit.SelectedIndex = 0; } DropDown.Items[DropDown.Items.Count - 4].Image = !pcv.Off && !pcv.Inherit ? PEDCalcExt.m_iconActive : PEDCalcExt.m_iconInactive; m_b.CheckState = !pcv.Off && !pcv.Inherit ? CheckState.Checked : CheckState.Unchecked; }