Module:Message box/doc:修订间差异

删除的内容 添加的内容
重写文档:消息框元模块的完整架构说明、子页面列表和相关模板参见
按求闻版更新模块文档(移除 Used in system/module rating,保留用法与配置说明)
 
第1行:
{{uses Lua|Module:Message box/configuration}}
{{Documentation subpage}}
{{Uses Lua|Module:Arguments|Module:Category handler|Module:Yesno}}
 
本模块适用于{{tl|mbox}}、{{tl|fmbox}}、{{tl|dmbox}}。
'''Module:Message box''' 是消息框体系的元模块,为以下所有消息框模板提供底层实现。
 
== 消息框家族用法 ==
在其它模块中引用本模块,您需要事先加载:
<syntaxhighlight lang="lua">
local messageBox = require('Module:Message box')
</syntaxhighlight>
 
为创建一个消息框,您需要使用<code>main</code>函数,并给出两个参数:第一个对应消息框类型(字符串),第二个对应消息。
<syntaxhighlight lang="lua">
local box = messageBox.main( boxType, {
param1 = param1,
param2 = param2,
-- More parameters...
})
</syntaxhighlight>
 
可用信息框类型:
{| class="wikitable"
! 模板类型 !! 命名空间原对应模板 !! CSS 样式用途
|-
! {{tl|Ambox}}
| 条目(Article) || [[Module:Message box/ambox.css]]
|-
! {{tl|Cmbox}}
| 分类(Category) || [[Module:Message box/cmbox.css]]
|-
| <code>ambox</code> || {{tl|ambox}} || 条目命名空间
! {{tl|Fmbox}}
| 页眉/页脚(Footer/Header) || [[Module:Message box/fmbox.css]]
|-
| <code>dmbox</code> || {{tl|dmbox}} || 消歧义页面
! {{tl|Imbox}}
| 文件(File/Image) || [[Module:Message box/imbox.css]]
|-
| <code>fmbox</code> || {{tl|fmbox}} || 界面消息及表单
! {{tl|Ombox}}
| 其他(Other) || [[Module:Message box/ombox.css]]
|-
| <code>tmbox</code> || {{tl|tmbox}} || 讨论命名空间
! {{tl|Tmbox}}
| 讨论(Talk) || [[Module:Message box/tmbox.css]]
|-
| <code>ombox</code> || {{tl|ombox}} || 其他命名空间
! {{tl|Mbox}}
| 自动检测命名空间 || 根据目标命名空间加载对应 CSS
|}
 
== 子页面“#invoke”引入 ==
除<code>main</code>函数外,本模块为每个消息框类型对应了分别的函数,例如<code><nowiki>{{#invoke:Message box|ombox|...}}</nowiki></code>、<code><nowiki>{{#invoke:Message box|ambox|...}}</nowiki></code>等。
* [[Module:Message box/configuration]] — 配置(分类名、参数名等)
* [[Module:Message box/ambox.css]] — 条目消息框样式
* [[Module:Message box/cmbox.css]] — 分类消息框样式
* [[Module:Message box/fmbox.css]] — 页眉页脚消息框样式
* [[Module:Message box/imbox.css]] — 文件消息框样式
* [[Module:Message box/ombox.css]] — 其他消息框样式
* [[Module:Message box/tmbox.css]] — 讨论页消息框样式
 
== 依赖模块技术细节 ==
The module uses the same basic code for each of the templates listed above; the differences between each of them are configured using the data at [[Module:Message box/configuration]]. Here are the various configuration options and what they mean:
* [[Module:Arguments]] — 参数解析
* [[Module:Category handler]] — 跟踪分类管理
* [[Module:Yesno]] — 布尔值判断
 
* <code>types</code> - a table containing data used by the type parameter of the message box. The table keys are the values that can be passed to the type parameter, and the table values are tables containing the class and the image used by that type.
== 参见 ==
* <code>default</code> - the type to use if no value was passed to the type parameter, or if an invalid value was specified.
* {{tl|Mbox}} — 元消息框(自动检测命名空间)
* <code>showInvalidTypeError</code> - whether to show an error if the value passed to the type parameter was invalid.
* {{tl|Ambox}} — 条目消息框
* <code>allowBlankParams</code> - usually blank values are stripped from parameters passed to the module. However, whitespace is preserved for the parameters included in the allowBlankParams table.
* {{tl|Cmbox}} — 分类消息框
* <code>allowId</code> - whether it is possible to set an "id" attribute to the html table tag.
* {{tl|Fmbox}} — 页眉页脚消息框
* <code>allowSmall</code> - whether a small version of the message box can be produced with "small=yes".
* {{tl|Imbox}} — 文件消息框
* <code>smallParam</code> - a custom name for the small parameter. For example, if set to "left" you can produce a small message box using "small=left".
* {{tl|Ombox}} — 其他消息框
* <code>smallClass</code> - the class to use for small message boxes.
* {{tl|Tmbox}} — 讨论页消息框
* <code>substCheck</code> - whether to perform a subst check or not.
* {{tl|Yesno}} — 布尔值判断模板
* <code>classes</code> - an array of classes to use with the message box.
* <code>imageEmptyCell</code> - whether to use an empty {{tag|td}} cell if there is no image set. This is used to preserve spacing for message boxes with a width of less than 100% of the screen.
* <code>imageEmptyCellStyle</code> - whether empty image cells should be styled.
* <code>imageCheckBlank</code> - whether "image=blank" results in no image being displayed.
* <code>imageSmallSize</code> - usually, images used in small message boxes are set to 30x30px. This sets a custom size.
* <code>imageCellDiv</code> - whether to enclose the image in a div enforcing a maximum image size.
* <code>useCollapsibleTextFields</code> - whether to use text fields that can be collapsed, i.e. "issue", "fix", "talk", etc. Currently only used in ambox.
* <code>imageRightNone</code> - whether imageright=none results in no image being displayed on the right-hand side of the message box.
* <code>sectionDefault</code> - the default name for the "section" parameter. Depends on <code>useCollapsibleTextFields</code>.
* <code>allowMainspaceCategories</code> - allow categorisation in the main namespace.
* <code>templateCategory</code> - the name of a category to be placed on the template page.
* <code>templateCategoryRequireName</code> - whether the <code>name</code> parameter is required to display the template category.
* <code>templateErrorCategory</code> - the name of the error category to be used on the template page.
* <code>templateErrorParamsToCheck</code> - an array of parameter names to check. If any are absent, the <code>templateErrorCategory</code> is applied to the template page.
 
<includeonly>[[Category:元模块]]</includeonly>
[[Category:元模块]]
</includeonly>