Редактируйте XML в текстовом виджете и виджете TreeView одновременно

Есть несколько приложений, которые отображают структуру XML в нескольких представлениях. Отличным примером является редактор Visual Studio Xaml ("Дизайн"), который отображает дерево объектов, визуализированное окно "конструктор" с управляемыми мышью объектами, текстовый редактор с содержимым XAML и окно свойств.

Я пытаюсь сделать это в PyQt для редактирования географических карт, используя KML в качестве формата файла, но я хотел бы разрешить прямое редактирование и сохранение форматирования.

Например, я хотел бы иметь возможность редактировать форматирование вручную следующим образом:

<Element attribute1="value1"
         attribute2="value2"
         attribute3="value3"/>

И будьте уверены, что порядок и выравнивание атрибутов останутся нетронутыми при дальнейшей обработке через TreeView или PropertiesWindow.

Дело в том, что многие ответы говорят о том, что, поскольку порядок атрибутов не является спецификацией XML (то есть приложения, использующие XML, не должны рассчитывать на него), порядок не гарантируется ни одной официальной библиотекой, и любая библиотека, реализующая его " не занимаюсь XML". В частности, ни одна библиотека Python не поддерживает это.

С другой стороны, редакторы XAML в Visual Studio делают это постоянно.

Итак, вопрос: если я действительно, очень хочу этого, используя наборы инструментов Python GUI в качестве "вспомогательного средства" (PyQt и его виджеты, в принципе), насколько сложной будет задача? Стоит ли использовать XML-библиотеки Python или мне нужно написать свою собственную, то есть чрезвычайно сложную задачу?

0 ответов

Другие вопросы по тегам