Текстовый редактор QML / D и основные положения - PullRequest
4 голосов
/ 28 мая 2011

Я собираюсь кодировать текстовый / кодовый редактор (графический интерфейс с QML и остальное в D *).Но у меня есть несколько проблем:

  • Я кодирую GUI с помощью QML и C ++, а затем соединяю его с D-Backend для форматирования и т. Д.Каков наилучший способ соединения разных языков?Трубы, сокеты или в D возможность использовать библиотеки C ++?

  • ИМХО форматированный текст используется для форматирования текста (в большинстве случаев).Как можно легко отредактировать эту «разметку» ??Является ли форматированный код похожим на фоновое изображение, и пользователь редактирует непрозрачный неформатированный текст?

  • Существуют ли общие методы?

* Поскольку QML - это круто, независимо от платформы и быстро.С другой стороны, D является мощным и простым в использовании.

Ответы [ 2 ]

5 голосов
/ 28 мая 2011

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

Другим вариантом будет подключение C ++ и D через оболочку C. Это наиболее часто используемый способ взаимодействия между C ++ и D.

extern(C++) интерфейсы специфичны для компилятора DigitalMars C ++ в Windows и очень ограничены, так что, вероятно, не помогут с вашей проблемой.

Также вы можете посмотреть на SWIG . Это инструмент, автоматически генерирующий клейкий код для взаимодействия других языков с C ++. Поддерживает D.

Если производительность не является проблемой, связь с кодом D может работать через сокеты или каналы.

2 голосов
/ 06 июня 2011

QML не для WebApp. Это язык разметки QtQuick. «Новый» способ сделать пользовательский интерфейс в Qt. И QWidget, вероятно, будет устаревшим в пользу QML в Qt5.

Я пытаюсь сделать то же самое. Но я боюсь, что qml еще не готов делать такие вещи. Большинство элементов, доступных сегодня, достаточно хороши для рисования изображения, прямоугольника, списка, однострочного ввода текста и выполнения перехода.

Я пытался добиться этого, окрашивая python и pygments, слишком медленно, используя стиль html3.2, чтобы сделать это неправильно. Но это единственный способ стилизовать текст в qml textedit. ; (

QtQuick 2.0 должен улучшить контроль текста.

...