Снегопат

Обсуждение Снегопата
Текущее время: 05 май 2024, 04:03

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 16:07 
Не в сети

Зарегистрирован: 04 июн 2012, 09:28
Сообщения: 343
А можно ли сделать так, чтобы хоткеи перехватывались не глобально, а только там, где они имеют смысл?
Например, хоткей SnegopatMainScript::ЛистатьПараметрыВперед назначен на Alt + Down.
При этом в панели свойств в поле выбора типа реквизита невозможно открыть раскрывающийся список этим хоткеем.
Аналогично и другие хоткеи перехватываются глобально - что доставляет неудобства.

_________________
В реальності все не так, як насправді


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 16:11 
Не в сети

Зарегистрирован: 04 июн 2012, 09:28
Сообщения: 343
Хм... ещё веселее.
Переназначил на Ctrl + Alt + Down - всё равно стандартный хоткей не работает.
При запуске без Снегопата - всё нормально.

_________________
В реальності все не так, як насправді


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 16:12 
Не в сети

Зарегистрирован: 04 июн 2012, 09:28
Сообщения: 343
А, понял.
Alt + Down назначено также на textEditorExt::НайтиВыделенныйТекстВниз
Только почему конфликта не возникло?

_________________
В реальності все не так, як насправді


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 17:55 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
Конфликта не возникает.
Снегопат позволяет на один хоткей вешать несколько макросов.
Вызываются все в том порядке, в котором регистрировались в снегопате.
Если один из макросов вернул все что угодно, кроме false, считается, что он отработал и остальные не вызываются.
Если вернул false - вызывается следующий в цепочке.
Если ни один не отработал, нажатие передается для обработки в 1С.
Т.е. макрос сам должен определять, должен ли он сейчас срабатывать, и если нет - возвращать false.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 18:32 
Не в сети

Зарегистрирован: 04 июн 2012, 09:28
Сообщения: 343
orefkov писал(а):
Конфликта не возникает.
Снегопат позволяет на один хоткей вешать несколько макросов.
Вызываются все в том порядке, в котором регистрировались в снегопате.
Если один из макросов вернул все что угодно, кроме false, считается, что он отработал и остальные не вызываются.
Если вернул false - вызывается следующий в цепочке.
Если ни один не отработал, нажатие передается для обработки в 1С.
Т.е. макрос сам должен определять, должен ли он сейчас срабатывать, и если нет - возвращать false.

Хм... тогда вопрос к textEditorExt::НайтиВыделенныйТекстВниз - почему он "срабатывает" в поле ввода? В кавычках потому, что собственно ничего не происходит, да и представить я не могу, как можно искать что-то в однострочном поле.

_________________
В реальності все не так, як насправді


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 20:54 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
Видимо, просто макрос не доработан, надо чтобы false возвращал в таких случаях.
Свяжись с автором.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 21:35 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
Я могу за автора ответить.
Саш, а как в скрипте определить, что курсор в "большом" текстовом окне, а не в поле ввода?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 05 июл 2012, 21:45 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:53
Сообщения: 448
Откуда: Саратов
Да там надо вместо

Код:
function macrosНайтиВыделенныйТекстВниз(){
    selectNextPattern(1);
}

function macrosНайтиВыделенныйТекстВверх(){
    selectNextPattern(-1);
}


Сделать

Код:
function macrosНайтиВыделенныйТекстВниз(){
    return selectNextPattern(1);
}

function macrosНайтиВыделенныйТекстВверх(){
    return selectNextPattern(-1);
}


И все будет ок.

_________________
С уважением,
Александр Кунташов
Канал про 1С в Телеграме: @kuntashov_devnotes


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Область действия хоткеев
СообщениеДобавлено: 06 июл 2012, 06:21 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
orefkov писал(а):
Видимо, просто макрос не доработан, надо чтобы false возвращал в таких случаях.

Поправил таким образом все макросы (штук 5) из данного скрипта.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB