Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое
Goto page Previous  1, 2, 3 ... 121, 122, 123 ... 128, 129, 130  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Jan 11, 2017 01:10    Post subject: Reply with quote

Блин, 1050700 - это значение дескриптора окна, которое у меня существовало на момент теста, это не более, чем пример. Smile

В Readme написано, что дескриптор надо передавать в lParam, остальное - дело техники.

У меня, когда фокус в панели, в заголовке появляется дескриптор панели, когда фокус в комстроке - дескриптор Edit-a в комбобоксе комстроки, на кнопке в диалоге - дескриптор этой кнопки...


До кучи выложу обновлённую TCFS2:

TCFS2 Build 550:
+ теперь файлов конфигурации два, TCFS2.ini и TCFS2.Core.ini
+ findwnd умеет пропускать невидимые окна

Смысл двух конфигов в том, что TCFS2.Core.ini не надо синхронизировать при обновлении TCFS2, можно просто заменять (желательно все стандартные функции из TCFS2.ini убрать, они будут браться из TCFS2.Core.ini). Надеюсь, такая схема не сильно замедлит работу. Smile

Ну а поиск активного диалогового окна теперь выглядит так:
Code:
TCFS2 /ef delay(2000) /ei "settext(`window: ` findwnd(,,,,2))"

_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jan 11, 2017 01:38    Post subject: Reply with quote

Я понял, что дескриптор. Но ты предлагаешь как твой код тестировать с неведомым дескриптором?

MVV wrote:
+ findwnd умеет пропускать невидимые окна
Вот этого и касалось. >
Flasher wrote:
Правда, хотелось, чтобы определение активного окна/контрола было в самой TCFS2.



Да, с ini-файлами теперь заморочек больше. Получается, нужно все одноимённые команды переименовывать и переписывать 100500 кнопок и юзеркоманд! Shocked Shocked Shocked

MVV wrote:
Ну а поиск активного диалогового окна теперь выглядит так:
Подставляю tcm(4003)/tcm(2912)/tcm(905) - тихо. Confused
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Jan 11, 2017 01:49    Post subject: Reply with quote

Quote:
Но ты предлагаешь как твой код тестировать с неведомым дескриптором?

Нет, тебе показалось. Я предлагаю прописать в пример ведомый дескриптор. Very Happy

Quote:
Вот этого и касалось.

Поиск окон возможен напрямую из TCFS2, поэтому он там и сделан, а получение фокуса - нет.

Quote:
Да, с ini-файлами теперь заморочек больше. Получается, нужно все одноимённые команды переименовывать и переписывать 100500 кнопок и юзеркоманд.

Не врублюсь, зачем переименовывать и переписывать? Если ты патчил стандартные, будут вызываться твои патченые.
Можешь тупо оставить всё как есть, TCFS2 не обидится, что файла TCFS2.Core.ini нет.
А можешь один раз убрать из TCFS2.ini команды, которые есть в TCFS2.Core.ini, и больше не париться при обновлениях TCFS2, просто перезаписывая библиотеку TCFS2.Core.ini.

Quote:
Подставляю tcm(4003)/tcm(2912)/tcm(905) - тихо.

А должно быть громко?
После выполнения первой или второй активным окном остаётся окно тотала, после запуска примера в заголовке главного окна отображается его же дескриптор. А после выполнения третьей пример уже отображает дескриптор диалога копирования.

Вот чуть более наглядный (и весёлый) пример, при запуске меняет заголовок найденного активного окна:
Quote:
TCFS2 /ef delay(2000) /ei "settext(`i am active!`, findwnd(,,,,2))"

После нескольких запусков имею такую картину:

_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jan 11, 2017 02:14    Post subject: Reply with quote

MVV wrote:
Нет, тебе показалось. Я предлагаю прописать в пример ведомый дескриптор.
Что-то не наблюдаю. Такие примеры только с толку сбивают. Если лень писать tcm, то пиши хотя бы схематично с [<>].

MVV wrote:
Если ты патчил стандартные, будут вызываться твои патченые.
Так TCFS2.ini остаётся в приоритете? Тогда ОК.
MVV wrote:
Можешь тупо оставить всё как есть, TCFS2 не обидится, что файла TCFS2.Core.ini нет.
Вот с этого надо было начинать. Smile И в ReadMe очень не помешало бы.
MVV wrote:
А можешь один раз убрать из TCFS2.ini команды, которые есть в TCFS2.Core.ini, и больше не париться при обновлениях TCFS2, просто перезаписывая библиотеку TCFS2.Core.ini.
Так одноимёнки патченные всё равно останутся, пока все вызовы с ними не поправлю. Получается, в одном ini будет лишнее.

MVV wrote:
А должно быть громко?
А, я не туда смотрю. В ТС-то у меня заголовок скрыт. Сейчас увидел. А вот при tcm(905,1) меняется у главного окна почему-то. Confused

 После нескольких запусков имею такую картину:

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Jan 11, 2017 11:25    Post subject: Reply with quote

Quote:
Так TCFS2.ini остаётся в приоритете? Тогда ОК.

Flasher wrote:
Вот с этого надо было начинать. Smile И в ReadMe очень не помешало бы.

Ну RTFM же. Very Happy
Quote:
Так одноимёнки патченные всё равно останутся, пока все вызовы с ними не поправлю. Получается, в одном ini будет лишнее.

Если много чего менял, то конечно оставляй в пользовательском конфиге. Хотя это усложняет обмен командами с другими.

Quote:
А вот при tcm(905,1) меняется у главного окна почему-то.

Опять у тебя всё не так. Smile У меня почему-то работает правильно, заголовок меняется у правильного окна:
Code:
TCFS2 /ef tcm(905,1) delay(2000) /ei "settext(`i am active!`, findwnd(,,,,2))"

Возможно, дело в том, что сообщение посылается в другом потоке. Можно попробовать использовать GetGUIThreadInfo вместо GetFocus, но не факт, что это что-то даст.

Quote:
У меня браузер (без AdBlock) воспринимает этот хост как рекламное содержимое.

Странный у тебя браузер, прямую ссылку на картинку произвольного размера воспринимать как рекламу (хотя, возможно, это из-за ad- в имени хоста).
Выкладывал я на rgho.st, других хостов и не знаю, в которых можно давать прямые ссылки на картинки, а не на промежуточные страницы с кучей рекламы.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jan 11, 2017 11:47    Post subject: Reply with quote

MVV wrote:
Ну RTFM же.
Смотрел. Там вроде про удаление не написано.

MVV wrote:
Хотя это усложняет обмен командами с другими.
Так это давно надо было делать, когда команд толком не накопилось. Даже после запроса прошло с полгода.

MVV wrote:
Опять у тебя всё не так.
Так это не у меня не так, это у тебя не так. Smile Я то твой пример тестирую. Там ты запятую не поставил, а сейчас поставил. Теперь работает.

MVV wrote:
Выкладывал я на rgho.st
meson.ad-l.ink - это rgho.st? Зашибись. Ещё и ad-file.com до кучи...
MVV wrote:
других хостов и не знаю, в которых можно давать прямые ссылки на картинки, а не на промежуточные страницы с кучей рекламы.
С любого хоста можно брать прямую страницу (пусть и не всегда сервисно), не выдумывай. Я пользуюсь redload.ru (см. нижние 2 поля после загрузки). На savepic.ru тоже есть, да полно вариантов.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Jan 11, 2017 12:09    Post subject: Reply with quote

Quote:
Смотрел. Там вроде про удаление не написано.

Но и про то, что без него всё сломается, тоже не написано. Smile
Quote:
Так это давно надо было делать, когда команд толком не накопилось. Даже после запроса прошло с полгода.

Я даже отвечал на тот запрос. Но созревал долго (хоть и парюсь при синхронизации, т.к. тотал до сих пор не научился хранить бэкапы во временной папке и не даёт нормально синхронизировать файл в защищённой от записи папке), а так, конечно, такую штуку куда удобнее делать на ранних этапах.
Если заметишь, что быстродействие упало - дай знать, самому интересно, будет ли видна разница. Это в случае, если решишься поубирать дубли из пользовательского конфига. Smile

Quote:
meson.ad-l.ink - это rgho.st? Зашибись. Ещё и ad-file.com до кучи...

Да, rghost.ru сильно изменился с тех пор, как был переименован...
Quote:
С любого хоста можно брать прямую страницу (пусть и не всегда сервисно), не выдумывай. Я пользуюсь redload.ru (см. нижние 2 поля после загрузки).

Прямые ссылки можно получить далеко не всегда, многие хостинги хотят денег и/или славы и выдают динамические ссылки, которые валидны очень ограниченное время (порой и с ограничением по адресу).
А как долго твой redload.ru хранит картинки? На сайте об этом ни слова...
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jan 11, 2017 12:20    Post subject: Reply with quote

MVV wrote:
Если заметишь, что быстродействие упало - дай знать, самому интересно, будет ли видна разница. Это в случае, если решишься поубирать дубли из пользовательского конфига.
Дубли скорее уберу. Прекрасно осознаю общественную пользу, просто пришла она несвоевременно. И тестирование скорее будет небыстрым. По ходу вызова разных команд в разные дни придёт понимание, т.ч. с получением результатов явная неопределёнка, к тому же восприятие сотых секунды - дело тонкое.

 Про обменники:

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Jan 11, 2017 13:59    Post subject: Reply with quote

Quote:
с получением результатов явная неопределёнка, к тому же восприятие сотых секунды - дело тонкое

Меня вполне устроит, если с виду ничего не изменится. Главное, чтобы не было сильно ощутимого замедления (но оно скорее всего будет заметно только при организации сильно плотных циклов).

А про обменник - убедил, спасибо.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Jan 12, 2017 12:38    Post subject: Reply with quote

Так что, поиск активного окна после tcm(905,1) все-таки не срабатывает? Как это воспроизвести?
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2563

Post (Separately) Posted: Thu Jan 12, 2017 13:25    Post subject: Reply with quote

MVV

У меня срабатывает.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Jan 12, 2017 13:31    Post subject: Reply with quote

MVV
Внимательней перечитай серёдку поста.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Jan 12, 2017 14:21    Post subject: Reply with quote

Flasher wrote:
Внимательней перечитай серёдку поста.

Мог бы и более дружественно сказать, если я что-то пропустил.
И у меня всё так, внимательнее вглядись в команды. В первом случае я вывожу дескриптор активного диалога в шапке главного окна, а во втором (который я назвал более наглядным и весёлым) - пишу "i am active!" в шапке активного диалога. Smile

В общем, главное, что работает.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Jan 12, 2017 14:25    Post subject: Reply with quote

Перед тестами человек вглядывается не в команды, а в описание:
MVV wrote:
Ну а поиск активного диалогового окна теперь выглядит так:
Связать это с какой-то шапкой весьма затруднительно. Smile

P.S.: Серёдка дружественней, чем середина. Wink

MVV wrote:
В общем, главное, что работает.
Это точно.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Jan 12, 2017 17:06    Post subject: Reply with quote

В том примере главное было - показать findwnd(,,,,2), а во что завернуть - дело вкуса, можно отображать в шапке тотала (для отладки очень удобно писать в шапку тотала через settext), можно ещё что-то делать с дескриптором. Smile
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 121, 122, 123 ... 128, 129, 130  Next
Page 122 of 130

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group