/** * Sets the title of the JOSM main window, adding a star if there are dirty layers. * * @see Main#parent */ protected void refreshTitle() { if (Main.parent != null) { layerLock.readLock().lock(); try { boolean dirty = editLayer != null && (editLayer.requiresSaveToFile() || (editLayer.requiresUploadToServer() && !editLayer.isUploadDiscouraged())); ((JFrame) Main.parent).setTitle((dirty ? "* " : "") + tr("Java OpenStreetMap Editor")); ((JFrame) Main.parent).getRootPane().putClientProperty("Window.documentModified", dirty); } finally { layerLock.readLock().unlock(); } } }