< prev index next >

src/java.desktop/unix/classes/sun/awt/X11/GtkFileDialogPeer.java

Print this page




  93             accessor.setFiles(fd, files);
  94         }
  95     }
  96 
  97     /**
  98      * Called exclusively by the native C code.
  99      */
 100     private boolean filenameFilterCallback(String fullname) {
 101         if (fd.getFilenameFilter() == null) {
 102             // no filter, accept all.
 103             return true;
 104         }
 105 
 106         File filen = new File(fullname);
 107         return fd.getFilenameFilter().accept(new File(filen.getParent()),
 108                 filen.getName());
 109     }
 110 
 111     @Override
 112     public void setVisible(boolean b) {



 113         XToolkit.awtLock();
 114         try {
 115             quit = !b;
 116             if (b) {
 117                 Runnable task = () -> {
 118                     showNativeDialog();
 119                     standaloneWindow = 0;
 120                     fd.setVisible(false);
 121                 };
 122                 new Thread(null, task, "ShowDialog", 0, false).start();
 123             } else {
 124                 quit();
 125                 fd.setVisible(false);
 126             }
 127         } finally {
 128             XToolkit.awtUnlock();
 129         }
 130     }
 131 
 132     @Override




  93             accessor.setFiles(fd, files);
  94         }
  95     }
  96 
  97     /**
  98      * Called exclusively by the native C code.
  99      */
 100     private boolean filenameFilterCallback(String fullname) {
 101         if (fd.getFilenameFilter() == null) {
 102             // no filter, accept all.
 103             return true;
 104         }
 105 
 106         File filen = new File(fullname);
 107         return fd.getFilenameFilter().accept(new File(filen.getParent()),
 108                 filen.getName());
 109     }
 110 
 111     @Override
 112     public void setVisible(boolean b) {
 113         if (isDisposed()) {
 114             return;
 115         }
 116         XToolkit.awtLock();
 117         try {
 118             quit = !b;
 119             if (b) {
 120                 Runnable task = () -> {
 121                     showNativeDialog();
 122                     standaloneWindow = 0;
 123                     fd.setVisible(false);
 124                 };
 125                 new Thread(null, task, "ShowDialog", 0, false).start();
 126             } else {
 127                 quit();
 128                 fd.setVisible(false);
 129             }
 130         } finally {
 131             XToolkit.awtUnlock();
 132         }
 133     }
 134 
 135     @Override


< prev index next >