Page tree

You are viewing documentation for Structure Server and Data Center version 5.5 and patch releases. For other versions, see Version Index or Structure Cloud.

Skip to end of metadata
Go to start of metadata


ColumnConfigurator class encapculates everything related to column type configuration.

It needs to be subclassed for a particular column type implementation and passed as return value in ColumnType.createConfigurator() method.


var api = window.almworks.structure.api;

var MyColumnConfigurator = api.subClass('MyColumnConfigurator, api.ColumnConfigurator, {
  getDefaultColumnName: function() { return 'My Column'; }
  getOptions: function() {
    return [ new MyOption1({configurator: this}), new MyOption2({configurator: this}) ];

Required Methods

You have to override the following methods in the subclass.


Returns column type name, used in the column configuration panel.


Returns default column name.

Other Methods

These methods may be optionally overridden.


Optional initializer.


Return column preset's group key. See registerColumnGroup() for reference.


Returns a JavaScript object specifying the metadata needed by this configurator to set up the UI. See Requesting and Using Metadata for more information. By default returns null, which means that no metadata is needed.


getMetadataRequests: function() {
  return {
    somedata: {                        // metadata key
      url: baseUrl + '/some/data/url', // request URL
      cacheable: true,                 // if the response for this URL can be reused for other cacheable requests 
      extract: function(response) {    // response to the AJAX request
        return || 1; // the actual value for context.getMetadata('somedata')
    otherdata: {
      url: baseUrl + '/other/data/url',
      cacheable: true


Returns array of column type options. Each option should be a subclass of ColumnOption Class.


getOptions: function() {
  return [ new MyOption1({configurator: this}), new MyOption2({configurator: this}) ];
  • No labels