|
Class: PieChartWidget
Object
|
+--GraphicsMedium
|
+--DisplaySurface
|
+--SimpleView
|
+--View
|
+--PieChartWidget
- Package:
- stx:libwidg3
- Category:
- Views-Graphs
- Version:
- rev:
1.23
date: 2023/07/06 14:35:33
- user: cg
- file: PieChartWidget.st directory: libwidg3
- module: stx stc-classLibrary: libwidg3
This is a demo widget programmed as a learning experience...
hallo erstmal...
a simple PieChart,
(zeigt ein Tortendiagramm, wobei die Stücke jedoch nicht essbar sind.)
The model is a collection of chart description items,
each being a dictionary filled with entries for:
#value aNumber the numeric value
#color aColor the color
see example on how to fill such a chartDescription model.
[instance variables:]
middlePoint, only for the point in the middle => therefore middlepoint
radX radian for x-coordinate
radY radian for y-coordinate
anzahl number of pie-pieces
summe result of all values
aod Array of Dictionaries
aoHilf Array with help coordinates
foregroundColor text color for percent displaying
backgroundColor background color of pie chart
label1 name of pie chart
copyrightCOPYRIGHT (c) 1998 by eXept Software AG
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
accessing
-
anzahl
-
return the value of the instance variable 'anzahl' (automatically generated)
-
anzahl: something
-
set the value of the instance variable 'anzahl' (automatically generated)
-
aoHilf
-
return the value of the instance variable 'aoHilf' (automatically generated)
-
aoHilf: something
-
set the value of the instance variable 'aoHilf' (automatically generated)
-
aod
-
return the value of the instance variable 'aod' (automatically generated)
-
aod: something
-
set the value of the instance variable 'aod' (automatically generated)
-
label
-
(comment from inherited method)
return the view's label - this is nil here
-
label: aString
-
(comment from inherited method)
set the view's label.
Ignored here.
-
middlePoint
-
return the value of the instance variable 'middlePoint' (automatically generated)
-
middlePoint: aPoint
-
set the value of the instance variable 'middlePoint' (automatically generated)
-
model: newModel
-
(comment from inherited method)
Set the model.
Here, if I am my own menuPerformer/menuHolder,
set the menuHolder and menuPerformer to the model.
This is a compatibility kludge,
since typically, ST-80 code expects the model to provide a menu
and perform it. If the model does not support a menu message,
it will be forwarded to the view.
Those apps which want the view to provide the (default) menu have to reset
this by sending #menuHolder: message (again)
-
newfont
-
return the value of the instance variable 'newfont' (automatically generated)
-
newfont: something
-
set the value of the instance variable 'newfont' (automatically generated)
-
oldfont
-
return the value of the instance variable 'oldfont' (automatically generated)
-
oldfont: something
-
set the value of the instance variable 'oldfont' (automatically generated)
-
pieChartName
-
return the value of the instance variable 'pieChartName' (automatically generated)
-
pieChartName: something
-
set the value of the instance variable 'pieChartName' (automatically generated)
-
rF
-
return the value of the instance variable 'rF' (automatically generated)
-
rF: something
-
set the value of the instance variable 'rF' (automatically generated)
-
radX
-
return the value of the instance variable 'radX' (automatically generated)
-
radX: something
-
set the value of the instance variable 'radX' (automatically generated)
-
radY
-
return the value of the instance variable 'radY' (automatically generated)
-
radY: something
-
set the value of the instance variable 'radY' (automatically generated)
-
style
-
return the value of the instance variable 'style' (automatically generated)
-
style: something
-
set the value of the instance variable 'style' (automatically generated)
-
summe
-
return the value of the instance variable 'summe' (automatically generated)
-
summe: something
-
set the value of the instance variable 'summe' (automatically generated)
accessing-color & font
-
backgroundColor
-
return the value of the instance variable 'backgroundColor' (automatically generated)
-
backgroundColor: something
-
set the value of the instance variable 'backgroundColor' (automatically generated)
-
foregroundColor
-
return the value of the instance variable 'foregroundColor' (automatically generated)
-
foregroundColor: something
-
set the value of the instance variable 'foregroundColor' (automatically generated)
change & update
-
delayedUpdateModel
-
-
update: something with: aParameter from: changedObject
-
drawing
-
drawLogo
-
put demo values into model
-
drawLogo2
-
zeichnet den pie-Umfang
-
drawPercentDescription
-
Prozentausgabe der Diagrammstücke
-
drawPieChart
-
get number of pieces
-
drawPiePieces
-
draw a filled arc in a box, given startAngle and endAngle.
-
redrawPieChart
-
compute spacing need for my used font.
-
writeLabel
-
event handling
-
redrawX: x y: y width: w height: h
-
(comment from inherited method)
redraw part of myself immediately, given logical coordinates
(if transformation is nonNil)
The default here is to redraw everything
- subclasses usually redefine this, adding more intelligence
-
sizeChanged: how from: oldExtentOrNil
-
my view has changed the size (not the contents)
hooks
-
postBuildWith: aBuilder
-
automatically generated by UIPainter ...
Usage example(s):
super postBuildWith:aBuilder
|
initialization
-
initialize
-
initialisierung und sein Kind
Usage example(s):
private
-
fillAod
-
fills the Dictionaries in Array with Values
-
getAnzahl
-
ermittelt die Anzahl der belegten Diagrammstücke
-
getSumme
-
initialisiert die Instanzvariable summe mit der Gesammtsumme
views
-
getPieChartWidget
-
|p chart piece holder|
chart := OrderedCollection new.
piece := Dictionary new.
piece at:#value put:50.
piece at:#color put:Color red.
chart add:piece.
piece := Dictionary new.
piece at:#value put:100.
piece at:#color put:Color blue.
chart add:piece.
p := PieChartWidget new.
p model:(holder := ValueHolder new).
p extent:300@300.
p pieChartName:'demo PieChart'.
p open.
holder value:chart.
Delay waitForSeconds:2.
1 to: 5 do:[:i |
piece := Dictionary new.
piece at:#value put:30.
piece at:#color put:(i odd ifTrue:[Color green]
ifFalse:[Color magenta]).
chart add:piece.
holder value:nil.
holder value:chart.
]
|
|