Ignore:
Timestamp:
2012-08-13T02:37:03+02:00 (12 years ago)
Author:
Don-vip
Message:

fix #7716 - History shows same version number, wrong date, user, and CT for modified objects

Location:
trunk/src/org/openstreetmap/josm/gui/history
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowser.java

    r5266 r5440  
    1313import javax.swing.JTable;
    1414
     15import org.openstreetmap.josm.data.osm.OsmPrimitive;
    1516import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
    1617import org.openstreetmap.josm.data.osm.history.History;
  • trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserModel.java

    r5340 r5440  
    2020import org.openstreetmap.josm.data.osm.RelationMemberData;
    2121import org.openstreetmap.josm.data.osm.User;
     22import org.openstreetmap.josm.data.osm.UserInfo;
    2223import org.openstreetmap.josm.data.osm.Way;
    2324import org.openstreetmap.josm.data.osm.event.AbstractDatasetChangedEvent;
     
    3637import org.openstreetmap.josm.data.osm.history.HistoryWay;
    3738import org.openstreetmap.josm.data.osm.visitor.AbstractVisitor;
     39import org.openstreetmap.josm.gui.JosmUserIdentityManager;
    3840import org.openstreetmap.josm.gui.MapView;
    3941import org.openstreetmap.josm.gui.MapView.LayerChangeListener;
     
    437439            case 4: {
    438440                    HistoryOsmPrimitive p = getPrimitive(row);
    439                     if (p != null)
     441                    if (p != null && p.getTimestamp() != null)
    440442                        return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT).format(p.getTimestamp());
    441443                    return null;
     
    877879
    878880        public void visit(Node n) {
    879             clone = new HistoryNode(n.getId(), n.getVersion(), n.isVisible(), n.getUser(), 0, n.getTimestamp(), n.getCoor());
     881            clone = new HistoryNode(n.getId(), n.getVersion(), n.isVisible(), getCurrentUser(), 0, null, n.getCoor(), false);
    880882            clone.setTags(n.getKeys());
    881883        }
    882884
    883885        public void visit(Relation r) {
    884             clone = new HistoryRelation(r.getId(), r.getVersion(), r.isVisible(), r.getUser(), 0, r.getTimestamp());
     886            clone = new HistoryRelation(r.getId(), r.getVersion(), r.isVisible(), getCurrentUser(), 0, null, false);
    885887            clone.setTags(r.getKeys());
    886888            HistoryRelation hr = (HistoryRelation)clone;
     
    891893
    892894        public void visit(Way w) {
    893             clone = new HistoryWay(w.getId(), w.getVersion(), w.isVisible(), w.getUser(), 0, w.getTimestamp());
     895            clone = new HistoryWay(w.getId(), w.getVersion(), w.isVisible(), getCurrentUser(), 0, null, false);
    894896            clone.setTags(w.getKeys());
    895897            for (Node n: w.getNodes()) {
     
    898900        }
    899901
     902        private User getCurrentUser() {
     903            UserInfo info = JosmUserIdentityManager.getInstance().getUserInfo();
     904            return info == null ? User.getAnonymous() : User.createOsmUser(info.getId(), info.getDisplayName());
     905        }
     906
    900907        public HistoryOsmPrimitive build(OsmPrimitive primitive) {
    901908            primitive.visit(this);
  • trunk/src/org/openstreetmap/josm/gui/history/VersionInfoPanel.java

    r5319 r5440  
    2020import org.openstreetmap.josm.Main;
    2121import org.openstreetmap.josm.actions.AbstractInfoAction;
     22import org.openstreetmap.josm.data.osm.OsmPrimitive;
    2223import org.openstreetmap.josm.data.osm.User;
    2324import org.openstreetmap.josm.data.osm.history.HistoryOsmPrimitive;
    2425import org.openstreetmap.josm.gui.JMultilineLabel;
     26import org.openstreetmap.josm.gui.JosmUserIdentityManager;
    2527import org.openstreetmap.josm.gui.layer.OsmDataLayer;
    26 import org.openstreetmap.josm.io.auth.CredentialsManager;
    2728import org.openstreetmap.josm.tools.CheckParameterUtil;
    2829import org.openstreetmap.josm.tools.UrlLabel;
     
    153154            lblUser.setDescription(username);
    154155        } else {
    155             String user = CredentialsManager.getInstance().getUsername();
     156            String user = JosmUserIdentityManager.getInstance().getUserName();
    156157            if (user == null) {
    157158                lblUser.setDescription(tr("anonymous"));
     159                lblUser.setUrl(null);
    158160            } else {
    159161                try {
  • trunk/src/org/openstreetmap/josm/gui/history/VersionTableColumnModel.java

    r5340 r5440  
    77import javax.swing.table.DefaultTableColumnModel;
    88import javax.swing.table.TableColumn;
     9import javax.swing.table.TableColumnModel;
    910
    1011/**
     
    5859    }
    5960
     61    /**
     62     * Creates a new {@code VersionTableColumnModel}.
     63     */
    6064    public VersionTableColumnModel() {
    6165        createColumns();
Note: See TracChangeset for help on using the changeset viewer.