<div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Ah, sorry.</div><div>I misunderstood what it does  - I was thinking I could specify an arbitrary groupName which it would create and load the layers in projectFilePath into.  </div><div>groupName is actually meant to be an existing group in projectFilePath, and it loads that.</div><div><br></div><div>Thanks.</div><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br><br>
Date: Mon, 19 Sep 2022 09:08:02 +0200<br>
From: Johannes Kr?ger (WhereGroup)  <<a href="mailto:johannes.kroeger@wheregroup.com" target="_blank">johannes.kroeger@wheregroup.com</a>><br>
To: <a href="mailto:qgis-developer@lists.osgeo.org" target="_blank">qgis-developer@lists.osgeo.org</a><br>
Subject: Re: [QGIS-Developer] Does<br>
        QgsProject.instance().createEmbeddedGroup() work?<br>
Message-ID: <<a href="mailto:e2363bee-8f04-e078-4991-d704de8384ca@wheregroup.com" target="_blank">e2363bee-8f04-e078-4991-d704de8384ca@wheregroup.com</a>><br>
Content-Type: text/plain; charset="utf-8"; Format="flowed"<br>
<br>
Hi Alister,<br>
<br>
<a href="https://qgis.org/pyqgis/master/core/QgsProject.html#qgis.core.QgsProject.createEmbeddedGroup" rel="noreferrer" target="_blank">https://qgis.org/pyqgis/master/core/QgsProject.html#qgis.core.QgsProject.createEmbeddedGroup</a> <br>
and <br>
<a href="https://api.qgis.org/api/classQgsProject.html#ad2e059da29ebfc32096367abb78da46c" rel="noreferrer" target="_blank">https://api.qgis.org/api/classQgsProject.html#ad2e059da29ebfc32096367abb78da46c</a> <br>
say it should return a QgsLayerTreeGroup so I guess it is broken, at <br>
least documentation-wise.<br>
<br>
<a href="https://api.qgis.org/api/qgsproject_8cpp_source.html#l03274" rel="noreferrer" target="_blank">https://api.qgis.org/api/qgsproject_8cpp_source.html#l03274</a> on the other <br>
hand hints at several "return nullptr" so it returning None is by <br>
design. The code seems fairly readable and even has useful comments so <br>
maybe check if one of the cases might be true in your testcase.<br>
<br>
Cheers, Hannes<br>
<br>
Am 19.09.22 um 05:40 schrieb Alister Hood via QGIS-Developer:<br>
> Hi, I want to programmatically embed a project, like I can in the gui <br>
> with "Layer>embed layers and groups."<br>
><br>
> I thought QgsProject.instance().createEmbeddedGroup() was what I <br>
> needed, but it doesn't seem to work - see below.? Am I completely off <br>
> track, or is it broken?<br>
><br>
> Thanks.<br>
><br>
> path='/home/alister/testtoembed.qgs'<br>
> project = QgsProject.instance()<br>
> project.read(path)<br>
> True<br>
> project.clear()<br>
> newGroup = QgsLayerTreeGroup()<br>
> type(newGroup)<br>
> <class 'qgis._core.QgsLayerTreeGroup'><br>
> newGroup = QgsProject.instance().createEmbeddedGroup('test', path, [])<br>
> type(newGroup)<br>
> <class 'NoneType'><br>
><br>
> _______________________________________________<br>
> QGIS-Developer mailing list<br>
> <a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
> List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
> Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
<br>
-- <br>
Johannes Kr?ger / GIS-Entwickler/-Berater<br>
</blockquote></div></div></div></div>