Каркас а-ля Propery Sheets
От: goloveshin Россия  
Дата: 22.12.10 12:56
Оценка:
Нравится как сделаны настройки проектов в Visual Studio посредством Propery Sheets (файлы .vsprops)

Существуют ли какие-нить каркасы/библиотеки на С++, реализующие подобную идеологию?
Re: Каркас а-ля Propery Sheets
От: Stanislav V. Zudin Россия  
Дата: 22.12.10 13:09
Оценка:
Здравствуйте, goloveshin, Вы писали:

G>Нравится как сделаны настройки проектов в Visual Studio посредством Propery Sheets (файлы .vsprops)

G>Существуют ли какие-нить каркасы/библиотеки на С++, реализующие подобную идеологию?

Насколько я понял, эти файлы всего лишь содержат атрибуты, из которых собирается результирующий .vcproj файл.

И задача состоит в копировании атрибутов из одного xml файла в другой.
Для этого годится любая либа, работающая с dom xml. Или ты что-то иное имел в виду?
_____________________
С уважением,
Stanislav V. Zudin
Re: Каркас а-ля Propery Sheets
От: Mazay Россия  
Дата: 23.12.10 05:31
Оценка:
Здравствуйте, goloveshin, Вы писали:

G>Нравится как сделаны настройки проектов в Visual Studio посредством Propery Sheets (файлы .vsprops)


G>Существуют ли какие-нить каркасы/библиотеки на С++, реализующие подобную идеологию?


С незапамятных времён для этого используют INI-файлы. Библиотек навалом. Тот же буст, только на чтение.
Главное гармония ...
Re: Каркас а-ля Propery Sheets
От: goloveshin Россия  
Дата: 23.12.10 20:04
Оценка:
Уточню.

Хотелось бы что-то на подобие GNU GetText.

Например, в коде пишем так:

RGBA rgba = get_param<RGBA>("system/colors/text_color_for_something", "0,0,0,0")


Где rgba — настройка, которую хотим получить, "system/colors/text_color_for_something" — ключ в базе настроек, "0,0,0,0" — значение по умолчанию
Пологается, что RGBA это структура из 4 int, ключ — вариация на тему XPath, а база — XML.

Потом тулзой проходим по исходникам и выдираем все get_param<>, формируя на основе ключей и дефолтов сам XML.
Также тулза генерит .h, где декларирует наличие get_param<T>, для всех заявленных T,
и .cpp с заготовками ф-ций, в которых нужно руками прописать преобразование куста из XML, подаваемое на вход ф-ции и типа T.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.