# Class FileEditor

java.lang.Object
org.apache.jmeter.testbeans.gui.FileEditor

All Implemented Interfaces:
  `ActionListener, PropertyEditor, EventListener`

public class FileEditor extends Object implements PropertyEditor, ActionListener
A property editor for File properties.

Note that it never gives out File objects, but always Strings. This is because JMeter is now too dumb to handle File objects (there's no FileProperty).

## Constructor Summary

Constructors
Constructor
Description
`FileEditor()`
Deprecated.
Only for use by test cases
`FileEditor(PropertyDescriptor descriptor)`
Construct a `FileEditor` using the properties of the given `PropertyDescriptor`

## Method Summary

Modifier and Type
Method
Description
`void`
`actionPerformed(ActionEvent e)`
`void`
`addPropertyChangeListener(PropertyChangeListener listener)`
`String`
`getAsText()`
`Component`
`getCustomEditor()`
`String`
`getJavaInitializationString()`
`String[]`
`getTags()`
`Object`
`getValue()`
`boolean`
`isPaintable()`
`void`
`paintValue(Graphics gfx, Rectangle box)`
`void`
`removePropertyChangeListener(PropertyChangeListener listener)`
`void`
`setAsText(String text)`
`void`
`setValue(Object value)`
`boolean`
`supportsCustomEditor()`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### FileEditor

@Deprecated public FileEditor() throws IntrospectionException
Deprecated.
Only for use by test cases

Throws:
  `IntrospectionException` - when introspection fails while creating a dummy PropertyDescriptor

### FileEditor

public FileEditor(PropertyDescriptor descriptor)
Construct a `FileEditor` using the properties of the given `PropertyDescriptor`

Parameters:
  `descriptor` - the `PropertyDescriptor` to be used. Must not be `null`
Throws:
  `IllegalArgumentException` - when `descriptor` is `null`

## Method Details

### actionPerformed

public void actionPerformed(ActionEvent e)

Specified by:
  `actionPerformed` in interface `ActionListener`

### addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)

Specified by:
  `addPropertyChangeListener` in interface `PropertyEditor`

### getAsText

public String getAsText()

Specified by:
  `getAsText` in interface `PropertyEditor`
Returns:
  the text

### getCustomEditor

public Component getCustomEditor()

Specified by:
  `getCustomEditor` in interface `PropertyEditor`
Returns:
  custom editor panel

### getJavaInitializationString

public String getJavaInitializationString()

Specified by:
  `getJavaInitializationString` in interface `PropertyEditor`
Returns:
  the Java initialisation string

### getTags

public String[] getTags()

Specified by:
  `getTags` in interface `PropertyEditor`
Returns:
  the editor tags

### getValue

public Object getValue()

Specified by:
  `getValue` in interface `PropertyEditor`
Returns:
  the value

### isPaintable

public boolean isPaintable()

Specified by:
  `isPaintable` in interface `PropertyEditor`
Returns:
  true if the editor is paintable

### paintValue

public void paintValue(Graphics gfx, Rectangle box)

Specified by:
  `paintValue` in interface `PropertyEditor`

### removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)

Specified by:
  `removePropertyChangeListener` in interface `PropertyEditor`

### setAsText

public void setAsText(String text) throws IllegalArgumentException

Specified by:
  `setAsText` in interface `PropertyEditor`
Throws:
  `IllegalArgumentException`

### setValue

public void setValue(Object value)

Specified by:
  `setValue` in interface `PropertyEditor`

### supportsCustomEditor

public boolean supportsCustomEditor()

Specified by:
  `supportsCustomEditor` in interface `PropertyEditor`
Returns:
  true if supports a custom editor