QML / D文本编辑器和基本注意事项

时间:2011-05-28 08:10:47

标签: c++ qt4 text-editor d qml

我将编写一个文本/代码编辑器(带有QML的GUI和D *中的其余部分)。但我有几个问题:

  • 我使用QML和C ++对GUI进行编码,然后将其与D-Backend连接以进行格式化等目的。连接不同语言的最佳方法是什么?管道,套接字或D能否使用C ++库?

  • 恕我直言富文本用于格式化文本(大多数情况下)。如何以简单的方式编辑这个“标记”?结构化代码是否像背景图像一样,用户编辑了不透明的非格式化文本?

  • 有共同的技巧吗?

*因为QML很酷,平台独立且快速。另一方面,D功能强大且易于使用。

2 个答案:

答案 0 :(得分:5)

你可能知道,有QtD,Qt绑定D.现在还没有准备好生产,但可能是某一天。

另一种选择是通过C包装器连接C ++和D.这是C ++和D之间最常用的交互方式。

extern(C++)接口特定于Windows上的DigitalMars C ++编译器,并且非常有限,因此可能对您的问题没有帮助。

您也可以查看SWIG。它是一个自动生成粘合代码的工具,用于与C ++交互其他语言。它支持D。

如果性能不是问题,与D代码的通信可以通过套接字或管道进行。

答案 1 :(得分:2)

QML不适用于WebApp。这是QtQuick标记语言。在Qt上做UI的'新'方式。在Qt5中,QWidget可能会被弃用以支持QML。

我试着做同样的事情。但我担心qml还没准备好做那样的事情。今天大多数元素都是绘制图像,矩形,列表视图,一行文本输入和转换的好方法。

我试图通过使用python和pygments着色来实现这一点,速度太慢,使用html3.2样式来做到这一点并不是正确的方法。但这是在qml textedit中设置文本样式的唯一方法。 ;(

QtQuick 2.0应该带来更好的文本控制。