QSearch plugin

Discuss and announce AkelPad plugins
Post Reply
  • Author
  • Message
DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

QSearch plugin

Post by DV »

QSearch plugin for AkelPad 3.3.x/3.4.x

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

This plugin is a small panel for "quick" text search.
The plugin function (QSearch::QSearch) is assumed to be assigned
with a hot-key (for example, F7).

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

спасибо!

Post by VladSh »

Отлично, начало положено! :D

Немного по юзабилити.
Только клавиша F7 неоднозначна, т.к. за ней в большинстве прогах закреплена проверка орфографии.
И с непривычки сначала не понял - главное окно теряет фокус и всё.. а уж потом увидел панельку внизу.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Re: спасибо!

Post by DV »

VladSh wrote:Только клавиша F7 неоднозначна
А вот в редакторе/просмотрщике FAR и в просмотрщике TotalCmd это однозначно поиск строки ;)
VladSh wrote:И с непривычки сначала не понял - главное окно теряет фокус и всё.. а уж потом увидел панельку внизу.
Да, можно что-то придумать для явного указания на то, что фокус ввода находится в панели поиска. Но что именно? Выделить цветом?

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

DV wrote:Да, можно что-то придумать для явного указания на то, что фокус ввода находится в панели поиска. Но что именно? Выделить цветом?
Когда окно проги теряет фокус, то самая верхняя строка становится серой, именно на изменение цвета реагирует глаз, поэтому автоматом зрение переносится туда.
:idea: Предлагаю чтобы панелька появлялась справа от строки меню, т.к. плагин тулбара может быть отключен.
Можно ещё помигать окном (я как-то делал - выделял окно тёмным цветом секунды на 2, чтобы пользователь обратил внимание), но, думаю, это излишне.

:idea: Ещё предложение: если в окне редактирования выделен текст, то чтобы при запуске QSearch этот текст по умолчанию находился в поле и был веделен. Если он ненужен, то сразу можно начинать писать то, что нужно, - тот текст затрётся.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

I'll consider it :)

А где бы мне почитать о циклах сообщений (message loop) и их работе в разных потоках (thread)? Никто не подскажет? А то при активной панели QSearch получается "накладка" с модальными диалогами (например, диалог открытия файла или смены шрифта).

Offline
Posts: 10
Joined: Wed May 23, 2007 2:10 pm

Post by Ewfox1 »

Как можнно изменить положение панели? Часто найденный текст находится под панелью и невиден , можно сместить панель в строку состояния?

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Ewfox1 wrote:Как можнно изменить положение панели?
Читаем файл QSearch-Rus.txt (находится в одном архиве с плагином):

Дополнительные настройки (файл "AkelFiles\Plugs\QSearch.ini"):
(...)
2) dlg_left_offset - отступ диалога поиска от левого края окна AkelPad.
3) dlg_bottom_offset - отступ диалога поиска от нижнего края окна AkelPad.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Опрос:
должна ли панель QSearch автоматически закрываться при потере фокуса (например, при клике мышкой по тексту в редакторе)?

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

мои 5 копеек

Post by VladSh »

DV wrote:должна ли панель QSearch автоматически закрываться при потере фокуса (например, при клике мышкой по тексту в редакторе)?
По моему это зависит от того, где находится панелька, т.е. опять чистое юзабилити...
Если она находится над текстом, то она будет мешать работе с ним, т.е. должна скрываться.
Если всё же когда-нибудь она будет справа от главного меню, т.е. не будет "налезать" на окно редактирования, то очень удобно вообще её не скрывать! Если бы она была всегда видна, то лично я бы вообще не пользовался стандартным поиском (сейчас в основном пользуюсь стандартным, т.к. просто забываю об этом плагине).
Если мнения разойдутся, то корректно будет сделать спец. настройку, отвечающую за это.

С уважением,
Влад

UPDATED:
1. Поставил плагин на автозагрузку - не совсем удобно, т.к. при запуске окно Akel'а теряет фокус...

2. dlg_bottom_offset - хорошо, но хотелось бы ещё и dlg_top_offset.
А ещё лучше было бы мышкой двигать панельки и чтобы после перемещения её положение автоматом запоминалось бы в ini.

Offline
Posts: 10
Joined: Wed May 23, 2007 2:10 pm

Post by Ewfox1 »

DV wrote:Опрос:
Читаем файл QSearch-Rus.txt (находится в одном архиве с плагином):

Дополнительные настройки (файл "AkelFiles\Plugs\QSearch.ini"):
(...)
2) dlg_left_offset - отступ диалога поиска от левого края окна AkelPad.
3) dlg_bottom_offset - отступ диалога поиска от нижнего края окна AkelPad.
Я в смысле пытался вводить right и top - все -панели не найти.Помобильней конечно надо бы ,Так все здорово но есть неудобства. Может можно хоть прозрачность добавить?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

DV wrote:Опрос:
должна ли панель QSearch автоматически закрываться при потере фокуса (например, при клике мышкой по тексту в редакторе)?
Я за опцию.

По координатам можно сделать (вместо dlg_left_offset, dlg_bottom_offset):
dlg_x отступ слева, если отрицательная, то отступ справа
dlg_y отступ сверху, если отрицательная, то отступ снизу
Таким образом, чтобы например координаты dlg_x=-300, dlg_y=40, размещали диалог в районе свободного места Toolbar плагина.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Instructor wrote: dlg_x отступ слева, если отрицательная, то отступ справа
dlg_y отступ сверху, если отрицательная, то отступ снизу
Хороший мысля. Правильно в армии говорят: одна голова - хорошо, а два сапога - пара :-)

Я вот еще о чем подумал: нельзя ли панель QSearch вставить как элемент окна AkelPad над статус-баром? Типа уменьшить клиентскую область для окна редактирования и поместить на дополнительном месте основного окна панель и кнопки QSearch? Или это слишком сложно?

"Умом ты можешь не блистать, но сапогом блистать обязан" :-)

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

DV wrote:Я вот еще о чем подумал: нельзя ли панель QSearch вставить как элемент окна AkelPad над статус-баром? Типа уменьшить клиентскую область для окна редактирования и поместить на дополнительном месте основного окна панель и кнопки QSearch? Или это слишком сложно?
см. AKDN_SIZE - его использует Toolbar плагин.

Offline
Posts: 10
Joined: Wed May 23, 2007 2:10 pm

Post by Ewfox1 »

У меня стоит маленькая программка X Mouse 1.41 и я использую её для автоматического копирования выделенного текста в любой программе и вставки потом средней кнопкой мыши. В ней есть ещё ряд настроек,в том числе включение перетаскивания окон за любую часть окна (не только за заголовок)при нажатом Ctrl , Shift или Alt , так вот, я с радостью обнаружил, что могу таскать панель плагина как угодно и даже вытаскивать её за пределы окна Akelpad и при этом она продолжает работать.Если бы можно было бы включить эту функцию как -нибудь в реестре , то можно было-бы обойтись и без наличия этой программульки.

Offline
Posts: 10
Joined: Wed May 23, 2007 2:10 pm

Post by Ewfox1 »

Т.к. мои повествования не совсем соответствуют теме,прошу меня предупредить если что.Продолжаю экспериментировать с плагином при помощи сторонних программ.Т.к. у меня постоянно запущен Windows Power Pro , маленькой частью возможностей которого является способность манипулировать с окнами практически всеми мыслимыми способами,то решил нацелить его функции на панель плагина Q-search. Правда ,чтобы отловить панель плагина пришлось в Resource Hacker заполнить строку CAPTION "" т.к сами видите ,что заголовка нет и идентифицировать окно по заголовку нельзя.После удачного отлова прилепил справа к панели кнопку Windows Power Pro с двумя командами:левый клик-окно полностью прозрачно,правый - нет.Растянул поле ввода текста , чтобы не промахнуться.Таперь получилось нечто вроде инкрементного поиска в Ultraedit , там вообще нет поля ввода , при включении поиска наверно идет перехват с клавиатуры и текст в документе не печатается ,только выделение скачет по открытому документу по мере соответствия набранному тексту.Теперь у меня примерно тоже ,правда чтобы увидеть все введенные буквы (если забыл-для контроля) нажимаю свою кнопку правой кнопкой мыши-потом можно опять делать окно прозрачным.Ну а когда просто жмешь Enter для продолжения поиска-ну точно как в Ultraedit. Кто поголовастей может можно подобное сделать с самим плагинном?
Post Reply