User Interface Methods
The three user interface methods are used to display a name and graphical icon in FlowJo’s workspace window, and to present an opportunity for your code to prompt the user for any inputs needed to perform the calculations on the input population data. The methods are described in more detail below:
This method returns the name of your plugin that is used to construct the plugin node name displayed in the workspace window. The name should not contain any characters that cannot be embedded as an XML attribute ('<', '>', ‘“‘)
This method returns a javax.swing.Icon object that is displayed with the plugin node in the workspace window. If this method returns null, FlowJo will use a default icon for the plugin node.
boolean promptForOptions(SElement fcmlQueryElement, List<String> parameterNames)
This method is called when your plugin is first created by the user or when the plugin node is double-clicked in the workspace window. The purpose of this method is to allow your plugin the opportunity to display a user interface to prompt for any options needed to perform the calculations. If this method returns true, FlowJo will create the plugin node and invoke the algorithm. If false, then your plugin node is not created.
The input arguments to the promptForOptions method are used to get more information about the population and sample file on which the new plugin node is being created. The first argument, fcmlQueryElement, is an XML element used by FlowJo to fully describe the sample file, transforms, and gating hierarchy that defines the population. Later in this document we will show how to use the PluginHelper class to extract population details from this XML element, such as total number of sample events. The second input argument, parameterNames, is a list of all the parameter names defined on the sample. This list is useful for presenting a selectable list in the user interface.