From a082dc2dfd7a1c001382a7eb3aabfe6b7f6fc2a3 Mon Sep 17 00:00:00 2001 From: Zlatin Balevsky Date: Mon, 2 Nov 2020 01:11:15 +0000 Subject: [PATCH] copy collection hash from wizard --- .../com/muwire/gui/CollectionWizardController.groovy | 12 ++++++++++++ .../views/com/muwire/gui/CollectionWizardView.groovy | 1 + 2 files changed, 13 insertions(+) diff --git a/gui/griffon-app/controllers/com/muwire/gui/CollectionWizardController.groovy b/gui/griffon-app/controllers/com/muwire/gui/CollectionWizardController.groovy index b9e8f85d..2fefe2bb 100644 --- a/gui/griffon-app/controllers/com/muwire/gui/CollectionWizardController.groovy +++ b/gui/griffon-app/controllers/com/muwire/gui/CollectionWizardController.groovy @@ -4,6 +4,10 @@ import griffon.core.artifact.GriffonController import griffon.core.controller.ControllerAction import griffon.inject.MVCMember import griffon.metadata.ArtifactProviderFor +import net.i2p.data.Base64 + +import java.awt.Toolkit +import java.awt.datatransfer.StringSelection import javax.annotation.Nonnull import javax.swing.tree.DefaultMutableTreeNode @@ -61,6 +65,14 @@ class CollectionWizardController { view.switchToConfiguration() } + @ControllerAction + void copyHash() { + String b64 = Base64.encode(model.collection.getInfoHash().getRoot()) + StringSelection selection = new StringSelection(b64) + def clipboard = Toolkit.getDefaultToolkit().getSystemClipboard() + clipboard.setContents(selection, null) + } + @ControllerAction void save() { model.eventBus.publish(new UICollectionCreatedEvent(collection : model.collection)) diff --git a/gui/griffon-app/views/com/muwire/gui/CollectionWizardView.groovy b/gui/griffon-app/views/com/muwire/gui/CollectionWizardView.groovy index a437cc05..f69a2f22 100644 --- a/gui/griffon-app/views/com/muwire/gui/CollectionWizardView.groovy +++ b/gui/griffon-app/views/com/muwire/gui/CollectionWizardView.groovy @@ -89,6 +89,7 @@ class CollectionWizardView { panel(constraints : BorderLayout.SOUTH) { button(text : trans("CANCEL"), cancelAction) button(text : trans("PREVIOUS"), previousAction) + button(text : trans("COPY_HASH_TO_CLIPBOARD"), copyHashAction) button(text : trans("SAVE"), saveAction) } }