Страница 2 из 10

Добавлено: Вс янв 21, 2007 12:53
GeNtlE
sergeich
А неактивные окна еще не обрабатываются?
В общем-то так раньше и было, когда в ini задавались только класс окна и текст дочернего окна. Под это широкое определение подходило одно из невидимых окон Punto Switcher, которое ни по Enter, ни по Esc не закрывалось. Может быть, оно именно скрывалось? В любом случае, оно находилось постоянно и программа уходила в бесконечный цикл. Сейчас применяется режим работы, при котором получается дескриптор самого верхнего (по Z-order) окна. Думаю, я всё-таки оттестирую этот второй режим к версии 0.2, а в следующих версиях буду готовить третий. Там будет опция "вообще не показывать окна сообщений". То есть, они не будут даже мелькать!

Добавлено: Вс янв 21, 2007 15:12
sergeich
Круто! Заинтриговал :-)

Добавлено: Вт янв 23, 2007 16:25
aLexx
Как мне кажется, скрытые возможности программы поистине безграничны. Вот, придумал:

Выход из окна поиска файлов, если ничего не найдено (типа, отмена):

HandleХХХ=TFindFile|Поиск файлов|TMyPanel| [Искомые файлы не найдены]|I||1B

2. Вопросик - что бы это значило "]#13>>]" в строке

HandleХХХ=#32770|Total Commander|Static|Ошибка! Каталог|W|]#13>>] |0D

Добавлено: Вт янв 23, 2007 17:54
sergeich
Отключение от FTP сервера без вопроса о сохранении сеанса:

HandleXXX=#32770|ftp|Static||N||0D
HandleXXX=TDETAILS|Настройка FTP-соединения|TEdit||I||1B

Добавлено: Вт янв 23, 2007 18:11
aLexx
Я бы тоже, наверно. это придумал, но дома Инета нет,
а на работе ТС в качестве FTP-клиетна не использую.
Пора открывать конкурс на самую крутую строку "Handle" :)

Ещё одна хотелка.
Вот было бы здорово, если можно было бы в активном окне нажимать определённый батон.
Например, если при поиске файлов в "TMyPanel" вывелось "Найдено: " и т.д.,
то посылать код 0D (Enter) именно кнопке "На панель".

Добавлено: Вт янв 23, 2007 19:15
GeNtlE
aLexx
Вопросик - что бы это значило "]#13>>]" в строке
HandleХХХ=#32770|Total Commander|Static|Ошибка! Каталог|W|]#13>>] |0D
Вот именно "]#13>>] " сейчас ничего практически ценного не представляет. Как можно узнать из ReadMe, здесь располагается макрос замены текста и в версии 0.1 он игнорируется. В сообщении об ошибке после имети каталога в квадратных скобках стоит знак возврата каретки (в нотации Delphi он выглядит "#13"). Я подумал, хорошо было бы этот символ убрать. Это я добавил для себя, чтобы потом добавить обработку ещё и таких замен. В версии 0.2 это практически реализовано (не поддерживаются коды клавиш, только простой текст).
Например, если имеет место такая строчка в файле настройки

Код: Выделить всё

TDRIVEDLG|ОШИБКА!|TButton|Отмена|E|ОШИБКА!>>Total Commander;Отмена>>Диск не найден;|3|1B
то автоматически будут закрываться диалоги выбора диска. Я вам предлагаю исследовать это окошко. Цифра "3" означает, что будет выведен Balloon и произведена запись в лог (1+2).
Вот было бы здорово, если можно было бы в активном окне нажимать определённый батон.
Например, если при поиске файлов в "TMyPanel" вывелось "Найдено: " и т.д.,
то посылать код 0D (Enter) именно кнопке "На панель".
Сейчас нажатие клавиши отправляется не дочернему окну, а его владельцу. Посмотрим. Технически добавить можно всё, что угодно. Проблема встаёт в возможности универсальной настройки программы. А вообще я планирую (в дальнейшем) добавить возможность отсылать последовательность нажатий клавиш. Так можно будет и табуляцией до нужной кнопки дойти.

sergeich
HandleXXX=#32770|ftp|Static||N||0D
Умоляю, будьте осторожны при задании таких масок. Лучше сделать несколько похожих строк, чем сэкономить место и автоматически закрыть что-то критичное (типа, "Форматитуем диск?"- "Yes"). С Esc попроще будет, хотя и здесь существует вероятность отменить сохранение закрываемого документа. Редакторы разные бывают.

Добавлено: Ср янв 31, 2007 17:45
aLexx
Что-то какая-то нездоровая тишина...
У меня уже кол-сво строк "Handle" перевалило за 100. За нумерацией следить всё труднее.

Ау, GeNtlE, где след. версия "ShowMassage > BaloonTips" ?

Добавлено: Сб фев 03, 2007 13:57
sergeich
Куда то улетели последние сообщения...

Добавлено: Сб фев 03, 2007 15:05
aLexx
Ага, я же говорил, что это не к добру... :(

По новой версии.

1. Нашёл баг (или фишку?). Вот строка (других в файле "SM2BT.smb" просто нет :)):

#32770|Total Commander|Static|ВНИМАНИЕ: Если TotalCmd не появится из системного трея|W||3|0D

SM2BT.ехе не срабатывает. Теперь добавим точно такую же строку (т.е. две одинаковых).
SM2BT.ехе срабатывает безусловно.
Шозанах?
----------------------------------

2. Создал на диске каталоги с файлами. Полное имя файлов с путями более 260 символов. :)
----------------------------------
2.1. При попытке просмотра файла - окно с заголовком "Файл не найден!" и именем файла в окне.
Как и должно быть. Но в окне только имя файла, и не одной буковкой больше! Пришлось в
строку, закрывающую это окно, ставить "*" (ведь имя может быть абсолютно любое):

#32770|Файл не найден!|Static|*|W||3|0D

Но в этом случае пузырь не появляется - писать-то нечего!
А вот как добиться вывода имени файла в пузырь? В качестве костыля можно использовать:

#32770|Файл не найден!|Static|.|W||3|0D

А вдруг в имени файла не будет точки ??? Не делать же строчки для всех букв!
----------------------------------
2.2. При попытке упаковки - Окно класса "TExtMsgForm" с заголовком "ZIP", надписью в окне
"Hе удаётся открыть файл для чтения" и именем файла. Жмём "Пропустить":

TExtMsgForm|ZIP|TButton|&Пропустить|W|&Пропустить>>Hе удаётся открыть файл.;|3|0D

Замена строк "&Пропустить>>Hе удаётся открыть файл.;" необходима для информативности.
Одно мне не нравится: привязка по "TExtMsgForm|ZIP" и по кнопке "TButton|&Пропустить".
На надпись в окне "Hе удаётся открыть файл" Shooter.ехе не срабатывает...
----------------------------------
2.3. При попытке удаления - опять окно "TExtMsgForm" с надписью "Total Commander" и текстом
"Файл "бла-бла-бла" не найден". Жмём "Пропустить":

TExtMsgForm|Total Commander|TButton|&Пропустить|W|&Пропустить>>Ошибка! Не удаётся прочитать.;|3|0D

И опять привязка только по классу|имени окна и по кнопке. Можно не сомневаться, что строка
"TExtMsgForm|Total Commander|TButton|&Пропустить.....|" встретится не один раз. То же самое
происходит при создании каталога с недопустимым именем (напр., "Shooter:"). Строка:

TExtMsgForm|Total Commander|TButton|OK|W|OK>>Каталог не создан. Неверное имя.;|3|0D

И опять в этом окне Shooter.ехе не фиксирует надпись "Ошибка! Каталог "бла-бла-бла" не
создан". А уж сочетание надписи "Total Commander" и кнопки "ОК" вообще, наверно, везде
понатыкано! Пришлось пока эти строки заремовать. Кстати, очень пондравилась энта возможность!
----------------------------------
2.4. Итог. В окнах типа "TExtMsgForm" надпись в окне не определяется.
Надо с этим что-то делать!!!
----------------------------------

3. Что-то у меня не получилось управлять прогой из командной строки с ключами
"/off" и "/on". Ключ "/toggle" отрабатывает нормально.

Добавлено: Сб фев 03, 2007 15:48
sergeich
2aLexx
Странно, у меня все ключи отрабатываются нормально...
Иногда только, когда редактируешь файл с настройками окон в выключенном состоянии программы, после сохранения, программа сама переходит в режим "включено", но иконку при этом показывает "выключено".

Добавлено: Сб фев 03, 2007 16:13
aLexx
По поводу ключей. Может, в скриптах надо какое-то время выждать?

Добавлено: Вс фев 04, 2007 19:32
Моторокер
aLexx писал(а):2.4. Итог. В окнах типа "TExtMsgForm" надпись в окне не определяется.
Надо с этим что-то делать!!!
Пока только OCR в готову приходит.
Либо напрямую сравнение картинок :)

Добавлено: Вс фев 04, 2007 20:46
sergeich
aLexx писал(а): #32770|Total Commander|Static|ВНИМАНИЕ: Если TotalCmd не появится из системного трея|W||3|0D

SM2BT.ехе не срабатывает. Теперь добавим точно такую же строку (т.е. две одинаковых).
SM2BT.ехе срабатывает безусловно.
У меня срабатывает с одной строкой.
#32770|Total Commander|Static|ВНИМАНИЕ: Если TotalCmd не появится из системного трея (рядом с часами) после нажатия Alt+Tab, |W||1|0D
Версия TC 6.56

Добавлено: Пн фев 05, 2007 17:05
Sam Dark
У GeNtlE сейчас проблемы с авторизацией. Оставляю от его лица:
1. Нашёл баг (или фишку?). Вот строка (других в файле "SM2BT.smb" просто нет Smile):

#32770|Total Commander|Static|ВНИМАНИЕ: Если TotalCmd не появится из системного трея|W||3|0D

SM2BT.ехе не срабатывает. Теперь добавим точно такую же строку (т.е. Две одинаковых).
SM2BT.ехе срабатывает безусловно.
Вроде этот косяк я убирал, но всё может быть... Посмотрю.
2. Создал на диске каталоги с файлами. Полное имя файлов с путями более 260 символов.
Ясно-понятно, что всё упадёт... Исправим :)
[/quote]
#32770|Файл не найден!|Static|*|W||3|0D

Но в этом случае пузырь не появляется - писать-то нечего!
А вот как добиться вывода имени файла в пузырь?
Должно выводиться имя файла в пузырь... Хотя... ничего он никому не должен. :) Видимо, он находит окно с картинкой (Warning) - его класс тоже имеет имя Static. Исправим. А вот если точку поставить, он найдёт именно окно с текстом.
2.2. При попытке упаковки - Окно класса "TExtMsgForm" с заголовком "ZIP", надписью в окне
"Hе удаётся открыть файл для чтения" и именем файла.
Жмём "Пропустить":

TExtMsgForm|ZIP|TButton|&Пропустить|W|&Пропустить>>Hе удаётся открыть файл.;|3|0D

Замена строк "&Пропустить>>Hе удаётся открыть файл.;" необходима для информативности.
Одно мне не нравится: привязка по "TExtMsgForm|ZIP" и по кнопке "TButton|&Пропустить".
На надпись в окне "Hе удаётся открыть файл" Shooter.ехе не срабатывает...
Что ж, я уже отвечал на этот вопрос, но сообщения куда-то улетели. Так вот, это окошко - обычная VCL форма и Гислер там использует компонент TLabel, который при компиляции не становится дочерним окном на форме, а лишь перерисовывается на форме при её обновлении. Уже нащупываются пути решения этой проблемы.
. Что-то у меня не получилось управлять прогой из командной строки с ключами
"/off" и "/on". Ключ "/toggle" отрабатывает нормально.
Там ещё ключи "+" и "-" есть. Они работают? Тоже гляну. А просто из командной строки работают, не из скриптов?
когда редактируешь файл с настройками окон в выключенном состоянии программы, после сохранения, программа сама переходит в режим "включено", но иконку при этом показывает "выключено".
Тупо прибивает потоки и запускает их заново. Исправлю.
Пока только OCR в готову приходит. Либо напрямую сравнение картинок
Гы. И включить в дистрибутив FineReader! Не... надо функции перехватывать.

Добавлено: Пн фев 05, 2007 23:58
sergeich
Так вот, это окошко - обычная VCL форма и Гислер там использует компонент TLabel, который при компиляции не становится дочерним окном на форме, а лишь перерисовывается на форме при её обновлении. Уже нащупываются пути решения этой проблемы.
Это очень радует :-), ведь много окон используют этот метод.