From b30e552498c17269ad94f49d3986ba97d7e74197 Mon Sep 17 00:00:00 2001 From: Zlatin Balevsky Date: Thu, 24 Oct 2019 22:35:29 +0100 Subject: [PATCH] share and unshare a directory --- .../com/muwire/clilanterna/FilesView.groovy | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/cli-lanterna/src/main/groovy/com/muwire/clilanterna/FilesView.groovy b/cli-lanterna/src/main/groovy/com/muwire/clilanterna/FilesView.groovy index 4ef88ffb..ac0cc734 100644 --- a/cli-lanterna/src/main/groovy/com/muwire/clilanterna/FilesView.groovy +++ b/cli-lanterna/src/main/groovy/com/muwire/clilanterna/FilesView.groovy @@ -13,9 +13,11 @@ import com.googlecode.lanterna.gui2.Window import com.googlecode.lanterna.gui2.dialogs.FileDialog import com.googlecode.lanterna.gui2.dialogs.MessageDialog import com.googlecode.lanterna.gui2.dialogs.MessageDialogButton +import com.googlecode.lanterna.gui2.dialogs.TextInputDialog import com.googlecode.lanterna.gui2.table.Table import com.muwire.core.Core import com.muwire.core.SharedFile +import com.muwire.core.files.DirectoryUnsharedEvent import com.muwire.core.files.FileSharedEvent import com.muwire.core.files.FileUnsharedEvent import com.muwire.core.files.UIPersistFilesEvent @@ -96,7 +98,7 @@ class FilesView extends BasicWindow { private void shareFile() { - TerminalSize terminalSize = new TerminalSize(terminalSize.getColumns(), terminalSize.getRows() - 10) + TerminalSize terminalSize = new TerminalSize(terminalSize.getColumns() - 10, terminalSize.getRows() - 10) FileDialog fileDialog = new FileDialog("Share File", "Select a file to share", "Share", terminalSize, false, null) File f = fileDialog.showDialog(textGUI) f = f.getCanonicalFile() @@ -105,10 +107,22 @@ class FilesView extends BasicWindow { } private void shareDirectory() { - + String directoryName = TextInputDialog.showDialog(textGUI, "Share a directory", "Enter the directory to share", "") + if (directoryName == null) + return + File directory = new File(directoryName) + directory = directory.getCanonicalFile() + core.eventBus.publish(new FileSharedEvent(file : directory)) + MessageDialog.showMessageDialog(textGUI, "Directory Shared", directory.getName()+" has been shared", MessageDialogButton.OK) } private void unshareDirectory() { - + String directoryName = TextInputDialog.showDialog(textGUI, "Unshare a directory", "Enter the directory to unshare", "") + if (directoryName == null) + return + File directory = new File(directoryName) + directory = directory.getCanonicalFile() + core.eventBus.publish(new DirectoryUnsharedEvent(directory : directory)) + MessageDialog.showMessageDialog(textGUI, "Directory Unshared", directory.getName()+" has been unshared", MessageDialogButton.OK) } }