我正在开发一个轻量级的GUI工具包。它设计为易于在X11(xlib),Win32以及可能具有非常基本的GUI支持的其他系统中移植。
据我所知,主要有两种架构:
使用操作系统提供的Windows服务 - Linux中的X11和Win32中的普通窗口。在这种方法中,每个控件都是与其父控件相同的窗口对象。它接收来自操作系统的事件并处理它们,有自己的绘画表面等。
仅将操作系统提供的窗口用于顶级窗口 - 主应用程序窗口,对话框等。所有子窗口都只是绘制在其父窗口的表面上。在这种情况下,工具包必须管理父子关系,事件仅由主窗口接收,并且必须被分派到控件。
哪种变体使用广泛的GUI工具包? Qt的? wxWidgets的? FLTK?其他?他们为什么选择这种方法?
两种变体如何与结果GUI工具包的大小和速度相关?
答案 0 :(得分:1)
我还不能发表评论,但我强烈建议不要立即进入X,或多或少两年Wayland(或Mir,也许)将成为Linux的主要渲染经理。
我认为第一种方法的主要问题是: