Page 7 of 50

Posted: Wed Oct 14, 2009 6:42 am
by Fr0sT
FeyFre
дык консоли не участвуют в message loop, у них своя песочница

Posted: Wed Oct 14, 2009 10:06 am
by DV
QSearch v.2.7
* теперь SetWindowsHookEx() в DialogSwitcher использует GetCurrentThreadId()

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

Posted: Thu Feb 04, 2010 9:52 am
by VladSh
То ли баг, то ли фича: ввожу начало слова (текст нормально находится и подсвечивается), потом стираю набранное слово бэкспейсом, при стирании последнего символа, т.е. первого :) (при полной очистке поля) в окне редактирования остаётся выделенным этот последний стираемый символ, а по идее выделение должно сбрасываться и на том месте просто должен стоять курсор.
Включены:
галки:
- Подсветить всё.
опции:
- Поиск: Искать "на лету";
- Поиск: Подхватывать выделенный текст;
- Поиск: Останавливаться в конце файла;
- Окно: Фокус ввода выделяет всё;
- Окно: обрабатывать F3 (и Esc) от главного окна.

Ещё по ходу предложение образовалось. Пришлось сейчас искать очень много вхождений... короче очень не удобно (долго) очищать поле по одному символу (с помощью Backspace). Предлагаю для мгновенной очистки поля использовать клавишу Del, она всё равно не задействована. Если в поле выделена часть текста, то удалять эту часть, если не выделена, то очищать поле целиком.
Также указать Del во всплывающем описании, когда подводишь курсор к полю.

Posted: Thu Feb 04, 2010 4:32 pm
by FeyFre
VladSh, DEL задействован, как и в любом другом Edit-контроле. Стирает символ у каретки.

Posted: Thu Feb 04, 2010 5:11 pm
by VladSh
FeyFre wrote:VladSh, DEL задействован, как и в любом другом Edit-контроле. Стирает символ у каретки.
Понятно)) Я говорю о том, чтобы сделать удобнее, и только для данного случая, учитывая специфику работу с плагином, а не для всех мест, где встречается такой контрол.

В таком случае да:

Code: Select all

тек|ст
но так бывает не часто, а только тогда, когда ошибся - возвращаешься и нажмаешь Del. Да даже так бывает редко - возвращаешься и стираешь бэкспейсом!

Чаще бывает так:

Code: Select all

текст|
потом ты вынужден стирать всё бэкспейсом...( Вот тут, когда курсор стоит справа от текста, и удобно было бы нажать Del и очистить поле.

Posted: Thu Feb 04, 2010 7:43 pm
by Infocatcher
Тогда логичнее сделать поддержку Ctrl+Backspace для стирания слова слева от курсора.

Posted: Thu Feb 04, 2010 10:18 pm
by Evgenyatam
А нельзя ли добавить в плагин историю поиска?

Posted: Fri Feb 05, 2010 10:40 am
by VladSh
Infocatcher, такой вариант тоже подходит! 8)

Posted: Sat Feb 06, 2010 12:33 pm
by DV
Infocatcher wrote:Тогда логичнее сделать поддержку Ctrl+Backspace для стирания слова слева от курсора.
Интересно, что Ctrl+Del стирает весь текст правее каретки, и это, похоже, стандартное поведение, потому что в коде никакой обработки Ctrl+Del нет.
Так какие варианты?
1) Ctrl+Del стирает текст правее, Ctrl+Backspace стирает текст левее?
2) Ctrl+Del стирает весь текст, Ctrl+Backspace тоже стирает весь текст?

Posted: Sat Feb 06, 2010 3:50 pm
by VladSh
Я за 1-й вариант, т.к. он, с одной стороны, ближе к стандартному, а с другой - более гибок.
А если курсор находится посередине текста и текст надо удалить весь, то для "клавиатурщиков" добавить поддержку Ctrl+A, выделяющую весь текст в поле (точно также если по нему даблклик'нуть мышкой), а дальше обычный Del и до свидания..

Posted: Tue Feb 09, 2010 8:32 am
by DV
VladSh wrote:при стирании последнего символа, т.е. первого :) (при полной очистке поля) в окне редактирования остаётся выделенным этот последний стираемый символ
В режиме "Поиск на лету" любое изменение текста в строке поиска инициирует новый поиск. А при очистке поля поиска в окне редактирования остается выделенным результат последнего поиска. Соответственно, последняя буква перед её стиранием как раз отвечает за последний результат поиска.
Но это лирика.
А вообще, меня так задрали тупые приколы в WinAPI... Вот, например, нажатие клавиши Delete отрабатывает по WM_KEYDOWN, а Backspace - какого-то хрена по WM_CHAR. Причем если по нажатию просто Backspace приходит код 0x08, то по нажатию Ctrl+Backspace приходит 0x0A. Ну не идиотизм ли это?
И вот в таких условиях приходится работать...

Posted: Thu Feb 11, 2010 8:20 am
by DV
QSearch v.2.8
* для AkelPad 3.7.4+/4.4.0+
+ QSearchDlg: собственная обработка Ctrl+Del, Ctrl+BS, Ctrl+A
DV wrote:по нажатию Ctrl+Backspace приходит 0x0A
На самом деле по Ctrl+Backspace приходит 0x7F, а 0x0A - это Ctrl+Enter.

Posted: Thu Feb 11, 2010 10:26 am
by VladSh
Спасибо, DV, - просто супер :!: 8) :D

Posted: Thu Feb 11, 2010 7:04 pm
by Infocatcher
Ctrl+Backspace и Ctrl+Del затирают буфер отмен. Т.е. нельзя отменить действие по Ctrl+Z.

Posted: Fri Feb 12, 2010 5:14 pm
by se7h
Infocatcher wrote:Ctrl+Backspace и Ctrl+Del затирают буфер отмен. Т.е. нельзя отменить действие по Ctrl+Z.
лично у меня все в порядке, эти комбинации не влияют на "Отмену"