четверг, 15 декабря 2011 г.

Реорганизация модулей QGIS

Не открою Америки, сказав, что количество разнообразных модулей для QGIS постоянно растет (190 на момент написания поста) и ориентироваться в меню «Модули», при десятке-другом активных плагинов затруднительно. Этот вопрос неоднократно поднимался на хакфестах, начиная со встречи в Вене, и в списках рассылки. Периодически появлялись тикеты: #1602, #1734, #4069. Одним из результатов стал перенос fTools в меню «Вектор» (меню создаётся самим модулем), вскоре появилось «родное» меню «Растр», а чуть позже — «База данных» (появляется при активации первого модуля). Но подавляющее большинство модулей, в том числе и модулей ядра, продолжало ютиться в меню «Модули» и размещать свои кнопки на соответствующей панели.
Тем временем Паоло в тикете #4395, опять поднял вопрос переноса в соответствующие меню хотя бы модулей ядра. С этого все и началось.
Сначала в меню «База данных» отправились модули «Оффлайновое редактирование» и SPIT. Модули Oracle GeoRaster и SQLAnywhere вообще лишились пунктов меню, а их кнопки перекочевали на панель «Слои» и дублируются в меню «Слой». После небольшого обсуждения с Паоло репрессии продолжились:
  • растровые модули переместились в меню «Раст» и на одноименную панель;
  • созданы меню и панель «Вектор», для модулей работающих с векторными данными. Туда перенесены инструменты fTools и некоторые другие модуля ядра;
  • модуль «Текст с разделителями» переехал на панель «Слои»
  • «Инструменты GPS» разделились: одна кнопка на панели «Слои», другая — в меню «Вектор»
  • создана панель «База данных», на которую перенесены кнопки модулей «Оффлайновое редактирование» и SPIT;
  • для всех меню и панелей доступны методы, позволяющие авторам расширений размещать свои модули в нужном месте.
Часть модулей осталась нераспределенной:
  • eVis («База данных»?)
  • OpenStreetMap (предлагается новая категория «Web»)
  • MapServer export (предлагается новая категория «Web»)
  • RoadGraph (скорее всего, «Вектор»)
  • GRASS
  • Захват координат
  • Наложение диаграмм
Пока все это существует в виде ветки reorganize-plugins в моем форке. Вопрос о включении в основной код вынесен на обсуждение в рассылку. Основной минус (относительный на мой взгляд) — при активации модуля пользователь не будет знать где именно, в каком из 4-х меню, он (модуль) появится. Один из вариантов решения — добавить в метаданные модулей тег, в котором указывать в какой раздел попадет модуль после установки.

0 comments:

Отправить комментарий