# DI_PSWEDIT

Элемент диалога `DI_PSWEDIT` описывает поле ввода пароля - то же, что и элемент DI_EDIT, но вводимый текст на экране отрисовывается символами '*'.

    struct FarDialogItem
    {
      enum FARDIALOGITEMTYPES Type = DI_PSWEDIT
      intptr_t X1                  = X1
      intptr_t Y1                  = Y
      intptr_t X2                  = X2
      intptr_t Y2                  = Y (равен значению Y1)
      FARDIALOGITEMFLAGS Flags     = Flags
      const wchar_t *Data          = редактируемый текст
    };

Внимание!

- Приведено схематичное изображение структуры; полное описание структуры см. здесь.

### Флаги

Для элемента `DI_PSWEDIT` имеют значения следующие флаги:

Флаг | Описание
--- | ---
DIF_DEFAULTBUTTON | флаг, означающий, что данный элемент диалога является "элементом по умолчанию"
DIF_FOCUS | определяет, что при показе диалога установить клавиатурный фокус ввода на данный элемент
DIF_DISABLE | элемент является недоступным
DIF_READONLY | переводит строки редактирования в состояние "только для чтения"
DIF_SELECTONENTRY | выделить редактируемый текст при получении фокуса ввода
DIF_NOFOCUS | управляющий элемент не получает клавиатурный фокус ввода

### События

Событие | Описание
--- | ---
DN_DRAWDLGITEM | начало отрисовки текстовой строки
DN_CTLCOLORDLGITEM | запрос цветовых атрибутов для отрисовки; `Param2`:
    Colors[0] - редактируемый текст
                    (COL_WARNDIALOGEDIT или COL_DIALOGEDIT)
    Colors[1] - выделенный текст
                    (COL_DIALOGEDITSELECTED)
    Colors[2] - неизмененный текст (UnChanged)
                    (COL_DIALOGEDITUNCHANGED)
    Colors[3] - 0 (не используется)
DN_CONTROLINPUT | нажали клавиатурную клавишу или кликнули клавишей мыши
DN_EDITCHANGE | текст изменён
DN_KILLFOCUS | элемент потерял фокус (при условии, что не используется флаг DIF_NOFOCUS)
DN_GOTFOCUS | элемент получил фокус (при условии, что не используется флаг DIF_NOFOCUS)

### Замечания

Элемент `DI_PSWEDIT` позволяет только вставлять текст в поле редактирования. Копирование текста в буфер обмена (`Ctrl`+`Ins` или `Ctrl`+`C`) для данного элемента не поддерживаются.

Смотрите также:
DI_EDIT, DI_FIXEDIT, FarDialogItem