motofan logo
       
> 

Ассоциация своих иконок на свои типы файлов, Теперь иконки берутся из файлов, не нужен iconres

BeZ
сообщение 28.1.2009, 8:34


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Ну вот наконец то это свершилось!!!
Сейчас я расскажу как произвести либо замену иконок для стандартных типов файлов, либо вообще для своих типов файлов.

Долго ковырявшись в либах, я и Абрам, нашли способ подмены иконок.
Что для этого нужно?
А для этого нужно скачать
На флешке создать папку /mmc/mmca1/bin
Распаковать туда содержимое архива.

Файл pe_extensions.cfg скопировать в папку /ezxlocal/download/appwrite/setup/
далее зайти по телнету на телефон.
выполнить следующую команду
sh /mmc/mmca1/bin/changeicons.sh
Произойдет перезапуск интерфейса телефона, после чего в стандартном диспетчере файлов будут отображаться иконки для
типов файлов из pe_extensions.cfg, если расширения в конфиге не найдется, то отобразиться дефолтная иконка "перечеркнутый красный кружок" (msg_unsupport_file_type_small.gif)

содержимое файла changeicons.sh следующее, возможно прокатит только для PE
Код

insmod /mmc/mmca1/bin/mounts.ko
busybox killall -9 windowsserver
busybox killall -9 soundmanager
rm /tmp/audio*
export LD_PRELOAD=/mmc/mmca1/bin/libezxmystuff_mod.so
/etc/initservices/services/wins.sh > /dev/null 2>&1


для мода wktools не требуется выполнение следующей команды
insmod /mmc/mmca1/bin/mounts.ko
для zMod не знаю, надо делать insmod или нет, если там используется включение маунтов как в wktools, то не надо
для v8 cскорее сего нужна доработка скрипта

и так, формат файла pe_extensions.cfg
в файле 2 секции [thumb] и [small]
секция [thumb] отвечает за иконки в режиме "Картинки"
секция [small] отвечает за иконки в режиме "Список"

в каждой из секций пишется следующее
<ext> = <icon_from_iconres.ezx>, т.е. делается сопоставление расширения файла с названием иконки из iconres.ezx
пример
[thumb]
jar = fm_java_midlet_thb.gif

[small]
jar = fm_java_midlet_small.gif

Комментраии в pe_extensions.cfg ставить запрещается, так как тело не поймет тогда формата файла.
В связи с тем, что данный метод подменяет функцию загрузки иконки для файла, я написал свою функцию, которая по входящему имени файла вычисляет расширение и возвращает имя иконки из скина, найденное в конфиге.
Оригинальная функция по входящему имени файла также возвращает имя иконки из скина.
В связи с этим я постарался добавить в конфиг все стандартные расширения телефона, про какие не забыл, если что то забыл - извиняйте...

Для того, чтобы использовать свои иконки на свои расширения, не заменяя стандартных иконок в скине, надо добавить в iconres.ezx свои иконки (маленькую и большую) и назвать их например
fm_package_pep_small.png и fm_package_pep_thb.png
далее в конфиге произвести сопоставление

[thumb]
pep = fm_package_pep_thb.png

[small]
pep = fm_package_pep_small.png

если вы меняли iconres.ezx, то вам нужно его в телефон скопировать, а там дальше на ваше усмотрение, если меняли оригинальный iconres.ezx из /usr/data_resource/icon, то нужно либо пересобрать CG52, либо премеонтировать mount -o bin
если меняли из какого то другого скина, то просто заменить.... ну думаю всем и так понятно...

после этих изменений скорее всего надо опять перезагрузить интерфейс телефона вышеприведенным скриптом....

Как добавить свои иконки в iconres.ezx (автор Ant-On):

Цитата
Ant-ON, 28.01.2009 10:44:56:
1) берем программу MotoLinux Iconres Composer 1.1 Free (она даже в стандартный скин всё запихала):
http://www.rasputin007.co.uk/storage/other...poser%201.1.rar
весит 572 килобайта
2) Создаем где-нибудь папку
3) В неё закидываем иконки для добавления
4)Затем в проге Open Iconres и открываем файл куда добавлять иконки
5)Нажимаем Imort Data и выбираем созданную папку с иконками
6)Нажимаем Create Iconres и сохраняем под нужным именем
Всё. Я делал по такому алгоритму. У меня заработало:-)




Спасибо Ant-On за тестирование данного метода smile.gif

PS Жду от Вас плюсов )))) shades.gif +++

Добавлено позже (28.1.2009, 12:56):
забыл еще сказать, что тестировалось на прошивке 44R

Сообщение отредактировал BeZ - 3.2.2009, 15:18
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chacha_Ivanov
сообщение 28.1.2009, 10:59


Куртуазный Маньерист
******

Группа: Разработчики
Сообщений: 1 277
Регистрация: 30.10.2005
Из: Истра
Пользователь №: 56 473
Модель телефона: LG Sol, Moto EM35
Прошивка: Уникальная


Настроение:
помоги себе сам..



Рейтинг: 805



На zMod полет нормальный. smile.gif

Сообщение отредактировал Chacha_Ivanov - 28.1.2009, 11:04
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 28.1.2009, 11:04


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Chacha_Ivanov,
я хз, просто так в голову пришло ))) башка другим была занята, а именно, чтобы в мое функции было следующее, если расширения нет в конфиге, то выполнялась оригинальная функция. Это к тому, чтобы все подряд в конфиг не писать, а писат самое необходимое... Но пока что не получилось сделать так (((

mount либы как сделал?

Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chacha_Ivanov
сообщение 28.1.2009, 11:11


Куртуазный Маньерист
******

Группа: Разработчики
Сообщений: 1 277
Регистрация: 30.10.2005
Из: Истра
Пользователь №: 56 473
Модель телефона: LG Sol, Moto EM35
Прошивка: Уникальная


Настроение:
помоги себе сам..



Рейтинг: 805



Цитата(BeZ @ Сегодня, 14:04)

mount либы как сделал?
*


Пардон, я кажется ошибся.. У меня тут что-то невообразимое на телефоне творится biggrin.gif
Я правильно понимаю что эта либа libezxmystuff-base.so.1.0.0 или ты ее с нуля писал??

Сообщение отредактировал Chacha_Ivanov - 28.1.2009, 11:16
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 28.1.2009, 11:17


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Chacha_Ivanov,
почти, эту либу нужно оставить, ее заменять не надо,
просто в ней есть функция, которую мы подменяем из моей либы libezxmystuff_mod.so, в которой всего лишь одна функция.
Т.е. LDPRELOAD моей либы, и уже функция из оригинальной не берется, а берется из моей ))))

значит все же нужно интерфейс перегружать.....
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Abram
сообщение 28.1.2009, 11:33


Прелесть какая гадость
*******

Группа: Разработчики
Сообщений: 1 963
Регистрация: 24.6.2005
Из: .ru - рідна Україна
Пользователь №: 44 825
Модель телефона: Moto G XT1033
Прошивка: CyanogenMod
Победитель конкурса 2008

Рейтинг: 744



Алё, жлобы! Хоть бы + кто человеку за хорошее дело поставил.
Я уж не говорю о недавнем дне рожденья... ph34r.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chacha_Ivanov
сообщение 28.1.2009, 11:55


Куртуазный Маньерист
******

Группа: Разработчики
Сообщений: 1 277
Регистрация: 30.10.2005
Из: Истра
Пользователь №: 56 473
Модель телефона: LG Sol, Moto EM35
Прошивка: Уникальная


Настроение:
помоги себе сам..



Рейтинг: 805



BeZ,
у меня получилось без перезагрузки интерфейса сделать. clap.gif Смысл в том чтобы в SysRegistry в секции fm прописать свой скрипт запуска mystuff.
Вот как он у меня выглядит счас:
Код

#!/bin/sh
export LD_PRELOAD=/mmc/mmca1/bin/libezxmystuff_mod.so
/usr/SYSqtapp/mystuff/mystuff
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 28.1.2009, 12:27


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Цитата(Chacha_Ivanov @ Сегодня, 14:55)

Вот как он у меня выглядит счас:
*


покажи более полно, а то чот я перестал догонять после этой либы laugh.gif
ну или файл прилепи

если править sysregistry, то либо пересобирать cg52, либо mount -o bind ?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chacha_Ivanov
сообщение 28.1.2009, 12:35


Куртуазный Маньерист
******

Группа: Разработчики
Сообщений: 1 277
Регистрация: 30.10.2005
Из: Истра
Пользователь №: 56 473
Модель телефона: LG Sol, Moto EM35
Прошивка: Уникальная


Настроение:
помоги себе сам..



Рейтинг: 805



BeZ,
вот так заменяем секцию фм в SysRegistry, естественно СГ52 надо пересобирать для этого.
Код

[9faafa35-0688-4529-8310-04f215cb2d0c]
AniIcon = fm_ani.g
AppID = {9faafa35-0688-4529-8310-04f215cb2d0c}
Args =
Attribute = 1
BigIcon = fm_std.g
Daemon = 0
Directory = ../../usr/data_resource/zMod/script/
Exec = fm
FixedAllPosition = 0
FixedPosition = 0
GroupID = root
Icon =
LockEnabled = 0
MassStorageStatus = 1
Name = File Manager
Type = 2
UserID = root


Где Exec = fm это скрипт запуска с предварительной загрузкой этой либы

Код

#!/bin/sh
export LD_PRELOAD=/mmc/mmca1/bin/libezxmystuff_mod.so
/usr/SYSqtapp/mystuff/mystuff


Вот smile.gif

Сообщение отредактировал Chacha_Ivanov - 28.1.2009, 12:37
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 28.1.2009, 12:41


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Chacha_Ivanov,
ага, все понял...
ну чтоже, это отлично, vymit лишних действий laugh.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
sEVANS
сообщение 28.1.2009, 14:09


Муки ада
*****

Группа: Почётные мотофаны
Сообщений: 442
Регистрация: 12.2.2007
Из: Слюдянка/Иркутск
Пользователь №: 121 981
Модель телефона: Atrix
Прошивка: CyanogenMod9


Настроение:
♪ C Музыкой По Жизни ♫



Рейтинг: 650



BeZ, ну малаца...ну порадовал старика. =) Жаль плюс поставить не могу.


Сообщение отредактировал sEVANS - 28.1.2009, 15:34
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 28.1.2009, 14:21


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



sEVANS,
выкладывай в другую тему, специально для этого создал
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Abram
сообщение 28.1.2009, 23:46


Прелесть какая гадость
*******

Группа: Разработчики
Сообщений: 1 963
Регистрация: 24.6.2005
Из: .ru - рідна Україна
Пользователь №: 44 825
Модель телефона: Moto G XT1033
Прошивка: CyanogenMod
Победитель конкурса 2008

Рейтинг: 744



Chacha_Ivanov,
Гениально! Я что-то не допер и решил для этого CG36 пересобрать и там подставить biggrin.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
AlVik
сообщение 2.2.2009, 7:47


Новичок
*

Группа: Пользователи
Сообщений: 23
Регистрация: 11.12.2008
Из: Копыль
Пользователь №: 188 356
Модель телефона: Mpx200->Rokr Z6
Прошивка: PE3.1

Рейтинг: 0



Открываю iconres.ezx из скина Grass_Vista програмой MotoLinux Iconres Composer.
MotoLinux Iconres Composer не отвечает sad.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 2.2.2009, 8:01


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



AlVik,
кто здесь будет обсуждать как менять иконки через прграмму IconRes и другие, получит минусы....
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 3.2.2009, 15:17


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Ну? Кто хотел подгружать иконки из файлов, а не из скина????

качаем все

Что мы имеем на данный момент?
1. теперь нет необходимости указывать в конфиге все стандартные расширения для корректной работы, таким образом маленький размер конфига, оригинальные иконки возвращает оригинльная функция, а не моя...
2. достаточно указать только те расширения, которые желаете добавить или изменить....
3. теперь можно брать картинку из файла, а не из скина... т.е. если в имени картинки есть хотя бы один знак "/", то картинка берется из файла, иначе из скина....
пример, pep = /mmc/mmca1/bin/zzz.png
порядок загрузки либы остался прежним...

Таким образом вам достаточно подгрузить один раз либу
А дальше в конфиге указываете полный путь к файлам и при входе в стандартный диспетчер файлов у вас новые иконки... т.е. можно достаточно оперативно менять их, без пересборки iconres.ezx


Так же хочу выразить большую благодарность dimichxp за помошь в вызове оригинльных функций )))
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
roks
сообщение 4.2.2009, 7:31


Интересующийся
**

Группа: Пользователи
Сообщений: 71
Регистрация: 23.11.2005
Из: Джанкой
Пользователь №: 59 433
Модель телефона: g9 plus
Прошивка: Mix

Рейтинг: 63.5



BeZ, может тогда подумал бы как сделать, чтобы путь брал из переменной: указал раз при старте или в скрипте на запуск и забыл (если в настройках начинается на /file-добавлять путь из переменной). Ну и заодно может можно, чтобы не из iconres.ezx, а из iconres1.ezx, который кидать к основному в скин: каждый создал бы себе ресурс и не зависел от воли скинодела (привычка есть привычка).
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Abram
сообщение 4.2.2009, 7:46


Прелесть какая гадость
*******

Группа: Разработчики
Сообщений: 1 963
Регистрация: 24.6.2005
Из: .ru - рідна Україна
Пользователь №: 44 825
Модель телефона: Moto G XT1033
Прошивка: CyanogenMod
Победитель конкурса 2008

Рейтинг: 744



roks,
Зачем? Положил себе иконки куда-нибудь и подкинул ini-файл. В чем проблема?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 4.2.2009, 8:19


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



roks,
геморно все это....
про переменную пути я понял, но про /file я не понял...
с другим iconres я вообще морочиться не буду, потому что я и так переморочился с тем, что есть

Цитата(roks @ Сегодня, 10:31)

. Ну и заодно может можно, чтобы не из iconres.ezx, а из iconres1.ezx, который кидать к основному в скин: каждый создал бы себе ресурс и не зависел от воли скинодела (привычка есть привычка).
*


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

Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
roks
сообщение 4.2.2009, 9:01


Интересующийся
**

Группа: Пользователи
Сообщений: 71
Регистрация: 23.11.2005
Из: Джанкой
Пользователь №: 59 433
Модель телефона: g9 plus
Прошивка: Mix

Рейтинг: 63.5



BeZ, к /file добавляется путь из переменной (при
наличие /)
если остался вариант брать иконки из ресурса я имел
ввиду сделать возможность брать их совершенно из
другого, находящегося по той же переменной
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Abram
сообщение 4.2.2009, 9:49


Прелесть какая гадость
*******

Группа: Разработчики
Сообщений: 1 963
Регистрация: 24.6.2005
Из: .ru - рідна Україна
Пользователь №: 44 825
Модель телефона: Moto G XT1033
Прошивка: CyanogenMod
Победитель конкурса 2008

Рейтинг: 744



roks,
А ты не заметил часом, что на твой вопрос ответили уже постом выше?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 4.2.2009, 10:02


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



я так понял, что первый способ был всем по душе laugh.gif
а то какие то хотелки начали вырисовываться....


кароче как щас есть, так и будет
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Abram
сообщение 4.2.2009, 10:14


Прелесть какая гадость
*******

Группа: Разработчики
Сообщений: 1 963
Регистрация: 24.6.2005
Из: .ru - рідна Україна
Пользователь №: 44 825
Модель телефона: Moto G XT1033
Прошивка: CyanogenMod
Победитель конкурса 2008

Рейтинг: 744



BeZ,
Видимо, всем по душе было, когда вообще не было замены. wink.gif
Видимо, в следующий раз ничего не делай - авось не по душе кому-нибудь придется?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 4.2.2009, 10:35


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Abram,
видимо да
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
roks
сообщение 4.2.2009, 11:45


Интересующийся
**

Группа: Пользователи
Сообщений: 71
Регистрация: 23.11.2005
Из: Джанкой
Пользователь №: 59 433
Модель телефона: g9 plus
Прошивка: Mix

Рейтинг: 63.5



Abram, ты кто вообще такой? Птица-секретарь?
BeZ, не будет ну и флаг в руки, Абраму барабан на шею.
Найдется кто-то другой. На тебе свет клином не
сошелся
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZ
сообщение 4.2.2009, 11:50


Moto(sh)Coder
*******

Группа: Разработчики
Сообщений: 1 542
Регистрация: 8.10.2003
Пользователь №: 743
Модель телефона: только не moto

Рейтинг: 788.5



Цитата(roks @ Сегодня, 14:45)

Найдется кто-то другой. На тебе свет клином не
сошелся
*


да я и не против, можешь сам скомпилить, сорцы доступны ))))
я лишь сделал начинание

Сообщение отредактировал BeZ - 4.2.2009, 11:50
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ana®H
сообщение 6.2.2009, 15:53


Мастер
****

Группа: Пользователи
Сообщений: 299
Регистрация: 2.11.2007
Из: Украина, Черкасы
Пользователь №: 152 660
Модель телефона: ZN5, E8, K1, E770v
Прошивка: 0FR, 07R, 08R, 80R

Рейтинг: 75



Сори за тупость! На зн5 не запахало sad.gif И не будет или чет поменять будет??
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Chacha_Ivanov
сообщение 6.2.2009, 16:06


Куртуазный Маньерист
******

Группа: Разработчики
Сообщений: 1 277
Регистрация: 30.10.2005
Из: Истра
Пользователь №: 56 473
Модель телефона: LG Sol, Moto EM35
Прошивка: Уникальная


Настроение:
помоги себе сам..



Рейтинг: 805



Ana®H,
А с какого перепугу на зине это должно работать?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vermin
сообщение 24.2.2009, 2:42


Мастер
****

Группа: Пользователи
Сообщений: 192
Регистрация: 1.1.2006
Пользователь №: 64 122
Модель телефона: V635; V8
Прошивка: Своя; Basic Plus

Рейтинг: 26.5



Цитата
для v8 cскорее сего нужна доработка скрипта


А каким образом переделать подскажите?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
syberside
сообщение 5.7.2009, 19:41


Ветеран
*****

Группа: Пользователи
Сообщений: 422
Регистрация: 30.6.2008
Из: Новоуральск
Пользователь №: 176 082
Модель телефона: Motorola RAZR XT910
Прошивка: ICS 4.0.4


Настроение:
Теперь я с бритвой в кармане)))



Рейтинг: 47.5



подскажите плз, а можно ли это как нибудь изменив применить к zn5?

Сообщение отредактировал syberside - 5.7.2009, 19:46
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
sEVANS
сообщение 6.7.2009, 0:17


Муки ада
*****

Группа: Почётные мотофаны
Сообщений: 442
Регистрация: 12.2.2007
Из: Слюдянка/Иркутск
Пользователь №: 121 981
Модель телефона: Atrix
Прошивка: CyanogenMod9


Настроение:
♪ C Музыкой По Жизни ♫



Рейтинг: 650



syberside, Можно.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DDA-E398
сообщение 5.11.2011, 20:41


Ветеран
*****

Группа: Пользователи
Сообщений: 372
Регистрация: 12.3.2008
Из: Нижегородская обл.
Пользователь №: 166 356
Модель телефона: E2, A910, Е398, ATRIX2
Прошивка: разные


Настроение:
Роботаю...



Рейтинг: 340



Выложите исходники
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ассоциация своих иконок на свои типы файлов, Теперь иконки берутся из файлов, не нужен iconres · Motorola ROKR Z6, RIZR Z6, Z6w, RAZR² V8 · Forum
 

Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 16.6.2025, 8:34

Форум живёт: