예제 #1
0
 @Override
 public void actionPerformed(ActionEvent e) {
   for (LocalFileItem localFileItem : localFileItems) {
     friendFileList.removeFile(localFileItem.getFile());
   }
   GuiUtils.getMainFrame().repaint();
 }
예제 #2
0
    public FriendShareCheckBox(LocalFileList friendFileList, LocalFileItem localFileItem) {
      super(I18n.tr("Share"));
      this.friendFileList = friendFileList;
      this.localFile = localFileItem;
      setSelected(friendFileList.contains(localFileItem.getFile()));

      addActionListener(
          new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
              if (isSelected()) {
                FriendShareCheckBox.this.friendFileList.addFile(localFile.getFile());
              } else {
                FriendShareCheckBox.this.friendFileList.removeFile(localFile.getFile());
              }
            }
          });
    }
  @Override
  public void removeFiles(Filter<LocalFileItem> filter) {
    List<LocalFileItem> files = new ArrayList<LocalFileItem>();

    getModel().getReadWriteLock().readLock().lock();
    try {
      for (LocalFileItem localFileItem : getModel()) {
        if (filter.allow(localFileItem)) {
          files.add(localFileItem);
        }
      }
    } finally {
      getModel().getReadWriteLock().readLock().unlock();
    }

    for (LocalFileItem localFileItem : files) {
      removeFile(localFileItem.getFile());
    }
  }