I found this thread very helpful.  It seems to be that to the dialog into edit 
mode this has to be done programmatically by calling startEditing() - not by 
simply having the layer in edit mode.   Can anyone else verify that?   
Regardless, thanks for the pointers and suggestions in the thread. Much 
appreciated.

On 30/09/2014, at 8:12 pm, Alexandre Neto <[email protected]> wrote:

> Hi
> 
> On Tue, Sep 30, 2014 at 6:42 AM, Denis Rouzaud <[email protected]> 
> wrote:
> 
> 
> If you want to open a feature form like doing it from QGIS, just run:
> 
> iface.openFeatureForm(layer, feature, false, true/false) 
> 
> http://qgis.org/api/classQgisInterface.html#a11b90f38afd09ac5e9f363933ee4a509
> 
> Cheers,
> 
> Denis
> 
> 
> Actually this how my plugin worked back in QGIS 2.2. But in the latest 
> versions the iface.openFeatureForm() is always in add mode (like 
> setIsAddDialog). That is, after accepting the dialog, it adds a new feature, 
> and does not update my temporary feature. This leaves no room for any changes 
> before the feature commit. I described my problem in the following bug 
> report, and Matthias Kuhn adviced me to create my own Dialog, so that's what 
> I'm trying to do. I would be glad to use iface.openFeatureForm() only
> 
> https://hub.qgis.org/issues/11099
> 
> Thanks for your help
> 
> Alexandre
> 
> 
> 
> 
> 
>  
> 
> 
> On 29.09.2014 18:19, Alexandre Neto wrote:
>> Hello Salvatore,
>> 
>> You were right, I just needed to import the class first, this have opened 
>> the form for me:
>> 
>> from qgis.gui import QgsAttributeDialog
>> mc = iface.mapCanvas()
>> layer = mc.currentLayer()
>> temp_feature.setAttributes(attributes)
>> dialog = QgsAttributeDialog(layer, temp_feature, True)
>> dialog.show()
>> 
>> But now I can't make it editable.
>> 
>> All I can do is cancel the dialog.
>> 
>> Thanks for your help,
>> 
>> Alexandre Neto
>> 
>> 
>> 
>> On Mon, Sep 29, 2014 at 4:21 PM, Salvatore Larosa <[email protected]> wrote:
>> Hi,
>> 
>> On Mon, Sep 29, 2014 at 4:56 PM, Alexandre Neto <[email protected]> 
>> wrote:
>> > Hello,
>> >
>> > I'm trying to open an attribute dialog for a temporary feature using
>> > QgsAttributeDialog(). but with no luck. Can anyone point me to working
>> > example?
>> > I'm trying something like this:
>> >
>> >>
>> >> mc = iface.mapCanvas()
>> >> layer = mc.currentLayer()
>> >> dialog = QgsAttributeDialog(layer, temp_feature)
>> >> dialog.show()
>> 
>> I think you should to import the class before and setting the feature
>> owner bool parameter.
>> after this changes the snippet should work fine for you!
>> 
>> Regards,
>> -SL
>> 
>> --
>> Salvatore Larosa
>> linkedIn: http://linkedin.com/in/larosasalvatore
>> twitter: @lrssvt
>> skype: s.larosa
>> IRC: lrssvt on freenode
>> 
>> 
>> 
>> _______________________________________________
>> Qgis-developer mailing list
>> [email protected]
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 
> 
> _______________________________________________
> Qgis-developer mailing list
> [email protected]
> http://lists.osgeo.org/mailman/listinfo/qgis-developer

_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to