基于火狐xulrunner引擎的架构

来源:互联网 发布:xilinx linux系统类型 编辑:程序博客网 时间:2024/05/16 14:52

     GXMIS是前公司的简称,是国内最大的轨道交通AFC系统的研发集成提供商。

进入GXMIS后,开始主要是参与深圳地铁延长线新一代AFC系统的研发工作。

其中的线网化售票系统的就是本人开发。

 

     UI部分的开发采用了基于火狐的引擎Xulrunner。XULRunner是一个由Mozilla基金会开发运行时环境,用来为XULXPCOM应用程序提供统一的后端运行环境。在这个地址可以下载到最新的xulrunner包http://ftp.tku.edu.tw/index.php?dir=Linux%2FUbuntu%2Fubuntu%2Fpool%2Fmain%2Fx%2Fxulrunner-1.9.2%2F

在火狐的开发环境下进行开发调试和运行。

      开发语言为C++,Xul,和javaScript.

目前火狐的引擎越来越快。界面速度反应也很快。

      目前采用的架构已经运用在深圳1、2、3、5号线,成都地铁,沈阳地铁,武汉地铁等的线网地图上。

      在火狐上可自定义自己的XPCOM组件,扩展程序的功能。

      方式有点像C++下调用的dll功能。XPCPM组件要放在火狐环境下的components才能加载。

      程序架构包含三部分功能层,界面层,界面逻辑层。

      功能层用C++来开发与设备驱动交互的接口。

      界面层采用xul语言来进行开发。

      界面逻辑层用javaScript进行开发,作为界面和功能层沟通调用的桥梁。

 

xul的格式如下:

<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window
xmlns:html="
http://www.w3.org/1999/xhtml"
xmlns="
http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
windowtype="popup" sizemode="maximized" hidechrome="true"  
title="GXMIS" onload="window_onload();" >

<script type="application/x-javascript" src="chrome://equipmentapp/content/js/equipment_utils.js"/>
<script type="application/x-javascript" src="chrome://equipmentapp/content/js/equipment_dll.js"/>
<script type="application/x-javascript" src="chrome://equipmentapp/content/js/Init.js"/>

<image id="initimg" src="image/Init.gif" />

</window>

 

 

javaScrpt格式如下:

var obMainMenu;
var obPrompt1;

var obCardId; //物理卡号
var obUserId; //用户号
var obPassword;

var strUserInfo="";


function window_onload()
{
SetMaintenanceRect();
observer_login.register();

  ......

}

 

原创粉丝点击