shahakky 发表于 2005-10-27 21:51
<!--coloro:red--><span style="color:red"><!--/coloro-->前段时间由于工作的关系,翻译有所推迟,现在继续:<!--colorc--></span><!--/colorc--><br /><br />包的组成<br />组成Mozilla的部分视个人的喜好不同而不同,但是一般来说都会有浏览器,邮件客户端和网页编辑器,除此之外,还将会有与已安装皮肤和本地设置相对应的部分。每个部分,或者说是每个包都是由一组用于描述其用户界面的文件所组成的。举个例子,邮件客户端部分就将会有描述邮件列表窗口、窗口位置和联系人地址簿对话框的部分。<br /><br />Mozilla所提供的包都可以使用chrome目录进行访问,而chrome目录你可以在你的Mozilla安装目录下找到,在chrome目录下你将能够找到所有的用来描述Mozilla浏览器、邮件客户端和其他相关软件用户界面的文件。在这里还需要澄清一点的是,之所以称其为chrome目录只是因为它和chrome URL地址有一些小小的联系而已,单单拷贝一个文件到chrome目录还不足以使其获得更高的权限,也不能使用chrome URL地址实现对其的访问。要想实现使用chrome URL地址对所创建内容能够进行访问的唯一方法只有按照以下几部分中的描述来创建包。之所以把这个目录的名字叫做chrome,大概是因为Mozilla中的chrome包通常放在这个目录下,人们称其为chrome目录比较方便的缘故。<br /><br />更让人容易产生混淆的是,还有另外两个地方有可能会出现chrome一词:第一个是“-chrome”命令行参数,另一个是“window.open”函数的chrome修饰语,这两个地方都没有什么所谓的得到额外的权限一说,事实上,它们主要是用来打开一个新的、置顶的、没有浏览器UI元素比如菜单和工具栏的窗口。通常,你会在非常复杂的XUL程序中,而且你又不愿意在你的对话框周围显示浏览器界面的时候使用这种特性。<br /><br />包的文件通常被合并成一个单独的JAR文件,这种文件可以藉由ZIP工具建立和查看:比如说,我们可以打开Mozilla的chrome目录中的某些JAR文件来了解一个包的基本结构。虽然包一般都是打成JAR文件包,但是我们同样能够通过扩展一组目录的形式来实现对其的访问;虽说人们一般不使用这种方式来发行包,但是在开发过程中,这种方式将会给我们带来极大的方便,原因主要是我们可以通过编辑文件目录来重新载入XUL文件而不必反复的打包和安装。<br /><br />通常来说,chrome包一般分为三个不同的部分,虽然它们都是可选择的,每一部分存放的目录也各不相同。这三个部分分别是:内容(content)、皮肤(skin)和本地(locale),我们将会在下面进行具体的介绍。有一些特别的包会提供不止一种的皮肤(skin)和本地(locale),但是用户可以使用自己的来替换掉它们。另外,包中有可能包含了要使用不同的chrome地址来进行访问的许多不同的应用程序。值得庆幸的是,Mozilla的包管理系统非常具有灵活性,你可以在你的程序中包含你所需要的任意部分,并允许单独下载其他部分,例如不同语言的文本。<br /><br />#内容(content)-窗口和脚本<br />在这部分中,包含了窗口和用户界面元素的声明,它们以XUL文件的形式存在,具有XUL的扩展名。一个内容包可以有多个XUL文件,但是主窗口的文件名必须要和包文件名相同。举个例子,editor包中必须有一个叫做editor.xul的文件在里面。脚本文件作为单独的文件和XUL文件放在一起。<br />#皮肤(skin)-样式表,图像和其他主题相关文件<br />样式表主要用于详细描述窗口的显示外观,它们与XUL文件分开存放以利于修改程序的皮肤和主题。其所用的图像也通常存放在这里。<br />#本地(Locale)-本地化所需相关文件<br />所有需要在窗口中显示的文本文件单独存放在这里,这样一来,用户就可以方便的使用他们自己的语言。<br /><br />看一看Mozilla的chrome目录,你将能看到一大堆JAR文件,其每个都对应一个已经安装的包,比如说,messenger.jar文件描述了Mail部分的用户界面;modern.jar描述了Modern皮肤。<br /><br /><!--coloro:red--><span style="color:red"><!--/coloro-->(未完待续)<!--colorc--></span><!--/colorc-->
shahakky 发表于 2005-12-25 11:49
自己顶一下……
zjchuyp 发表于 2006-4-14 09:50
楼主,翻译得很不错, 希望继续....
GalaxySong 发表于 2006-4-18 20:22
limodou前辈很早就翻译过(大部分)。你看过他的blog了吗?
页:
[1]