[]
        
(Showing Draft Content)

GC.Spread.Sheets.ConditionalFormatting.ConditionRuleBase

Class: ConditionRuleBase

Sheets.ConditionalFormatting.ConditionRuleBase

Hierarchy

Table of contents

Constructors

Methods

Constructors

constructor

new ConditionRuleBase(ruleType, style, ranges)

Represents a formatting base rule class as the specified style.

Parameters

Name Type Description
ruleType RuleType The type of condition formatting rule.
style Style The style for the rule.
ranges Range[] The range array.

Methods

condition

condition(value?): any

Gets or sets the base condition of the rule.

Parameters

Name Type Description
value? Condition The base condition of the rule.

Returns

any

If no value is set, returns the base condition of the rule; otherwise, returns the condition rule.


contains

contains(row, column): boolean

Determines whether the range of cells contains the cell at the specified row and column.

Parameters

Name Type Description
row number The row index.
column number The column index.

Returns

boolean

true if the range of cells contains the cell at the specified row and column; otherwise, false.


createCondition

createCondition(): Condition

Creates condition for the rule.

Returns

Condition

The condition.


evaluate

evaluate(evaluator, baseRow, baseColumn, actual): Style

Returns the cell style of the rule if the cell satisfies the condition.

Parameters

Name Type Description
evaluator Object The object that can evaluate a condition.
baseRow number The row index.
baseColumn number The column index.
actual Object The actual value.

Returns

Style

The cell style of the rule.


getExpected

getExpected(): Style

Gets the style of the base rule.

example

 //This example uses the getExpected method.
 activeSheet.suspendPaint();
 var style = new GC.Spread.Sheets.Style();
 style.backColor = "green";
 var ranges = [new GC.Spread.Sheets.Range(0, 0, 10, 1)];
 activeSheet.conditionalFormats.addUniqueRule(style, ranges);
 var data = [50, 50, 11, 5, 3, 6, 7, 8, 7, 11];
 var condition = activeSheet.conditionalFormats.getRules()[0];
 for (var i = 0; i < 10;i++){
     activeSheet.setValue(i, 0, data[i]);
 }
 activeSheet.resumePaint();
 console.log(condition.getExpected());

Returns

Style


intersects

intersects(row, column, rowCount, columnCount): boolean

Specifies whether the range for this rule intersects another range.

example

 //This example uses the intersects method.
 activeSheet.suspendPaint();
 var style = new GC.Spread.Sheets.Style();
 style.backColor = "green";
 var ranges = [new GC.Spread.Sheets.Range(0, 0, 10, 1)];
 activeSheet.conditionalFormats.addUniqueRule(style, ranges);
 var data = [50, 50, 11, 5, 3, 6, 7, 8, 7, 11];
 var condition = activeSheet.conditionalFormats.getRules()[0];
 for (var i = 0; i < 10; i++) {
     activeSheet.setValue(i, 0, data[i]);
 }
 activeSheet.resumePaint();
 activeSheet.bind(GC.Spread.Sheets.Events.SelectionChanged, function(e, info) {
     var selection = info.newSelections[0];
     var result = condition.intersects(selection.row, selection.col, selection.rowCount, selection.colCount);
     if (result) {
         alert("current selection is intersects with condition formatting range");
     } else {
         alert("current selection is not intersects with condition formatting range");
     }
 });

Parameters

Name Type Description
row number The row index.
column number The column index.
rowCount number The number of rows.
columnCount number The number of columns.

Returns

boolean

true if the range for this rule intersects another range; otherwise, false.


isScaleRule

isScaleRule(): boolean

Specifies whether this rule is a scale rule.

Returns

boolean

true if this rule is a scale rule; otherwise, false.


priority

priority(value?): any

Gets or sets the priority of the rule.

Parameters

Name Type Description
value? number The priority of the rule.

Returns

any

If no value is set, returns the priority of the rule; otherwise, returns the condition rule.


ranges

ranges(value?): any

Gets or sets the condition rule ranges.

example

var style = new GC.Spread.Sheets.Style();
style.backColor = "green";
var ranges = [new GC.Spread.Sheets.Range(0, 0, 10, 1)];
activeSheet.conditionalFormats.addUniqueRule(style, ranges);
activeSheet.setValue(0, 0, 50);
activeSheet.setValue(1, 0, 50);
activeSheet.setValue(2, 0, 11);
activeSheet.setValue(3, 0, 5);

Parameters

Name Type Description
value? Range[] The condition rule ranges.

Returns

any

If no value is set, returns the condition rule ranges; otherwise, returns the condition rule.


reset

reset(): void

Resets the rule.

example

 activeSheet.setArray(0, 0, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
 var style = new GC.Spread.Sheets.Style();
 style.backColor = "red";
 style.foreColor = "black";
 var cell = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
 cell.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.cellValueRule);
 cell.operator(GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.greaterThan);
 cell.value1(2);
 cell.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
 cell.style(style);
 activeSheet.conditionalFormats.addRule(cell);
 var style = new GC.Spread.Sheets.Style();
 style.cellButtons = [{
     caption: "Reset",
     useButtonStyle: true,
     width: 60,
     command: function(sheet) {
         cell.reset();
         sheet.resumePaint();
     }
 }];
 activeSheet.setStyle(16, 4, style);

Returns

void


ruleType

ruleType(value?): any

Gets or sets the condition rule type.

example

//This example uses the ruleType method.
activeSheet.setArray(0,0,[1,2,3,4,5,6,7,8,9,10]);
var style = new GC.Spread.Sheets.Style();
style.backColor = "red";
style.foreColor = "black";
var cell = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
cell.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.cellValueRule);
cell.operator(GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.greaterThan);
cell.value1(5);
cell.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
cell.style(style);
activeSheet.conditionalFormats.addRule(cell);
var style1 = new GC.Spread.Sheets.Style();
style1.foreColor = "red";
var top = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
top.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.top10Rule);
top.type(GC.Spread.Sheets.ConditionalFormatting.Top10ConditionType.top);
top.rank(3);
top.style(style1);
top.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
top.stopIfTrue(true);
activeSheet.conditionalFormats.addRule(top);

Parameters

Name Type Description
value? RuleType The condition rule type.

Returns

any

If no value is set, returns the condition rule type; otherwise, returns the condition rule.


stopIfTrue

stopIfTrue(value?): any

Gets or sets whether rules with lower priority are applied before this rule.

example

//This example applies multiple rules.
activeSheet.setArray(0,0,[1,2,3,4,5,6,7,8,9,10]);
var style = new GC.Spread.Sheets.Style();
style.backColor = "red";
style.foreColor = "black";
var cell = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
cell.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.cellValueRule);
cell.operator(GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.greaterThan);
cell.value1(5);
cell.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
cell.style(style);
activeSheet.conditionalFormats.addRule(cell);
var style1 = new GC.Spread.Sheets.Style();
style1.foreColor = "red";
var top = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
top.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.top10Rule);
top.type(GC.Spread.Sheets.ConditionalFormatting.Top10ConditionType.top);
top.rank(3);
top.style(style1);
top.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
top.stopIfTrue(true);
activeSheet.conditionalFormats.addRule(top);

Parameters

Name Type Description
value? boolean Whether rules with lower priority are applied before this rule.

Returns

any

If no value is set, returns whether the rules with lower priority are not applied before this rule; otherwise, returns the condition rule.


style

style(value?): any

Gets or sets the style for the rule.

example

//This example applies multiple rules.
activeSheet.setArray(0,0,[1,2,3,4,5,6,7,8,9,10]);
var style = new GC.Spread.Sheets.Style();
style.backColor = "red";
style.foreColor = "black";
var cell = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
cell.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.cellValueRule);
cell.operator(GC.Spread.Sheets.ConditionalFormatting.ComparisonOperators.greaterThan);
cell.value1(5);
cell.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
cell.style(style);
activeSheet.conditionalFormats.addRule(cell);
var style1 = new GC.Spread.Sheets.Style();
style1.foreColor = "red";
var top = new GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule();
top.ruleType(GC.Spread.Sheets.ConditionalFormatting.RuleType.top10Rule);
top.type(GC.Spread.Sheets.ConditionalFormatting.Top10ConditionType.top);
top.rank(3);
top.style(style1);
top.ranges([new GC.Spread.Sheets.Range(0, 0, 10, 1)]);
top.stopIfTrue(true);
activeSheet.conditionalFormats.addRule(top);

Parameters

Name Type Description
value? Style The style for the rule.

Returns

any

If no value is set, returns the style for the rule; otherwise, returns the condition rule.