---
name: "stateviews"
section: "3"
platform: "linux"
package: "ivtools-dev"
version: "1.1.3-4"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/stateviews"
---

# stateviews(3)

various state variable view subclasses

## NAME

BrushVarView, CompNameVarView, FileNameVarView, FontVarView, GravityVarView, MagnifVarView, ModifStatusVarView, NameVarView, PatternVarView - various state variable view subclasses

## SYNOPSIS

**#include \<Unidraw/stateviews.h\>**

## DESCRIPTION

Unidraw predefines several state variable view subclasses for the the state variable subjects it predefines, as described below.

## PUBLIC OPERATIONS

- **BrushVarView(BrushVar\*, ColorVar\* = nil)**

  - **FontVarView(FontVar\*, Alignment = Center)**

  - **PatternVarView(PatternVar\*, ColorVar\* = nil)**

  Views of graphics state state variable subjects.  BrushVarView displays a short line drawn in the subject's brush and in a color specified by the given ColorVar (black if no ColorVar is supplied). The BrushVarView displays \`\`None'' if the BrushVar's brush is invisible.  Similarly, PatternVarView displays a filled rectangle drawn in the subject's pattern and in a color specified by the given ColorVar (black if no ColorVar is supplied).  The PatternVarView displays \`\`None'' if the PatternVar's pattern is invisible. FontVarView displays the name of its subject's font, aligned as specified in its canvas.

- **GravityVarView(GravityVar\*, Alignment = Center)**

  Displays either \`\`gravity on'' or a blank, depending on whether the subject indicates that gravity is on or not.

- **MagnifVarView(MagnifVar\*, Alignment = Center)**

  Displays \`\`mag *x*x'', where *x* is the current modification factor recorded in the subject.

- **ModifStateVarView(ModifStateVar\*, Alignment = Center)**

  Displays either an asterisk or a blank, depending on whether the subject records that its component is modified.

- **NameVarView(**

  - **NameVar\*, Alignment = Center, const char\* sample = nil**

  - **)**

  - **FileNameVarView(**

  - **NameVar\*, Alignment = Center,**

  - **boolean relative = true, const char\* sample = nil**

  - **)**

  - **CompNameVarView(**

  - **CompNameVarView\*, Alignment = Center,**

  - **boolean relative = true, const char\* sample = nil**

  - **)**

  Display the subject's string aligned as specified with respect to the canvas.  Each constructor takes an optional sample string that defines the view's natural size.  FileNameVarView provides a specialized view of a NameVar for displaying file names.  It adds a *relative* argument for displaying the file name either as a relative or full path.  CompNameVarView provides similar functionality for CompNameVar subjects, except it precedes its subject's component's name with \`\`\[part of\]'' for components that have a named parent but that are not named themselves.

## SEE ALSO

statevars(3U), StateVarView(3U)
