[Qgis-developer] Python support in project file

Nathan Woodrow madmanwoo at gmail.com
Tue Aug 21 04:14:55 PDT 2012


On Tue, Aug 21, 2012 at 8:57 PM, Giuseppe Sucameli <sucameli at faunalia.it> wrote:
> Hi Nathan,
>
> On Tue, Aug 21, 2012 at 10:22 AM, Nathan Woodrow <madmanwoo at gmail.com> wrote:
>>  - There seems to be a margin around the map canvas now. That wasn't
>> there before.
>
> ok, I see it now :)
>
>>  - If there are no marcos in the project file I wouldn't show the warning bar.
>
> When the checkbox is unchecked it doesn't show the warning bar,
> I'll also check if the textbox is empty.

hmmm doesn't seem to work for me. I just created a new project without
ticking the marco checkbox and when I open it I get the warning.

>
>>  - Would be nice if we can to have a Enable Always button with a drop
>> down menu with "Always for all projects" and "Always for just this
>> project" (don't have it popup a dialog asking if they are sure just
>> save it they can always change it after)
>
> Even if I don't like the enable always option as it might cause
> security issues, I thought to put just one checkbox in the setting
> dialog to make macros always enabled.

Yeah I think it can be a security issue also however there are some
things that reduce it:

 - The project file is plain text so you can also check ones that you download
 - In places like where I work we tend to only use internal project
files so it's fine to have it always enabled
 - IMO the chance of someone doing something bad with them is small I think
 - Word and Excel store everything in binary and hence have a always
on option is a huge risk as there is no other way to check the code.

>
> I don't imagine how to make the "always enable macros
> for just this project" option working.
> Projects don't have a identifier like layers and I guess the path is
> not a good choice because the project file could be replaced
> and the user could easily be wrong.
>
> What do you think?

I agree however I think the risk of a swap is low of a swap IMO.

>
>>  - Might need to make the icon have a transparent icon background :)
>
> The icon is the one used for the message logger (displayed
> bottom-right when in Debug mode), of course that white
> background has to be removed. We also need a icon for
> the close button (x) and icons for the other 2 levels of
> messages, i.e. critical and information.

I quite like the lack of a icon on the close button. It draws your
attention to the right which is where the user should look.

There are some nice icons here
http://www.iconfinder.com/search/?q=warning I use them in a lot of my
projects (just check licence)

I'm also thinking that I might be good to have a light yellow bar for
warnings, light red for error, and light blue for information.  Pick
the main colour of the icon and change it enough so the icon and bar
stand out.  Like this
http://www.lawgic.com/Res/System/Word2010.bar.gif

I think people will be very happy with addition.

- Nathan

>
> Opinions are welcome!
> Regards.
>
>> - Nathan
>>
>>
>> On Tue, Aug 21, 2012 at 5:54 PM, Nathan Woodrow <madmanwoo at gmail.com> wrote:
>>> Very nice Giiseppe. Will test soon.
>>>
>>> Sent from some fancy phone looking thingo
>>> From: Giuseppe Sucameli
>>> Sent: 21/08/2012 5:24 PM
>>> To: qgis-developer ML
>>> Subject: Re: [Qgis-developer] Python support in project file
>>> Hi all,
>>>
>>> I've pushed the code on the branch project_macros on my
>>> QGis fork [1].
>>>
>>> The macros python code is loaded into a dummy module,
>>> in this manner it can be unloaded when needed.
>>>
>>> On Thu, May 31, 2012 at 8:30 AM, Martin Dobias <wonder.sk at gmail.com> wrote:
>>>> On Thu, May 31, 2012 at 2:49 AM, Giuseppe Sucameli <sucameli at faunalia.it> wrote:
>>>>> I would save it into the project (embedded in the XML) until we will
>>>>> have a different way to pack project and related stuff together.
>>>>
>>>> Ok - hopefully XML will not choke python indentation :)
>>>
>>> It seems conversion to XML doesn't break anything.
>>>
>>>>> BTW one popup only would be needed, i.e. the project is loaded.
>>>>> If the user trust macros then they become active and ready to be
>>>>> executed.
>>>>
>>>> See Nathan's post - he better explains what I have meant.
>>>
>>> I developed a QgsMessageBar class to display information
>>> to the user using a non-blocking widget.
>>>
>>> The bar allows to push more messages as in a queue, then
>>> displays them one by one beside to a close button.
>>> The button remove the current message or the bar when the
>>> message queue is empty.
>>>
>>> The QgisApp instance creates a object of that class and
>>> puts it above the canvas and also on the top of it (so the canvas
>>> is not refreshed when the bar is shown or hidden as no resize
>>> event occurs).
>>>
>>> Please, could you test it and report here?
>>>
>>> Regards.
>>>
>>> --
>>> Giuseppe Sucameli - Faunalia
>>> _______________________________________________
>>> Qgis-developer mailing list
>>> Qgis-developer at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> _______________________________________________
>> Qgis-developer mailing list
>> Qgis-developer at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
>
>
> --
> Giuseppe Sucameli - Faunalia


More information about the Qgis-developer mailing list