添加新示例或迁移#
添加示例是人们想要熟悉模块及其功能的好练习。
您可以从零开始设计一个示例,或者从另一个应用程序中受到启发,或者简单地迁移一个现有的没有Python对应关系的Qt示例。
示例代码应无flake8警告;这是由机器人强制执行的。如果确实有合理的理由,可以通过noqa
指令排除受影响的行。在存储库的根目录中提供了一个配置文件。
请注意,我们允许行长度达100列。
此外,请使用isort来保持导入的顺序和一致性。
例如
$ flake8 --config pyside-setup/.flake8 your_file.py
$ isort your_file.py
添加新示例#
检查您示例覆盖的主题是否已不在现有的示例中。
在您认为更相关的
examples/<module>
内创建一个新的目录。在此目录中放置示例代码,并放置一个
.pyproject
文件,列出示例需要的文件。如果您想使示例在示例画廊中自动显示,请包括一个包含
rst
文件和截图的doc
目录。检查其他示例以获取格式化问题。在编写
rst
文件时,您可以使用literalinclude
指令包括代码片段,指定相对于.pyproject
文件中列出的相对路径。example_gallery工具将展开此内容(参见pointconfiguration示例)。对于显示在选项卡中的代码,您可以在
doc
目录中创建rstinc
文件,包含一些描述说明它们(参见samplebinding示例)。
迁移Qt示例#
快速检查C++示例,修复过时代码。
使用
tools/tools/qtcpp2py.py
迁移源代码(snippets-translate
的前端)。请注意,由于文档构建,我们的示例名称需要唯一。
验证所有槽是否都已使用
@Slot
装饰。添加一个
.pyproject
文件(稍后核实文档构建)。添加一个
doc
目录、描述性的.rst
文件,如果适合的话,添加截图(使用optipng
减少文件大小)。添加文档字符串
"""Port of the ... example from Qt 6"""
。尽量将变量和函数名转换为蛇形命名约定。
从
sources/pyside6/doc/additionaldocs.lst
中删除 C++ 文档。
注意
以 .png
格式显示的示例截图应该通过运行 optipng -o 7 -strip all
进行优化。或者,可以使用 .webp
格式。