Anonymous | Login | Signup for a new account | 23-11-24 08:09 UTC |
All Projects | SAS.Планета | Домен, сайт, форум, багтрекер | Доработка карты (ZMP) | Переводы и локализации | Прочее |
My View | View Issues | Change Log | Roadmap | Search |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0000503 | SAS.Планета | [All Projects] Хотелка | public | 20-03-2011 19:09 | 01-10-2013 10:24 | ||||
Reporter | Tolik | ||||||||
Assigned To | Garl | ||||||||
Priority | normal | Severity | feature | Reproducibility | N/A | ||||
Status | resolved | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | 121010 | ||||||||
Target Version | 131111 | Fixed in Version | 131111 | ||||||
Summary | 0000503: Добавить меню карт второго уровня | ||||||||
Description | Т.к. карт становится всё больше с каждым днём, назрела необходимость группировать их в 2-уровневое меню. Например, Карты - Локальные - ДубльГис. Параметры можно назвать, например, так: ParentSubMenu=Локальные ParentSubSubMenu=ДубльГис | ||||||||
Tags | zmp | ||||||||
Attached Files | |||||||||
Notes | |
(0001323) Garl (manager) 21-03-2011 09:28 |
как вариант можно использовать пустой zmp для обозначения группы меню, тогда можно будет не только ссылаться на родителя но и делать много многоуровнево вложенные менюшки. |
(0001326) feya (manager) 21-03-2011 14:42 |
Такого - ParentSubSubMenu мне кажется лучше не делать, если уж делать то нормальные многоуровневые с делителем через слеш. |
(0001327) vdemidov (manager) 21-03-2011 15:02 |
А мне понравилась идея делать подменю при помощи ссылки на родительский zmp. Тогда появится возможность относительно легко переименовывать и локализировать подменю. |
(0001328) feya (manager) 21-03-2011 15:06 |
>А мне понравилась идея делать подменю при помощи ссылки на родительский zmp Это как? |
(0001329) vdemidov (manager) 21-03-2011 15:16 |
Ну делается например файлик с расширением zmpgrp или любым на наш выбор. В нем прописывается его GUID, родительский GUID и название в том числе и локализации. Еще можно добавить параметр описывающий, что делать именно подменю или просто сгруппировать вместе и отделить от остальных разделителями |
(0001330) vdemidov (manager) 21-03-2011 15:31 |
Если добавить к этому возможность перекрыть этот файлик лежащим на уровень выше в структуре папок, то вообще гибкая структура выйдет. |
(0001331) Tolik (manager) 21-03-2011 16:46 |
Ок, ParentSubSubMenu - не оч. хор. идея. Предлагаю ещё одну. Требования: 1. Не переписывать _все_ существующие zmp 2. Не плодить слишком много новых файлов 3. Не использовать GUID для описания иерархии, а пользоваться читабельными человеческими идентификаторами. Поэтому создаём один файл, например, maps\sas.maps\groups.ini и прописываем в нём всю структуру меню, как-то так: [Main] Локальные карты Исторические [Локальные карты] ДубльГис UMAP [Исторические] Московская область Уральский ФО 2gis.khabarovsk.zmp не переписываем, в нём ParentSubMenu=ДубльГис, попадает в меню Локальные карты - ДубльГис. Также добавить разделы для разных языков. |
(0001332) vdemidov (manager) 21-03-2011 17:00 |
И как предлагаете потом эти groups.ini из разных репозиториев между собой объединять? |
(0001333) feya (manager) 21-03-2011 19:02 |
vdemidov, идея с отдельными файлами интересная, но соглашусь с Tolik'о - плодить лишние файлы в zmp не есть гуд. Предложеный мной вариант со слешами имеет только один недостаток - приходится во всех zmp хранить название пути подменю и соответственно их переводы, но это уже опробовано временем и вроде особо никого не напрягало. Еще плюс - это самый простой и безболезненный вариант) |
(0001335) Tolik (manager) 21-03-2011 19:31 edited on: 21-03-2011 19:53 |
> И как предлагаете потом эти groups.ini из разных репозиториев между собой объединять? Например, так: В sas.maps\groups.ini [Main] menu1 menu2 В plus.maps\groups.ini [Main] menu1 menu3 После парсинга и объединения должно получиться [Main] menu1 menu2 menu3 (я надеюсь, это не сложно реализовать) |
(0001336) Tolik (manager) 21-03-2011 19:44 |
feya, а что со слешами? Так, что ли? ParentSubMenu=Локальные/ДубльГис Да тоже неплохо. Во всяком случае понятно и никакой путаницы. Только zmp придётся исправить и обратной совместимости не будет. Ну и ладно. Кстати, pnum ещё напрягает, как-то он непредсказуемо действует на все эти группы... Один неправильный pnum портит всю картину. Надо ещё как-то определять положение группы в подменю. Тут groups.ini таки имеет преимущество :) |
(0001338) vdemidov (manager) 21-03-2011 20:33 |
Лично мне очень хочется убрать из zmp локализованное название подменю, разделитель и pnum. |
(0001339) Tolik (manager) 21-03-2011 21:07 |
Да, и разделители тоже вечно появляются где попало. Ну и как это сделать, все настройки внешнего вида перенести в .ini? |
(0001340) vdemidov (manager) 21-03-2011 21:20 |
Ну да. Если выделить инфу о группировке zmp в отдельные ini, то от разделителей можно избавиться введя группы без выделения в подменю. |
(0001341) Garl (manager) 22-03-2011 05:38 |
прошу учесть что некоторые имеют привычку сносить .ini файлы, поэтому информацию о группах хранить в ini файле - не сильно айс. >Лично мне очень хочется убрать из zmp локализованное название подменю, разделитель и pnum. согласен. |
(0001342) Tolik (manager) 22-03-2011 06:11 |
Я и сам их часто тру :) Но это не проблема: они ж будут в репозиториях. |
(0001343) feya (manager) 22-03-2011 06:56 |
к чему же в итоге придем? В принципе хранение отображения zmp в меню согласен перенести в отдельный файл, но не вариант если их будет несколько ибо это вызовет путаницу еще поболе чем сейчас. |
(0001346) Garl (manager) 22-03-2011 08:19 |
озвучу универсальный подход как я его вижу Имеем ZMP "Локальные карты" (допустим в основном репозитории) {889E44B1-413F-49D9-B5C7-3E20851B5C40} ZMP с группой Допустим "локальные непривязанные карты" GUID {B67EF627-B412-4AE0-80FE-A50300AFECAA} указываем что у него родитель "Локальные карты" {889E44B1-413F-49D9-B5C7-3E20851B5C40} имеем скрипт карты в котором указываем родителя {B67EF627-B412-4AE0-80FE-A50300AFECAA} карта города мухосранска в идеале если у нас присутствуют в одной папке файлы слитые из двух репозиториев то у нас получится "Локальные карты"->"локальные непривязанные карты"->"карта города мухосранска " если же у нас слит только плюсовый репозиторий то врехнегородителя не будет, будет только "локальные непривязанные карты"->"карта города мухосранска " в чём плюс: +не подвязаны под конфиги, +чётко видно кто кому подчинён, +отсутствие какого либо родителя не влияет на работоспособность. минусы: pnum, всётаки его придется использовать для сортировки, можето только у групп, но всётаки. |
(0001347) vdemidov (manager) 22-03-2011 08:26 |
Ну несколько их будет по любому. Во-первых нужно что бы каждый репозиторий мог более менее независимо задать структуру. Плюс нужно что бы пользователь мог ее перекрыть не исправляя файлы входящие в репозиторий. Так что инфа из них должна будет собираться или в maps.ini или в глобальный groups.ini |
(0001348) Tolik (manager) 22-03-2011 08:26 |
> не вариант если их будет несколько ибо это вызовет путаницу еще поболе чем сейчас. Тогда пусть будет один: maps\sas.maps\groups.ini Если карты какой-то группы существуют только в плюсовом репозитории, группу под них всё равно пропишем в основном. А отображать пустую группу в меню не надо (если плюсовой не подгружен). |
(0001349) Tolik (manager) 22-03-2011 08:28 |
maps\sas.maps\groups.ini будет жить в репозитории, а если пользователь пересортирует по-своему, его структура запишется в maps/maps.ini |
(0001350) Tolik (manager) 22-03-2011 08:33 edited on: 22-03-2011 08:36 |
Если всё же выберем вариант с отдельными групповыми zmp, то _убедительно_прошу_ ссылки на родителя указывать не по GUID, а по имени файла. muhosransk.zmp: name=Мухосранск ParentSubMenu=LocalNotFixed.grp LocalNotFixed.grp: name=Локальные непривязанные ParentSubMenu=Local.grp Local.grp: name=Локальные ParentSubMenu= |
(0001351) vdemidov (manager) 22-03-2011 11:00 |
Увы, мне с GUID-ами будет на порядок проще все это сделать. Так что или по гуидам, или вообще никак. |
(0001352) Garl (manager) 22-03-2011 11:06 |
никто не мешает сделать внешний редактор меню, который будет GUID представлять по человечески :) |
(0001356) feya (manager) 22-03-2011 12:37 |
если ссылаться на другие zmp то только по GUID, это без вариантов. |
(0001357) Tolik (manager) 22-03-2011 12:38 |
тогда без гуёв не обойтись а может всё-таки ini? |
(0001358) Garl (manager) 22-03-2011 12:44 |
Tolik, не боись ГУИДов, в них сила. а вот как описывать саму группу zmp файлом или в инишке - остаётся вопрос открытый. |
(0001359) vdemidov (manager) 22-03-2011 12:58 |
Ну что описывать группу отдельным файлом мы уже определились. Имхо делать фиктивный zmp смысла нимного, ибо общего у них будет только наличие GUID и названия. |
(0001360) Tolik (manager) 22-03-2011 15:33 |
Я что-то не понял последнюю фразу. Описывать _одну_ группу отдельным файлом? Это не то же самое, что "фиктивный zmp"? И ещё оч. интересует target version. При таком бурном обсуждении странно, что её нет. |
(0001361) vdemidov (manager) 22-03-2011 15:44 |
"фиктивный zmp" это зип файл или папка с кучей файлов. Имхо в данном случае ни то, ни другое нафиг не нужно. Так что это будет файл с каким-то другим расширением. А target version нет, поскольку я пока не уверен как стоит это все реализовывать. В любом случае, не в ближайшем релизе. |
(0001362) Garl (manager) 22-03-2011 15:49 |
семь раз отмерь - один запрограммируй :) |
(0001363) feya (manager) 22-03-2011 19:47 |
Читаю читаю и толком не понимаю что в итоге будет) Аналог текущего maps.ini или для каждого подменю свой файл? |
(0001365) vdemidov (manager) 22-03-2011 20:26 |
А бог его знает что в итоге будет. Мне кажется для каждого подменю свой файл и groups.ini для пользовательских настроек. Или более сложный maps.ini. Или |
(0001366) Garl (manager) 23-03-2011 05:11 |
а давайте поОФФТОПим и вспомним программы где такое или примерно такое уже делалось. мне кроме Нортон Коммандера и ДосНавигатора ничего больше не приходит на ум. у первого всё в одном файле, у второго можно подменюшки хранить в разных файлах, но у них другая структура меню. больше ничего не припомню. |
(0001368) feya (manager) 23-03-2011 08:38 |
а используя отдельные файлы для подменю как избавимся от pnum и сепараторов? |
(0001369) Garl (manager) 23-03-2011 09:04 |
чую vdemidov оставит сепараторы и pnum только для групп, а из zmp его ликвидируют. |
(0003824) vdemidov (manager) 09-09-2011 20:07 |
Скорее всего будет что-то такое: 1. Вложенность подменю будет скорее всего произвольная 2. Для каждого конкретного подменю можно будет задавать его тип (полноценное подменю, просто группа пунктов с заголовком в начале и разделителем в конце, просто группа пунктов ограниченная разделителями) 3. Внутри групп и подменю сортировка идет просто по алфавиту Как это все задавать и что делать с переводами на другие языки я еще не придумал. |
(0003866) zOn (reporter) 12-09-2011 04:45 |
почему вы не хотите уйти от сортировки в zmp? почему не раскладывать их по папкам и подпапкам и так же отображать в САС? видимо из-за проблем с обновлением? можно ведь сложить всё 1 раз по папкам и создать (по требованию) индексный файл, а после этого уже до балды где лежит zmp - он будет в программе отображаться так, как для этого GUID записанно в индексе. |
(0003868) Tolik (manager) 12-09-2011 04:52 |
И имя подменю тогда будет совпадать с именем директории? Но как быть с разными языками? И как определять порядок пунктов меню? (только по алфавиту - плохо) Так что без ini файла (файлов) не обойтись. |
(0003869) zOn (reporter) 12-09-2011 04:55 |
>Но как быть с разными языками? поклонники инглиша и так не создают папок на русском. вот с сортировкой еще не придумал. может всё же по pnum в самих zmp? |
(0003872) Tolik (manager) 12-09-2011 05:04 |
Вот именно, я всё называю по-английски или латиницей. Уж очень задолбала меня кириллица, всю жизнь от неё одни проблемы. Но вы-то хотите видеть русские имена в меню? По pnum неудобно: чтобы передвинуть подменю, приходится редактировать все zmp в нём. |
(0003874) zOn (reporter) 12-09-2011 05:05 |
>Но вы-то хотите видеть русские имена в меню? да. и папки у меня по-русски. т.е. имя папки=пункт меню. |
(0013012) Garl (manager) 01-10-2013 10:14 |
Собственно реализована возможность многоуровневого меню ParentSubMenu=пункт1\пункт2\пункт3\пункт4\... и т.д. |
Issue History | |||
Date Modified | Username | Field | Change |
20-03-2011 19:09 | Tolik | New Issue | |
20-03-2011 22:25 | gpsMax | Tag Attached: zmp | |
21-03-2011 09:28 | Garl | Note Added: 0001323 | |
21-03-2011 14:42 | feya | Note Added: 0001326 | |
21-03-2011 15:02 | vdemidov | Note Added: 0001327 | |
21-03-2011 15:06 | feya | Note Added: 0001328 | |
21-03-2011 15:16 | vdemidov | Note Added: 0001329 | |
21-03-2011 15:31 | vdemidov | Note Added: 0001330 | |
21-03-2011 16:46 | Tolik | Note Added: 0001331 | |
21-03-2011 17:00 | vdemidov | Note Added: 0001332 | |
21-03-2011 19:02 | feya | Note Added: 0001333 | |
21-03-2011 19:31 | Tolik | Note Added: 0001335 | |
21-03-2011 19:44 | Tolik | Note Added: 0001336 | |
21-03-2011 19:51 | Tolik | Note Edited: 0001335 | View Revisions |
21-03-2011 19:53 | Tolik | Note Edited: 0001335 | View Revisions |
21-03-2011 20:33 | vdemidov | Note Added: 0001338 | |
21-03-2011 21:07 | Tolik | Note Added: 0001339 | |
21-03-2011 21:20 | vdemidov | Note Added: 0001340 | |
22-03-2011 05:38 | Garl | Note Added: 0001341 | |
22-03-2011 06:11 | Tolik | Note Added: 0001342 | |
22-03-2011 06:56 | feya | Note Added: 0001343 | |
22-03-2011 08:19 | Garl | Note Added: 0001346 | |
22-03-2011 08:26 | vdemidov | Note Added: 0001347 | |
22-03-2011 08:26 | Tolik | Note Added: 0001348 | |
22-03-2011 08:28 | Tolik | Note Added: 0001349 | |
22-03-2011 08:33 | Tolik | Note Added: 0001350 | |
22-03-2011 08:34 | Tolik | Note Edited: 0001350 | View Revisions |
22-03-2011 08:36 | Tolik | Note Edited: 0001350 | View Revisions |
22-03-2011 11:00 | vdemidov | Note Added: 0001351 | |
22-03-2011 11:06 | Garl | Note Added: 0001352 | |
22-03-2011 12:37 | feya | Note Added: 0001356 | |
22-03-2011 12:38 | Tolik | Note Added: 0001357 | |
22-03-2011 12:44 | Garl | Note Added: 0001358 | |
22-03-2011 12:58 | vdemidov | Note Added: 0001359 | |
22-03-2011 15:33 | Tolik | Note Added: 0001360 | |
22-03-2011 15:44 | vdemidov | Note Added: 0001361 | |
22-03-2011 15:49 | Garl | Note Added: 0001362 | |
22-03-2011 19:47 | feya | Note Added: 0001363 | |
22-03-2011 20:26 | vdemidov | Note Added: 0001365 | |
23-03-2011 05:11 | Garl | Note Added: 0001366 | |
23-03-2011 08:38 | feya | Note Added: 0001368 | |
23-03-2011 09:04 | Garl | Note Added: 0001369 | |
13-04-2011 08:20 | Tolik | Status | new => acknowledged |
09-09-2011 20:07 | vdemidov | Note Added: 0003824 | |
09-09-2011 20:07 | vdemidov | Status | acknowledged => confirmed |
09-09-2011 20:08 | vdemidov | Target Version | => 24xxxx |
12-09-2011 04:45 | zOn | Note Added: 0003866 | |
12-09-2011 04:52 | Tolik | Note Added: 0003868 | |
12-09-2011 04:55 | zOn | Note Added: 0003869 | |
12-09-2011 05:04 | Tolik | Note Added: 0003872 | |
12-09-2011 05:05 | zOn | Note Added: 0003874 | |
01-10-2013 10:14 | Garl | Note Added: 0013012 | |
01-10-2013 10:15 | Garl | Assigned To | => Garl |
01-10-2013 10:15 | Garl | Status | confirmed => resolved |
01-10-2013 10:15 | Garl | Resolution | open => fixed |
01-10-2013 10:15 | Garl | Product Version | 110316.Alfa => 131111 |
01-10-2013 10:15 | Garl | Fixed in Version | => 131111 |
01-10-2013 10:15 | Garl | Target Version | 24xxxx => 131111 |
01-10-2013 10:23 | vdemidov | Product Version | 131111 => 121010 |
My View | View Issues | Change Log | Roadmap | Search |
Copyright © 2007 - 2024 SAS.Planet Team |