Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Nov 14, 2019 11:18 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 7 posts ] 
Author Message
PostPosted: Mon Dec 20, 2010 12:04 pm 
Offline
User avatar

Joined: Fri Mar 17, 2006 4:01 pm
Posts: 28
Имею желание написать утилиту по настройке главного меню. Несколько раз встречал на форуме упоминание о неудобствах MENU.DAT, да и сам все понял, попробовав убрать из него игры и демки. Такая программа могла бы вызываться из выпадающего меню десктопа, не суть. Главными двумя основными моментами, которые я попробую реализовать будут:
1) Создание приложения, редактирующего MENU.INI файл
2) Перевод @MENU на работу с MENU.INI вместо устаревшего MENU.DAT

Создал данную ветку, что бы не делать пустого. Если сообщество подскажет, что подобная утилита уже существует в какой либо степени завершенности или подобная утилита будет сочтена несущественной, я откажусь от своей задумки в пользу чего-либо более нужного.

Примечание:
Мои познания ассемблера находятся в зачаточной стадии, потому эта программа послужит для меня также и обучающим пособием.


Top
   
PostPosted: Mon Dec 20, 2010 2:06 pm 
Offline

Joined: Thu Aug 13, 2009 10:39 am
Posts: 54
ИМХО, если делать редактор меню, то MENU.DAT лучше сделать вообще бинарным, а не заморачиваться с ini.


Top
   
PostPosted: Mon Dec 20, 2010 2:51 pm 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
connect wrote:
Если сообщество подскажет, что подобная утилита уже существует в какой либо степени завершенности

Когда-то я выложил на форуме свой вариант меню, основанный на элементе tree_list из библиотеки box_lib.obj найти можно здесь :
viewtopic.php?f=9&t=1336&start=45
Там посмотри мое второе сообщение где :
Quote:
Да так. Я сделал эту программку более универсальной. Все записи сохраняются в отдельном файле menu.lst. Также сделал редактор к файлу. Вот пример.

Вложения:
Комментарий к файлу: моя версия menu
menu_aie_09_12_10.7z [19.13 Кб]
Скачиваний: 17

Я делал также программы для редактирования своего файла меню, в нем не было ограничения на количество пунктов. Но в конце концов эта программа не прижилась. Возможно потому что другие люди заявили что сделают новую программу panel в которой будет внедрено свое меню ...
Если есть желание можешь доделать мой пример из файла menu_aie_09_12_10.7z , в нем еще есть несколько недоработанных моментов, например то что вокруг окна есть рамка, лучше было-бы для меню сделать окно вообще без скина.


Attachments:
File comment: мой вариант меню
Snap_2010.12.20_14h51m55s_001.png
Snap_2010.12.20_14h51m55s_001.png [ 10.41 KiB | Viewed 4589 times ]
Top
   
PostPosted: Mon Dec 20, 2010 5:21 pm 
Offline
User avatar

Joined: Thu Mar 01, 2007 7:57 pm
Posts: 835
А есть какие-то проблемы в том, чтобы редактировать непосредственно конфигурационный файл? Он же простой как два пальца.

_________________
Всех выше те, кто доброе творят,
И за дела добра не ждут наград,
Всем жертвуют для страждущих людей,
Не думая о выгоде своей.


Top
   
PostPosted: Mon Dec 20, 2010 6:27 pm 
Offline
User avatar

Joined: Mon Oct 27, 2008 10:10 pm
Posts: 811
Атауальпа wrote:
А есть какие-то проблемы в том, чтобы редактировать непосредственно конфигурационный файл?

На сколько я понял основная проблема это ограничение на количество пунктов в меню :
Quote:
Замечания по синтаксису файла MENU.DAT:
Размер файла MENU.DAT-не более 2К
Меню #0-всегда главное.
Количество меню-не более 10 - от #0 до #9

Взято с http://redmine.kolibrios.org/projects/k ... readme.txt


Top
   
PostPosted: Mon Dec 20, 2010 9:04 pm 
IgorA
Размер меню поменять особых проблем нет - 2 Кб это потому что в свое время больше было не нужно, да и была некоторая неувязочка со стеками потоков, приложение то многопоточное.

Лично я тоже не вижу сильной необходимости в смены меню. Структура достаточно простая и понятная. Уж во всяком случае с каким нибудь XML подобными скриптами даже не сравнить по сложности. Добавление же иконок в пункты не улучшит функциональность меню, а лишь займет место (это я к тому если есть такие идеи, любители свисто-плясо-перделок красивостей уже не раз пытались брутфорсить эту идею). Однако если есть желание, то почему не заняться - может чего и получиться толковое. Графические утилиты часто облегчают жизнь, главное чтобы сделано было не в ущерб скорости и размеру.


Top
   
PostPosted: Tue Dec 21, 2010 4:14 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1621
IgorA, этот текст, если и был когда-то актуален, то давно устарел. Сейчас используемый в дистрибутиве menu.dat занимает заметно больше 2K и имеет больше 10 подменю. Я взглянула на код - ограничение по размеру действительно есть, но такое, чтобы файл помещался в место, оставшееся в первых 64K за вычетом кода и данных программы @menu - сейчас для menu.dat остаётся около 47K.

_________________
Сделаем мир лучше!


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 7 posts ] 

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


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 post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited