rwlogo
Rogue Wave Views 5.6

Rogue Wave Views
Foundation Package API Reference Guide

Product Documentation:

Rogue Wave Views
Documentation Home

IlvCircularGauge Class Reference

Graphic class. More...

#include <ilviews/graphics/cirgauge.h>

Inheritance diagram for IlvCircularGauge:
IlvGauge IlvSimpleGraphic IlvGraphic IlvFilledCircularGauge

List of all members.

Public Member Functions

 IlvCircularGauge (IlvDisplay *display, const IlvRect &drawrect, IlFloat min=0, IlFloat max=100, IlFloat value=50, IlFloat start=0, IlFloat range=180, IlvPalette *palette=0)
 Constructor.
virtual void bboxRange (IlFloat v1, IlFloat v2, IlvRect &rect, const IlvTransformer *t=0) const
 Returns the rectangle to update when the value of the gauge changes.
virtual void boundingBox (IlvRect &, const IlvTransformer *t=0) const
 Retrieves the bounding box of the graphic object.
const char * className () const
 Returns the class name of an object.
virtual IlUInt computeNeedlePoints (IlvPoint *points, const IlvTransformer *t=0) const
 Computes the shape of the gauge handle.
virtual IlBoolean contains (const IlvPoint &p, const IlvPoint &tp, const IlvTransformer *t=0) const
 Checks whether a point is in the object.
virtual IlvGraphiccopy () const
 Copies this object.
virtual void drawValue (IlvPort *, const IlvTransformer *t=0, const IlvRegion *clip=0) const
 Performs the drawing representing the current value of the gauge.
virtual IlvClassInfogetClassInfo () const
 Gets class information.
IlFloat getRange () const
 Retrieves the angle range of the gauge.
IlFloat getStart () const
 Retrieves the starting angle of the gauge.
IlBoolean isSubtypeOf (const IlvClassInfo *c) const
 Checks whether this object's class is a subclass.
IlBoolean isSubtypeOf (const char *t) const
 Checks whether this object's class is a subclass of a given parent class.
virtual IlFloat requestValue (const IlvPoint &, const IlvTransformer *, IlBoolean &) const
 Returns the value of the gauge associated with a given point.
void setRange (IlFloat range)
 Sets the angle range of the gauge.
void setStart (IlFloat start)
 Sets the starting angle of the gauge.
virtual void write (IlvOutputFile &) const
 Writes an object description to a file.

Static Public Member Functions

static void AddProperty (const IlSymbol *k, IlAny v)
 Adds a property to this object's class.
static IlAny GetProperty (const IlSymbol *key, IlBoolean p=((IlBoolean) 0))
 Retrieves the property value associated with the key in this object's class.
static const IlvClassInfoHasProperty (const IlSymbol *key, IlBoolean p=((IlBoolean) 0))
 Checks for the existence of a property for this object's class hierarchy.
static IlvGraphicread (IlvInputFile &, IlvPalette *pal)
 Reads an object description from a file.
static IlBoolean RemoveProperty (const IlSymbol *key)
 Removes a property from this object's class.
static IlBoolean ReplaceProperty (const IlSymbol *k, IlAny v)
 Replaces a property in this object's class.

Detailed Description

Graphic class.

Library: views

A circular gauge holds a numeric value and displays it by means of a needle that defines a partial ellipse, as in the figure below (not including scale).

cirgauge.gif


- Circular gauge -


Constructor & Destructor Documentation

IlvCircularGauge::IlvCircularGauge ( IlvDisplay display,
const IlvRect drawrect,
IlFloat  min = 0,
IlFloat  max = 100,
IlFloat  value = 50,
IlFloat  start = 0,
IlFloat  range = 180,
IlvPalette palette = 0 
)

Constructor.

Parameters:
display The display object that displays this object.
drawrect The initial size of this object.
min The minimum value of the gauge.
max The maximum value of the gauge.
value The initial value of the gauge.
start The starting angle of the gauge.
range The angle range of the gauge.
palette The palette used to draw this object.

Member Function Documentation

static void IlvCircularGauge::AddProperty ( const IlSymbol key,
IlAny  value 
) [static]

Adds a property to this object's class.

This static function associates the given value with the given key for the class of this object only.

Parameters:
key The key to be associated.
value The value to be associated.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

virtual void IlvCircularGauge::bboxRange ( IlFloat  v1,
IlFloat  v2,
IlvRect rect,
const IlvTransformer t = 0 
) const [virtual]

Returns the rectangle to update when the value of the gauge changes.

Returns:
The rectangular region to be updated if the value of the gauge was changing from v1 to v2.
Parameters:
v1 Initial value of the gauge.
v2 Future value of the gauge.
rect Used to return the rectangle to update.
t The transformer. If it is specified, the graphic object is considered to be drawn through a transformation and the returned rectangle is expressed in the transformed coordinate system.

Implements IlvGauge.

virtual void IlvCircularGauge::boundingBox ( IlvRect bbox,
const IlvTransformer t = 0 
) const [virtual]

Retrieves the bounding box of the graphic object.

Sets bbox, the rectangle reference parameter, to be the bounding box of the object. Since the object can appear within a transformed environment (for example, in a multiview editor), an IlvTransformer object occurs as an optional parameter in order to compute the bounding box in the coordinate system of the transformed environment. When there is no transformation, t is set to 0.

Parameters:
bbox The bounding box to be set.
t A transformer value or 0 if there is no transformation.

Implements IlvGauge.

const char* IlvCircularGauge::className (  )  const

Returns the class name of an object.

This method is equivalent to getClassInfo()->getClassName().

Returns:
The class name of the object. For example, for an IlvRectangle object, the className function returns "IlvRectangle".

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

virtual IlUInt IlvCircularGauge::computeNeedlePoints ( IlvPoint points,
const IlvTransformer t = 0 
) const [virtual]

Computes the shape of the gauge handle.

Computes and fills an array of points defining the shape of the needle.

The member function draw, in its default implementation, starts by calling computeNeedlePoints with a 0 value for points, to guess how many points are to be taken into account. It then calls this function again, with an array large enough to actually compute the needle shape. Then it fills the defined polygon.

Parameters:
points The array of points filled by this method, or 0 if only the number of points is queried.
t The transformer used to display the gauge.
Returns:
The number of points. If points is not 0, this value is also the number of points copied in points.
virtual IlBoolean IlvCircularGauge::contains ( const IlvPoint p,
const IlvPoint tp,
const IlvTransformer t = 0 
) const [virtual]

Checks whether a point is in the object.

Checks whether the coordinates are located in the shape of this object. A transformation parameter allows you to use the view's coordinate system for this test.

Parameters:
p The point to be tested.
tp The transformed point obtained by applying the transformer t to the point p.
t A transformer value, or 0 if there is no transformation.
Returns:
IlTrue when the point p lies inside the outline of the object.

Reimplemented from IlvGraphic.

virtual IlvGraphic* IlvCircularGauge::copy (  )  const [virtual]

Copies this object.

Allocates and returns a copy of this object. If the object is composite, the implementation of this member function makes a copy of the object's components.

Returns:
A copy of the object.
See also:
IlvPredefinedIOMembers.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

virtual void IlvCircularGauge::drawValue ( IlvPort ,
const IlvTransformer t = 0,
const IlvRegion clip = 0 
) const [virtual]

Performs the drawing representing the current value of the gauge.

Called by the member function draw and interactors that connect to it. Draws the part of the gauge that indicates its value (such as the hand of a watch).

Parameters:
dst The destination port.
t The transformer to apply to the drawing.
clip The clipping region.

Implements IlvGauge.

Reimplemented in IlvFilledCircularGauge.

virtual IlvClassInfo* IlvCircularGauge::getClassInfo (  )  const [virtual]

Gets class information.

Returns a pointer to the IlvClassInfo object associated with this object's class.

Returns:
A pointer to the class information object of the class of this object.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

static IlAny IlvCircularGauge::GetProperty ( const IlSymbol key,
IlBoolean  checkSuperClass = ((IlBoolean) 0) 
) [static]

Retrieves the property value associated with the key in this object's class.

Retrieves the property value associated with the property name key. If the property cannot be found in the class of this object, and if checkSuperClass is set to IlTrue, then the function operates iteratively on each superclass until the property is found. If the property cannot be found, then 0 is returned.

Parameters:
key The key with which the property value is associated.
checkSuperClass IlTrue specifies iterative search on superclasses.
Returns:
The property value associated with the proper name key, or 0.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

IlFloat IlvCircularGauge::getRange (  )  const

Retrieves the angle range of the gauge.

Returns:
The angle range of the gauge. The sum of this angle and the starting angle indicates the maximum value of this gauge.
IlFloat IlvCircularGauge::getStart (  )  const

Retrieves the starting angle of the gauge.

Returns:
The starting angle of the gauge in degrees. This angle indicates the minimum value of this gauge.
static const IlvClassInfo* IlvCircularGauge::HasProperty ( const IlSymbol key,
IlBoolean  checkSuperClass = ((IlBoolean) 0) 
) [static]

Checks for the existence of a property for this object's class hierarchy.

Retrieves a pointer to the IlvClassInfo that indicates a class where the key property exists. If the returned value is non-0, then this property actually exists for this class. If this is not the case and if checkSuperClass is set to IlTrue, then the function operates iteratively on each superclass until a match is found. If the property cannot be found, then 0 is returned.

Parameters:
key The key with which the property value is associated.
checkSuperClass IlTrue specifies iterative search on superclasses.
Returns:
A pointer to the ClassInfo that indicates a class where the key property exists, or 0.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

IlBoolean IlvCircularGauge::isSubtypeOf ( const IlvClassInfo classInfo  )  const

Checks whether this object's class is a subclass.

This method is equivalent to getClassInfo()->isSubtypeOf(classInfo).

Parameters:
classInfo The name of a class on which the object's class is tested.
Returns:
Either IlTrue or IlFalse, depending on whether or not this object's class is a subclass of the class indicated by classInfo.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

IlBoolean IlvCircularGauge::isSubtypeOf ( const char *  parentClass  )  const

Checks whether this object's class is a subclass of a given parent class.

This method is equivalent to getClassInfo()->isSubtypeOf(parentClass).

Parameters:
parentClass A string representing the parent class.
Returns:
Either IlTrue or IlFalse, depending on whether or not this object's class inherits parentClass attributes. The parentClass parameter should be a string representing the class name of an IlvGraphic subclass. A call to this member function for a given class instance returns IlTrue if given the name of its class.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

static IlvGraphic* IlvCircularGauge::read ( IlvInputFile file,
IlvPalette palette 
) [static]

Reads an object description from a file.

Reads an object description from the file input, given the palette graphic attributes. It reads the information that was saved by the member function write to be able to create a new instance of this object. Usually, because of the availability of the constructor that expects an IlvInputFile, read should be equivalent to:

 IlvGraphic*
 MyClass::read(IlvInputFile& file, IlvPalette* palette)
 {
     return new MyClass(file, palette);
 }

In the following example, the static member function read of the IlvLabel class could have the following form:

 IlvGraphic*
 IlvLabel::read(IlvInputFile& file, IlvPalette* pal)
 {
     IlvPoint pos;
     file.getStream() >> pos;     // Read the position field
     return new IlvLabel(pal->getDisplay(), pos,
     IlvReadString(file.getStream()), pal);
 }
Parameters:
file The name of the file to be read from.
palette The name of the palette for the object.
See also:
DeclareTypeInfoRO, DeclareTypeInfo, IlvPredefinedIOMembers.
Warning:
[note] The read method is not capitalized like other static methods so that it is consistent with the write method.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

static IlBoolean IlvCircularGauge::RemoveProperty ( const IlSymbol key  )  [static]

Removes a property from this object's class.

This static function removes the indicated property to the class of this object.

Parameters:
key The key property to be removed.
Returns:
IlTrue if the key property was actually found, or IlFalse otherwise.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

static IlBoolean IlvCircularGauge::ReplaceProperty ( const IlSymbol key,
IlAny  value 
) [static]

Replaces a property in this object's class.

This static function replaces the indicated property value to the class of this object.

Parameters:
key The key to be replaced.
value The value to be replaced.
Returns:
IlTrue if the key property was actually found, or IlFalse otherwise.

Reimplemented from IlvGauge.

Reimplemented in IlvFilledCircularGauge.

virtual IlFloat IlvCircularGauge::requestValue ( const IlvPoint point,
const IlvTransformer t,
IlBoolean connect 
) const [virtual]

Returns the value of the gauge associated with a given point.

Returns:
the value stored in this gauge if its moving part was at the specified location. If the point is outside the object bounding box, the function returns a reasonable value (the closest point on the object bounding box is considered).
Parameters:
point The point. If a transformer is specified, the point is considered to be transformed, i.e. expressed in the transformed coordinate system.
t The transformer.
connect If IlTrue, the provided point indicates a connection to the gauge. Mostly, this means that the point is located on the moving part of the gauge.

Implements IlvGauge.

Reimplemented in IlvFilledCircularGauge.

void IlvCircularGauge::setRange ( IlFloat  range  ) 

Sets the angle range of the gauge.

Parameters:
range The new angle range of the gauge.
void IlvCircularGauge::setStart ( IlFloat  start  ) 

Sets the starting angle of the gauge.

Parameters:
start The new starting angle of this gauge.
virtual void IlvCircularGauge::write ( IlvOutputFile output  )  const [virtual]

Writes an object description to a file.

Writes out, in a file, the object description. This description contains all the information necessary to create an exact copy of this object by means of the member function read. Information concerning any IlvPalette object attached to this object is written out by the object containers. All other information, such as the position and size of the object, is written out by this virtual member function.
For example, suppose we have an IlvLabel class that implements a graphic object drawn as a text string at a given position. It maintains its position in an internal IlvPoint field called _position and its textual content in an internal character array field called _text. The only information we need to save is the contents of those fields. So, the member function write of such an object should have the following form:

 void
 IlvLabel::write(IlvOutputFile& file) const
 {
     // Save the position field
     file.getStream() << IlvSpc() << _position;
     // Save the text field
     IlvWriteString(file.getStream(), _text);
 }
Parameters:
output The the output file to be written to.
See also:
DeclareTypeInfo.

Reimplemented from IlvGauge.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

© Copyright 2012, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.