[devel] IconPaths
Igor Vlasenko
=?iso-8859-1?q?vlasenko_=CE=C1_imath=2Ekiev=2Eua?=
Вс Дек 3 18:42:56 MSK 2006
On Sat, 2 Dec 2006, Evgenii Terechkov wrote:
>> Я такое наблюдал в icewm.
>С ним в этих местах не всё в порядке. А именно: какой бы размер иконок меню
>не задавался (а я так понимаю, за это отвечает опция MenuIconSize), в меню
>всё равно записывается путь к ПЕРВОЙ найденной иконке, что не есть гуд.
>Хочется, чтобы был путь к первой найденной иконке подходящего размера.
>Можно ли это сделать (и как) с помощью menu-methods, я не знаю (Ау! Спецы
>по menu-methods, нужна ваша помощь.).
a) жестко пробитые пути к пиктограммам в меню.
Да, согласен, это не есть хорошо, более того,
при этом по сути игнорируется список путей к пиктограммам
из настройки IceWM.
Соответственно, чтобы отключить, используйте для генерации путей
следующую простую функцию в /etc/menu-methods/icewm
function findicon($filename, $defaulticon)= \
ifeqelse($filename, "", $defaulticon, $filename)
вместо, например, (icewm-1.2.25-alt0.M30.1):
function findicon($filename, $defaulticon)= \
ifeqelse($filename, "", $defaulticon, \
ifelsefile($filename, $filename, \
ifelsefile("/usr/share/icons/mini/" $filename,
"/usr/share/icons/mini/" $filename, \
...
ifelsefile("/usr/share/icons/slick/16x16/apps/" $filename,
"/usr/share/icons/slick/16x16/apps/" $filename, $defaulticon))))))))\
При этом, естественно, надо выброшенные пути
аккуратно перенести в icewm/preferences:IconPath=...
б) Пожелание (FR) в /etc/menu-methods/icewm брать
название пиктограмм в кавычки
(патч к /etc/menu-methods/icewm прилагаю),
поскольку иначе какой-нибудь "Must Die.xpm"
(добавленный Wine, например)
запросто может угробить у icewm меню.
--
Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine
----------- следующая часть -----------
17,20c17,20
< x11= " prog \"" translate(lang(), title()) "\" " findicon($icon, "-") " " $command"\n"
< text= " prog \"" translate(lang(), title()) "\" " findicon($icon, "-") " " term() "\n"
< wm= " restart \"" translate(lang(), title()) "\" " findicon($icon, "-") " " $command"\n"
< icewm=" prog \"" translate(lang(), title()) "\" " findicon($icon, "-") " " $command"\n"
---
> x11= " prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " $command"\n"
> text= " prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " term() "\n"
> wm= " restart \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " $command"\n"
> icewm=" prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " $command"\n"
23c23
< startmenu=ifneq($title,"ALT Linux menu",ifroot("menu \"" translate(lang(), $title) "\" " findicon($icon, "default_section.xpm") " {\n","menu \"" translate(lang(),$title) "\" " findicon($icon, "default_section.xpm") " {\n"))
---
> startmenu=ifneq($title,"ALT Linux menu",ifroot("menu \"" translate(lang(), $title) "\" \"" findicon($icon, "default_section.xpm") "\" {\n","menu \"" translate(lang(),$title) "\" \"" findicon($icon, "default_section.xpm") "\" {\n"))
----------- следующая часть -----------
#!/usr/sbin/install-menu
compat="menu-1"
!include menu.h
function findicon($filename, $defaulticon)= \
ifeqelse($filename, "", $defaulticon, $filename)
supported
x11= " prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " $command"\n"
text= " prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " term() "\n"
wm= " restart \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " $command"\n"
icewm=" prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\" " $command"\n"
endsupported
startmenu=ifneq($title,"ALT Linux menu",ifroot("menu \"" translate(lang(), $title) "\" \"" findicon($icon, "default_section.xpm") "\" {\n","menu \"" translate(lang(),$title) "\" \"" findicon($icon, "default_section.xpm") "\" {\n"))
endmenu=ifneq($title,"ALT Linux menu","}\n")
genmenu="menu"
submenutitle=""
#submenutitle=" menu \"" $title "\" folder {\n"
preoutput="prog \"XTerm\" xterm /usr/X11R6/bin/xterm\n"
rootprefix="/usr/X11R6/lib/X11/icewm/"
mainmenutitle="ALT Linux menu"
treewalk="(M)"
userprefix=".icewm"
Подробная информация о списке рассылки Devel