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 

Иконки пользовательских команд в главном меню
Goto page Previous  1, 2, 3, 4
 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
ApceH



Joined: 08 Apr 2011
Posts: 316
Location: Димитровград

Post (Separately) Posted: Wed Sep 07, 2011 22:51    Post subject: Reply with quote

вот мои все нужные файлы
Проверил сейчас, что будет при добавлении очередной подобной команды.
Удивительно, но она нормально продолжила нумерацию со следующего номера (у меня 10021)...
Почему первая команда с "cd ..." стоит особняком? Похоже баг в ТС.

Проверил ещё: порядок пунктов в usercmd.ini не влияет.

===============
Ещё заметил особенность (баг), вроде бы не слышал об этом нигде.
Когда назначаешь иконки для меню Запуск (номера 700 и 701+), игнорируются пункты, в которых используются em-команды... Я так понимаю, эта особенность сложилась исторически — не для em-команд создан Запуск. Но раз уж сейчас их можно туда поместить, то и в нумерации они должны участвовать наравне с остальными.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 10, 2011 03:04    Post subject: Reply with quote

Не до конца понял твою проблему, всё работает, команды вообще не влияют на значок
mnu
Code:
POPUP "&Файл"
    MENUITEM "-------------------------------", em_GoToVirtualPanel
    POPUP "Запуск программ с приоритетом"
        MENUITEM "-------Низким", em_Start_Low
        MENUITEM "-------Ниже среднего", em_Start_Below
        MENUITEM "-------Выше среднего", em_Start_AboveNormal
        MENUITEM "-------Высоким", em_Start_High
        MENUITEM "-------Реального времени", em_Start_RealTime
    END_POPUP
END_POPUP


inc
Code:
// mappings internal command -> icon index;
[mappings];

10000=200
10001=0
10002=1
10003=2
10004=3
10005=4


все значки встают ровно?

если значок не отображается, либо его нет в библиотеке или ошибка, связанная с невнимательностью
Если я что-то недопонял в вопросе - поясни
Back to top
View user's profile Send private message
ApceH



Joined: 08 Apr 2011
Posts: 316
Location: Димитровград

Post (Separately) Posted: Sat Sep 10, 2011 15:47    Post subject: Reply with quote

Andrey_A
Very Happy Очень умно поместить em_GoToVirtualPanel первым пунктом! А помести последним Wink
Code:
10000=0
10001=1
10002=2
10003=3
10004=4
10005=200

Что получим?
А баг меню Запуск подтверждаешь?
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 10, 2011 16:01    Post subject: Reply with quote

Мне всё равно куда ставить команду. У меня всё отображается



или я опять чего-то недопонял?


==========================================
Дописываю
Во первых ты послал не все файлы
Мне пришлось копировать
TOTALCMD.EXE
TOTALCMD.INC
и
в папку Language
Wcmd_Rus.lng
переименовать меню в Wcmd_rus.mnu
после этого запустилось

Может у тебя тоже не хватает каких-то файлов?


Last edited by Andrey_A on Sat Sep 10, 2011 16:19; edited 1 time in total
Back to top
View user's profile Send private message
ApceH



Joined: 08 Apr 2011
Posts: 316
Location: Димитровград

Post (Separately) Posted: Sat Sep 10, 2011 16:19    Post subject: Reply with quote

Ну, во-первых, на твоём скрине неправильная иконка для "Перейти во Временную папку".
Во-вторых, вот в твоём посте указано отличное меню для эксперимента. Только перемести "MENUITEM "-------------------------------", em_GoToVirtualPanel" куда-нибудь ниже, и внеси ожидаемые изменения в INC, как я пишу в следующем посте. И получишь неправильное назначение иконки.
То есть "MENUITEM "-------Низким", em_Start_Low" не получит иконку, присвоенную в INC под номером 10000.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 10, 2011 16:26    Post subject: Reply with quote

если переместить
"MENUITEM "-------------------------------", em_GoToVirtualPanel"
ниже
"MENUITEM "-------Низким", em_Start_Low"

то иконка у em_GoToVirtualPanel" никак не будет 10000,
она будет 10001

при меремещении
10000=иконка для em_Start_Low
10001=иконка для em_GoToVirtualPanel
Back to top
View user's profile Send private message
ApceH



Joined: 08 Apr 2011
Posts: 316
Location: Димитровград

Post (Separately) Posted: Sat Sep 10, 2011 18:11    Post subject: Reply with quote

Andrey_A
Скачай снова мои файлики (500 КиБ).
И обрати внимание, что команде em_GoToVirtualPanel присвоен номер 10000, хотя пункт с ней не то что первый, а вообще в четвёртом подменю!
Баг проявляется только тогда, когда в em-команде "cd ...". И проявляется только на первый такой em-пункт.
Кстати, на то что это именно баг ТС, указывает и то, что в Ultra TC Editors иконки съезжают, потому что тот ожидает, что 10000 получит действительно первый встреченный em-пункт.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 10, 2011 18:46    Post subject: Reply with quote

ты просто перепутал порядок, вот как надо
Code:
begin 644 WCMICONS.ZIP
M4$L#!!0``@`(`)V5*C^U.!JF$@0``$(*```,````5T--24-/3E,N24Y#155+
M;ATW$%Q;@.XP!TC@:3:_,)B+!%D(MA$(B&3#R2(WS#6$P`*,E^@]65X&2%+5
MW3.SJAJRV2QVDS6O7R]W-Q\_WM[__.MR>__;^T_W-[\L;S_<W=W<OUN^_V&Y
M??OA'A/OWO_^YOKJQRWT)WS4,5.]OFKK+.GZ2M9U)B'*5$*:F:#3)O-,AC6P
M.8I,,4Q3N$H0SF6"^`),,@W2K`2=G9!G(Y0Y`+I.68$A1T)/"CW)]237DUQ/
M"CTI]*30DT)/"CTI]*30DUQ/<CW)]237DUQ/"CTI]*30HZ%'78^Z'G4]&GIT
M+3/9;(UOUZ6A2T.7ABX-7>JZU'6IZU+7I:Y+0U=N;6HF]L#AV-=`"4R!.DLE
MYO@N@34P\O7(UR/?B'PC\HW(-R+/B#PC\HS(,_H40\]34#<AR,R-B#1*1)I.
MQ+8K$>&,8Z4:!U"JPD"4JC"/^#Y%^JR<1\ET$-$(^];XSO%=IC!A:C,;]A@?
M,Z,5!?7,S*_(0V&:9J]$Y"G$'%ABOL9WF\W61[Z\3H.0DT-.#CDYY!24@>D+
MST?4V3A?QFP\5EUG93VJS,KQBJO`^*JS,KYFK+=`G*M2""ZF<$5#1JQX4YK:
M`$BVD2JXNHB\OAIH0JY$W+M&Q+WKQ#)K(M99E8C[.H@H<N9*V`(:YOZ0)_<%
M*18,4BT;2+,8>[6XX<6(6D/Q?L5."H**5B-HB<6@ETX2]'4CLHV@CK8*?6UN
M`'66U4BSJP/2-S)B%9OJ)$<PVA<$RRTA&ABD!T$+?2\T+4;R1K9-<]M(=T)O
MD^X,9^YB#/7U(;2@FP/Q'G;WI.IR!0>0;CZ$FEIM<C0H59#&J8':6/:!VO`!
M@]!$U!CNJAC)LUOA84\RNUD/.A"DS6X>A6YR.Z7'5[,A!!NARS:S'(PT<QLL
M;^8^:&`1(WF;*CYE'NB>E#:B&_'[KK3"(#4(+T(R@BU\!+T5(]LJV5;)MHJG
MMAA6V8D:@<?P3HK=TT*#H4\7.DP0W4C>2-E(W4C;2#>"Y_/E='XZ?5G^?GSZ
M=_GCX?+MZXD_2>]/6^75?#6&!;[\LUR>SU]?SLOE\?GQ\NWEX:_E<G[^[_/Y
M]-WRY_EE.3V<EJ>'S^=X2/R#K*M3F:,[2SO3G>6=E9U5//NZ.,?]D4C4#SKP
M@QA&\?"W4?KI1M-!]8C-QV@Y:#UH.V*QVW`S$.PV?!075,('V*P1%+LUCV7#
MFCL&WT7+3K%;<T/!R]@JP[?!&TF*W5HDPV[-=^-_,`Q)^0(]&=Q;5J\4#%QB
M,.^,C]"SP@=VVK;JP@HVQG.Y5MA"#&8>R]?`WV5X4KB%##]`WCN6:<]!ZSX(
M6UW#1-FP&,56XH<J^U;EZ%<Y^E7TH$>_"O8:07FJR,#-_`1E/Q9^,]&MNF]5
M_1+^#U!+`0(4`!0``@`(`)V5*C^U.!JF$@0``$(*```,````````````(```
G``````!70TU)0T].4RY)3D-02P4&``````$``0`Z````/`0`````
`
end
sum -r/size 13369/1164
Back to top
View user's profile Send private message
ApceH



Joined: 08 Apr 2011
Posts: 316
Location: Димитровград

Post (Separately) Posted: Sat Sep 10, 2011 20:13    Post subject: Reply with quote

Так-так, вот где собака зарылась!
Сейчас решил убрать из TWinKey из автозапуска строчку "em_GoToVirtualPanel|cm_GotoPreviousDir", и действительно, нумерация пунктов меню стала нормальной, как у тебя и получалась.
Получается, автозапуск (по крайней мере через TWinKey) влияет на меню, если использовать em-команды! Сейчас отпишем автору, что скажет...
Ну вполне логично так-то. Em-команды нумеруются вообще при первом упоминании. Порядок обхода мне не известен (наверняка бета-тестеры знают этот нюанс), но очевидно одно: подгрузка wdx-плагинов, а значит и автозапуск TWinKey, происходят ДО обработки меню. Потому-то em_GoToVirtualPanel законно получил номер 10000.
Причем нет смысла создавать дополнительную команду вроде em_GoToVirtualPanel_Menu для использования только в меню, потому что номер 10000 всё равно оттяпает em_GoToVirtualPanel.
Ну что ж. Особенность поведения ТС отмечена, хорошее дополнение к теме.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 10, 2011 22:57    Post subject: Reply with quote

Quote:
Получается, автозапуск (по крайней мере через TWinKey) влияет на меню


ApceH, я не думаю, что TWinKey влияет на меню, хотя у меня с этим плагином не складывается ... но за 2,5 года я не заметил связи влияния на меню... всё дела в правильной расстановки значков
Back to top
View user's profile Send private message
ApceH



Joined: 08 Apr 2011
Posts: 316
Location: Димитровград

Post (Separately) Posted: Sat Sep 10, 2011 23:07    Post subject: Reply with quote

Andrey_A
Да нет! Всё уже понятно, причина выяснена. TWinKey (да и наверняка Autorun) при вызове em-команды заставит ТС пронумеровать её ДО начала нумерации меню... То есть если написать в автозапуске штук 5 em-команд, то нумерация в меню начнётся с 10005 вообще!
Просто теперь мы знаем этот нюанс. Хотя вряд ли кто-то ещё с этим столкнётся Laughing
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 10, 2011 23:10    Post subject: Reply with quote

A.... я просто em команды автозапуск не ставил, ну и не буду
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Sat Nov 17, 2012 16:34    Post subject: Reply with quote

Вопрос следующий.
Влияет ли размер или содержимое файла Wcmicons.dll на быстродействие Тотала?
Для главного меню нужны только иконки 16х16, для панелей инструментов - нужны разные размеры начиная от 48х48 и ниже, сами иконки при этом такие же самые.
Как поступить более оптимально в плане скорости работы - запихнуть все иконки в единый файл Wcmicons.dll или же создать файл Wcmicons.dll с иконками только 16х16, а для панелей создать отдельный icl-файл со всеми необходимыми размерами иконок?
Back to top
View user's profile Send private message
Hedin



Joined: 25 Sep 2019
Posts: 12

Post (Separately) Posted: Sat Dec 07, 2019 13:08    Post subject: Reply with quote

Если у кого-то не получается найти причину, почему иконки идут не в том порядке, как задумано, то бывает и так.
У меня было, что мистическим образом (я думал глюк или особенность Total Commander) в меню "Справка" после определённого пункта (примерно пункт Горячие клавиши) и/или разделителя рядом с ним у меня иконки начинали идти как-то не так, постоянно приходилось колдовать, вручную устанавливать номера иконок после этого пункта. Происходило это каждый раз при правке меню, добавлении/удалении своих иконок, пунктов, я уж думал, что так и буду мучиться, пока не нашёл причину. Причина оказалась в следующем - в .mnu файле стояла повторяющаяся команда. И стояла она как раз в том месте, где был тот пункт меню, после которого шла магия. А дубль этой команды у меня был в меню "Команды". Удалив одну из повторяющихся команд, пункты меню "Справка" выстроились правильно.

А ещё может быть так. TC выдаёт ошибку, что файл .mnu составлен неправильно, если у каждого пункта меню нет своей команды. Я думал, что если поставить в .mnu файле команды-заглушки с именами "em_", то это прокатит, но... Какое-то время на фоне остальных ошибок, это толи компенсировалось чем-то, толи не влияло. Но, когда я стал исправлять все ошибки, то оказалось, что и это непрвильно. Правильно, чтобы команды называлиь по разному, т.е. em_1, em_2, em_3... А самих команд кстати может и не быть в .ini файлах с командами, т.е. можно указывать несуществующие команды, главное, чтобы они не повторялись. Когда у меня ещё не было иконок, у меня было несколько команд-заглушек "em_" в .mnu файле и всё было нормально, пункты меню шли как надо, TC не выдавал ошибку. Но, когда начал выставлять иконки, то обнаружилась такая особенность. Так что в файле .mnu пришлось прибраться и очень основательно.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10257
Location: Россия, Саратов

Post (Separately) Posted: Sun Dec 08, 2019 09:45    Post subject: Reply with quote

Hedin
Раз уж вы зачем-то решили поднять эту старинную тему, следует кое-что уточнить. Значки пользовательских команд после правки главного меню могут оказаться другими, потому что коды таких команд жёстко определяются порядком их следования в нём. Изменение этого порядка вручную (добавление, удаление, перестановка) приведёт к изменению кодов команд ниже места правки, а значит и перемещению сопоставленных прежним кодам значков в другие пункты. Это давно известно и прямым текстом сказано на первой же странице темы. Первая ваша проблема — отсюда же, вторая на самом деле не имеет к значкам отношения. Дублирование em-команды в меню само по себе отображению значков не мешает, если правильно прописывать вручную соответствия. (Хотя в норме никакие дубли там просто не нужны.) А одноимённых em-команд в totalcmd.inc быть вообще не должно безотносительно к значкам. (Через диалог "Выбор команды" вы их и создать не сможете.)

И пользуюсь случаем заметить, что цивилизованная правка главного меню с корректным автоматическим переназначением значков пользовательским командам, не требующим никаких дополнительных усилий, организована в Main Menu Editor из пакета Ultra TC Editors 6.40 и выше, если все изменения меню совершаются в самой программе. Кстати, там особо отмечаются команды, уже имеющиеся в меню, что снижает вероятность добавить их туда по второму разу. И дубли юзер-команд вы там при всём желании не создадите, будет автопереименование по счётчику. И даже коды входящих в меню пользовательских команд (для INC-файла) после некоторого изменения настроек отображать можно. Читайте русскую справку пакета, там всё написано.

Кстати, заодно уж: высказаное когда-то на этой же странице мнение, что автозапуск какой-то em-команды через специальный WDX-плагин якобы сбивает коды содержащихся в меню юзер-команд, практикой не подтверждается. (С помощью TWinKey и Main Menu Editor это проверяется элементарно.)
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4
Page 4 of 4

 
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