Class StringFilterBuilder

StringFilterBuilder

A builder for string filter controls.

A string filter is a simple text input field that lets the user filter data via string matching. Given a column of type string and matching options, this control filters out the rows that don't match the term that's in the input field.

For more details, see the Gviz documentation.

Methods

MethodReturn typeBrief description
build()ControlBuilds a control.
setCaseSensitive(caseSensitive)StringFilterBuilderSets whether matching should be case sensitive or not.
setDataTable(tableBuilder)StringFilterBuilderSets the data table to use for the control using a DataTableBuilder.
setDataTable(table)StringFilterBuilderSets the control data table, which is the control's underlying data model.
setFilterColumnIndex(columnIndex)StringFilterBuilderSets the index of the data table column to filter on.
setFilterColumnLabel(columnLabel)StringFilterBuilderSets the label of the data table column to filter on.
setLabel(label)StringFilterBuilderSets the label to display next to the slider.
setLabelSeparator(labelSeparator)StringFilterBuilderSets a separator string appended to the label, to visually separate the label from the category picker.
setLabelStacking(orientation)StringFilterBuilderSets whether the label should display above (vertical stacking) or beside (horizontal stacking) the input field.
setMatchType(matchType)StringFilterBuilderSets whether the control should match exact values only (MatchType.EXACT), prefixes starting from the beginning of the value (MatchType.PREFIX), or any substring (MatchType.ANY).
setRealtimeTrigger(realtimeTrigger)StringFilterBuilderSets whether the control should match any time a key is pressed or only when the input field 'changes' (loss of focus or pressing the Enter key).

Detailed documentation

build()

Builds a control.

Return

Control — A control object, that can be used as a UI element.


setCaseSensitive(caseSensitive)

Sets whether matching should be case sensitive or not.

// Builds a case insensitive string filter to filter column "Col1".
var stringFilter = Charts.newStringFilter()
  .setFilterColumnLabel("Col1")
  .setCaseSensitive(false)
  .build();

Parameters

NameTypeDescription
caseSensitiveBooleanIf true, enables string matching case sensitivity.

Return

StringFilterBuilder — This builder, useful for chaining.


setDataTable(tableBuilder)

Sets the data table to use for the control using a DataTableBuilder.

This is a convenience method for setting the data table without needing to call build().

Parameters

NameTypeDescription
tableBuilderDataTableBuilderA data table builder. A new data table is created instantly as part of this call, so any further updates to the builder won't be reflected in the control.

Return

StringFilterBuilder — This builder, useful for chaining.


setDataTable(table)

Sets the control data table, which is the control's underlying data model.

Parameters

NameTypeDescription
tableDataTableSourceThe data table to use for the control.

Return

StringFilterBuilder — This builder, useful for chaining.


setFilterColumnIndex(columnIndex)

Sets the index of the data table column to filter on.

The values of that column determine whether or not each row should be filtered. It is mandatory to set either this or the column label using setFilterColumnLabel(columnLabel).

Parameters

NameTypeDescription
columnIndexIntegerThe index of the data table column the filter should operate upon.

Return

StringFilterBuilder — This builder, useful for chaining.


setFilterColumnLabel(columnLabel)

Sets the label of the data table column to filter on.

The values of that column determine whether or not each row should be filtered. It is mandatory to set either this or a column index using setFilterColumnIndex(columnIndex).

Parameters

NameTypeDescription
columnLabelStringThe label of the column to filter on.

Return

StringFilterBuilder — This builder, useful for chaining.


setLabel(label)

Sets the label to display next to the slider.

If unspecified, the label of the column the control operates on is used.

Parameters

NameTypeDescription
labelStringThe label to display next to the slider.

Return

StringFilterBuilder — This builder, useful for chaining.


setLabelSeparator(labelSeparator)

Sets a separator string appended to the label, to visually separate the label from the category picker.

Parameters

NameTypeDescription
labelSeparatorStringThe string to use to separate the label from the category picker.

Return

StringFilterBuilder — This builder, useful for chaining.


setLabelStacking(orientation)

Sets whether the label should display above (vertical stacking) or beside (horizontal stacking) the input field.

Parameters

NameTypeDescription
orientationOrientationThe orientation of the stacking.

Return

StringFilterBuilder — This builder, useful for chaining.


setMatchType(matchType)

Sets whether the control should match exact values only (MatchType.EXACT), prefixes starting from the beginning of the value (MatchType.PREFIX), or any substring (MatchType.ANY).

// Builds a string filter to filter column "Col1" matching the prefix.
var stringFilter = Charts.newStringFilter()
  .setFilterColumnLabel("Col1")
  .setMatchType(Charts.MatchType.PREFIX)
  .build();

Parameters

NameTypeDescription
matchTypeMatchTypeThe string matching type.

Return

StringFilterBuilder — This builder, useful for chaining.

See also


setRealtimeTrigger(realtimeTrigger)

Sets whether the control should match any time a key is pressed or only when the input field 'changes' (loss of focus or pressing the Enter key).

// Builds a string filter to filter column "Col1" that checks the match any time a key is
// pressed.
var stringFilter = Charts.newStringFilter()
  .setFilterColumnLabel("Col1")
  .setRealtimeTrigger(true)
  .build();

Parameters

NameTypeDescription
realtimeTriggerBooleanIf true, sets events to be triggered at real time (when a key is pressed).

Return

StringFilterBuilder — This builder, useful for chaining.

Send feedback about...

Apps Script
Apps Script
Need help? Visit our support page.