Ipelib
Public Member Functions
ipe::Cascade Class Reference

#include <ipestyle.h>

List of all members.

Public Member Functions

 Cascade ()
 Cascade (const Cascade &rhs)
Cascadeoperator= (const Cascade &rhs)
 ~Cascade ()
int count () const
StyleSheetsheet (int index)
void insert (int index, StyleSheet *sheet)
void remove (int index)
void saveAsXml (Stream &stream) const
bool has (Kind kind, Attribute sym) const
Attribute find (Kind, Attribute sym) const
const SymbolfindSymbol (Attribute sym) const
const GradientfindGradient (Attribute sym) const
const TilingfindTiling (Attribute sym) const
const EffectfindEffect (Attribute sym) const
const LayoutfindLayout () const
const TextPaddingfindTextPadding () const
const StyleSheet::TitleStylefindTitleStyle () const
const StyleSheet::PageNumberStylefindPageNumberStyle () const
String findPreamble () const
String findEncoding () const
TLineCap lineCap () const
TLineJoin lineJoin () const
TFillRule fillRule () const
void allNames (Kind kind, AttributeSeq &seq) const
int findDefinition (Kind kind, Attribute sym) const
void allCMaps (std::vector< String > &seq) const

Detailed Description

A cascade of style sheets.

The StyleSheets of a document cascade in the sense that a document can refer to several StyleSheets, which are arranged in a stack. A lookup is done from top to bottom, and returns as soon as a match is found. Ipe always appends the built-in "standard" style sheet at the bottom of the cascade.


Constructor & Destructor Documentation

Cascade::Cascade ( )

Create an empty cascade.

This does not add the standard style sheet.

Cascade::Cascade ( const Cascade rhs)

Copy constructor.

Cascade::~Cascade ( )

Destructor.


Member Function Documentation

Cascade & Cascade::operator= ( const Cascade rhs)

Assignment operator.

int ipe::Cascade::count ( ) const
inline

Return number of style sheets.

StyleSheet* ipe::Cascade::sheet ( int  index)
inline

Return StyleSheet at index.

void Cascade::insert ( int  index,
StyleSheet sheet 
)

Insert a style sheet into the cascade.

Takes ownership of sheet.

void Cascade::remove ( int  index)

Remove a style sheet from the cascade.

The old sheet is deleted.

void Cascade::saveAsXml ( Stream stream) const
bool Cascade::has ( Kind  kind,
Attribute  sym 
) const
Attribute Cascade::find ( Kind  kind,
Attribute  sym 
) const
const Symbol * Cascade::findSymbol ( Attribute  sym) const
const Gradient * Cascade::findGradient ( Attribute  sym) const
const Tiling * Cascade::findTiling ( Attribute  sym) const
const Effect * Cascade::findEffect ( Attribute  sym) const
const Layout * Cascade::findLayout ( ) const

Find page layout (such as text margins).

const TextPadding * Cascade::findTextPadding ( ) const

Find text padding (for text bbox computation).

const StyleSheet::TitleStyle * Cascade::findTitleStyle ( ) const

Get style of page titles (or 0 if none defined).

const StyleSheet::PageNumberStyle * Cascade::findPageNumberStyle ( ) const

Return style of page numbering (or 0 if none defined).

String Cascade::findPreamble ( ) const

Return total LaTeX preamble (of the whole cascade).

String Cascade::findEncoding ( ) const

Return LaTeX encoding (of the whole cascade).

TLineCap Cascade::lineCap ( ) const
TLineJoin Cascade::lineJoin ( ) const
TFillRule Cascade::fillRule ( ) const
void Cascade::allNames ( Kind  kind,
AttributeSeq seq 
) const
int Cascade::findDefinition ( Kind  kind,
Attribute  sym 
) const

Find stylesheet defining the attribute.

This method goes through the cascade looking for a definition of the symbolic attribute sym. It returns the index of the stylesheet defining the attribute, or -1 if the attribute is not defined.

The method panics if sym is not symbolic. It also works for ESymbol, EGradient, ETiling, and EEffect.

void Cascade::allCMaps ( std::vector< String > &  seq) const

The documentation for this class was generated from the following files: