@@ -65,6 +65,11 @@ def testUpdateGuide(self):
65
65
p = QgsProject ()
66
66
l = QgsLayout (p )
67
67
l .initializeDefaults () # add a page
68
+ # add a second page
69
+ page2 = QgsLayoutItemPage (l )
70
+ page2 .setPageSize ('A5' )
71
+ l .pageCollection ().addPage (page2 )
72
+
68
73
g = QgsLayoutGuide (Qt .Horizontal , QgsLayoutMeasurement (5 , QgsUnitTypes .LayoutCentimeters ), l .pageCollection ().page (0 ))
69
74
g .setLayout (l )
70
75
g .update ()
@@ -85,6 +90,19 @@ def testUpdateGuide(self):
85
90
self .assertEqual (g .item ().line ().y2 (), 15 )
86
91
self .assertEqual (g .layoutPosition (), 15 )
87
92
93
+ # guide on page2
94
+ g1 = QgsLayoutGuide (Qt .Horizontal , QgsLayoutMeasurement (5 , QgsUnitTypes .LayoutCentimeters ), l .pageCollection ().page (1 ))
95
+ g1 .setLayout (l )
96
+ g1 .update ()
97
+ g1 .setPosition (QgsLayoutMeasurement (15 , QgsUnitTypes .LayoutMillimeters ))
98
+ g1 .update ()
99
+ self .assertTrue (g1 .item ().isVisible ())
100
+ self .assertEqual (g1 .item ().line ().x1 (), 0 )
101
+ self .assertEqual (g1 .item ().line ().y1 (), 235 )
102
+ self .assertEqual (g1 .item ().line ().x2 (), 148 )
103
+ self .assertEqual (g1 .item ().line ().y2 (), 235 )
104
+ self .assertEqual (g1 .layoutPosition (), 235 )
105
+
88
106
# vertical guide
89
107
g2 = QgsLayoutGuide (Qt .Vertical , QgsLayoutMeasurement (5 , QgsUnitTypes .LayoutCentimeters ), l .pageCollection ().page (0 ))
90
108
g2 .setLayout (l )
@@ -109,6 +127,17 @@ def testUpdateGuide(self):
109
127
g .update ()
110
128
self .assertFalse (g .item ().isVisible ())
111
129
130
+ # guide on page2
131
+ g3 = QgsLayoutGuide (Qt .Vertical , QgsLayoutMeasurement (5 , QgsUnitTypes .LayoutCentimeters ), l .pageCollection ().page (1 ))
132
+ g3 .setLayout (l )
133
+ g3 .update ()
134
+ self .assertTrue (g3 .item ().isVisible ())
135
+ self .assertEqual (g3 .item ().line ().x1 (), 50 )
136
+ self .assertEqual (g3 .item ().line ().y1 (), 220 )
137
+ self .assertEqual (g3 .item ().line ().x2 (), 50 )
138
+ self .assertEqual (g3 .item ().line ().y2 (), 430 )
139
+ self .assertEqual (g3 .layoutPosition (), 50 )
140
+
112
141
def testCollection (self ):
113
142
p = QgsProject ()
114
143
l = QgsLayout (p )
0 commit comments