private void copyHsvContextToolStripMenuItem_Click(object sender, EventArgs e) { ColorButton cb = (ColorButton)colorContextMenu.SourceControl; Clipboard.SetText((cb.Color is HsvColor ? (HsvColor)cb.Color : cb.Color.ToRgb().ToHsv()).ToCssString()); }
/// <summary> /// Handle the controller's state updates and sync them to the view. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void SyncAppViewState(object sender, EventArgs e) { schemeBox.SelectedItem = schemeBox.Items.Cast <Scheme>() .Where(x => x.Type == app.SchemeType).FirstOrDefault(); resultsTable.Controls.Clear(); resultsTable.RowCount = app.Results.Count; int i = 0; foreach (HsvColor next in app.Results) { resultsTable.RowStyles[i].SizeType = SizeType.Percent; resultsTable.RowStyles[i].Height = 100 / app.Results.Count; ColorButton cb = new ColorButton(next); if (app.HsvColor == next) { cb.Font = new Font(cb.Font, FontStyle.Bold); } cb.Text = String.Format("{0}\r\n{1}", next.ToRgb().ToHtml(), next.ToCssString()); toolTip.SetToolTip(cb, String.Format("{0}\r\n{1}\r\n{2}", next.ToRgb().ToHtml(), next.ToRgb().ToHslString(), next.ToCssString())); cb.ContextMenuStrip = colorContextMenu; cb.Dock = DockStyle.Fill; cb.Click += SchemeColor_Click; resultsTable.Controls.Add(cb, 0, i++); } UpdateUI(); }
protected virtual void OnColorDrag(ColorDragEventArgs e, ColorButton sender) { ColorDrag?.Invoke(sender, e); }
protected virtual void OnColorClick(EventArgs e, ColorButton sender) { ColorClick?.Invoke(sender, e); }
private void copyHexContextToolStripMenuItem_Click(object sender, EventArgs e) { ColorButton cb = (ColorButton)colorContextMenu.SourceControl; Clipboard.SetText(cb.Color.ToRgb().ToHtml()); }