---------------------------------------------------------------
QSearch - плагин для текстового редактора AkelPad
---------------------------------------------------------------

Плагин представляет собой панель для "быстрого" поиска текста.
Предполагается, что для вызова функции плагина (QSearch::QSearch)
будет назначена горячая клавиша (например, F7).

Клавиши панели быстрого поиска:
Enter, F3   - искать следующий (вниз)
Shift+Enter - искать предыдущий (вверх)
Alt+Enter   - искать с начала файла
Ctrl+Enter  - подхватить выделенный текст
Esc         - скрыть панель
Ctrl+Del    - строка поиска: стереть текст после (правее) каретки
Ctrl+BS     - строка поиска: стереть текст до (левее) каретки
Ctrl+A      - строка поиска: выделить весь текст

Также плагин предоставляет две функции: SelFindNext и SelFindPrev -
для быстрого поиска выделенного слова/фразы ниже или выше по тексту
прямо в окне редактирования.
Поведение этих функций зависит от общих настроек поиска, заданных в 
панели QSearch (или в ini-файле, см. ниже).
При этом функции QSearch::QSearch и QSearch::SelFindNext/Prev могут 
искать разный текст (QSearch::QSearch - текст в строке поиска, а
QSearch::SelFindNext/Prev - текст, выделенный в окне редактирования).
Предполагается, что для вызова этих функций будут назначены горячие
клавиши (например, Ctrl+Alt+Right и Ctrl+Alt+Left).
Пример использования: выделяем слово в окне редактирования и вызываем
SelFindNext или SelFindPrev. В результате выделение переходит к 
следующему или предыдущему слову, совпадающему с выделенным изначально.

Функция DialogSwitcher позволяет переключаться между диалогами "Поиск",
"Замена", "Перейти к строке" и панелью QSearch с помощью "горячих клавиш"
этих диалогов. Например, если нажать Ctrl+H в диалоге "Поиск", он
изменится на диалог "Замена". При использовании функции DialogSwitcher
рекомендуется поставить галочку для её автоматической загрузки в окне
настроек плагинов.

Совет: тихий мгновенный поиск по F3.
Тихий мгновенный поиск позволяет искать выделенное слово (фразу) простым
нажатием F3 или Shift+F3 прямо в окне редактирования. Поиск "тихий" потому,
что не требует открытую панель QSearch для своей работы (так же, как и 
"тихие" функции QSearch::SelFindNext и QSearch::SelFindPrev).
Для активации этой возможности выполните следующие три шага:
1. Включите "Поиск: SelFind подхватывает выделенный текст" во всплывающем
   меню панели QSearch.
   Это позволяет QSearch подхватить текст, выделенный в окне редактирования.
2. Включите "Окно: Обрабатывать F3 от главного окна" во всплывающем меню
   панели QSearch.
   Это позволяет QSearch обработать F3/Shift+F3, нажатые в окне редактирования.
3. Поставьте галочку "QSearch::SelFindNext" в окне Настройки -> Плагины...
   Это позволяет скрыто загрузить QSearch при запуске AkelPad.


Дополнительные настройки (всплывающее меню панели QSearch или файл 
"AkelFiles\Plugs\QSearch.ini"):

1) "Search: On-the-fly mode"
   "Поиск: Искать на лету"
   srch_onthefly_mode = 1
     Поиск производится непосредственно во время набора текста в
     строке поиска QSearch.
   srch_onthefly_mode = 0
     Поиск производится только по нажатию Enter.

2) "Search: Always from beginning"
   "Поиск: Всегда с начала"
   srch_from_beginning = 0
     При изменении слова в строке поиска он (поиск) будет продолжен 
     с текущей позиции в файле.
   srch_from_beginning = 1
     Введенный текст будет искаться с начала файла.

3) "Search: Use special characters ( \n, \t, * and ? )"
   "Поиск: Использовать спец. символы ( \n, \t, * и ? )"
   srch_use_specialchars = 1
     В строке поиска могут использоваться спец. символы:
       \n - перевод строки
       \t - табуляция
       \\ - обратный слэш ( '\' )
       \* - звёздочка  ( '*' )
       \? - знак вопроса ( '?' )
       ?  - любой символ ( например, 'b', '0', ' ' и т.д. )
       *  - 0 или больше любых символов (т.e. любая (под)строка)
       ** - 0 или больше любых непробельных символов ("Слово целиком" вкл.)
     Примечание: 
       ? и * не работают с переводом строки, \n должен быть указан явно.
   srch_use_specialchars = 0
     Обычный поиск, без спец. символов.

4) "Search: Use regular expressions"
   "Поиск: Использовать регулярные выражения"
   srch_use_regexp = 0
     Обычный поиск, без регулярных выражений.
   srch_use_regexp = 1
     Поиск с регулярными выражениями. Используется реализация регулярных
     выражений в AkelPad.

5) "Search: . matches \n in reg.expressions"
   "Поиск: . захватывает \n в рег.выражениях"
   srch_regexp_dot_newline = 0
     При поиске с регулярными выражениями,  .  не захватывает  \n
   srch_regexp_dot_newline = 1
     При поиске с регулярными выражениями,  .  захватывает  \n

6) "Search: Pick up selected text"
   "Поиск: Подхватывать выделенный текст"
   srch_pickup_selection = 1
     При вызове QSearch или при нажатии F3 в окне редактирования AkelPad,
     в строку поиска QSearch вставляется текст, выделенный в окне 
     редактирования AkelPad. То же самое при нажатии кнопок Find Next 
     и Find Prev в панели QSearch.
   srch_pickup_selection = 0
     При вызове QSearch или при нажатии F3 в окне редактирования AkelPad,
     текст в строке поиска не изменяется.
   srch_pickup_selection = 10
     То же, что srch_pickup_selection = 0.
     При установке галочки "Search: Pick up selected text" значение параметра
     srch_pickup_selection устанавливается в 11.
   srch_pickup_selection = 11
     При вызове QSearch или при нажатии F3 в окне редактирования AkelPad,
     в строку поиска QSearch вставляется текст, выделенный в окне 
     редактирования AkelPad. При нажатии же кнопок Find Next и Find Prev
     (в панели QSearch) всегда ищется текст из строки поиска QSearch - т.е. 
     выделенный в окне редактирования AkelPad текст не подхватывается.
     При снятии галочки "Search: Pick up selected text" значение параметра
     srch_pickup_selection устанавливается в 10.

7) "Search: SelFind picks up selected text"
   "Поиск: SelFind подхватывает выделенный текст"
   srch_selfind_pickup = 0
     Вызов SelFindNext или SelFindPrev не меняет текст в строке поиска 
     панели QSearch.
   srch_selfind_pickup = 1
     Вызов SelFindNext или SelFindPrev вставляет в строку поиска панели 
     QSearch текст, выделенный в окне редактирования AkelPad.

8) "Search: Stop at EOF (end of file)"
   "Поиск: Останавливаться в конце файла"
   srch_stop_eof = 0
     При достижении конца файла поиск продолжается с начала этого файла.
   srch_stop_eof = 1
     При достижении конца файла показывается соответствующее сообщение.
   srch_stop_eof = 10
     То же, что srch_stop_eof = 0.
     При установке галочки "Search: Stop at EOF" значение параметра
     srch_stop_eof устанавливается в 11.
   srch_stop_eof = 11
     При достижении конца файла поиск прекращается. Молча. Без показа
     сообщения.
     При снятии галочки "Search: Stop at EOF" значение параметра
     srch_stop_eof устанавливается в 10.

9) "Window: Docked top"
   "Окно: Расположить сверху"
   srch_wnd_dockedtop = 1
     Панель QSearch находится в верхней клиентской части окна AkelPad.
   srch_wnd_dockedtop = 0
     Панель QSearch находится в нижней клиентской части окна AkelPad.

10) "Window: Select all when focused"
   "Окно: Фокус ввода выделяет всё"
   edit_focus_selectall = 1 
     Каждый раз, когда строка поиска QSearch получает фокус ввода, 
     весь текст в строке поиска становится выделенным.
   edit_focus_selectall = 0 
     Весь текст в строке поиска выделяется только при явном вызове 
     QSearch::QSearch.

11) "Window: Catch main F3"
   "Окно: Обрабатывать F3 от главного окна"
   catch_main_f3 = 1
     Нажатие клавиши F3 (Shift+F3) в окне редактора AkelPad продолжает 
     поиск плагином QSearch, если до этого не вызывалось стандартное 
     окно поиска или замены AkelPad.
   catch_main_f3 = 0
     Стандартное поведение AkelPad.

12) "Window: Catch main Esc"
   "Окно: Обрабатывать Esc от главного окна"
   catch_main_esc = 1
     Нажатие клавиши Esc в окне редактора AkelPad скрывает панель QSearch,
     если она была видима.
   catch_main_esc = 0
     Панель QSearch не перехватывает клавишу Esc; она обрабатывается самим 
     AkelPad (по умолчанию).
   Также можно вручную установить одно из следующих значений:
   catch_main_esc = 10
     Нажатие клавиши Esc в панели QSearch передаётся на обработку самому
     редактору AkelPad (по умолчанию - закрывает программу).
     При установке галочки "Window: Catch main Esc" значение параметра
     catch_main_esc устанавливается в 11.
   catch_main_esc = 11
     Работает так же, как при catch_main_esc = 1.
     При снятии галочки "Window: Catch main Esc" значение параметра
     catch_main_esc устанавливается в 10.

13) "Window: Hotkey hides the panel" 
   "Окно: Hotkey скрывает панель"
   hotkey_hides_panel = 1
     При нажатии "горячей клавиши" плагина в панели QSearch, она (панель) 
     скрывается (аналог нажатия Esc).
     Повторный вызов функции QSearch::QSearch также закрывает панель.
   hotkey_hides_panel = 0
     При нажатии "горячей клавиши" плагина в панели QSearch, фокус ввода
     передается окну редактирования AkelPad.

14) "Window: Editor auto-focus"
   "Окно: Авто-фокус в редактор"
   editor_autofocus = 1
     При qsearch_autofocus = 1:
       Если панель QSearch имеет фокус ввода и указатель мыши из строки
       поиска панели QSearch передвинулся в окно редактирования AkelPad,
       то фокус ввода переходит к окну редактирования AkelPad.
       Если указатель мыши передвинулся в строку поиска панели QSearch, то
       фокус ввода переходит к строке поиска.
     При qsearch_autofocus = 0:
       Окно редактирования AkelPad всегда получает фокус ввода при движении
       указателя мыши в этом окне (даже если указатель мыши при этом не 
       покидал строку поиска QSearch).
       Если указатель мыши передвинулся в строку поиска панели QSearch, то
       фокус ввода переходит к строке поиска.
   editor_autofocus = 0
     Ничего особенного не происходит: окно редактирования AkelPad не получает
     фокус ввода автоматически при наведении указателя мыши.

15) "Window: QSearch auto-focus"
   "Окно: Авто-фокус в QSearch"
   qsearch_autofocus = 1
     Если указатель мыши передвинулся в строку поиска панели QSearch, то
     фокус ввода переходит к строке поиска.
   qsearch_autofocus = 0
     При editor_autofocus = 0:
       Ничего особенного не происходит: строка поиска QSearch не получает
       фокус ввода при наведении на неё указателя мыши.
     При editor_autofocus = 1:
       Если указатель мыши передвинулся в строку поиска панели QSearch, то
       фокус ввода переходит к строке поиска.

16) dock_rect_disabled = 1
     Если значение этого параметра вручную установлено в 1, то координаты
     "встроенной" панели QSearch не будут сохраняться.

17) dock_rect = ...
     (внутренний параметр, сохраняется автоматически при 'dock_rect_disabled'
     равном 0)

18) color_notfound = FFE0E000
     Цвет фона, который устанавливается в случае, когда искомый текст не
     найден. Этот цвет задается в виде "RRGGBB00", где RR, GG и BB - это
     шестнадцатеричные значения красного, зеленого и синего цветов (от 00
     до FF).

19) color_notregexp=F8E0F800
     Цвет фона, который устанавливается в случае неудачного регулярного
     выражения. Этот цвет задается в виде "RRGGBB00", где RR, GG и BB -
     это шестнадцатеричные значения красного, зеленого и синего цветов
     (от 00 до FF).

20) color_eof = E4FFE400
     Цвет фона, который устанавливается при пересечении конца файла (когда
     поиск продолжается с начала файла). Этот цвет задается в виде 
     "RRGGBB00", где RR, GG и BB - это шестнадцатеричные значения красного,
     зеленого и синего цветов (от 00 до FF).
     При установке "color_eof = FFFFFF00" цвет меняться не будет.

21) color_highlight = C0FFC000
     Цвет фона для текста, который подсвечивается при установленной галочке
     "Highlight all". Этот цвет задается в виде "RRGGBB00", где RR, GG и BB -
     это шестнадцатеричные значения красного, зеленого и синего цветов (от 00
     до FF).

22) highlight_mark_id = 1001
     Параметр 'ID' для плагина HighLight когда QSearch вызывает его функцию
     "HighLight::Main" для подсветки (пометки) текста.

23) highlight_state = 0
    (сохраняется автоматически при вкл/выкл галочки "Highlight all").
    Также можно вручную установить одно из следующих значений:
    highlight_state = 10
      При запуске AkelPad галочка "Highlight all" всегда не установлена.
    highlight_state = 11
      При запуске AkelPad галочка "Highlight all" всегда установлена.

24) use_alt_hotkeys = 0
     Дополнительные сочетания клавиш в панели QSearch отключены.
    use_alt_hotkeys = 1
     В панели QSearch доступны следующие дополнительные сочетания клавиш:
     Alt+alt_match_case    (Alt+C) - Учитывать регистр (case) вкл/выкл
     Alt+alt_whole_word    (Alt+W) - Слово целиком (whole word) вкл/выкл
     Alt+alt_highlight_all (Alt+H) - Подсветить все (highlight) вкл/выкл

25) alt_match_case = 67
     Если 'use_alt_hotkeys' включено (установлено в 1), этот параметр задаёт
     код быстрой клавиши для галочки "Учитывать регистр" (панель QSearch).
     Значение 67 соответствует клавише 'C', т.е. получаем сочетание Alt+C.
     Код клавиши может быть посчитан как (англ.буква - 'A' + 65).
     То есть 65 соответствует Alt+A, 66 - Alt+B, 67 - Alt+C и т.д.
     Также, 48 соответствует Alt+0, 49 - Alt+1, 50 - Alt+2 и т.д.
     Для детальной информации по кодам клавиш см. страницу Virtual-Key Codes
     в MSDN.

26) alt_whole_word = 87
     Если 'use_alt_hotkeys' включено (установлено в 1), этот параметр задаёт
     код быстрой клавиши для галочки "Слово целиком" (панель QSearch).
     Значение 87 соответствует клавише 'W', т.е. получаем сочетание Alt+W.
     См. 'alt_match_case' для более детальной информации.

27) alt_highlight_all = 72
     Если 'use_alt_hotkeys' включено (установлено в 1), этот параметр задаёт
     код быстрой клавиши для галочки "Подсветить все" (панель QSearch).
     Значение 72 соответствует клавише 'H', т.е. получаем сочетание Alt+H.
     См. 'alt_match_case' для более детальной информации.

28) find_history_items = 15
     Максимальное количество элементов в истории поиска (выпадающем списке).
     Установка этого значения в 0 отключает историю поиска.

29) history_save = 3
     Может быть установлено в 0 или быть суммой следующих значений:
     0 - история поиска и состояние галочек не сохраняется.
     1 - история поиска сохраняется в Системном Реестре.
     2 - состояние галочек "Учитывать регистр" и "Слово целиком" 
         сохраняется в Системном Реестре.
     4 - сохранять не в Системном Реестре, а там, куда сохраняет
         настройки AkelPad (например, в .ini файл).
         Позволяет сделать настройки QSearch полностью портабельными.

30) new_ui = 0
     QSearch показывает свой старый "классический" интерфейс:
     [искомый текст]  [ ]Учит.регистр [ ]Слов.целиком [ ]Подсв.все
    new_ui = 1
     QSearch показывает обновлённый "классический" интерфейс (с кнопками):
     [искомый текст]  [ < ] [ > ]  [ ]Учит.регистр [ ]Слов.целиком [ ]Подсв.все

31) select_by_f3 = 0
     Актуально при установленных галочках "Search: Pick up selected text" и
     "Window: Catch main F3".
     Когда в окне редактирования нет выделенного текста, F3 использует текст
     из панели QSearch для продолжения поиска.
    select_by_f3 = 1
     Актуально при установленных галочках "Search: Pick up selected text" и
     "Window: Catch main F3".
     Когда в окне редактирования нет выделенного текста, F3 выделяет слово
     возле каретки, чтобы использовать его для дальнейшего поиска.
     (Пример: сл|ово, слово|, |слово.)
    select_by_f3 = 2
     Актуально при установленных галочках "Search: Pick up selected text" и
     "Window: Catch main F3".
     Когда в окне редактирования нет выделенного текста, F3 выделяет слово,
     чтобы использовать его для дальнейшего поиска, если каретка находится
     внутри слова - т.е. не перед первым или не после последнего символа
     этого слова.
     (Пример: с|лово, сл|ово, сло|во, слов|о - но не слово| или |слово.)

32) adj_incompl_regexp = 1
     Корректирует "незавершённое" регулярное выражение: символы "+", "*",
     "+?" and "*?" в конце регулярного выражения игнорируются, чтобы
     избежать выделения до конца файла.
     Это особенно полезно в режиме поиска "на лету", когда символ "+" или
     "*" встречается в середине регулярного выражения в процессе набора.
    adj_incompl_regexp = 2
     Корректирует "незавершённое" регулярное выражение только в режиме
     поиска "на лету".
    adj_incompl_regexp = 0
     Отключает коррекцию "незавершённого" регулярного выражения.


--------
История:
--------
v.7.0 (Декабрь 2017)
 - исправлено: после неудачного поиска подхват выделенного слова в редакторе
   не сбрасывал состояние "ничего не найдено"
 * изменено: теперь при srch_pickup_selection = 1 в режиме "Поиск: Искать на
   лету" установка галочки "Подсветить все" подхватывает выделенный в редакторе
   текст. (Этого не происходит при srch_pickup_selection = 11 или при поиске
   не "на лету".)
 * 10 лет плагину QSearch! :)

v.6.9 (Июль 2016)
 * AkelPad 4.9.8+

v.6.8 (Июль 2016)
 + ничего не тянем из MSVCR = меньший размер файла

v.6.7 (Июль 2016)
 + изменено: когда "editor_autofocus" устанавливает фокус ввода в окно
   редактирования сразу после того, как что-то было выбрано в истории поиска
   (всплывающем списке) QSearch, выбранный текст из всплывающего списка будет
   использован для поиска даже при активном "srch_pickup_selection". (Раньше
   в этом случае для поиска использовался текст, выделенный в окне редaктора,
   а не только что выбранный во всплывающем списке.)

v.6.6 (Март 2016)
 + добавлено: 'srch_regexp_dot_newline'

v.6.5 (Январь 2016)
 + добавлено: 'adj_incompl_regexp'

v.6.4 (Декабрь 2015)
 * AkelPad 4.9.7+
 + поддержка символа '\0' в строке AEM_GETWORDDELIMITERS
 - исправлено: "Слово целиком" при поиске со спец. символом '*'

v.6.3 (Сентябрь 2015)
 + При активном DialogSwitcher нажатие Ctrl+F и Crtl+H в главном окне
   редактирования позволяет подхватить выделенный в этом окне текст.
   (В то время как нажатие Ctrl+F и Crtl+H в диалоге поиска/замены
   оставляет в диалоге тот текст, который был.)
 * AkelPad 4.9.6+
 * восьмая годовщина QSearch :)

v.6.2 (Март 2015)
 - исправлено: неверно определялась версия AkelPad

v.6.1 (Март 2015)
 - исправлено: иногда "Подсветить все" вызывалось без надобности
 + добавлена информация про лицензию (см. ниже)

v.6.0 (Декабрь 2014)
 * AkelPad 4.9.1+
 + теперь "Подсветить все" учитывает состояние галочки "Слово целиком"

v.5.8 (Апрель 2014)
 * AkelPad 4.8.8+

v.5.7 (Март 2014)
 - исправлено: установка галочки "Подсветить все" всегда инициировала
   продолжение поиска для регулярных выражений
 - исправлено: SelFindNext/Prev всегда работали как srch_selfind_pickup=1
 + добавлено: srch_pickup_selection=10
 * изменено: теперь Alt+Enter ищет с начала файла, а Ctrl+Enter 
   подхватывает выделенный текст

v.5.6 (Март 2014)
 * AkelPad 4.8.7+
 + теперь "Подсветить все" поддерживает регулярные выражения (AkelPad 4.8.8+)
 + теперь 'history_save' поддерживает портабельный режим
 - исправлено: hPopupMenu не освобождался (спасибо, Instructor)

v.5.5 (Июнь 2013)
 * AkelPad 4.8.4+

v.5.4 (Май 2013)
 * AkelPad 4.8.3+
 * теперь при поиске игнорируются "+", "*", "+?" и "*?" в конце регулярного
   выражения, чтобы избежать выделения до конца файла

v.5.3 (Декабрь 2012)
 * AkelPad 4.8.0+
 * теперь кнопки [>] и [<] подхватывают выделенный текст "интеллектуально"
 + добавлено: 'select_by_f3'
 * изменено сообщение о достижении конца файла

v.5.2 (Ноябрь 2012)
 * продолжение 5.1
 + поиск с регулярными выражениями (используя их реализацию в AkelPad)
 + добавлено: 'color_notregexp'
 + добавлено: явная настройка "Авто-фокус в QSearch"
 * 'hotkey_closes_wnd' изменено на 'hotkey_hides_panel'

v.5.1 (Октябрь 2012)
 + добавлено: new_ui=1

v.5.0 (Октябрь 2012)
 * пятая годовщина QSearch :)
 * AkelPad 4.7.9+
 - исправлено: неправильное поведение встроенного (docked) окна при автозагрузке
 - исправлено: всплывающее меню панели QSearch на втором мониторе
 + тихий мгновенный поиск по F3 (детали см. выше)

v.4.9 (Июль 2012)
 * AkelPad 4.7.7+

v.4.8 (Май 2012)
 * AkelPad 4.7.5+

v.4.7 (Февраль 2012)
 * для AkelPad 4.7.3+

v.4.6 (Декабрь 2011)
 * для AkelPad 4.7.1+
 + поддержка внутреннего языка AkelPad

v.4.5 (Ноябрь 2011)
 * для AkelPad 4.7.0+

v.4.4 (Июль 2011)
 + улучшена реализация doSelectCurrentWord для SelFindNext/Prev
   (взята из "WordCaretSelect.js" by FeyFre & VladSh)

v.4.3 (Июль 2011)
 + добавлено: srch_stop_eof=10

v.4.2 (Май 2011)
 - исправлено: теперь сообщение "EOF" не появится во время qsUpdateHighlight()
 - исправлено: при показе панели QSearch подхваченный текст не был выделен
 + добавлено: editor_autofocus=100

v.4.1 (Май 2011)
 * для AkelPad 4.6.0+
 + поддержка AkelPad x64
 - исправлено: без нажатого Shift, гор.клавиша Поиск Вверх работала как Вниз
 - исправлено: Grey Alt обрабатывался некорректно (например, для Польского)

v.4.0 (Декабрь 2010)
 + экспериментально: "Слово целиком" при поиске со спец. символами
   (тогда "**" соответствует 0 или больше любых непробельных символов)
 + галочки "Учитывать регистр" и "Слово целиком" могут сохраняться 
   (значение 'history_save' должно быть установлено в 3 вручную!)

v.3.9 (Октябрь 2010)
 * для AkelPad 4.5.0+

v.3.8 (Сентябрь 2010)
 * теперь неактивное окно AkelPad не перехватывает фокус ввода
 * добавлена иконка

v.3.7 (Сентябрь 2010)
 * третья годовщина QSearch :)
 * изменено поведение 'srch_pickup_selection'
 + добавлено: 'editor_autofocus'

v.3.6 (Сентябрь 2010)
 + мелкие улучшения

v.3.5 (Август 2010)
 - исправлено: "Highlight all" не работало с 'srch_pickup_selection'
 + добавлено: история поиска
 + новый параметр настройки: find_history_items
 + новый параметр настройки: history_save

v.3.4 (Август 2010)
 + если нет выделения, SelFindNext/Prev выделяет текущее слово

v.3.3 (Июль 2010)
 - улучшено обнаружение Coder::HighLight
 - улучшена совместимость с PMDI
 - теперь Uninitialize() вызывается по AKDN_MAIN_ONFINISH

v.3.2 (Июнь 2010)
 * для AkelPad 4.4.4+
 + расширенная настройка catch_main_esc

v.3.1 (Май 2010)
 + теперь QSearchDlg использует шрифт "MS Shell Dlg"

v.3.0 (Март 2010)
 + теперь спец. символы могут использоваться в режиме "на лету"

v.2.9 (Февраль 2010)
 - исправлено: Ctrl+Z не работал после Ctrl+Del или Ctrl+BS

v.2.8 (Февраль 2010)
 * для AkelPad 3.7.4+/4.4.0+
 + QSearchDlg: собственная обработка Ctrl+Del, Ctrl+BS, Ctrl+A

v.2.7 (Октябрь 2009)
 * теперь SetWindowsHookEx() в DialogSwitcher использует GetCurrentThreadId()

v.2.6 (Октябрь 2009)
 + новые параметры настройки для дополнительных сочетаний клавиш панели QSearch
 - исправлено: теперь 'alt_whole_word' не работает при скрытом "Слово целиком"

v.2.5 (Октябрь 2009)
 + новый параметр настройки: color_eof
 + новый параметр настройки: use_alt_hotkeys

v.2.4 (Сентябрь 2009)
 * DialogSwitcher работает с AkelPad 4.3.2+
 - исправлено: проблема перерисовки окна ввода при режиме поиска не "на лету"
 - исправлено: изменение галочки "Слово целиком" не устанавливало QSEARCH_FIRST
 + добавлено: новые значения для параметра 'highlight_state'

v.2.3 (Сентябрь 2009)
 * вторая годовщина QSearch :)
 + добавлено: состояние галочки "Подсветить все" сохраняется
 - исправлено: неверное поведение при нажатии Shift во время поиска "на лету"
 - исправлено: иногда QSearch продолжал поиск по нажатию hot-key

v.2.2 (Август 2009)
 + добавлена функция "Подсветить все" (требует включенный плагин Highlight)
 * для AkelPad 3.7.3+/4.3.0+
 * работает с плагином Highlight версии 4.7 или выше

v.2.1 (Март 2009)
 * для AkelPad 3.7.0+/4.2.0+

v.2.0 (Март 2009)
 - исправлено (DialogSwitcher): горизонтальная полоса прокрутки окна 
   редактирования не перерисовывалась при переключении с диалога
   Поиска/Замены на панель QSearch

v.1.9 (Декабрь 2008)
 + новая функция: DialogSwitcher

v.1.8 (Октябрь 2008)
 + исправлено: при нажатом Shift функция SelFindNext работала как SelFindPrev

v.1.7 (Октябрь 2008)
 + исправлено: продолжение поиска в MDI-режиме при скрытой панели QSearch

v.1.6 (Август 2008)
 + новый параметр настройки: srch_selfind_pickup

v.1.5 (Июль 2008)
 * для AkelPad 3.6.0+

v.1.4 (Июнь 2008)
 * для AkelPad 3.5.5+
 + новые функции: SelFindNext, SelFindPrev

v.1.3 (Май 2008)
 * для AkelPad 3.5.5+
 + перехват клавиши F3 (продолжение поиска) из главного окна
 + мелкие улучшения

v.1.2 (Апрель 2008)
 * для AkelPad 3.5.5+
 + встроенная поддержка русского и украинского интерфейса
 + дополнительные настройки и возможности

v.1.1 (Март 2008)
 * для AkelPad 3.5.3+
 + теперь панель плагина "встраивается" в окно AkelPad
 + мелкие улучшения
 + дополнительные настройки

v.1.0 (Сентябрь 2007)
 * начальная версия
 * для AkelPad 3.3.x/3.4.x


Автор выражает благодарность Александру Шенгальцу aka 
Instructor за текстовый редактор AkelPad  ;-)
---------------------------------------------------------------------------
The original icon by Yusuke Kamiyamane, http://p.yusukekamiyamane.com/
The icon has been modified by DV.
---------------------------------------------------------------------------
(C) Sep 2007 - Dec 2017, Vitaliy Dovgan aka DV
          dvv81 <at> ukr <dot> net

Этот плагин является бесплатным (бесплатным как для частного, так и для
коммерческого использования);
он распространяется на условиях той же лицензии, что AkelPad.
