GUI / TUI linux库
是否有任何UI库可以从同一来源构建文本用户界面(ncurses)和图形用户界面(GTK?QT?)?
我知道debconf可以与各种前端一起使用,我想构建类似但可编程的东西。
解决方案
回答
也许tcl / tk会提供我们想要的东西http://www.tcl.tk/
这是与curses交互的页面。有人声称与ncurses集成。
http://www2.tcl.tk/2372
回答
有诅咒的GTK,但似乎有些过时了。我发现一些对ncurses称为Qt Console的Qt端口的引用,但它似乎已经消失了。
回答
我们可以编写程序以使用ncurses,然后使用PDCurses将其作为自述文件广告转换为X11应用程序。
我知道它的原因是,尽管我从未测试过它的X11功能,但是我将它用作便携式诅咒。
回答
不完全是一个库,但是我们可以考虑编写一个对Lynx的性能很好的Web应用程序
回答
GoboLinux家伙已经为python创建了自己的工具包AbsTK,他们将其用于安装程序,实际上效果很好。我从未亲自使用过该工具包,但使用它构建的应用程序似乎很可靠。
回答
我认为编译时用于配置linux内核的是dialog / cdialog / xdialog。但是自从我编译内核已经有一段时间了,所以我的记忆可能已经关闭了。我可以找到的最有前途的链接是Xdialog的链接。
回答
通过使用同时针对文本模式和GUI环境的库,我们将有陷入两全其美的巨大风险。
我们最好使用MVC模式来构造代码,并为目标平台提供单独的视图和控制器。将所有逻辑下推到模型类还有其他一些好处:
- 该代码将更易于测试,因为我们被迫将用户界面置于实际域逻辑之外。
- 程序可以具有很少有共同点的用户界面,例如Web UI或者语音驱动的UI。
- 我们可以完全不使用UI来轻松运行该程序(即,对其进行脚本编写),方法是直接访问模型类,方法与控制器类相同。
回答
支持YaST独立性以一个代码库执行ncurses,gtk和qt的库提供了我们要查找的内容,并且它与YaST本身无关。
实际上,libyui只需要标准的C ++库和phtreads(IIRC)。 UI插件当然需要相应的库(Qt,ncurses)。 YaST通过一组YCP绑定使用libyui,这些绑定在libyui顶部导出类似API的YCP。
我的同事Klaus K?mpf前段时间在他的博客中写道,该库有点低级(在事件循环下面一层),包括使用swig绑定到脚本语言。
与SUSE特定的唯一部分是包装,因此我们需要自己包装。 Stackoverflow不允许我多次链接。库的代码从Klaus博客链接。将libyui替换为" qt",并将" ncurses"替换为插件的代码。
还可以通过Google搜索"来自YCP的Yas独立"来查找Andreas J?ger的博客条目。