mirror of https://github.com/zlatinb/muwire
unshare individual file
parent
f5293d65dd
commit
7c04c0f83c
|
@ -14,12 +14,14 @@ import javax.inject.Inject
|
|||
|
||||
import com.muwire.core.Constants
|
||||
import com.muwire.core.Core
|
||||
import com.muwire.core.SharedFile
|
||||
import com.muwire.core.download.DownloadStartedEvent
|
||||
import com.muwire.core.download.UIDownloadCancelledEvent
|
||||
import com.muwire.core.download.UIDownloadEvent
|
||||
import com.muwire.core.download.UIDownloadPausedEvent
|
||||
import com.muwire.core.download.UIDownloadResumedEvent
|
||||
import com.muwire.core.files.DirectoryUnsharedEvent
|
||||
import com.muwire.core.files.FileUnsharedEvent
|
||||
import com.muwire.core.search.QueryEvent
|
||||
import com.muwire.core.search.SearchEvent
|
||||
import com.muwire.core.trust.TrustEvent
|
||||
|
@ -33,6 +35,8 @@ class MainFrameController {
|
|||
|
||||
@MVCMember @Nonnull
|
||||
MainFrameModel model
|
||||
@MVCMember @Nonnull
|
||||
MainFrameView view
|
||||
|
||||
private volatile Core core
|
||||
|
||||
|
@ -206,8 +210,11 @@ class MainFrameController {
|
|||
markTrust("trusted-table", TrustLevel.NEUTRAL, model.trusted)
|
||||
}
|
||||
|
||||
void unshareSelectedFiles() {
|
||||
println "unsharing selected files"
|
||||
void unshareSelectedFile() {
|
||||
SharedFile sf = view.selectedSharedFile()
|
||||
if (sf == null)
|
||||
return
|
||||
core.eventBus.publish(new FileUnsharedEvent(unsharedFile : sf))
|
||||
}
|
||||
|
||||
void stopWatchingDirectory() {
|
||||
|
|
|
@ -367,11 +367,12 @@ class MainFrameView {
|
|||
sharedFilesTable.rowSorter.setSortsOnUpdates(true)
|
||||
|
||||
JPopupMenu sharedFilesMenu = new JPopupMenu()
|
||||
// JMenuItem unshareSelectedFiles = new JMenuItem("Unshare selected files")
|
||||
// unshareSelectedFiles.addActionListener({mvcGroup.controller.unshareSelectedFiles()})
|
||||
JMenuItem copyHashToClipboard = new JMenuItem("Copy hash to clipboard")
|
||||
copyHashToClipboard.addActionListener({mvcGroup.view.copyHashToClipboard(sharedFilesTable)})
|
||||
copyHashToClipboard.addActionListener({mvcGroup.view.copyHashToClipboard()})
|
||||
sharedFilesMenu.add(copyHashToClipboard)
|
||||
JMenuItem unshareSelectedFiles = new JMenuItem("Unshare selected files")
|
||||
unshareSelectedFiles.addActionListener({mvcGroup.controller.unshareSelectedFile()})
|
||||
sharedFilesMenu.add(unshareSelectedFiles)
|
||||
sharedFilesTable.addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
public void mouseReleased(MouseEvent e) {
|
||||
|
@ -431,13 +432,21 @@ class MainFrameView {
|
|||
menu.show(event.getComponent(), event.getX(), event.getY())
|
||||
}
|
||||
|
||||
def copyHashToClipboard(JTable sharedFilesTable) {
|
||||
def selectedSharedFile() {
|
||||
def sharedFilesTable = builder.getVariable("shared-files-table")
|
||||
int selected = sharedFilesTable.getSelectedRow()
|
||||
if (selected < 0)
|
||||
return
|
||||
if (lastSharedSortEvent != null)
|
||||
return null
|
||||
if (lastSharedSortEvent != null)
|
||||
selected = sharedFilesTable.rowSorter.convertRowIndexToModel(selected)
|
||||
String root = Base64.encode(model.shared[selected].infoHash.getRoot())
|
||||
model.shared[selected]
|
||||
}
|
||||
|
||||
def copyHashToClipboard() {
|
||||
def selected = selectedSharedFile()
|
||||
if (selected == null)
|
||||
return
|
||||
String root = Base64.encode(selected.infoHash.getRoot())
|
||||
StringSelection selection = new StringSelection(root)
|
||||
def clipboard = Toolkit.getDefaultToolkit().getSystemClipboard()
|
||||
clipboard.setContents(selection, null)
|
||||
|
|
Loading…
Reference in New Issue