Michael, Jukka,

i took some time trying to fix it. looks good, but i am not sure if i broke 
shortcuts/quasimodes in the process. so please work a bit with it doing

- activate a MultiClickTool (DrawLineString, CutFeaturesTool.. )
- cut a bit
- rename layers using Copy/Paste and Enter
- edit attributes in attribTab using Copy/Paste and Enter
- enabled/disable snapping temporarily via space while editing

stuff like that.. thx ede

On 08.12.2015 14:04, edgar.sol...@web.de wrote:
> not really. CutFeatureTool as well as DrawLineStringTool extend 
> MultiClickTool. if the error happens with CutFeatureTool  it should happen w/ 
> DrawLineStringTool as weel.
> 
> but let me investigate further.. ede
> 
> On 08.12.2015 13:45, Michaël Michaud wrote:
>> Hi Ede,
>>
>> If you have an idea hox to fix it, go ahead,
>> Note : you get the error if CutFeaturesTool is active AND the user 
>> started to draw the cut line
>> There is another situation which is annoying : if the user started to 
>> draw the cut line traversing a polygon
>> then edit this particular polygon in attribute view and validate with 
>> enter : enter validate AND cut the polygon
>>
>> So yes, your diagnostic is probably right,
>>
>> Michaël
>>
>> Le 08/12/2015 11:02, edgar.sol...@web.de a écrit :
>>> sounds like the global shortcut listener reacts here. Mike do you want to 
>>> look or should i?
>>>
>>> ..ede
>>>
>>> On 08.12.2015 10:21, Rahkonen Jukka (MML) wrote:
>>>> The tool begins to be perfect but I found this small oddity:
>>>>
>>>>   
>>>>
>>>> When the Cut feature tool is active, editing attributes in the attribute 
>>>> table and accepting changes with Enter throws an exception.  Attribute 
>>>> gets edited, though. Issue has to do with Enter because I get no 
>>>> exceptions if I edit attributes and move to the next row with mouse.
>>>>
>>>>   
>>>>
>>>> The error message is
>>>>
>>>>   
>>>>
>>>> java.lang.IllegalArgumentException: Invalid number of points in LineString 
>>>> (found 1 - must be 0 or >= 2)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jts.geom.LineString.init(LineString.java:102)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jts.geom.LineString.<init>(LineString.java:93)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jts.geom.GeometryFactory.createLineString(GeometryFactory.java:555)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jts.geom.GeometryFactory.createLineString(GeometryFactory.java:546)
>>>>
>>>>                               at 
>>>> org.openjump.core.ui.plugin.edittoolbox.cursortools.CutFeaturesTool.getLineString(CutFeaturesTool.java:183)
>>>>
>>>>                               at 
>>>> org.openjump.core.ui.plugin.edittoolbox.cursortools.CutFeaturesTool.gestureFinished(CutFeaturesTool.java:108)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jump.workbench.ui.cursortool.AbstractCursorTool.fireGestureFinished(AbstractCursorTool.java:596)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jump.workbench.ui.cursortool.MultiClickTool.finishGesture(MultiClickTool.java:248)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jump.workbench.ui.cursortool.MultiClickTool.mouseReleased(MultiClickTool.java:139)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jump.workbench.ui.cursortool.MultiClickTool$1.keyReleased(MultiClickTool.java:303)
>>>>
>>>>                               at 
>>>> com.vividsolutions.jump.workbench.ui.MultiRecursiveKeyListener.keyReleased(MultiRecursiveKeyListener.java:52)
>>>>
>>>>                               at 
>>>> java.awt.AWTEventMulticaster.keyReleased(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.Component.processKeyEvent(Unknown Source)
>>>>
>>>>                               at 
>>>> javax.swing.JComponent.processKeyEvent(Unknown Source)
>>>>
>>>>                               at java.awt.Component.processEvent(Unknown 
>>>> Source)
>>>>
>>>>                               at java.awt.Container.processEvent(Unknown 
>>>> Source)
>>>>
>>>>                               at 
>>>> java.awt.Component.dispatchEventImpl(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.Container.dispatchEventImpl(Unknown Source)
>>>>
>>>>                               at java.awt.Component.dispatchEvent(Unknown 
>>>> Source)
>>>>
>>>>                               at 
>>>> java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.Component.dispatchEventImpl(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.Container.dispatchEventImpl(Unknown Source)
>>>>
>>>>                               at java.awt.Window.dispatchEventImpl(Unknown 
>>>> Source)
>>>>
>>>>                               at java.awt.Component.dispatchEvent(Unknown 
>>>> Source)
>>>>
>>>>                               at 
>>>> java.awt.EventQueue.dispatchEventImpl(Unknown Source)
>>>>
>>>>                               at java.awt.EventQueue.access$200(Unknown 
>>>> Source)
>>>>
>>>>                               at java.awt.EventQueue$3.run(Unknown Source)
>>>>
>>>>                               at java.awt.EventQueue$3.run(Unknown Source)
>>>>
>>>>                               at 
>>>> java.security.AccessController.doPrivileged(Native Method)
>>>>
>>>>                               at 
>>>> java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
>>>>
>>>>                               at 
>>>> java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
>>>>
>>>>                               at java.awt.EventQueue$4.run(Unknown Source)
>>>>
>>>>                               at java.awt.EventQueue$4.run(Unknown Source)
>>>>
>>>>                               at 
>>>> java.security.AccessController.doPrivileged(Native Method)
>>>>
>>>>                               at 
>>>> java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
>>>>
>>>>                               at java.awt.EventQueue.dispatchEvent(Unknown 
>>>> Source)
>>>>
>>>>                               at 
>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>>
>>>>                               at 
>>>> java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>>
>>>>                               at java.awt.EventDispatchThread.run(Unknown 
>>>> Source)
>>>>
>>>>   
>>>>
>>>>   
>>>>
>>>> -Jukka-
>>>>
>>>>   
>>>>
>>>> Michaël Michaud wrote:
>>>>
>>>>   
>>>>
>>>> Hi,
>>>>
>>>> Absolutely not !
>>>> (it is always painful to exclude pure GeometryCollections because
>>>> MultiPolygon or MultiLineString and MultiPoint are "instanceof" 
>>>> GeometryCollection
>>>> altough their class name is not GeometryCollection).
>>>>
>>>> Thanks for your watchfullness
>>>>
>>>> Michaël
>>>>
>>>> Le 07/12/2015 23:19, Rahkonen Jukka (MML) a écrit :
>>>>
>>>>      Hi,
>>>>
>>>>       
>>>>
>>>>      Is it intentional that r4582 does not cut multipolygons and 
>>>> multilinestrings at all, not even if they have only one part?
>>>>
>>>>       
>>>>
>>>>      -Jukka-
>>>>
>>>>       
>>>>
>>>>      *Lähettäjä:*Michaël Michaud [mailto:m.michael.mich...@orange.fr]
>>>>      *Lähetetty:* 7. joulukuuta 2015 23:45
>>>>      *Vastaanottaja:* jump-pilot-devel@lists.sourceforge.net 
>>>> <mailto:jump-pilot-devel@lists.sourceforge.net>
>>>>      *Aihe:* Re: [JPP-Devel] CutFeatureTool
>>>>
>>>>       
>>>>
>>>>      Hi Jukka,
>>>>
>>>>      Thanks, here are some more improvements :
>>>>      - polygon/multipolygon case : preserve original geometry if number of 
>>>> geometries after cutting is still 1
>>>>      - also GeometryCollection was throwing an exception. Now, it is still 
>>>> not cut, but it just display a (yellow) warning and let the process go on.
>>>>
>>>>      Michaël
>>>>
>>>>      Le 07/12/2015 09:08, Rahkonen Jukka (MML) a écrit :
>>>>
>>>>          Seems to work right with points and multipoints. It was OK 
>>>> already in r4578 my Michael. I suppose that the same fix corrected also 
>>>> another issue of previous versions: If polygons or lines were selected but 
>>>> the split line did not intersect with any the selected features were 
>>>> deleted.
>>>>
>>>>           
>>>>
>>>>          Found one more small issue: If polygon is selected and the 
>>>> splitting line crosses some of the rings but not the whole  polygon, the 
>>>> tool edits the source polygon by adding vertices into the locations of 
>>>> intersections. Perhaps the tool should check in some phase the dimensions 
>>>> of the intersection that is computed for polygons and revert noding if 
>>>> intersection is not an area?
>>>>
>>>>           
>>>>
>>>>          -Jukka-
>>>>
>>>>           
>>>>
>>>>          Giuseppe Aruta wrote:
>>>>
>>>>           
>>>>
>>>>          Hi Jukka,
>>>>
>>>>          see OJ 4578. I added a small code to prevent deleting 
>>>> points/multipoints
>>>>
>>>>          Peppe
>>>>
>>>>           
>>>>
>>>>          2015-12-06 23:25 GMT+01:00 Michaël Michaud 
>>>> <m.michael.mich...@orange.fr <mailto:m.michael.mich...@orange.fr>>:
>>>>
>>>>              Hi,
>>>>
>>>>              Thanks for the tests Jukka.
>>>>              Exploding selected multi-geometries even if they are not 
>>>> split seems
>>>>              reasonnable.
>>>>              Problem with points / multi-points should be resolved (they 
>>>> should be
>>>>              unmodified)
>>>>              I found another problem : the tool processed only selected 
>>>> features of
>>>>              the first selected layer in the layerNamePanel.
>>>>              It now processes all selected features, but the undo tool 
>>>> undo features
>>>>              from one layer at a time.
>>>>
>>>>              Michaël
>>>>
>>>>
>>>>              Le 06/12/2015 22:38, Rahkonen Jukka (MML) a écrit :
>>>>              > Hi,
>>>>              >
>>>>              > Some comments:
>>>>              >
>>>>              > - Works well with polygon containing holes
>>>>              > - Works with multipolygons and multilinestrings
>>>>              > - Seems to explode multigeometries which may be a surprise 
>>>> for the user. On the other hand it would be very hard to define what else 
>>>> to do it multigeometries have many parts and linestring splits only some 
>>>> of them so I think that "explode and split" is OK.
>>>>              > - Tool should check that no point/multipoint geometries are 
>>>> selected. Now I get "Layer must be editable" error with such misuse and 
>>>> the selected points are deleted. Undo fortunately works.
>>>>              >
>>>>              > -Jukka Rahkonen-
>>>>              >
>>>>              > Michaël Michaud wrote:
>>>>              >
>>>>              > Hi Peppe, Jukka,
>>>>              >
>>>>              > I just improved CutFeatureTool recently added by Peppe,
>>>>              >
>>>>              > - simplified split routines
>>>>              > - can now split a feature in more than two parts
>>>>              > - more robust (should remove artefacts noticed by Jukka : 
>>>> can you confirm ?)
>>>>              > - more transactional : undo will now un-split all features 
>>>> splitted durnig an operation
>>>>              >
>>>>              > There is still a side effect which is difficult to avoid :
>>>>              > - if a linestring contains a desired self-intersection (non 
>>>> simple-linestring), splitting the linestring will node the 
>>>> self-intersection (splitting uses union op which is noding all input 
>>>> features).
>>>>              >
>>>>              > Michaël
>>>>              >
>>>>              > Le 04/12/2015 10:21, Rahkonen Jukka (MML) a écrit :
>>>>              >> Hi,
>>>>              >>
>>>>              >> The tool has good features:
>>>>              >> - can split many polygons at the same time
>>>>              >> - splits also linestrings
>>>>              >>
>>>>              >> Something to study:
>>>>              >> - Splitting a polygon with hole through the hole creates 
>>>> odd geometries. The existing Split polygon with linestring toold does good 
>>>> job with those.
>>>>              >> - Splitting multipolygons can create odd geometries.
>>>>              >>
>>>>              >> -Jukka Rahkonen-
>>>>              >>
>>>>              >>
>>>>              >> 
>>>> ----------------------------------------------------------------------
>>>>              >> -------- Go from Idea to Many App Stores Faster with 
>>>> Intel(R) XDK Give
>>>>              >> your users amazing mobile app experiences with Intel(R) 
>>>> XDK.
>>>>              >> Use one codebase in this all-in-one HTML5 development 
>>>> environment.
>>>>              >> Design, debug & build mobile apps & 2D/3D high-impact 
>>>> games for multiple OSs.
>>>>              >> 
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>              >> _______________________________________________
>>>>              >> 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
>>>>              >>
>>>>              >
>>>>              > 
>>>> ------------------------------------------------------------------------------
>>>>              > Go from Idea to Many App Stores Faster with Intel(R) XDK 
>>>> Give your users amazing mobile app experiences with Intel(R) XDK.
>>>>              > Use one codebase in this all-in-one HTML5 development 
>>>> environment.
>>>>              > Design, debug & build mobile apps & 2D/3D high-impact games 
>>>> for multiple OSs.
>>>>              > 
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>              > _______________________________________________
>>>>              > 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
>>>>              >
>>>>              > 
>>>> ------------------------------------------------------------------------------
>>>>              > Go from Idea to Many App Stores Faster with Intel(R) XDK
>>>>              > Give your users amazing mobile app experiences with 
>>>> Intel(R) XDK.
>>>>              > Use one codebase in this all-in-one HTML5 development 
>>>> environment.
>>>>              > Design, debug & build mobile apps & 2D/3D high-impact games 
>>>> for multiple OSs.
>>>>              > 
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>              > _______________________________________________
>>>>              > 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
>>>>              >
>>>>
>>>>
>>>>              
>>>> ------------------------------------------------------------------------------
>>>>              Go from Idea to Many App Stores Faster with Intel(R) XDK
>>>>              Give your users amazing mobile app experiences with Intel(R) 
>>>> XDK.
>>>>              Use one codebase in this all-in-one HTML5 development 
>>>> environment.
>>>>              Design, debug & build mobile apps & 2D/3D high-impact games 
>>>> for multiple OSs.
>>>>              
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>              _______________________________________________
>>>>              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
>>>>
>>>>           
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>          
>>>> ------------------------------------------------------------------------------
>>>>
>>>>          Go from Idea to Many App Stores Faster with Intel(R) XDK
>>>>
>>>>          Give your users amazing mobile app experiences with Intel(R) XDK.
>>>>
>>>>          Use one codebase in this all-in-one HTML5 development environment.
>>>>
>>>>          Design, debug & build mobile apps & 2D/3D high-impact games for 
>>>> multiple OSs.
>>>>
>>>>          http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>          _______________________________________________
>>>>
>>>>          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
>>>>
>>>>       
>>>>
>>>>
>>>>
>>>>
>>>>      
>>>> ------------------------------------------------------------------------------
>>>>
>>>>      Go from Idea to Many App Stores Faster with Intel(R) XDK
>>>>
>>>>      Give your users amazing mobile app experiences with Intel(R) XDK.
>>>>
>>>>      Use one codebase in this all-in-one HTML5 development environment.
>>>>
>>>>      Design, debug & build mobile apps & 2D/3D high-impact games for 
>>>> multiple OSs.
>>>>
>>>>      http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>
>>>>
>>>>
>>>>
>>>>      _______________________________________________
>>>>
>>>>      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
>>>>
>>>>   
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Go from Idea to Many App Stores Faster with Intel(R) XDK
>>>> Give your users amazing mobile app experiences with Intel(R) XDK.
>>>> Use one codebase in this all-in-one HTML5 development environment.
>>>> Design, debug & build mobile apps & 2D/3D high-impact games for multiple 
>>>> OSs.
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Jump-pilot-devel mailing list
>>>> Jump-pilot-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>
>>> ------------------------------------------------------------------------------
>>> Go from Idea to Many App Stores Faster with Intel(R) XDK
>>> Give your users amazing mobile app experiences with Intel(R) XDK.
>>> Use one codebase in this all-in-one HTML5 development environment.
>>> Design, debug & build mobile apps & 2D/3D high-impact games for multiple 
>>> OSs.
>>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>>> _______________________________________________
>>> Jump-pilot-devel mailing list
>>> Jump-pilot-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>
>>
>>
>> ------------------------------------------------------------------------------
>> Go from Idea to Many App Stores Faster with Intel(R) XDK
>> Give your users amazing mobile app experiences with Intel(R) XDK.
>> Use one codebase in this all-in-one HTML5 development environment.
>> Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
>> http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> Jump-pilot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>
> 

------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to