OneRing - 桌面应用框架


LGPL
跨平台
Python

软件简介

OneRing是一个跨平台的桌面应用框架。和Adobe
AIR类似,它支持用html/js/css制作用户界面,与之不同的是,它的应用为本地程序,可以直接访问操作系统的数据。

运行流程:

  1. 应用启动时,会加载框架的运行时库,注册应用url的访问方法(如WSGI),并调用框架的loop函数。
  2. loop函数会访问应用的 /init URL,得到一个json数据,描述初始应用窗口的相关参数,如位置、大小、窗口属性、初始页面url等。
  3. 框架根据该数据创建窗口,并让该窗口内的浏览器访问初始页面url,渲染用户界面,然后等待UI事件。
  4. 用户在界面上操作时,可以通过超链接改变整个窗口内容,也可以使用AJAX技术更新窗口内部分内容。
  5. 应用可以让浏览器调用ONERING名字空间下的js函数,和操作系统进行交互,该名字空间由url onering://onering/onering.js 加载。
  6. 应用通过 bind(event, function) 函数监听窗口更改大小、移动等操作系统UI事件。
  7. 可以使用pub/sub机制主动推送消息给浏览器。
  8. 调用 ONERING.exit() 可以退出应用;所有窗口都关闭后也会退出应用。