class CCL::Snapper

Overview

#include <snapper.h>

class Snapper:
    public CCL::Object,
    public CCL::IScale
{
public:
    // fields

     IScale;

    // methods

    DECLARE_CLASS (Snapper, Object);
    PROPERTY_VARIABLE (Coord, snapValue, SnapValue) const;
    virtual int getSnapIndex (Coord position) const;
    virtual Coord getSnapPosition (int index) const;
    virtual Coord getSnapSize (int index) const;
    virtual Coord unitToPixel (Unit value) const;
    virtual Unit pixelToUnit (Coord position) const;

    virtual void getExtent (
        Unit start,
        Unit end,
        Coord& startCoord,
        Coord& endCoord
    ) const;

    virtual Unit getNumUnits () const;
    virtual bool isReversed () const;
    virtual IFormatter* createFormatter () const;
};

Inherited Members

public:
    // typedefs

    typedef CStringRef MemberID;
    typedef int Unit;

    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;
    Unknown& operator = (const Unknown&);
    unsigned int getRetainCount () const;
    virtual Object*CCL_API revealObject (const void* moduleAddress) = 0;
    virtual void CCL_API addObserver (IObserver* observer) = 0;
    virtual void CCL_API removeObserver (IObserver* observer) = 0;
    virtual void CCL_API signal (MessageRef msg) = 0;
    virtual void CCL_API deferSignal (IMessage* msg) = 0;
    static ISubject void addObserver (IUnknown* unknown, IObserver* observer);
    static void removeObserver (IUnknown* unknown, IObserver* observer);
    virtual void CCL_API notify (ISubject* subject, MessageRef msg) = 0;

    static IObserver void notify (
        IUnknown* unknown,
        ISubject* subject,
        MessageRef msg
    );

    virtual const ITypeInfo&CCL_API getTypeInfo () const = 0;
    virtual tbool CCL_API getProperty (Variant& var, MemberID propertyId) const = 0;
    virtual tbool CCL_API setProperty (MemberID propertyId, const Variant& var) = 0;
    virtual tbool CCL_API getPropertyNames (IPropertyCollector& collector) const = 0;
    virtual tbool CCL_API invokeMethod (Variant& returnValue, MessageRef msg) = 0;
    DECLARE_BASE_CLASS (Object);
    virtual void CCL_API removeObserver (IObserver* observer);
    virtual void CCL_API signal (MessageRef msg);
    virtual void CCL_API deferSignal (IMessage* msg);
    virtual void deferChanged ();
    virtual void CCL_API notify (ISubject* subject, MessageRef msg);
    virtual bool equals (const Object& obj) const;
    virtual int compare (const Object& obj) const;
    virtual bool load (const Storage& storage);
    virtual bool save (const Storage& storage) const;
    virtual bool save (const OutputStorage& storage) const;
    virtual bool toString (String& string, int flags = 0) const;
    virtual int getHashCode (int size) const;
    IUnknown* asUnknown ();
    static void addGarbageCollected (Object* obj, bool globalScope = true);
    static void deferDestruction (Object* obj);
    static const void* getModuleAddress ();
    virtual Coord unitToPixel (Unit value) const = 0;
    virtual Unit pixelToUnit (Coord position) const = 0;

    virtual void getExtent (
        Unit start,
        Unit end,
        Coord& startCoord,
        Coord& endCoord
    ) const = 0;

    virtual Unit getNumUnits () const = 0;
    virtual bool isReversed () const = 0;
    virtual IFormatter* createFormatter () const = 0;

Detailed Documentation

Methods

virtual Coord unitToPixel (Unit value) const

Convert from data unit to pixel position.

virtual Unit pixelToUnit (Coord position) const

Convert pixel position to data unit.

virtual void getExtent (
    Unit start,
    Unit end,
    Coord& startCoord,
    Coord& endCoord
) const

Get pixel extent from data units.

virtual Unit getNumUnits () const

Get number of total data units.

virtual bool isReversed () const

Check if scale is reversed (unit counting from max down to zero).

virtual IFormatter* createFormatter () const

Create a formatter for values of this scale (optional).