Hi Matthias,

  The code does indeed look much more efficient, however it still doesn't
default to the old selection behavior, so I'm not sure how users outside
your organization are going to react to the change. I don't like it as well
as the current method which outlines the handles.   Also there seems to be a
problem with point selection feedback.  Selected points just seem to
disappear for me.

regards,
Larry

On Fri, Jul 30, 2010 at 11:34 AM, Matthias Scholz <m...@jammerhund.de> wrote:

> Hi,
>
> please can Larry  or any other check my modifications again? Now I've
> solved the problem that the previous saved settings are restored from
> blackboard. The modifications in the AbstractSelectionRenderer should now
> smart enough, so that we have no performance problems and can set the
> properties with setter methods.
>
> It would be nice and important for my users if we can integrate the patch
> in the upcoming release.
>
> Regards
>
> Matthias
>
>  Hi Larry,
>>
>> please see the attached file. There is one problem at the moment. After
>> loading a file or project the AbstractSelectionRenderer use the default
>> settings. So you must go to the options an click OK in the
>> SelectionStyllingOptionsPanel. This is because during construction of the
>> SelectionStyllingOptionsPanel instance there is no LayerViewPanel instance
>> an so on no RenderingManager available. Is there a Listener which is fired
>> if the RenderingManager is available or if a layer was added or a file was
>> loaded???
>>
>> Regards
>>
>> Matthias
>>
>>  Hi Matthias,
>>>
>>>  I'm pretty sure that the right place to add setSelectionLineColor,
>>> setSelectionPointSize and
>>> setSelectionPointForm is AbstractSelectionRenderer since that is where
>>> the associated variables are declared.  You will have to remove /final /from
>>> HANDLE_WIDTH.  The real trick is getting the reference to
>>> FeatureSelectionRenderer to use the sets.  I think this can be done with
>>> RenderManager  by passing 
>>> FeatureSelectionRenderer.CONTENT_ID.toRenderManager.getRenderer().
>>>
>>> regards,
>>> Larry
>>>
>>> On Sun, Jul 11, 2010 at 7:58 AM, Matthias Scholz <m...@jammerhund.de<mailto:
>>> m...@jammerhund.de>> wrote:
>>>
>>>    Hi Larry,
>>>
>>>    can we do the following?
>>>
>>>    - add some setSelectionLineColor, setSelectionPointSize and
>>>    setSelectionPointForm to
>>>    com.vividsolutions.jump.workbench.ui.renderer.Renderer interface
>>>    - implement simple setter in
>>>
>>>  com.vividsolutions.jump.workbench.ui.renderer.FeatureCollectionRenderer,
>>>    wich is the parent of AbstractSelectionRenderer which is the parent of
>>>    FeatureSelectionRenderer, SelectionBackgroundRenderer,
>>>    PartSelectionRenderer, LineStringSelectionRenderer
>>>    - change the AbstractSelectionRenderer for using this variables while
>>>    paint()
>>>    - in a PlugIn in the OptionsPanel I can get the Renderer with
>>>    context.getLayerViewPanel().getRenderingManager().getRenderer()
>>>    call and
>>>    the I can change the values whith the setter
>>>
>>>    I'm not sure if the Renderer interface is the right place for the
>>>    setter
>>>    methods???
>>>
>>>    Please tell me your opinion, before I start. Any other suggestions are
>>>    welcome!
>>>
>>>    Regards Matthias
>>>
>>>    > I don't see an obvious solution.  For one thing, it is unclear how
>>>    > your plugin would affect the interoperability of
>>>    > SelectionBackgroundRenderer, PartSelectionRenderer, and
>>>    > LineStringSelectionRenderer which uses constructors to select
>>>    > different feedback mechanisms.
>>>    >
>>>    > Larry
>>>    >
>>>    > On Sun, Jun 27, 2010 at 3:00 PM, Matthias Scholz
>>>    <m...@jammerhund.de <mailto:m...@jammerhund.de>
>>>    > <mailto:m...@jammerhund.de <mailto:m...@jammerhund.de>>> wrote:
>>>    >
>>>    >     Hi Sunburned Surveyor and Larry,
>>>    >
>>>    >     sorry for my late reply, but i had no time to code last week :-(
>>>    >
>>>    >     I agree with Larry's remarks. My question went toward the
>>>    concrete
>>>    >     implementation, as I currently do not have enough knowledge
>>>    about the
>>>    >     internals of OJ. At the beginning I would to build a plugin,
>>>    but I do
>>>    >     not know how to "tell" the AbstractSelectionRenderer, how he
>>>    should
>>>    >     render with my settings or with the old default one. So
>>>    actually I
>>>    >     have
>>>    >     no idea how to integrate the plugin in the rendering
>>>    process? At this
>>>    >     point I need your help. I hope you understand my terrible
>>>    english ;-)
>>>    >
>>>    >     Matthias
>>>    >
>>>    >     > I haven't looked at the code Mathias provided. It sounds like
>>>    >     Larry's
>>>    >     > provided some great comments. I hope the changes can be
>>>    made so
>>>    >     > Mathias code can be integrated.
>>>    >     >
>>>    >     > If Mathias needs help making the mods Larry has suggested, he
>>>    >     can let me know.
>>>    >     >
>>>    >     > The Sunburned Surveyor
>>>    >     >
>>>    >     > On Mon, Jun 21, 2010 at 6:28 AM, Larry Becker
>>>    >     <becker.la...@gmail.com <mailto:becker.la...@gmail.com>
>>>    <mailto:becker.la...@gmail.com <mailto:becker.la...@gmail.com>>>
>>>    wrote:
>>>    >     >
>>>    >     >> Hi Matthias,
>>>    >     >>
>>>    >     >> My concern about code efficiency is that this is a very low
>>>    >     level routine in
>>>    >     >> AbstractSelectionRenderer that is potentially called millions
>>>    >     of times per
>>>    >     >> session.  Everything possible (like blackboard access and
>>>    >     object creation)
>>>    >     >> needs to be moved outside of it.
>>>    >     >>
>>>    >     >> Also, if the user does not select your new selection
>>>    rendering
>>>    >     option, OJ
>>>    >     >> should continue to render using the old method.
>>>     Currently, it
>>>    >     defaults to a
>>>    >     >> new rendering method.
>>>    >     >>
>>>    >     >> One of the limitations of OJ that I would like to overcome is
>>>    >     that it runs
>>>    >     >> out of memory just selecting a million points.  The
>>>    reason for
>>>    >     that is the
>>>    >     >> large overhead of selection feedback graphics.  Now that you
>>>    >     have created an
>>>    >     >> options panel for selection feedback it could be  possible to
>>>    >     turn off
>>>    >     >> selection feedback completely!  This would be a solution for
>>>    >     unusually large
>>>    >     >> datasets.
>>>    >     >>
>>>    >     >> I hope you understand that since this modification is to the
>>>    >     core classes,
>>>    >     >> it needs to meet higher standards than something an optional
>>>    >     plugin.
>>>    >     >>
>>>    >     >> regards,
>>>    >     >> Larry
>>>    >     >>
>>>    >     >> On Sat, Jun 19, 2010 at 12:48 AM, Matthias Scholz
>>>    >     <m...@jammerhund.de <mailto:m...@jammerhund.de>
>>>    <mailto:m...@jammerhund.de <mailto:m...@jammerhund.de>>> wrote:
>>>    >     >>
>>>    >     >>> Hi Larry!
>>>    >     >>>
>>>    >     >>>> Hi Matthias,
>>>    >     >>>>
>>>    >     >>>>  I had some problems applying the patch.  I was only
>>>    able to
>>>    >     get the
>>>    >     >>>> AbstractSelectionRenderer and OptionsPlugIn patches.
>>>     Eclipse
>>>    >     wouldn't
>>>    >     >>>> create the new files for some reason.
>>>    >     >>>>
>>>    >     >>> It seems that my Netbeans use an other diff format as
>>>    >     Eclipse... i have
>>>    >     >>> attached a zip file.
>>>    >     >>>
>>>    >     >>>>  Looking at the changes to AbstractSelectionRenderer, I do
>>>    >     have some
>>>    >     >>>> concerns about efficiency since I have recently made
>>>    changes
>>>    >     there to speed
>>>    >     >>>> things up.  I suggest that you move references to the
>>>    >     blackboard outside of
>>>    >     >>>> AbstractSelectionRenderer, and add vertexStyle as a class
>>>    >     variable settable
>>>    >     >>>> by a public set method.  You should
>>>    >     >>>>
>>>    >     >>> I'm sorry i do not understand what you mean exactly :-( Can
>>>    >     you explain
>>>    >     >>> this a little bit more?
>>>    >     >>>
>>>    >     >>>> probably have a default constructor for VertexStyle that
>>>    >     gives the legacy
>>>    >     >>>> behavior.
>>>    >     >>>>
>>>    >     >>> The
>>>    >
>>>  com.vividsolutions.jump.workbench.ui.renderer.style.VertexStyle class
>>>    >     >>> doesn't have  a public default constructor, you must use the
>>>    >     >>> VertexStylesFactory for that.
>>>    >     >>>
>>>    >     >>>> You should be able to call repaint() from LayerViewPanel.
>>>    >     >>>>
>>>    >     >>> Thank you, it runs :-)
>>>    >     >>>
>>>    >     >>> Matthias
>>>    >     >>>
>>>    >     >>>> regards,
>>>    >     >>>> Larry Becker
>>>    >     >>>>
>>>    >     >>>> On Fri, Jun 18, 2010 at 3:43 PM, Matthias Scholz
>>>    >     <m...@jammerhund.de <mailto:m...@jammerhund.de>
>>>    <mailto:m...@jammerhund.de <mailto:m...@jammerhund.de>>
>>>    >     >>>> <mailto:m...@jammerhund.de <mailto:m...@jammerhund.de>
>>>    <mailto:m...@jammerhund.de <mailto:m...@jammerhund.de>>>> wrote:
>>>    >     >>>>
>>>    >     >>>>    Hi,
>>>    >     >>>>
>>>    >     >>>>    the attached patch are a first version of my
>>>    selectionstyle
>>>    >     >>>>    enhancement. You can change the selectionstyle with
>>>    a new
>>>    >     tab in
>>>    >     >>>>    the optionsdialog. The stylings are stored in the
>>>    persistent
>>>    >     >>>>    Blackboard -> workbench-state.xml.
>>>    >     >>>>
>>>    >     >>>>    Please take a look at my code and tell me your
>>>    opinion. It
>>>    >     would
>>>    >     >>>>    be nice if you can integrate the code into the project.
>>>    >     >>>>
>>>    >     >>>>    Can anybody tell me how i can do a "repaint" after
>>>    the OK
>>>    >     button
>>>    >     >>>>    was
>>>    pressed(SelectionStyllingOptionsPanel.okPressed()). In the
>>>    >     >>>>    actual version you must move or zoom the map that
>>>    you see
>>>    >     the new
>>>    >     >>>>    styling setting. It would be better if you see the
>>>    changes
>>>    >     >>>>    immediately.
>>>    >     >>>>
>>>    >     >>>>    Matthias
>>>    >     >>>>
>>>    >     >>>>
>>>    >     >>>>
>>>    >     >>>>
>>>    >
>>> ------------------------------------------------------------------------------
>>>
>>>    >     >>>>    ThinkGeek and WIRED's GeekDad team up for the Ultimate
>>>    >     >>>>    GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
>>>    >     >>>>    lucky parental unit.  See the prize list and enter
>>>    to win:
>>>    >     >>>>    http://p.sf.net/sfu/thinkgeek-promo
>>>    >     >>>>    _______________________________________________
>>>    >     >>>>    Jump-pilot-devel mailing list
>>>    >     >>>>    Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>
>>>    >     >>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>>
>>>    >     >>>>
>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >     >>>>
>>>    >     >>>>
>>>    >     >>>>
>>>    >
>>>  ------------------------------------------------------------------------
>>>    >     >>>>
>>>    >     >>>>
>>>    >     >>>>
>>>    >
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    >     >>>> ThinkGeek and WIRED's GeekDad team up for the Ultimate
>>>    >     GeekDad Father's
>>>    >     >>>> Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit.
>>>    >      See the prize
>>>    >     >>>> list and enter to win: http://p.sf.net/sfu/thinkgeek-promo
>>>    >     >>>>
>>>    >
>>>  ------------------------------------------------------------------------
>>>    >     >>>>
>>>    >     >>>> _______________________________________________
>>>    >     >>>> Jump-pilot-devel mailing list
>>>    >     >>>> Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>
>>>    >     >>>>
>>>    https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >     >>>>
>>>    >     >>>>
>>>    >     >>>
>>>    >     >>>
>>>    >
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    >     >>> ThinkGeek and WIRED's GeekDad team up for the Ultimate
>>>    >     >>> GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
>>>    >     >>> lucky parental unit.  See the prize list and enter to win:
>>>    >     >>> http://p.sf.net/sfu/thinkgeek-promo
>>>    >     >>> _______________________________________________
>>>    >     >>> Jump-pilot-devel mailing list
>>>    >     >>> Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>
>>>    >     >>>
>>>    https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >     >>>
>>>    >     >>>
>>>    >     >>
>>>    >
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    >     >> ThinkGeek and WIRED's GeekDad team up for the Ultimate
>>>    >     >> GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
>>>    >     >> lucky parental unit.  See the prize list and enter to win:
>>>    >     >> http://p.sf.net/sfu/thinkgeek-promo
>>>    >     >> _______________________________________________
>>>    >     >> Jump-pilot-devel mailing list
>>>    >     >> Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>
>>>    >     >>
>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >     >>
>>>    >     >>
>>>    >     >>
>>>    >     >
>>>    >     >
>>>    >
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    >     > ThinkGeek and WIRED's GeekDad team up for the Ultimate
>>>    >     > GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
>>>    >     > lucky parental unit.  See the prize list and enter to win:
>>>    >     > http://p.sf.net/sfu/thinkgeek-promo
>>>    >     > _______________________________________________
>>>    >     > Jump-pilot-devel mailing list
>>>    >     > Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>
>>>    >     > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >     >
>>>    >
>>>    >
>>>    >
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    >     This SF.net email is sponsored by Sprint
>>>    >     What will you do first with EVO, the first 4G phone?
>>>    >     Visit sprint.com/first <http://sprint.com/first>
>>>    <http://sprint.com/first> --
>>>    >     http://p.sf.net/sfu/sprint-com-first
>>>    >     _______________________________________________
>>>    >     Jump-pilot-devel mailing list
>>>    >     Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    >     <mailto:Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>>
>>>    >     https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >
>>>    >
>>>    >
>>>
>>>  ------------------------------------------------------------------------
>>>    >
>>>    >
>>>
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    > This SF.net email is sponsored by Sprint
>>>    > What will you do first with EVO, the first 4G phone?
>>>    > Visit sprint.com/first <http://sprint.com/first> --
>>>    http://p.sf.net/sfu/sprint-com-first
>>>    >
>>>
>>>  ------------------------------------------------------------------------
>>>    >
>>>    > _______________________________________________
>>>    > Jump-pilot-devel mailing list
>>>    > Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>    >
>>>
>>>
>>>
>>>  
>>> ------------------------------------------------------------------------------
>>>
>>>    This SF.net email is sponsored by Sprint
>>>    What will you do first with EVO, the first 4G phone?
>>>    Visit sprint.com/first <http://sprint.com/first> --
>>>    http://p.sf.net/sfu/sprint-com-first
>>>    _______________________________________________
>>>    Jump-pilot-devel mailing list
>>>    Jump-pilot-devel@lists.sourceforge.net
>>>    <mailto:Jump-pilot-devel@lists.sourceforge.net>
>>>    https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> ------------------------------------------------------------------------------
>>>
>>> This SF.net email is sponsored by Sprint
>>> What will you do first with EVO, the first 4G phone?
>>> Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> Jump-pilot-devel mailing list
>>> Jump-pilot-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>
>>>
>> ------------------------------------------------------------------------
>>
>>
>> ------------------------------------------------------------------------------
>> This SF.net email is sponsored by Sprint
>> What will you do first with EVO, the first 4G phone?
>> Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> Jump-pilot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>
>
>
>
> ------------------------------------------------------------------------------
> The Palm PDK Hot Apps Program offers developers who use the
> Plug-In Development Kit to bring their C/C++ apps to Palm for a share
> of $1 Million in cash or HP Products. Visit us here for more details:
> http://p.sf.net/sfu/dev2dev-palm
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
>
------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to