////////////////////////////////////////////////////////////////////////////////
//
// Licensed to the Apache Software Foundation (ASF) under one or more
// contributor license agreements. See the NOTICE file distributed with
// this work for additional information regarding copyright ownership.
// The ASF licenses this file to You under the Apache License, Version 2.0
// (the "License"); you may not use this file except in compliance with
// the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
package mx.collections
{
//--------------------------------------
// Other metadata
//--------------------------------------
[DefaultProperty("fields")]
/**
* The SummaryRow class represents a summary row of the AdvancedDataGrid.
* You create summary data about your data groups by using the summaries property
* of the GroupingField or GroupingCollection class.
* You display the summary data in an existing row of the AdvancedDataGrid control,
* or display it in a separate row.
*
*
The summaries property of the GroupingField or GroupingCollection class takes an
* instance of the SummaryRow class. You then use the fields property
* of the SummaryRow class to specify an Array of one or more SummaryField/SummaryField2 instances
* that define the fields of the data used to create the summary.
* SummaryField2 needs to be used when using GroupingCollection2.
The following example creates summary rows based on two fields of the data provider * of the AdvancedDataGrid control:
* *
* <mx:AdvancedDataGrid id="myADG"
* initialize="gc.refresh();">
* <mx:dataProvider>
* <mx:GroupingCollection id="gc" source="{dpFlat}">
* <mx:Grouping>
* <mx:GroupingField name="Region">
* <mx:summaries>
* <mx:SummaryRow summaryPlacement="group">
* <mx:fields>
* <mx:SummaryField dataField="Actual"
* label="Min Actual" operation="MIN"/>
* <mx:SummaryField dataField="Actual"
* label="Max Actual" operation="MAX"/>
* </mx:fields>
* </mx:SummaryRow>
* </mx:summaries>
* </mx:GroupingField>
* <mx:GroupingField name="Territory">
* <mx:summaries>
* <mx:SummaryRow summaryPlacement="group">
* <mx:fields>
* <mx:SummaryField dataField="Actual"
* label="Min Actual" operation="MIN"/>
* <mx:SummaryField dataField="Actual"
* label="Max Actual" operation="MAX"/>
* </mx:fields>
* </mx:SummaryRow>
* </mx:summaries>
* </mx:GroupingField>
* </mx:Grouping>
* </mx:GroupingCollection>
* </mx:dataProvider>
*
* <mx:columns>
* <mx:AdvancedDataGridColumn dataField="Region"/>
* <mx:AdvancedDataGridColumn dataField="Territory_Rep"
* headerText="Territory Rep"/>
* <mx:AdvancedDataGridColumn dataField="Actual"/>
* <mx:AdvancedDataGridColumn dataField="Estimate"/>
* <mx:AdvancedDataGridColumn dataField="Min Actual"/>
* <mx:AdvancedDataGridColumn dataField="Max Actual"/>
* </mx:columns>
* </mx:AdvancedDataGrid>
*
*
* @mxml
*
* The <mx.SummaryRow> tag defines the following tag attributes:
*
* * <mx:SummaryRow * Properties * fields="No default" * summaryObjectFunction="No default" * summaryPlacement="last" * /> ** * @see mx.controls.AdvancedDataGrid * @see mx.collections.GroupingField * @see mx.collections.SummaryField * @see mx.collections.SummaryField2 * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public class SummaryRow { include "../core/Version.as"; //-------------------------------------------------------------------------- // // Constructor // //-------------------------------------------------------------------------- /** * Constructor. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public function SummaryRow() { super(); } //-------------------------------------------------------------------------- // // Properties // //-------------------------------------------------------------------------- //---------------------------------- // fields //---------------------------------- /** * Array of SummaryField/SummaryField2 instances that define the characteristics of the * data fields used to create the summary. * * @see mx.collections.SummaryField * @see mx.collections.SummaryField2 * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ public var fields:Array; //---------------------------------- // summaryPlacement //---------------------------------- /** * Specifies where the summary row appears in the AdvancedDataGrid control. * Possible values are: * *
"first" - Create a summary row as the first row in the group."last" - Create a summary row as the last row in the group."group" - Add the summary data to the row corresponding to the group.You can specify multiple values, separated by a space.
* For example, a value of "last group" shows the same summary row
* at the group level and in the last row of the children.
You use this property with the SummaryField.summaryFunction property,
* which defines a callback function to perform the summary calculation.
The GroupingCollection class adds a property called children to the Object.
The callback function must have the following signature:
* *function mySumObjFunc():SummaryObject {}
*
* @see mx.collections.SummaryObject
* @see mx.collections.SummaryField#summaryFunction
*
* @langversion 3.0
* @playerversion Flash 9
* @playerversion AIR 1.1
* @productversion Flex 3
*/
public var summaryObjectFunction:Function;
}
}