[Qgis-developer] Telemetry Layer (new release made)

2015-06-17 Thread Andrew McClure
Have just uploaded a new version of our experimental Telemetry Layer (MQTT <-> 
QGIS integration) plugin.

Am reasonably happy with this release.  There are things missing, and no doubt 
some defects, but what is there seems quite stable and provides a nice 
framework for extension.

An example sample plugin that uses the Telemetry Layer classes is provided 
showing how to sub class a topic manager and feature dock to provide customised 
styling and behaviour on a per layer/per feature basis.

Each feature is a topic and additional variables (i.e. like tank height 
settings for a water tank) can be set via V2Widgets ( hmm. side note -  is 
there a plan to upgrade the default feature dialog to support better names and 
tool tips for each widget?)

Payloads by default are formatted by custom $qgsfuncs but options to 
access/modify/render the underlying payload data before being committed to its 
feature or via the floating dock interface is possible.

Feature dock parent classes exist for basic text; a simple toggle switch 
showing the use of an 'mqtt publish', and an SVG widget using QSvgWidget  (that 
does currently does nothing but looks really cool).

Possible use cases for the future:

- Move features using GPS coords as payloads
- Show images from fixed web cams or update a raster layer
- Standard HMI functions to control/view sensors and actuators
- UAV integration


If you can see the potential and are excited by this, a helping hand or some 
crowd funding is always welcome. High on my list are:

- creating the logic for a range of SVG controls (dials, switches, sliders, 
meters etc.)
- performing the transforms from GPS coords to dx/dy and adding the logic for 
moving features based on this
- migrating the Rule Based layer formatter from static .qml file to 
programmatic creation
- more cross platform testing

Github here:

https://github.com/nzfarmer1/telemetrylayer

Thanks for your time.

Andrew



___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] Debugging a QGIS crash

2015-05-09 Thread Andrew McClure
Tom

I'd suggest installing VM Ware and running QGIS under Ubuntu.  You will have 
access to a console and better debugging facilities. You could even run the 
program under strace.   Ideally you want to see a stack trace so you can 
identify the pyqt commands that were executed prior to crashing.

Of course it could be operating system specific.  For windows, a quick google 
revealed this:

http://stackoverflow.com/questions/112831/how-to-get-a-stack-trace-when-c-program-crashes-using-msvc8-2005


___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] Rendering active map symbol as QPixmap

2015-05-07 Thread Andrew McClure
Awesome,

Thanks Nathan!

On 8/05/2015, at 10:34 am, Nathan Woodrow  wrote:

> Hey Andrew,
> 
> This is how I did it with Roam to get all the legend items for the layer:
> 
> items = layer.rendererV2().legendSymbologyItems(ICON_SIZE)
> 
> That will give you a list of:Text - Icon pairs
> 
> if you are using the rule base renderer you get can the symbol for the rule 
> and paint that into a pixmap, however note that one feature can have many 
> symbols so you will have to use the method that returns a list for all the 
> symbols.
> 
> Depending on what you are doing  legendSymbologyItems might give you what you 
> need without extra work.
> 
> - Nathan
> 
> On Fri, 8 May 2015 at 07:00 Andrew McClure  wrote:
> Any takers for this one? I'd like to render the active symbol for a layer as 
> a QPixmap in a dialog.
> 
> I have got this far:
> 
>s =  layer().rendererV2()
>key = s.rootRule().findRuleByKey(s.rootRule().ruleKey())
> 
> This tells me the active rule key to be rendered but how to get the image 
> data?
> 
> Perhaps I am barking up the wrong tree here?
> 
> Thanks
> ___
> Qgis-developer mailing list
> Qgis-developer@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

[Qgis-developer] Rendering active map symbol as QPixmap

2015-05-07 Thread Andrew McClure
Any takers for this one? I'd like to render the active symbol for a layer as a 
QPixmap in a dialog.

I have got this far:

   s =  layer().rendererV2()
   key = s.rootRule().findRuleByKey(s.rootRule().ruleKey())

This tells me the active rule key to be rendered but how to get the image data?

Perhaps I am barking up the wrong tree here?

Thanks
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


[Qgis-developer] Rendering active map symbol programmatically

2015-05-03 Thread Andrew McClure
Am struggling a bit with this problem.  I want to render the active symbol for 
a layer as a QPixmap in a dialog.

I have got this far:

s =  layer().rendererV2()
key = s.rootRule().findRuleByKey(s.rootRule().ruleKey())

This tells me the active rule key to be rendered but how to get the image data?

Perhaps I am barking up the wrong tree here?

Thanks
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] Have custom functions available in the console

2015-03-28 Thread Andrew McClure
Caroline

Have you tried prepending the dollar symbol $?

> $a()



On 28/03/2015, at 3:18 am, Caroline Alexiou  wrote:

> Hello,
> I want to have some helper functions available in the Python console within 
> qgis, for instance this:
> def a():
>return iface.activeLayer()
> so that I type less things. I tried to start qgis with the --code argument 
> but this didn't work. I also tried to put this function in the 
> .qgis2/python/startup.py but when I am in the console a() is not recognized. 
> I can create 
> 
> @qgsfunction(0, "Python") 
>   def a(v,f,p):
>   return iface.activeLayer()
> 
> in startup.py but then I'm not sure how I'd use it from within the console. 
> Also, I know I can use scriptrunner to get the function to work, but I am 
> looking to do this on startup, ie I start qgis, go to the console and a() is 
> available. Is this possible within Qgis core or should I look into maybe 
> adapting script runner for my purposes?
> 
> 

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] wrapping changeAttributeValue between begin and end EditCommand

2015-03-16 Thread Andrew McClure
+1 for this

I was unaware of the reason for the crashes on Undo I was seeing until this 
thread. Our approach in Telemetry Layer was to simply end the edit session and 
commit the changes programmatically denying the possibility of a user undo.  A 
more elegant approach would be welcomed.

On 17/03/2015, at 9:47 am, Matthias Kuhn  wrote:

> 
> 
> On 03/16/2015 09:32 PM, Luigi Pirelli wrote:
>> I used a different approach attaching to end Editing action to do a
>> similar work.
>> The logic is, start editing, do modification, stop editing is
>> intercepted to save EditingBuffer and then roolback all modification.
>> Then process editing buffer to create values basing on a rule and them
>> I can add/change the modified records with a new editing session
>> without user interaction.
>> 
>> 
> It would be so nice to be able to be able to register a trigger that is
> executed to do this kind of things and data validation directly before
> it enters the edit buffer.
> 
> ___
> Qgis-developer mailing list
> Qgis-developer@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [Qgis-developer] Simple sample code for function editor

2015-03-09 Thread Andrew McClure
You may want to include reference to the unregister method when cleaning up.

// For all your user defined functions
 if QgsExpression.isFunctionName("$"):
  QgsExpression.unregisterFunction("$")

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] QgsAttributeDialog() working example

2014-10-16 Thread Andrew McClure
Alexandre

I wanted to give an update on this.

Use case 1:
- Store a reference to the feature in the data portion of a QWidget
- On a callback, make the layer editable and pass the stored feature to 
the openFeatureForm

This works and enabled the feature to be edited.  HOWEVER, the feature may 
already have been changed so could be in a stale state.

Use case 2:
- On the same call back, look up the new feature using 
layer.getFeatures()
- Make the layer editable and pass the "returned" feature to the 
openFeatureForm

This fails.  Feature form opens as non editable.

Use case 3:
- Use the original feature.
- Copy the attributes  from layer.getFeatures() to ensure the old 
feature is in sync.
- Make the layer editable and pass the "updated" feature to the 
openFeatureForm

This appears to work ok. See issue raised here:

https://hub.qgis.org/issues/11395

Telemetry Layer has been updated to support the working scenario:

http://plugins.qgis.org/plugins/TelemetryLayer/


Andrew





> Hello,
> 
> even calling startEditing() programmatically, I don't seem to be able to open 
> the Form in editable mode.
> 
> Any help with this will be appreciated
> 
> Thanks,
> 
> Alexandre Neto
> 
> On Thu, Oct 2, 2014 at 6:33 AM, Andrew McClure  wrote:
> 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  wrote:
> 
>> Hi
>> 
>> On Tue, Sep 30, 2014 at 6:42 AM, Denis Rouzaud  
>> 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  
>>> wrote:
>>> Hi,
>>> 
>>> On Mon, Sep 29, 2014 at 4:56 PM, Alexandre Neto  
>>> 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
>>> Qgis-developer@lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> 
>> 
>> ___
>> Qgis-developer mailing list
>> Qgis-developer@lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 
> 

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

[Qgis-developer] setToolTip on Legend Group?

2014-10-03 Thread Andrew McClure
Ok gurus, this one has got me.

Any way to access the underlying  QTreeWidgetItems?




___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] QgsAttributeDialog() working example

2014-10-03 Thread Andrew McClure
Alexandre

Feel free to see a working example in the latest release of TelemetryLayer

https://github.com/nzfarmer1/telemetrylayer/blob/master/tlbrokerconfig.py  
(Line : 143)

If you install the plugin you can see it working by double clicking a group in 
the legend.

There's also an example showing how to wrap the dialog init within a class with 
state and to reflect dynamic changes made to the features while the dialog is 
open

https://github.com/nzfarmer1/telemetrylayer/blob/master/featureforms/editformfactory.py
https://github.com/nzfarmer1/telemetrylayer/blob/master/tltopicmanager.py

(Code's a bit rough as this is a work in progress)




> Hello,
> 
> even calling startEditing() programmatically, I don't seem to be able to open 
> the Form in editable mode.
> 
> Any help with this will be appreciated
> 
> Thanks,
> 
> Alexandre Neto
> 
> On Thu, Oct 2, 2014 at 6:33 AM, Andrew McClure  wrote:
> 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  wrote:
> 
>> Hi
>> 
>> On Tue, Sep 30, 2014 at 6:42 AM, Denis Rouzaud  
>> 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  
>>> wrote:
>>> Hi,
>>> 
>>> On Mon, Sep 29, 2014 at 4:56 PM, Alexandre Neto  
>>> 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
>>> Qgis-developer@lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> 
>> 
>> ___
>> Qgis-developer mailing list
>> Qgis-developer@lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 
> 

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

[Qgis-developer] Upload plugins to qqis plugins via a script

2014-10-02 Thread Andrew McClure
Here's a crude PHP script to login and upload your .zip file when it's 
been updated.

Requires libcurl

https://github.com/nzfarmer1/qgisplugintools/blob/master/upload.php


p.s. have just made a new release of TelemetryLayer - starting to get down to a 
short list issues that could use a more experienced plugin developer if 
anyone's keen ... ?  :)


Andrew
 
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] QgsAttributeDialog() working example

2014-10-02 Thread Andrew McClure
I found that I had to invoke the feature form myself to get the form into edit 
mode.

layer.startEditing()
self.iface.openFeatureForm(layer, feature, True) 

It was not enough to invoke startEditing from within the feature form init 
method.

Am not sure if this is by design.


On 3/10/2014, at 5:26 am, Alexandre Neto  wrote:

> Hello,
> 
> even calling startEditing() programmatically, I don't seem to be able to open 
> the Form in editable mode.
> 
> Any help with this will be appreciated
> 
> Thanks,
> 
> Alexandre Neto
> 
> On Thu, Oct 2, 2014 at 6:33 AM, Andrew McClure  wrote:
> 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  wrote:
> 
>> Hi
>> 
>> On Tue, Sep 30, 2014 at 6:42 AM, Denis Rouzaud  
>> 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  
>>> wrote:
>>> Hi,
>>> 
>>> On Mon, Sep 29, 2014 at 4:56 PM, Alexandre Neto  
>>> 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
>>> Qgis-developer@lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> 
>> 
>> ___
>> Qgis-developer mailing list
>> Qgis-developer@lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 
> 

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Re: [Qgis-developer] QgsAttributeDialog() working example

2014-10-01 Thread Andrew McClure
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  wrote:

> Hi
> 
> On Tue, Sep 30, 2014 at 6:42 AM, Denis Rouzaud  
> 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  wrote:
>> Hi,
>> 
>> On Mon, Sep 29, 2014 at 4:56 PM, Alexandre Neto  
>> 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
>> Qgis-developer@lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
> 
> 
> ___
> Qgis-developer mailing list
> Qgis-developer@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

[Qgis-developer] Module dependencies

2014-09-22 Thread Andrew McClure
Our plugin:https://plugins.qgis.org/plugins/TelemetryLayer/Depends on Memory Layer saver to save its layers.  (I need to add this to the docs)I note that some plugin frameworks have a "dependencies" array in their module definitions (metadata.txt for QGIS plugins) and wondered if this was something useful to consider as a feature.Thanks
Please consider the environment before printing this email.Any information contained within this email is for the use of the recipient only and is sent in confidence. The information may not be copied, distributed or forwarded to any other parties. This information may not be used by any other person or organization. If you have received this in error, please notify us immediately by return mail and return the message with your notification.If you would like to stop receiving correspondence from this email address, please confirm by return mail.	BEGIN:VCARD
VERSION:3.0
PRODID:-//Apple Inc.//Address Book 6.1.2//EN
N:McClure;Andrew;;;
FN:Andrew McClure
ORG:Southweb Ltd.;
item1.EMAIL;type=INTERNET;type=pref:and...@southweb.co.nz
item1.X-ABLabel:email
TEL;type=WORK;type=VOICE;type=pref:+64 (0) 3 2255 169
item2.ADR;type=HOME;type=pref:;;2122 Otauta-Tuatapere Rd.;RD1 Tuatapere;;;New Zealand
item2.X-ABADR:us
NOTE:Southweb
item3.URL;type=pref:http://southweb.co.nz
item3.X-ABLabel:_$!!$_
IMPP;X-SERVICE-TYPE=Skype;type=WORK;type=pref:skype:kiwifx
PHOTO;ENCODING=b;TYPE=JPEG:/9j/4AAQSkZJRgABAQAAAQABAAD/4QBARXhpZgAATU0AKgAA
 AAgAAYdpAAQBGgAAAqACAAQByKADAAQByAD/2wBDAA
 IBAQIBAQICAQICAgICAwUDAwMDAwYEBAMFBwYHBwcGBgYHCAsJBwgKCAYGCQ0JCgsLDAwMBwkN
 Dg0MDgsMDAv/2wBDAQICAgMCAwUDAwULCAYICwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCw
 sLCwsLCwsLCwsLCwsLCwsLCwsLCwv/wAARCADIAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA
 AAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhBy
 JxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZ
 WmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxM
 XGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAA
 AAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFE
 KRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVm
 Z2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyM
 nK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9/ACiiigA
 AACiiigAAACiiigAAACiiigAAACiiigAAACikV
 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
 /iPa2Em61WzVwAON2bfJr6cB3V8xxhCKzJ

Re: [Qgis-developer] Telemetry Layer (MQTT Integration) - alpha released

2014-09-18 Thread Andrew McClure
Paolo

Web page created

Screenshot uploaded

Download and meta definitions updated.

See:
http://www.southweb.co.nz/telemetrylayer

Reminds me of the joke about a plumber's own bathroom.

thanks

Andrew


On 18/09/2014, at 6:02 pm, Paolo Cavallini  wrote:

> Il 18/09/2014 02:47, Andrew McClure ha scritto:
>> Hi Paolo
>> 
>> I've followed the submission process and uploaded here.
>> 
>> http://plugins.qgis.org/plugins/TelemetryLayer/
>> 
>> That said, it is only really ready for developers to look at as there is 
>> much finishing work to be done.
> 
> Thanks Andrew. I'll check it ASAP. Could you please check the home page?
> I get: Digi Sense homepage. See http://southweb.co.nz
> More later.
> All the best.
> 
> -- 
> Paolo Cavallini - www.faunalia.eu
> Corsi QGIS e PostGIS: http://www.faunalia.eu/training.html

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] Telemetry Layer (MQTT Integration) - alpha released

2014-09-17 Thread Andrew McClure
Hi Paolo

I've followed the submission process and uploaded here.

http://plugins.qgis.org/plugins/TelemetryLayer/

That said, it is only really ready for developers to look at as there is much 
finishing work to be done.

Thanks

Andrew


On 18/09/2014, at 5:11 am, Paolo Cavallini  wrote:

> Il 17/09/2014 13:01, Andrew McClure ha scritto:
>> Dear QGIS developers,
>> 
>> I have submitted my first QGIS plugin to the world.
> 
> Hi Andrew,
> where did you submit it? I cannot find it in the list of unpublished plugins.
> I'm available for help in speeding up the publication.
> All the best.
> 
> -- 
> Paolo Cavallini - www.faunalia.eu
> Corsi QGIS e PostGIS: http://www.faunalia.eu/training.html

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


[Qgis-developer] Telemetry Layer (MQTT Integration) - alpha released

2014-09-17 Thread Andrew McClure
Dear QGIS developers,

I have submitted my first QGIS plugin to the world.

It is experimental, unfinished, and no doubt has many defects.

For the past 3 months or so between farm and family chores I have worked to 
bring a vision to fruition - combining an IoT (Digimesh) sensor network with 
the QGIS platform serving as a human machine interface (HMI).  It struck me 
that sensors are locational by nature; and that QGIS provides an excellent 
ready made HMI and deployment framework.

Our work on the wireless sensor network continues in the background, but the 
Telemetry Layer plugin has been kept generic so that developers of other MQTT 
related services can integrate their platforms.

A few disclaimers:

- this is my first python development so please forgive variances in coding 
style as I mature.
- I love developing on my Mac, and recent tests on Windows and Linux indicate 
stability issues ( which seem for the most part have been dealt to on the Mac )
- I need help.  The project is at a stage where more eyes would be beneficial.
- I am new to running an open source project. My recent background has been 
running a Drupal web dev/hosting shop using paid contractors - so please bare 
with me as I familiarise myself with the protocols of voluntary collaboration

Acknowledgements - a big thanks to:

- Larry Shaffer who helped me establish my initial dev. environment
- Chris Cook - another New Zealander - with his pointers on the user interface
- Matthias who is assisting with the custom setEditForm ( which sort of works 
on my Mac but not on any other platform currently )

GIT Repo can be found here:

https://github.com/nzfarmer1/telemetrylayer



Andrew



___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer

[Qgis-developer] Accessing Plugin metadata

2014-07-18 Thread Andrew McClure
Sorry guys but this one has taken a bit too long to resolve:

iface.pluginManagerInterface().pluginMetadata(u"name")

returns None

iface.pluginManagerInterface().pluginMetadata(u"general.name")

returns None

The fall back is of course something like this:

self.metadata = ConfigParser()
self.metadata.read(os.path.join(self.plugin_dir,'metadata.txt'))

But then that's cheating a bit 



___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


[Qgis-developer] Opening Views->Panels->Log Messages

2014-07-06 Thread Andrew McClure
Is it possible to invoke/open this dock via a PyQt call?

thx.


___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer