On Fri, Aug 17, 2012 at 3:35 PM, Phil Charlesworth <[email protected]
> wrote:

> **
> On 17/08/12 22:50, Michael Moore wrote:
>
>
>
> On Fri, Aug 17, 2012 at 11:34 AM, Phil Charlesworth <
> [email protected]> wrote:
>
>>  On 16/08/12 20:12, Michael Moore wrote:
>>
>>>  I am working with trees and I thought I had it licked.
>>>
>>> Compatibility mode or not on the browser, I have to get the fingertip of
>>> the pointer at the edge of the + or - circle in the wsw octant to make it
>>> open or close with a mouse click.  Anywhere else simply selects the item.
>>>
>>> The arrow keys work as expected.
>>>
>>> Any suggestions?  Is this another one for a special .html?
>>>
>>> Michael
>>>
>>>  --
>>>
>>>
>>>
>>>  Michael,
>>     This is a problem caused by the IE6 override which is drawing the the
>> cross etc with a canvas instead of using an image created with a data url
>> which is how the other browsers do it. The stupid thing is that IE8 and 9
>> work OK with data urls but the override system is currently not
>> sufficiently detailed to handle that.
>>
>> There are three possible solutions. The first and simplest is to set the
>> Images property of your TreeItems to True and put actual images in
>> public/images/. The relevant images are still available in
>> pyjs/library/pyjamas/ui/public/images/.
>>
>> Another way would be to fix the code in the IE6/mshtml overrides so that
>> it works properly but I haven't any clear idea what the problem is so
>> that's a long shot.
>>
>> Yet another way would be check, in the override file, what version of IE
>> you are running and  if it is IE8 or IE9 execute identical code for
>> createImage and drawImage to thet in the main TreeItem.py file. However,
>> I'm hazy about whether access to the navigator object has been implemented.
>>
>> So I would try the 'Images' property as I described.
>>
>> I the longer term this is a problem that needs fixing but it impacts on
>> the contentious issue of whether to drop IE6 support etc.
>>
>> Regards,
>> Phil
>
>  --
>
>  Thank you very much for the information!  I now have a glimmer of hope
> for escaping the drudge shop with Dojo and Java to do an app which really
> deserves Python.  I fear I am new enough to pyjs that I am a bit confused
> on setting the property.  I see setElementProperty and
> tree_item_foo.setElementProperty(whatever I try) throws errors.  I also
> notice Props and weirdProps  and I used my grabit tool to do a spreadsheet
> on where they occurred.  About 30 files seem to have that.  Is there
> something else I should be looking for before I reserve the weekend for
> reading code?
>
> best regards,
>
> Michael
>
> --
>
>
>
>
> Michael,
>         Sorry, it's the Tree that use the Images property, not the
> TreeItems. All pyjs widgets will accept keyword arguments for setting
> properties when you create them. For any keyword which they will accept,
> there will be corresponding set and get methods. For instance, if a widget
> had a  foo property, you would include Foo = something after the positional
> arguments when you created the widget, or you could set the property after
> creating the widget by calling setFoo on the widget, as in
> myWidget.setFoo(something).
>
>         So, either include  Images = True in the argument list when you
> create the Tree, or afterwards do myTree.setImages(True)
>
> Hope that makes things clearer.
>
> Regards,
> Phil
>
>  --
>
>

Thank you once again for your help.  you were right time one...     It
doesn't happen on tree creation or on setting images--seems Tree and
TreeItem both lack setters for those properties.

It happens at

DOM.setStyleAttribute(item.getElement(), "cursor", "pointer", "images")

inside def createItem(self, label, value=None):, and all that is required
is the word in quotes.

But your hints saved my hair for the barber..  Of course my software won't
work with IE6, but I will personally upgrade the lone remainig IE6 user
among my limited clientele.

Many thanks,

Michael



>

-- 



Reply via email to