|
Name
|
Description
|
|
Arrange
|
Automatically arranges the graph chart - it is responsible for "pretty-organizing" our chart. The Arrange method ensures that there are no overlapping shapes and tries to avoid links running criss-crossing throughout the chart.
For a lot of graph charts, such as org charts and flow charts, nodes/values are not just scattered about the chart surface. There is a definite organization, e.g., things flow from a top to a bottom (or a left to a right) and many nodes are considered equivalent so they are placed at the same level as other nodes. The Level property of chart values ( RSGraphCharts.TRSGraphChartValue ) is an integer property from 0 to whatever specifying the level of a node. The Arrange method uses the Level property to divide the chart canvas into a big grid, where each cell in the grid can contain one chart value. One axis of this virtual grid will be the Levels in the chart. The other axis will be all the nodes/values at that level. The Orientation property controls in what direction we place the levels.
For example, suppose the Orientation is coTopDown and a graph is made up of the following nodes:
• | Level 3: Manufacturing, Testing, and Marketing |
• | Level 4: Purchases, Sales |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The grid would look like this:
Example
|
------------------------------------------------- | | | | | | Startup | | Level 0 | | | | ------------------------------------------------- | | | | | | Research | | Level 1 | | | | ------------------------------------------------- | | | | | | Development | | Level 2 | | | | ------------------------------------------------- | | | | | Manufacturing | Testing | Marketing | Level 3 | | | | ------------------------------------------------- | | | | Purchases | Sales | Level 4 | | | ---------------------------------
|
The Arrange method makes nodes of the same level the same size but different levels can have a different level size.
|
|
|
|
Assign(TPersistent)
|
Represents method Assign(TPersistent). (Overrides RSCharts.TRSCustomPointChart.Assign(TPersistent).)
|
|
CreateChartValues
|
Creates the RSChartPanel.TRSChartValues class for the Values property
Notes to Inheritors
|
Override this method to create your TRSChartValues descendant
|
|
|
CreatePreviewValues
|
Creates sample values for illustrating how the chart will look. This function is automatically called at design-time to fill the chart with sample values. It can also be called at run-time to add more values to the chart (i.e., the chart is not cleared first)
Note
|
Set the Preview property to false to have the design-time sample values show up at run-time
|
|
|
DrawLink(TCanvas,TCanvasRect,TRSGraphChartValue,TRSGraphChartLink)
|
Draw one link
|
|
DrawLinks(TCanvas,TCanvasRect,TRSGraphChartValue)
|
Draw all the links from the input TRSGraphChartValue to other nodes
|
|
DrawShape(TCanvas,TCanvasRect,TRSShapeChartValue)
|
Draws one shape at the specified rectangle (Overrides RSCharts.TRSCustomShapeChart.DrawShape(TCanvas,TCanvasRect,TRSShapeChartValue).)
|
|
GetChartType
|
Returns the chart type enumerated value for this class. Each chart class overrides this class function to return the RSChartConsts|TRSChartType enumerated value (Overrides RSCharts.TRSCustomShapeChart.GetChartType.)
|
|
InitializeChangeEvents
|
Initialize the OnChange events of structures. Use this method to assign event handlers for structures (e.g., Pen.OnChange := MyChangeMethod).
Notes to Inheritors
|
The constructor calls this method after it calls the InitializeChart method, which is where the structures should be actually created and initialized.
|
|
|
InitializeChart
|
Creates and initialize structures and values of chart. This method is the safe place to initialize chart values without change events occurring.
Notes to Inheritors
|
The constructor calls this method. Use this method to actually create and initialize properties. Do not assign event properties in this method (use the InitializeChangeEvents method instead)
|
|
|
LevelChanged(TRSGraphChartValue)
|
Represents method LevelChanged(TRSGraphChartValue).
|
|
LinksNotify(TRSGraphChartLink,TCollectionNotification)
|
Represents method LinksNotify(TRSGraphChartLink,TCollectionNotification).
|
|
LinksUpdate(TRSGraphChartLink)
|
Represents method LinksUpdate(TRSGraphChartLink).
|
|
OrientationChanged
|
Represents method OrientationChanged.
|
|
UpdateAxisInfo(TRSChartAxis)
|
Represents method UpdateAxisInfo(TRSChartAxis). (Overrides RSChartPanel.TRSCustomChart.UpdateAxisInfo(TRSChartAxis).)
|