**********************************************************************
                           CnPack For Delphi
                   中国人自己的开放源码第三方开发包
                 (C)Copyright 2001-2024 CnPack 开发组
**********************************************************************

                     如何为CnPack组件包捐献及移植代码
                            Revision 1.0.0.0
                       =========================
                           作者：刘啸
                           创建：2008.01.01



致愿意为 CnPack 组件包捐献组件代码的朋友：

CnPack 组件包一直在开发人员和用户朋友的帮助中不断完善壮大，在此对移植和
捐献代码给 CnPack 组件包的朋友表示诚挚的谢意。同时为了 CnPack 组件包的发
展，也欢迎有更多的朋友将组件作品捐献出来移植入 CnPack 组件包。

将代码捐献给 CnPack 组件包有以下几个前提条件：

  1. 您同意将您的作品开源。CnPack 的所有产品都是开源免费的。
  2. 组件是 Delphi/Pascal 代码，功能比较典型、强大。
  3. 没有引用其他第三方的商业代码，这点很重要。
  4. 引用了网上其他开源代码时需要注明。

如果您和您的组件作品符合以上几个条件，而您又愿意将组件作品捐献给 CnPack 
组件包，那么烦请按下面的步骤来：

将代码移植入 CnPack 组件包的前期步骤：

  1. 确定您的组件分类。CnPack 组件包目前有界面组件、数据库组件、不可视组
     件、普通公共组件、多语组件、网络通讯组件等几大分类。您也可以先参考
     我们的组件包源码来确定和您的组件有无重复。
    （关于如何获得 CnPack 的最新代码，请参考网站的文档中心中的相关文档。）

  2. 写一段关于组件本身的简介，写明分类，并写个简单的例子，发给管理员。
     这一步的主要目的是让我们了解您的组件作品的功能、规模与用途，以决定
     是否能加入 CnPack 组件包。

    注：管理员信箱 master@cnpack.org，烦请在主题中标明“CnPack”或
    “组件”字样（没法子，垃圾邮件太多了）。

如果管理员认为您的组件作品不错，推荐移植，那么烦请您接着按以下步骤来：

  1. 修改各个源文件命名，以 Cn 开头。
  2. 修改组件名称和源文件的其他类名，以 TCn 开头。
  3. 源码要求格式整齐，变量等的命名比较规范，最好按 VCL 代码的格式来。
     不推荐用匈牙利命名法。
  4. 组件中用到的字符串，如果和界面有关，都要求单独提出来做成字符串常量
     的格式，以备组件的多语化之用（多语这一步我们来做）。字符串常量以 SCn
     开头，中间不用下划线。
  5. 如果您的组件涉及到 Form（比如您为您的组件写组件编辑器需要弹出一个
     Form 来处理部分内容），那么烦请将 Form 上的所有字符串也都单独提出来
     做成字符串常量，并在 Form 的 OnCreate 事件中用字符串常量对界面的各
     个属性进行赋值。这也是为了组件的多语化之用。
  6. 修改成功后，修改您的例子以适用这些重命名后的组件和源文件。此处例子
     中的文件名和类名等不需要用 Cn 字样。
  7. 写个帮助文档，简要列出并解释该组件特有的 public 以及 published 的所
     有属性、方法和事件。文档格式可用文本格式。我们负责将其格式化并将其
     并入 CnPack 的组件帮助文档中。
  8. 将组件源文件、例子、帮助文档打包发给我们。同时可注明您的姓名、网名
     和邮箱地址（三部分内容中，您至少需要写一个网名以供我们列入有贡献人
     员名单）。

其他注意事项：

  1. 您的组件最好能支持 Delphi 5 后的所有 IDE 版本。如果实在不能支持，
     我们也可以接受从 Delphi 7 开始支持。
  2. 如果您的组件有组件图标 dcr 文件，可以一并发给我们。不过 CnPack 组件
     包有统一风格的图标，因此您的组件图标可能会被修改一下以符合我们的风格。

我们接受组件后会将其并入 CnPack 组件包，并且在我们的有贡献人员名单中将出
现您的名字。

再次感谢您的支持！