Skip to content

Commit 87f10e1

Browse files
committed
Fix generation of enum class Pydocs
1 parent 4f5f6b5 commit 87f10e1

File tree

4 files changed

+32
-11
lines changed

4 files changed

+32
-11
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# The following has been generated automatically from src/core/qgsprovidermetadata.h
2+
# monkey patching scoped based enum
3+
QgsProviderMetadata.FilterType.FilterVector.__doc__ = ""
4+
QgsProviderMetadata.FilterType.FilterRaster.__doc__ = ""
5+
QgsProviderMetadata.FilterType.FilterMesh.__doc__ = ""
6+
QgsProviderMetadata.FilterType.FilterMeshDataset.__doc__ = ""
7+
QgsProviderMetadata.FilterType.__doc__ = 'Type of file filters\n\n.. versionadded:: 3.10\n\n' + '* ``FilterVector``: ' + QgsProviderMetadata.FilterType.FilterVector.__doc__ + '\n' + '* ``FilterRaster``: ' + QgsProviderMetadata.FilterType.FilterRaster.__doc__ + '\n' + '* ``FilterMesh``: ' + QgsProviderMetadata.FilterType.FilterMesh.__doc__ + '\n' + '* ``FilterMeshDataset``: ' + QgsProviderMetadata.FilterType.FilterMeshDataset.__doc__
8+
# --
Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
11
# The following has been generated automatically from src/core/symbology/qgsstyleentityvisitor.h
22
# monkey patching scoped based enum
3-
QgsStyleEntityVisitorInterface.NodeType.__doc__ = 'Describes the types of nodes which may be visited by the visitor.\n\n' +
3+
QgsStyleEntityVisitorInterface.NodeType.Project.__doc__ = "QGIS Project node"
4+
QgsStyleEntityVisitorInterface.NodeType.Layer.__doc__ = "Map layer"
5+
QgsStyleEntityVisitorInterface.NodeType.SymbolRule.__doc__ = "Rule based symbology or label child rule"
6+
QgsStyleEntityVisitorInterface.NodeType.Layouts.__doc__ = "Layout collection"
7+
QgsStyleEntityVisitorInterface.NodeType.PrintLayout.__doc__ = "An individual print layout"
8+
QgsStyleEntityVisitorInterface.NodeType.LayoutItem.__doc__ = "Individual item in a print layout"
9+
QgsStyleEntityVisitorInterface.NodeType.Report.__doc__ = "A QGIS print report"
10+
QgsStyleEntityVisitorInterface.NodeType.ReportHeader.__doc__ = "Report header section"
11+
QgsStyleEntityVisitorInterface.NodeType.ReportFooter.__doc__ = "Report footer section"
12+
QgsStyleEntityVisitorInterface.NodeType.ReportSection.__doc__ = "Report sub section"
13+
QgsStyleEntityVisitorInterface.NodeType.Annotations.__doc__ = "Annotations collection"
14+
QgsStyleEntityVisitorInterface.NodeType.Annotation.__doc__ = "An individual annotation"
15+
QgsStyleEntityVisitorInterface.NodeType.__doc__ = 'Describes the types of nodes which may be visited by the visitor.\n\n' + '* ``Project``: ' + QgsStyleEntityVisitorInterface.NodeType.Project.__doc__ + '\n' + '* ``Layer``: ' + QgsStyleEntityVisitorInterface.NodeType.Layer.__doc__ + '\n' + '* ``SymbolRule``: ' + QgsStyleEntityVisitorInterface.NodeType.SymbolRule.__doc__ + '\n' + '* ``Layouts``: ' + QgsStyleEntityVisitorInterface.NodeType.Layouts.__doc__ + '\n' + '* ``PrintLayout``: ' + QgsStyleEntityVisitorInterface.NodeType.PrintLayout.__doc__ + '\n' + '* ``LayoutItem``: ' + QgsStyleEntityVisitorInterface.NodeType.LayoutItem.__doc__ + '\n' + '* ``Report``: ' + QgsStyleEntityVisitorInterface.NodeType.Report.__doc__ + '\n' + '* ``ReportHeader``: ' + QgsStyleEntityVisitorInterface.NodeType.ReportHeader.__doc__ + '\n' + '* ``ReportFooter``: ' + QgsStyleEntityVisitorInterface.NodeType.ReportFooter.__doc__ + '\n' + '* ``ReportSection``: ' + QgsStyleEntityVisitorInterface.NodeType.ReportSection.__doc__ + '\n' + '* ``Annotations``: ' + QgsStyleEntityVisitorInterface.NodeType.Annotations.__doc__ + '\n' + '* ``Annotation``: ' + QgsStyleEntityVisitorInterface.NodeType.Annotation.__doc__
416
# --

scripts/sipify.pl

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -990,17 +990,18 @@ sub detect_non_method_member{
990990
my $enum_member = $+{em};
991991
my $comment = $+{co};
992992
dbg_info("is_scope_based:$is_scope_based enum_mk_base:$enum_mk_base monkeypatch:$monkeypatch");
993-
if ($is_scope_based eq "1") {
994-
if ( $monkeypatch eq 1 and $enum_member ne "" ){
995-
if ($enum_mk_base ne "") {
996-
push @OUTPUT_PYTHON, "$enum_mk_base.$enum_member = $enum_qualname.$enum_member\n";
997-
push @OUTPUT_PYTHON, "$enum_mk_base.$enum_member.__doc__ = \"$comment\"\n" ;
998-
push @enum_members_doc, "'* ``$enum_member``: ' + $enum_qualname.$enum_member.__doc__";
999-
} else {
993+
if ($is_scope_based eq "1" and $enum_member ne "") {
994+
if ( $monkeypatch eq 1 and $enum_mk_base ne ""){
995+
push @OUTPUT_PYTHON, "$enum_mk_base.$enum_member = $enum_qualname.$enum_member\n";
996+
push @OUTPUT_PYTHON, "$enum_mk_base.$enum_member.__doc__ = \"$comment\"\n" ;
997+
push @enum_members_doc, "'* ``$enum_member``: ' + $enum_qualname.$enum_member.__doc__";
998+
} else {
999+
if ( $monkeypatch eq 1 )
1000+
{
10001001
push @OUTPUT_PYTHON, "$ACTUAL_CLASS.$enum_member = $ACTUAL_CLASS.$enum_qualname.$enum_member\n";
1001-
push @OUTPUT_PYTHON, "$ACTUAL_CLASS.$enum_qualname.$enum_member.__doc__ = \"$comment\"\n";
1002-
push @enum_members_doc, "'* ``$enum_member``: ' + $ACTUAL_CLASS.$enum_qualname.$enum_member.__doc__";
10031002
}
1003+
push @OUTPUT_PYTHON, "$ACTUAL_CLASS.$enum_qualname.$enum_member.__doc__ = \"$comment\"\n";
1004+
push @enum_members_doc, "'* ``$enum_member``: ' + $ACTUAL_CLASS.$enum_qualname.$enum_member.__doc__";
10041005
}
10051006
}
10061007
$enum_decl = fix_annotations($enum_decl);

src/core/symbology/qgsstyleentityvisitor.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class CORE_EXPORT QgsStyleEntityVisitorInterface
3838
/**
3939
* Describes the types of nodes which may be visited by the visitor.
4040
*/
41-
enum class NodeType
41+
enum class NodeType : int
4242
{
4343
Project, //!< QGIS Project node
4444
Layer, //!< Map layer

0 commit comments

Comments
 (0)