void (JTextComponent textField, FileChooserDescriptor descriptor, boolean insertSystemDependentPaths) { if (ApplicationManager.getApplication() != null) { //NPE fixed when another class loader works removeFrom(textField); if (textField.getClientProperty(INSERT_PATH_ACTION) != null) return; DefaultActionGroup actionGroup = new DefaultActionGroup(); InsertPathAction action = new InsertPathAction( textField, descriptor != null? descriptor : FileChooserDescriptorFactory.createSingleLocalFileDescriptor(), insertSystemDependentPaths ); actionGroup.add(action); MouseListener popupHandler = PopupHandler.installPopupMenu(textField, actionGroup, "InsertPathActionTextFieldPopup"); action.savePopupHandler(popupHandler); textField.putClientProperty(INSERT_PATH_ACTION, action); } }