/// <summary> /// Закрытый метод lbl_color_Click (нажатие цвета), принимающий событие нажатия на выбранный цвет /// и ничего не возвращающий /// </summary> /// <param name="sender">Объект, инициировавший событие (подпись)</param> /// <param name="e">Аргумент события</param> private void lbl_color_Click(object sender, EventArgs e) { TYPE_UPDATEGUI typeUpdate = ((sender as Control).Tag.GetType().Equals(typeof(INDEX_COLOR))) == true ? TYPE_UPDATEGUI.COLOR : TYPE_UPDATEGUI.COLOR_CHANGESHEMA; ColorDialog cd = new ColorDialog(); // создаем экземпляр cd класса ColorDialog (Диалоговое окно "Цвет") cd.Color = ((Label)sender).BackColor; // вызвана структура Color на экземпляре, структуре присвоено значение выбранного цвета if (cd.ShowDialog(this) == DialogResult.OK) // , если выбран цвет и нажат ОК, то { // заднему плану присвоить выбранный цвет ((Label)sender).BackColor = cd.Color; // переднему плану (надписи) присвоить зрительно отличный цвет ((Label)sender).ForeColor = getForeColor(cd.Color); // при типе 'TYPE_UPDATEGUI.COLOR_SHEMA' выполнить дополн. действия if (typeUpdate == TYPE_UPDATEGUI.COLOR) { // обновить активную настройку (цвет) // для 'TYPE_UPDATEGUI.COLOR_SHEMA' активная настройка обновится в 'BackColorChanged' delegateUpdateActiveGui((int)typeUpdate); } else { //// изменить и цвет границы //((Label)sender).BorderColor = getForeColor (cd.Color) ; } } else { ; } }
/// <summary> /// Обработчик события - двойное /// </summary> /// <param name="sender">Объект, инициировавший событие (подпись)</param> /// <param name="e">Аргумент события</param> private void labelColorShema_ValueChanged(object sender, System.EventArgs e) { TYPE_UPDATEGUI typeUpdate = TYPE_UPDATEGUI.UNKNOWN; if ((sender as Control).Tag.GetType().Equals(typeof(INDEX_COLOR_SHEMA)) == true) { typeUpdate = (INDEX_COLOR_SHEMA)((sender as Control).Tag) == INDEX_COLOR_SHEMA.BACKGROUND ? TYPE_UPDATEGUI.COLOR_CHANGESHEMA_BACKGROUND : TYPE_UPDATEGUI.COLOR_CHANGESHEMA_FONT; } else { Logging.Logg().Error(string.Format("FormGraphicsSettings::labelColorShema_ValueChanged () - ИНДЕКС(значение Tag) неизвестного типа"), Logging.INDEX_MESSAGE.NOT_SET); } if (!(typeUpdate == TYPE_UPDATEGUI.UNKNOWN)) { if (typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_FONT) { CustomColorTable.ForeColor = (sender as System.Windows.Forms.Control).ForeColor; } else if (typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_BACKGROUND) { CustomColorTable.BackColor = (sender as System.Windows.Forms.Control).BackColor; } else { ; } //if (m_cbUseSystemColors.Checked == false) // доступна только при выключенной системной схеме delegateUpdateActiveGui((int)typeUpdate); //обновить активную настройку (цветовая схема) //else // ; } else { Logging.Logg().Error(string.Format("FormGraphicsSettings::labelColorShema_ValueChanged () - ИНДЕКС={0}" , ((INDEX_COLOR_SHEMA)((sender as Control).Tag)).ToString()) , Logging.INDEX_MESSAGE.NOT_SET); } }
/// <summary> /// Закрытый метод lbl_color_Click (нажатие цвета), принимающий событие нажатия на выбранный цвет /// и ничего не возвращающий /// </summary> /// <param name="sender">Объект, инициировавший событие (подпись)</param> /// <param name="e">Аргумент события</param> private void lbl_color_Click(object sender, EventArgs e) { TYPE_UPDATEGUI typeUpdate = TYPE_UPDATEGUI.UNKNOWN; ColorDialog cd; if (((sender as Control).Tag.GetType().Equals(typeof(INDEX_COLOR_VAUES))) == true) { typeUpdate = TYPE_UPDATEGUI.COLOR; } else if (((sender as Control).Tag.GetType().Equals(typeof(INDEX_COLOR_SHEMA))) == true) { switch ((INDEX_COLOR_SHEMA)((sender as Control).Tag)) { case INDEX_COLOR_SHEMA.BACKGROUND: typeUpdate = TYPE_UPDATEGUI.COLOR_CHANGESHEMA_BACKGROUND; break; case INDEX_COLOR_SHEMA.FONT: typeUpdate = TYPE_UPDATEGUI.COLOR_CHANGESHEMA_FONT; break; default: break; } } else { ; } if (!(typeUpdate == TYPE_UPDATEGUI.UNKNOWN)) { cd = new ColorDialog(); // создаем экземпляр cd класса ColorDialog (Диалоговое окно "Цвет") cd.Color = typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_FONT ? ((Label)sender).ForeColor : ((Label)sender).BackColor; // вызвана структура Color на экземпляре, структуре присвоено значение выбранного цвета if (cd.ShowDialog(this) == DialogResult.OK) // , если выбран цвет и нажат ОК, то { if ((typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_FONT) || (typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_BACKGROUND)) { if (typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_FONT) { m_arlblColorShema [(int)INDEX_COLOR_SHEMA.FONT].ForeColor = m_arlblColorShema [(int)INDEX_COLOR_SHEMA.BACKGROUND].ForeColor = cd.Color; } else if (typeUpdate == TYPE_UPDATEGUI.COLOR_CHANGESHEMA_BACKGROUND) { m_arlblColorShema [(int)INDEX_COLOR_SHEMA.FONT].BackColor = m_arlblColorShema [(int)INDEX_COLOR_SHEMA.BACKGROUND].BackColor = cd.Color; } else { ; } } else { // заднему плану присвоить выбранный цвет ((Label)sender).BackColor = cd.Color; // переднему плану (надписи) присвоить зрительно отличный цвет ((Label)sender).ForeColor = getForeColor(cd.Color); } // при типе 'TYPE_UPDATEGUI.COLOR_SHEMA' выполнить дополн. действия if (typeUpdate == TYPE_UPDATEGUI.COLOR) { // обновить активную настройку (цвет) // для 'TYPE_UPDATEGUI.COLOR_SHEMA' активная настройка обновится в 'BackColorChanged' delegateUpdateActiveGui((int)typeUpdate); } else { //// изменить и цвет границы //((Label)sender).BorderColor = getForeColor (cd.Color) ; } } else { ; } } else { ; } }