private void listView1_SelectedIndexChanged(object sender, EventArgs ev) { object p = this.GetSelected(); bool itemSelected = p != null; this._btnRemove.Enabled = itemSelected; this._btnView.Enabled = itemSelected; this._btnEdit.Enabled = itemSelected; this._btnRename.Enabled = itemSelected && IVisualisableExtensions.SupportsRename(p as Visualisable); this._btnUp.Enabled = itemSelected; this._btnDown.Enabled = itemSelected; this._btnDuplicate.Enabled = itemSelected; this._btnEnableDisable.Enabled = itemSelected && IVisualisableExtensions.SupportsDisable(p as Visualisable); if ((p as Visualisable)?.Hidden ?? false) { this._btnEnableDisable.Text = "Unhide"; this._btnEnableDisable.Image = Resources.MnuEnable; } else { this._btnEnableDisable.Text = "Hide"; this._btnEnableDisable.Image = Resources.MnuDisable; } }
public static bool Show(Form owner, string windowText, string mainTitle, string subTitle, string defaultName, ref string name, ref string comments, bool readOnly, Visualisable supports) { bool canRename = supports == null || IVisualisableExtensions.SupportsRename(supports); bool canComment = supports == null || IVisualisableExtensions.SupportsComment(supports); if (!canRename && !canComment) { FrmMsgBox.ShowInfo(owner, defaultName, "This item cannot be renamed."); return(false); } using (FrmEditINameable frm = new FrmEditINameable()) { frm.Text = windowText; frm.textBox1.Watermark = defaultName; frm.textBox1.Text = name; frm._txtInput.Text = comments; frm.ctlTitleBar1.Text = mainTitle; frm.ctlTitleBar1.SubText = subTitle; frm.AcceptButton = null; frm.CancelButton = frm._btnCancel; frm.textBox1.Visible = canRename; frm.label6.Visible = !canRename; frm.label6.Text = defaultName; frm._txtInput.Visible = canComment; frm.label2.Visible = canComment; if (readOnly) { frm._btnOk.Visible = false; frm._btnCancel.Text = " Close"; frm.AcceptButton = frm._btnCancel; frm.textBox1.ReadOnly = true; frm._txtInput.ReadOnly = true; } if (UiControls.ShowWithDim(owner, frm) == DialogResult.OK) { name = frm.textBox1.Text; comments = frm._txtInput.Text; return(true); } return(false); } }