Ticket #2364: resizing-frame-deletes-location-channel.patch

File resizing-frame-deletes-location-channel.patch, 2.1 KB (added by deni, 15 years ago)
  • src/main/java/org/sophie2/main/app/commons/frame/FrameLogic.java

    ### Eclipse Workspace Patch 1.0
    #P org.sophie2.main.app.commons
     
    99import org.sophie2.base.commons.util.position.ImmVector; 
    1010import org.sophie2.base.commons.util.position.Position; 
    1111import org.sophie2.base.commons.util.position.Position.Pos1D; 
     12import org.sophie2.base.media.TimePos; 
    1213import org.sophie2.base.model.book.FrameH; 
    1314import org.sophie2.base.model.book.frame.FrameR4; 
    1415import org.sophie2.base.model.book.interfaces.MemberElement; 
     
    8687                                        final ImmSize newSize = ResizableElement.KEY_SIZE.get(access); 
    8788                                        final ImmPoint newLocation =  
    8889                                                MemberElement.KEY_LOCATION.get(access).getValue(elementView.getTime()); 
     90                                        final TimePos time = elementView.getTime();      
    8991                                         
    9092                                        new AutoAction("Element resize.", true) { 
    9193 
     
    9496                                                        ResourceChanger ch = getChanger(); 
    9597 
    9698                                                        ch.setRaw(ResizableElement.KEY_SIZE, newSize); 
    97                                                         ch.setRaw(MemberElement.KEY_LOCATION, oldChannel.setAll(newLocation)); 
     99                                                        ch.setRaw(MemberElement.KEY_LOCATION,  
     100                                                                        oldChannel.setValue(time, newLocation)); 
    98101                                                } 
    99102                                        }.register(access); 
    100103                                } 
     
    108111                                 
    109112                                private void doMove(final LocationChannel oldChannel, 
    110113                                                final ImmPoint newLocationInPage, final ImmSize newSize) { 
     114                                        final TimePos time = elementView.getTime();                                      
    111115                                        new AutoAction("Frame resize", false) { 
    112116                                                @Override 
    113117                                                public void performAuto() { 
    114118                                                        ResourceChanger ch = getChanger(); 
    115119 
    116120                                                        ch.setRaw(ResizableElement.KEY_SIZE, newSize); 
    117                                                         ch.setRaw(MemberElement.KEY_LOCATION, oldChannel 
    118                                                                         .setAll(newLocationInPage)); 
     121                                                        ch.setRaw(MemberElement.KEY_LOCATION,  
     122                                                                        oldChannel.setValue(time, newLocationInPage)); 
    119123                                                } 
    120124                                        }.register(access); 
    121125                                }