X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Ftodesbaum%2Fjsite%2Fgui%2FProjectPage.java;h=1da83d2bcea148af7974006cbb680b6722d9e710;hb=7ec476fcc83a2ebe74a9faf3251d9d60fd03f58e;hp=a072423d79cedf839a9cee609eefc95b948cf28c;hpb=9e6e70c28963fde2a6c8b120974f8a70d4da25bc;p=jSite.git diff --git a/src/main/java/de/todesbaum/jsite/gui/ProjectPage.java b/src/main/java/de/todesbaum/jsite/gui/ProjectPage.java index a072423..1da83d2 100644 --- a/src/main/java/de/todesbaum/jsite/gui/ProjectPage.java +++ b/src/main/java/de/todesbaum/jsite/gui/ProjectPage.java @@ -1,5 +1,5 @@ /* - * jSite - ProjectPage.java - Copyright © 2006–2012 David Roden + * jSite - ProjectPage.java - Copyright © 2006–2014 David Roden * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -33,6 +33,8 @@ import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; import java.io.IOException; import java.text.MessageFormat; +import java.util.List; +import java.util.Map.Entry; import javax.swing.AbstractAction; import javax.swing.Action; @@ -58,9 +60,10 @@ import javax.swing.text.Document; import javax.swing.text.DocumentFilter; import net.pterodactylus.util.swing.SortedListModel; +import de.todesbaum.jsite.application.FileOption; import de.todesbaum.jsite.application.Freenet7Interface; -import de.todesbaum.jsite.application.KeyDialog; import de.todesbaum.jsite.application.Project; +import de.todesbaum.jsite.application.WebOfTrustInterface; import de.todesbaum.jsite.i18n.I18n; import de.todesbaum.jsite.i18n.I18nContainer; import de.todesbaum.util.swing.TLabel; @@ -77,6 +80,9 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D /** The freenet interface. */ private Freenet7Interface freenetInterface; + /** The web of trust interface. */ + private WebOfTrustInterface webOfTrustInterface; + /** The “browse” action. */ private Action projectLocalPathBrowseAction; @@ -437,7 +443,7 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D * @param projects * The list of projects */ - public void setProjects(Project[] projects) { + public void setProjects(List projects) { projectListModel.clear(); for (Project project : projects) { projectListModel.add(project); @@ -449,8 +455,8 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D * * @return The list of projects */ - public Project[] getProjects() { - return projectListModel.toArray(new Project[projectListModel.size()]); + public List getProjects() { + return projectListModel; } /** @@ -464,6 +470,16 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D } /** + * Sets the web of trust interface to use. + * + * @param webOfTrustInterface + * The web of trust interface to use + */ + public void setWebOfTrustInterface(WebOfTrustInterface webOfTrustInterface) { + this.webOfTrustInterface = webOfTrustInterface; + } + + /** * Returns the currently selected project. * * @return The currently selected project @@ -616,6 +632,8 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D KeyDialog keyDialog = new KeyDialog(freenetInterface, wizard); keyDialog.setPrivateKey(selectedProject.getInsertURI()); keyDialog.setPublicKey(selectedProject.getRequestURI()); + keyDialog.setProjects(getProjects()); + keyDialog.setOwnIdentities(webOfTrustInterface.getOwnIdentities()); keyDialog.setVisible(true); if (!keyDialog.wasCancelled()) { String originalPublicKey = selectedProject.getRequestURI(); @@ -624,6 +642,9 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D selectedProject.setRequestURI(keyDialog.getPublicKey()); if (!originalPublicKey.equals(selectedProject.getRequestURI()) || !originalPrivateKey.equals(selectedProject.getInsertURI())) { selectedProject.setEdition(-1); + for (Entry fileOption : selectedProject.getFileOptions().entrySet()) { + fileOption.getValue().setLastInsertHash(null); + } } updateCompleteURI(); }