The Text Objects: 7.2 The Controllers: Paragraph Attribute Controllers

Up: GEOS SDK TechDocs | Up | Prev: 7.1 Character Attribute Controllers | Next: 7.3 Search and Replace and Spell-Checking

The following controllers affect paragraph attributes within a text object. As such, they each affect the contents of a text object's paragraph attributes instance field (usually the VisTextParaAttr structure).

JustificationControlClass

This controller allows the user to specify paragraph justification of the current text selection (left, right, center, or full). Its features and tools are shown in JustificationControlClass Features .

Code Display 10-30 JustificationControlClass Features

  typedef WordFlags JCFeatures;
#define JCF_LEFT				0x0008
#define JCF_RIGHT				0x0004
#define JCF_CENTER				0x0002
#define JCF_FULL				0x0001
  typedef WordFlags JCToolboxFeatures;
#define JCTF_LEFT				0x0008
#define JCTF_RIGHT				0x0004
#define JCTF_CENTER				0x0002
#define JCTF_FULL				0x0001
#define  JC_DEFAULT_FEATURES				(JCF_LEFT | JCF_RIGHT | JCF_CENTER | JCF_FULL)
#define  JC_DEFAULT_TOOLBOX_FEATURES (JCTF_LEFT | JCTF_RIGHT | JCTF_CENTER |
				  JCTF_FULL)
    @default GCI_output = (TO_APP_TARGET);
    @default GI_attrs = (@default | GA_KBD_SEARCH_PATH);

ParaSpacingControlClass

This controller controls several paragraph spacing characteristics of the current text selection (such as paragraph spacing on top, spacing on bottom, leading, and line spacing). Its features and tools are shown in ParaSpacingControlClass Features .

Code Display 10-31 ParaSpacingControlClass Features

  typedef WordFlags PASCFeatures;
#define PASCF_SPACE_ON_TOP_BOTTOM					0x0002
#define PASCF_LEADING					0x0001
  typedef WordFlags PASCToolboxFeatures;
#define PASCTF_SINGLE					0x8000
#define PASCTF_ONE_AND_A_HALF					0x4000
#define PASCTF_DOUBLE					0x2000
#define PASCTF_TRIPLE					0x1000
#define  PASC_DEFAULT_FEATURES				(PASCF_SPACE_ON_TOP_BOTTOM | PASCF_LEADING)
#define  PASC_DEFAULT_TOOLBOX_FEATURES (PASCTF_SINGLE | PASCTF_ONE_AND_A_HALF |
				PASCTF_DOUBLE | PASCTF_TRIPLE)
@default GCI_output = (TO_APP_TARGET);

DefaultTabsControlClass and TabControlClass

These controllers set the placement and features of both default and user-defined tabs in the current text selection. The features and tools of both controllers are shown in Tab Controllers .

Code Display 10-32 Tab Controllers

	/* DefaultTabsControlClass */
  typedef WordFlags DTCFeatures;
#define DTCF_LIST				0x0002
#define DTCF_CUSTOM				0x0001
  typedef WordFlags DTCToolboxFeatures;
#define  DTC_DEFAULT_FEATURES				(DTCF_LIST | DTCF_CUSTOM)
#define  DTC_DEFAULT_TOOLBOX_FEATURES 0
    @default GCI_output = (TO_APP_TARGET);
 	/* TabControlClass */
  typedef WordFlags TCFeatures;
#define TCF_LIST					0x0080
#define TCF_POSITION					0x0040
#define TCF_GRAY_SCREEN					0x0020
#define TCF_TYPE					0x0010
#define TCF_LEADER					0x0008
#define TCF_LINE					0x0004
#define TCF_CLEAR					0x0002
#define TCF_CLEAR_ALL					0x0001
 typedef WordFlags TCToolboxFeatures;
#define  TC_DEFAULT_FEATURES				(TCF_LIST | TCF_POSITION | TCF_GRAY_SCREEN |
				 TCF_TYPE | TCF_LEADER | TCF_LINE | TCF_CLEAR |
				 TCF_CLEAR_ALL)
#define  TC_DEFAULT_TOOLBOX_FEATURES 0
     @instance word TCI_numberOfTabs;
    @instance Tab TCI_tabList[VIS_TEXT_MAX_TABS];
    @instance word TCI_selectedTab;
    @default GCI_output = (TO_APP_TARGET);

ParaBGColorControlClass

This controller controls the background color, draw mask, and pattern of the background color of the current paragraph selections. Since ParaBGColorControlClass is a subclass of ColorSelectorClass , it inherits the functions of that class. Its features and tools are shown in ParaBGColorControlClass Features .

Code Display 10-33 ParaBGColorControlClass Features

#define  PBGCC_DEFAULT_FEATURES				(CSF_INDEX | CSF_RGB | CSF_DRAW_MASK |
				 CSF_PATTERN)
    @default GI_states = @default & ~GS_ENABLED;
    @default GCI_output = (TO_APP_TARGET);

ParaAttrControlClass

This controller the user to set the "keep with," hidden, word wrapping, an widow and orphan attributes of the current paragraph selection. Its features and tools are shown in ParaAttrControlClass Features .

Code Display 10-34 ParaAttrControlClass Features

  typedef WordFlags PACFeatures;
#define PACF_WORD_WRAP					0x0010
#define PACF_HIDDEN_TEXT					0x0008
#define PACF_KEEP_PARA_WITH_NEXT					0x0004
#define PACF_KEEP_PARA_TOGETHER					0x0002
#define PACF_KEEP_LINES					0x0001
 typedef WordFlags PACToolboxFeatures;
#define  PAC_DEFAULT_FEATURES				(PACF_WORD_WRAP | PACF_HIDDEN_TEXT |
				 PACF_KEEP_PARA_WITH_NEXT |
				 PACF_KEEP_PARA_TOGETHER | PACF_KEEP_LINES
#define  PAC_DEFAULT_TOOLBOX_FEATURES 0
    @default GCI_output = (TO_APP_TARGET);

BorderControlClass and BorderColorControlClass

This controllers set border color and placement. BorderColorControlClass is a subclass of ColorSelectorClass and therefore inherits the features and tools of that class. The tools and features of both controllers are shown in Border Controller Features .

Code Display 10-35 Border Controller Features

	/* BorderControlClass */
  typedef WordFlags BCFeatures;
#define BCF_LIST				0x0002
#define BCF_CUSTOM				0x0001
 typedef WordFlags BCToolboxFeatures;
#define  BC_DEFAULT_FEATURES				(BCF_LIST | BCF_CUSTOM)
#define  BC_DEFAULT_TOOLBOX_FEATURES 0
    @default GCI_output = (TO_APP_TARGET);
	/* BorderColorControlClass */
 typedef WordFlags BCCToolboxFeatures;
#define  BCC_DEFAULT_FEATURES				(CSF_INDEX | CSF_RGB | CSF_DRAW_MASK |
				 CSF_PATTERN)
#define  BCC_DEFAULT_TOOLBOX_FEATURES 0
    @default GI_states = @default & ~GS_ENABLED;
    @default GCI_output = (TO_APP_TARGET);

DropCapControlClass

This controller allows the user to set "drop cap" features of the current paragraph selection. Its features and tools are shown in DropCapControlClass Features .

Code Display 10-36 DropCapControlClass Features

 typedef WordFlags DCCFeatures;
#define  DCCF_DROP_CAP				0x0001
 typedef WordFlags DCCToolboxFeatures;
#define  DCC_DEFAULT_FEATURES				(DCCF_DROP_CAP)
#define  DCC_DEFAULT_TOOLBOX_FEATURES 0
    @default GCI_output = (TO_APP_TARGET);

HyphenationControlClass

This controller sets the implementation of automatic word hyphenation of the current paragraph selection. Its features and tools are shown in HyphenationControlClass .

Code Display 10-37 HyphenationControlClass

 typedef WordFlags HCFeatures;
#define  HCF_LIST				0x0001
typedef WordFlags  HCToolboxFeatures;
#define  HC_DEFAULT_FEATURES				(HCF_LIST)
#define  HC_DEFAULT_TOOLBOX_FEATURES 0
    @default GCI_output = (TO_APP_TARGET);

MarginControlClass

This controller sets the left, paragraph, and right margins of the current paragraph selection. Its tools and features are shown in MarginControlClass .

Code Display 10-38 MarginControlClass

  typedef WordFlags MCFeatures;
#define MCF_LEFT_MARGIN				0x0004
#define MCF_PARA_MARGIN				0x0002
#define MCF_RIGHT_MARGIN				0x0001
typedef WordFlags  MCToolboxFeatures;
#define  MC_DEFAULT_FEATURES				(MCF_LEFT_MARGIN | MCF_PARA_MARGIN |
				 MCF_RIGHT_MARGIN)
#define  MC_DEFAULT_TOOLBOX_FEATURES 0
    @default GCI_output = (TO_APP_TARGET);

TextRulerControlClass

This controller manages how the TextRulerClass ruler operates, if any text ruler is used. The TextRuler provides a complete ruler for the text object. The features and tools of the TextRulerControl are shown in TextRulerControlClass .

Code Display 10-39 TextRulerControlClass

  typedef WordFlags TRCCFeatures;
#define TRCCF_ROUND					0x0002
#define TRCCF_IGNORE_ORIGIN					0x0001
typedef WordFlags  TRCCToolboxFeatures;
#define  TRCC_DEFAULT_FEATURES				(TRCCF_ROUND | TRCCF_IGNORE_ORIGIN)
#define  TRCC_DEFAULT_TOOLBOX_FEATURES 0
   typedef WordFlags TextRulerControlAttributes;
#define TRCA_ROUND					0x8000
#define TRCA_IGNORE_ORIGIN					0x4000
    @instance TextRulerControlAttributes TRCI_attrs = TRCA_ROUND;

TextStyleSheetControlClass

This controller allows the user to set up and use style sheets with the target text object. It is subclassed off StyleSheetControlClass and inherits all the features and tools of that class. It has no additional tools or features of its own.


Up: GEOS SDK TechDocs | Up | Prev: 7.1 Character Attribute Controllers | Next: 7.3 Search and Replace and Spell-Checking