public boolean haveNeverSeen() {
   for (PictureData data : files) {
     if (data.isNeverSeen()) {
       return true;
     }
   }
   return false;
 }
 protected void importPicture(List<Picture> poiPictures, Sheet poiSheet, SSheet sheet) {
   for (Picture poiPicture : poiPictures) {
     PictureData poiPicData = poiPicture.getPictureData();
     Integer picDataIx = importedPictureData.get(poiPicData); // ZSS-735
     if (picDataIx != null) {
       sheet.addPicture(
           picDataIx.intValue(), toViewAnchor(poiSheet, poiPicture.getClientAnchor()));
     } else {
       Format format = Format.valueOfFileExtension(poiPicData.suggestFileExtension());
       if (format != null) {
         SPicture pic =
             sheet.addPicture(
                 format,
                 poiPicData.getData(),
                 toViewAnchor(poiSheet, poiPicture.getClientAnchor()));
         importedPictureData.put(poiPicData, pic.getPictureData().getIndex());
       } else {
         // TODO log we ignore a picture with unsupported format
       }
     }
   }
 }
 public synchronized void delete(PictureData picture) {
   locked = true;
   databaseHelper.delete(picture);
   File file = new File(picture.getPath());
   if (!file.exists()) {
     locked = false;
     return;
   }
   file.delete();
   currentPosition = files.indexOf(picture);
   files.remove(picture);
   Collections.sort(files, comparator);
   if (currentPosition >= files.size() || currentPosition == -1) {
     currentPosition = 0;
   }
   notifyObserver();
   locked = false;
 }
 public void show(PictureData picture) {
   picture.shown();
   databaseHelper.addOrUpdate(picture);
 }