Контекстное меню

Код вынесен в отдельный файл для более простой переработки под разные
проекты.