# PanelInfo

Структура `PanelInfo` содержит информацию о панели плагина или Far Manager. Используйте функцию PanelControl для её заполнения.

    struct PanelInfo
    {
      size_t StructSize;
      HANDLE PluginHandle;
      GUID OwnerGuid;
      PANELINFOFLAGS Flags;
      size_t ItemsNumber;
      size_t SelectedItemsNumber;
      RECT PanelRect;
      size_t CurrentItem;
      size_t TopPanelItem;
      intptr_t ViewMode;
      enum PANELINFOTYPE PanelType;
      enum OPENPANELINFO_SORTMODES SortMode;
    };

### Элементы

StructSize
Это поле должно содержать размер структуры `PanelInfo`. Перед использованием структуры плагин должен заполнить поле.
PluginHandle
Текущий описатель панели плагина, тот, что возвращается функцией OpenW.
OwnerGuid
GUID плагина, создавшего панель. `OwnerGuid` = `FarGuid` - если панель принадлежит Far Manager.
Flags
Дополнительные флаги. Могут быть комбинацией следующих значений (тип PANELINFOFLAGS):

Флаг | Описание
--- | ---
PFLAGS_SHOWHIDDEN | разрешён показ скрытых и системных файлов
PFLAGS_HIGHLIGHT | включена раскраска файлов
PFLAGS_REVERSESORTORDER | включена обратная сортировка
PFLAGS_USESORTGROUPS | используются группы сортировки
PFLAGS_SELECTEDFIRST | показывать помеченные файлы первыми
PFLAGS_REALNAMES | элементы на панели плагина отображаются именами реальных файлов (см. также OPIF_REALNAMES)
PFLAGS_PANELLEFT | левая панель
PFLAGS_DIRECTORIESFIRST | каталоги отображаются в начале списка
PFLAGS_USECRC32 | плагин заполнил в элементах панели PluginPanelItem поле `CRC32`
PFLAGS_PLUGIN | панель поддерживается модулем плагина
PFLAGS_VISIBLE | панель видимая
PFLAGS_FOCUS | панель активна
PFLAGS_ALTERNATIVENAMES | панель в режиме показа коротких имён файлов
PFLAGS_SHORTCUT | разрешено помещение смены каталогов в историю Far Manager, а также назначение "быстрых каталогов".
PFLAGS_NONE | Нулевой флаг.

ItemsNumber
Число элементов на панели.
SelectedItemsNumber
Число выделенных элементов на панели. Равно `1`, даже если нет выделения. Исключение составляет случай, когда нет выделения и курсор стоит на ".." - тогда `SelectedItemsNumber = 0`.
PanelRect
Геометрия панели - структура типа RECT.
CurrentItem
Индекс текущего элемента на панели. Перед использованием убедитесь, что `ItemsNumber` больше `0`.
TopPanelItem
Элемент, находящийся в первой видимой позиции панели.
ViewMode
Номер режима просмотра панели.
PanelType
Может быть (перечисление PANELINFOTYPE):

Тип | Описание
--- | ---
PTYPE_FILEPANEL | обычная файловая панель
PTYPE_TREEPANEL | панель, отображающая дерево (Tree)
PTYPE_QVIEWPANEL | панель быстрого просмотра (Quick View)
PTYPE_INFOPANEL | панель информации (Information)

SortMode
Режим сортировки панели.

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

Смотрите также:
структуры