GXMIS是前公司的简称,是国内最大的轨道交通AFC系统的研发集成提供商。
进入GXMIS后,开始主要是参与深圳地铁延长线新一代AFC系统的研发工作。
其中的线网化售票系统的就是本人开发。
UI部分的开发采用了基于火狐的引擎Xulrunner。XULRunner是一个由Mozilla基金会开发运行时环境,用来为XUL和XPCOM应用程序提供统一的后端运行环境。在这个地址可以下载到最新的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" οnlοad="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();
......
}