Changeset 2019 in josm for trunk/src/org/openstreetmap/josm/gui/history
- Timestamp:
- 2009-08-31T08:06:25+02:00 (15 years ago)
- Location:
- trunk/src/org/openstreetmap/josm/gui/history
- Files:
-
- 2 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialog.java
r2017 r2019 8 8 import java.awt.FlowLayout; 9 9 import java.awt.event.ActionEvent; 10 import java.awt.event.WindowAdapter; 11 import java.awt.event.WindowEvent; 10 12 11 13 import javax.swing.AbstractAction; 12 import javax.swing.JButton;13 14 import javax.swing.JDialog; 14 15 import javax.swing.JOptionPane; … … 17 18 import org.openstreetmap.josm.Main; 18 19 import org.openstreetmap.josm.data.osm.history.History; 20 import org.openstreetmap.josm.data.osm.history.HistoryDataSet; 21 import org.openstreetmap.josm.data.osm.history.HistoryDataSetListener; 22 import org.openstreetmap.josm.gui.SideButton; 19 23 import org.openstreetmap.josm.gui.dialogs.HistoryDialog; 24 import org.openstreetmap.josm.tools.ImageProvider; 20 25 21 26 /** … … 24 29 * 25 30 */ 26 public class HistoryBrowserDialog extends JDialog {31 public class HistoryBrowserDialog extends JDialog implements HistoryDataSetListener{ 27 32 28 33 /** the embedded browser */ … … 37 42 String title = ""; 38 43 switch(h.getEarliest().getType()) { 39 case NODE: title = marktr("History for node {0}"); break;40 case WAY: title = marktr("History for way {0}"); break;41 case RELATION: title = marktr("History for relation {0}"); break;44 case NODE: title = marktr("History for node {0}"); break; 45 case WAY: title = marktr("History for way {0}"); break; 46 case RELATION: title = marktr("History for relation {0}"); break; 42 47 } 43 48 setTitle(tr( … … 57 62 58 63 JPanel pnl = new JPanel(); 59 pnl.setLayout(new FlowLayout(FlowLayout. RIGHT));64 pnl.setLayout(new FlowLayout(FlowLayout.CENTER)); 60 65 61 JButton btn = new JButton(new CloseAction()); 66 SideButton btn = new SideButton(new ReloadAction()); 67 btn.setName("btn.reload"); 68 pnl.add(btn); 69 70 btn = new SideButton(new CloseAction()); 62 71 btn.setName("btn.close"); 63 72 pnl.add(btn); … … 77 86 setHistory(history); 78 87 renderTitle(history); 88 HistoryDataSet.getInstance().addHistoryDataSetListener(this); 89 addWindowListener(new WindowClosingAdapter()); 79 90 } 80 91 … … 87 98 } 88 99 89 /** 90 * registers this dialog with the registry of history dialogs 91 * 92 * @see HistoryDialog#registerHistoryBrowserDialog(long, HistoryBrowserDialog) 93 */ 94 protected void register() { 95 HistoryDialog.registerHistoryBrowserDialog(browser.getHistory().getId(), this); 96 } 97 98 /** 99 * unregisters this dialog from the registry of history dialogs 100 * 101 * @see HistoryDialog#unregisterHistoryBrowserDialog(long) 102 */ 103 protected void unregister() { 104 HistoryDialog.unregisterHistoryBrowserDialog(browser.getHistory().getId()); 105 } 106 107 @Override 108 public void setVisible(boolean visible) { 109 if (visible) { 110 register(); 111 toFront(); 112 } else { 113 unregister(); 100 public void historyUpdated(HistoryDataSet source, long primitiveId) { 101 if (primitiveId == browser.getHistory().getId()) { 102 browser.populate(source.getHistory(primitiveId)); 103 } else if (primitiveId == 0) { 104 browser.populate(source.getHistory(browser.getHistory().getId())); 114 105 } 115 super.setVisible(visible);116 106 } 117 107 … … 120 110 putValue(NAME, tr("Close")); 121 111 putValue(SHORT_DESCRIPTION, tr("Close the dialog")); 112 putValue(SMALL_ICON, ImageProvider.get("ok")); 122 113 } 123 114 124 115 public void actionPerformed(ActionEvent e) { 125 setVisible(false); 116 HistoryDataSet.getInstance().removeHistoryDataSetListener(HistoryBrowserDialog.this); 117 HistoryBrowserDialogManager.getInstance().hide(HistoryBrowserDialog.this); 118 } 119 } 120 121 class ReloadAction extends AbstractAction { 122 public ReloadAction() { 123 putValue(NAME, tr("Reload")); 124 putValue(SHORT_DESCRIPTION, tr("Reload the history from the server")); 125 putValue(SMALL_ICON, ImageProvider.get("dialogs", "refresh")); 126 } 127 128 public void actionPerformed(ActionEvent e) { 129 HistoryLoadTask task = new HistoryLoadTask(); 130 task.add(browser.getHistory()); 131 Main.worker.submit(task); 132 } 133 } 134 135 class WindowClosingAdapter extends WindowAdapter { 136 @Override 137 public void windowClosing(WindowEvent e) { 138 HistoryDataSet.getInstance().removeHistoryDataSetListener(HistoryBrowserDialog.this); 139 HistoryBrowserDialogManager.getInstance().hide(HistoryBrowserDialog.this); 126 140 } 127 141 } -
trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserModel.java
r1709 r2019 103 103 setChanged(); 104 104 notifyObservers(); 105 versionTableModel.fireTableDataChanged(); 105 106 } 106 107 -
trunk/src/org/openstreetmap/josm/gui/history/VersionTable.java
r1709 r2019 56 56 public void mouseClicked(MouseEvent e) { 57 57 switch(e.getClickCount()) { 58 case 2: handleDoubleClick(e); break;58 case 2: handleDoubleClick(e); break; 59 59 } 60 60 }
Note:
See TracChangeset
for help on using the changeset viewer.