Table Of Contents

Previous topic


Next topic



class gxp.plugins.ClickableFeatures(config)
Base class for tools that need to handle feature clicks. Don’t create instances of this base class.

Config Options

Configuration properties in addition to those listed for Ext.util.Observable.

Array Custom actions for tools that do not provide their own. Array elements are expected to be valid Ext config objects. Actions provided here may have an additional menuText property, which will be used as text when the action is used in a menu. The text property will only be used in buttons. Optional, only needed to create custom actions.

Object or String or Array Where to place the tool’s actions (e.g. buttons or menus)?

In case of a string, this can be any string that references an Ext.Container property on the portal, or a unique id configured on a component.

In case of an object, the object has a “target” and an “index” property, so that the tool can be inserted at a specified index in the target.

actionTarget can also be an array of strings or objects, if the action is to be put in more than one place (e.g. a button and a context menu item).

To reference one of the toolbars of an Ext.Panel, “.tbar”, “.bbar” or “.fbar” has to be appended. The default is “map.tbar”. The viewer’s main MapPanel can always be accessed with “map” as actionTarget. Set to null if no actions should be created.

Some tools provide a context menu. To reference this context menu as actionTarget for other tools, configure an id in the tool’s outputConfig, and use the id with “.contextMenu” appended. In the snippet below, a layer tree is created, with a “Remove layer” action as button on the tree’s top toolbar, and as menu item in its context menu:

    xtype: "gxp_layertree",
    outputConfig: {
        id: "tree",
        tbar: []
}, {
    xtype: "gxp_removelayer",
    actionTarget: ["tree.tbar", "tree.contextMenu"]

If a tool has both actions and output, and you want to force it to immediately output to a container, set actionTarget to null. If you want to hide the actions, set actionTarget to false. In this case, you should configure a defaultAction to make sure that an action is active.

Boolean Set to false if the tool should be initialized without activating it. Default is true.
Boolean Should this tool load a feature on click? If set to true, and if there is no loaded feature at the click position, this tool will call loadFeatures on the featureManager, with a FeatureId filter created from the id of a feature returned from a WMS GetFeatureInfo request at the click position. This feature will then be selected immediately. Default is false.
Object Options for the OpenLayers.Control.SelectFeature used with this tool.
Number Optional index of an action that should be active by default. Only works for actions that are a GeoExt.Action instance.
String The id of the gxp.plugins.FeatureManager to use with this tool.
Number The actions array index of the action that should trigger this tool’s output. Only valid if actions is configured. Leave this unconfigured if none of the actions should trigger this tool’s output.
Object Optional configuration for the output container. This may be useful to override the xtype (e.g. “window” instead of “gx_popup”), or to provide layout configurations when rendering to an outputTarget.
String Where to add the tool’s output container? This can be any string that references an Ext.Container property on the portal, or “map” to access the viewer’s main map. If not provided, a window will be created.
String If this tool should be radio-button style toggled with other tools, this string is to identify the toggle group.
Number Optional pixel tolerance to use when selecting features. By default, the server decides whether a pixel click intersects a feature based on its own rules. If a pixel tolerance is provided, it will be included in requests for features to inform the server to look in a buffer around features.

Public Properties

Public properties in addition to those listed for Ext.util.Observable.
Boolean Is the tool currently active?

Public Methods

Public methods in addition to those listed for Ext.util.Observable.

Returns:Boolean true when this tool was activated

Activates this tool.

Parameter:actionsArray Optional actions to add. If not provided, this.actions will be added.
Returns:Array The actions added.
Parameter:configObject configuration for the Ext.Component to be added to the outputTarget. Properties of this configuration will be overridden by the applications outputConfig for the tool instance. Tool plugins that want to reuse their output (after being closed by a window or crumb panel) can also provide an Ext.Component instance here, if it was previously created with addOutput.
Returns:Ext.Component The component added to the outputTarget.

Adds output to the tool’s outputTarget. This method is meant to be called and/or overridden by subclasses.

Returns:Boolean true when this tool was deactivated

Deactivates this tool.

:return {Object} Gets the configured tool state. Overwrite in subclasses to return anything other than a copy of the initialConfig property.
Removes all output created by this tool

Action to perform when a feature is selected. The default action is to unselect existing selections and select the feature using the built-in SelectFeature control. To be overridden by subclasses.


Events in addition to those listed for Ext.util.Observable.


Fired when the tool is activated.

Listener arguments: * tool - gxp.plugins.Tool the activated tool


Fired when the tool is deactivated.

Listener arguments: * tool - gxp.plugins.Tool the deactivated tool