From: Dan B. <dan...@us...> - 2011-01-19 15:22:39
|
Update of /cvsroot/jmri/jmri/jmrit/operations/rollingstock/cars In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv14719/src/jmri/jmrit/operations/rollingstock/cars Modified Files: Car.java CarSetFrame.java Log Message: Minor GUI improvements Index: Car.java =================================================================== RCS file: /cvsroot/jmri/jmri/jmrit/operations/rollingstock/cars/Car.java,v retrieving revision 1.63 retrieving revision 1.64 diff -C2 -d -r1.63 -r1.64 *** Car.java 18 Jan 2011 04:21:18 -0000 1.63 --- Car.java 19 Jan 2011 15:22:31 -0000 1.64 *************** *** 154,158 **** --- 154,162 ---- public void setNextDestination(Location destination){ Location old = _nextDestination; + if (old != null) + old.removePropertyChangeListener(this); _nextDestination = destination; + if (_nextDestination != null) + _nextDestination.addPropertyChangeListener(this); log.debug("Next destination for car ("+toString()+") old: "+old+" new: "+destination); if ((old != null && !old.equals(destination)) || (destination != null && !destination.equals(old))) *************** *** 172,176 **** --- 176,184 ---- public void setNextDestTrack(Track track){ Track old = _nextDestTrack; + if (old != null) + old.removePropertyChangeListener(this); _nextDestTrack = track; + if (_nextDestTrack != null) + _nextDestTrack.addPropertyChangeListener(this); if ((old != null && !old.equals(track)) || (track != null && !track.equals(old))) firePropertyChange(NEXT_DESTINATION_TRACK_CHANGED_PROPERTY, old, track); *************** *** 494,497 **** --- 502,507 ---- public void dispose(){ setKernel(null); + setNextDestination(null); // removes property change listener + setNextDestTrack(null); // removes property change listener CarTypes.instance().removePropertyChangeListener(this); CarLengths.instance().removePropertyChangeListener(this); *************** *** 549,556 **** } if ((a = e.getAttribute("nextDestId")) != null){ ! _nextDestination = LocationManager.instance().getLocationById(a.getValue()); } ! if (_nextDestination != null && (a = e.getAttribute("nextDestTrackId")) != null){ ! _nextDestTrack = _nextDestination.getTrackById(a.getValue()); } if ((a = e.getAttribute("rweDestId")) != null){ --- 559,566 ---- } if ((a = e.getAttribute("nextDestId")) != null){ ! setNextDestination(LocationManager.instance().getLocationById(a.getValue())); } ! if (getNextDestination() != null && (a = e.getAttribute("nextDestTrackId")) != null){ ! setNextDestTrack(getNextDestination().getTrackById(a.getValue())); } if ((a = e.getAttribute("rweDestId")) != null){ Index: CarSetFrame.java =================================================================== RCS file: /cvsroot/jmri/jmri/jmrit/operations/rollingstock/cars/CarSetFrame.java,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** CarSetFrame.java 12 Jan 2011 00:40:33 -0000 1.26 --- CarSetFrame.java 19 Jan 2011 15:22:31 -0000 1.27 *************** *** 83,93 **** _car.setNextDestTrack(null); } else { if (finalDestTrackBox.getSelectedItem() != null ! && !finalDestTrackBox.getSelectedItem().equals("")){ ! _car.setNextDestTrack((Track)finalDestTrackBox.getSelectedItem()); ! } else { ! _car.setNextDestTrack(null); ! } _car.setNextDestination((Location) finalDestinationBox.getSelectedItem()); } if (!super.save()) --- 83,92 ---- _car.setNextDestTrack(null); } else { + Track finalDestTrack = null; if (finalDestTrackBox.getSelectedItem() != null ! && !finalDestTrackBox.getSelectedItem().equals("")) ! finalDestTrack = (Track)finalDestTrackBox.getSelectedItem(); _car.setNextDestination((Location) finalDestinationBox.getSelectedItem()); + _car.setNextDestTrack(finalDestTrack); } if (!super.save()) |