]]>]]>DtEditor
library callDtEditorthe DtEditor widget class
#include <Dt/Editor.h>
DESCRIPTION
The DtEditor widget supports creating and editing text files. It gives
applications running in the desktop environment a consistent method for editing
text data. The widget consists of:
A scrolled edit window for text
Dialogs for finding and changing text
Optional status line
Spell checking option
]]>
Formatting options
Convenience functions for programmatically controlling the widget
The DtEditor widget supports the following set of basic editing operations:
Finding and changing text
Simple formatting
Spell checking
]]>
Undoing the previous edit operation
]]>]]>
The DtEditor widget provides separate callback lists to track when text
is selected or deselected. In addition, it extends the standard help callback
to report help requests from any of its components.
Widget subclassing is not supported for the DtEditor widget class.
Edit WindowThe edit window supports basic editing operations
such as cut and paste, find and change, simple formatting and spell
checking.
]]>The edit window supports basic editing operations
such as cut and paste, find and change, and simple formatting.]]>
Mouse and Keyboard
The user can use the mouse to move the edit cursor and to select portions
of a document for editing operations. Selection is based on the model specified
in the Inter-Client Communication Conventions Manual The DtEditor widget
supports primary and secondary selection.
The user can cut, copy and paste text using the clipboard, primary transfer
or secondary transfer. The DtEditor widget accepts drops of text, text files
or buffers of data. Text drops are inserted where the mouse button is released
to complete the drop. Dropped files and buffers of data are placed at the
insertion cursor. The DtEditor widget supports dragging of text within the
edit window or to a different widget.
The DtEditor widget provides a set of translations for the edit window.
The default translations provide key bindings for moving the insertion cursor,
and deleting, inserting and selecting text. The insertion cursor, displayed
as an I-beam, shows where input is inserted. Input is inserted just before
the insertion cursor.
Status Line
The status line, which can be shown or hidden, displays the current line
number, total line count and
whether the DtEditor widget is in overstrike mode.
The current line-number
display shows the line number of the line containing the insertion
cursor.
The user can go directly to any line in the document by entering
the number into the current line number display.
The status line also provides a text field
for displaying application-supplied messages.
For information on
localizing the status line, see the
Localization Resources section.
]]>
Dialogs
The DtEditor widget includes dialogs to provide a graphical user interface
to its functionality:
Find/Change dialog
Spell dialog.
]]>
Format Settings dialog
The titles of all dialogs are controlled with the DtNdialogTitle resource. All dialogs are posted using corresponding
convenience functions and remain posted until dismissed by the user. Each
dialog includes Close and Help buttons in addition to buttons described in
the following lists. Localization Resources section.
]]>
The Find/Change dialog for the DtEditor widget enables users to search
for, and optionally replace, a string in the edit window. The dialog includes
fields for specifying the find string and the replacement string. the next occurrence of the specified string (regular expressions are not
supported) is highlighted in the DtEditor widget, if found; otherwise, the
DtEditor widget displays a message dialog stating the string was not found.
If the string was found, the user has the option to change the highlighted
occurrence or all occurrences.
The &cdeman.DtEditorFind; and &cdeman.DtEditorChange;
functions provide a programmatic interface to the find and change
functionality of the DtEditor widget.
DtNspellFilter when the dialog is displayed.
The actions for
find, change to and change all are the same as the Find dialog.
]]>The Format Settings dialog for the DtEditor widget enables users
to format the contents of the edit window, format just the paragraph containing
the insertion cursor, or specify the arguments used when formatting text.
The arguments include margin settings and text alignment. The user has the
choice of aligning the text flush with the left or right margin, centering
each line of text between the margins, or aligning it flush with both margins.
DtNwordWrap resource is
True,
text wraps at the right edge of the edit
window (see the description for
DtNwordWrap), regardless of the right margin setting.
To format text wider than the edit window,
DtNwordWrap should be
False.
]]>The &cdeman.DtEditorFormat; function provides a programmatic
interface to the format functionality of the DtEditor widget.
Word Wrap and Formatting
Word wrap and text formatting are essentially independent operations.
Word wrap pertains to the dynamic display of lines, as delimited by newline characters, which exceed the width of the Text Editor window
and is based on the left and right window boundaries. When word wrap mode
is off (the default), each line of text is displayed on a single line on the
display and text entered at the right window boundary causes the window to
scroll automatically to the right to accommodate the new text until an actual newline character is entered (normally, by pressing the Return key).
When word wrap mode is on, lines longer than the window width are automatically
wrapped at the right window margin to one or more display lines, and text
entered at the right window boundary is automatically broken on a word boundary
to the first column of the next display line. Word wrap is dynamic in that
word-wrapped lines are automatically adjusted when text is inserted or deleted
or when the window is resized. Word wrap only affects the display of lines;
it does not actually insert newline characters in the text.
Text formatting is a static operation that inserts actual newline (and/or space) characters directly in the text
to match it to the left and right margins (and justification mode) specified
in the Format Settings dialog. Format settings affect text only when explicitly
applied and have no affect on word wrap or previously formatted text. Initially,
and whenever the window is resized, the right format margin is automatically
set to the window width to match the word wrap boundary.
Classes
The DtEditor widget inherits behavior and resources from Core, Composite, Constraint, XmManager, XmBulletinBoard and XmForm classes.
The class pointer is dtEditorWidgetClass.
The class name is DtEditorWidget.
New Resources
The following table defines a set of widget resources the application
uses to specify data. The application can also set the resource values for
the inherited classes to set attributes for this widget. To reference a resource
by name or by class in a .Xdefaults file, the application
must remove the DtN or DtC prefix and
use the remaining letters. To specify one of the defined values for a resource
in a .Xdefaults file, the application must remove the Dt prefix and use the remaining letters (in either lower case or
upper case, but including any underscores between words). The codes in the
access column indicate if the given resource can be set at creation time (C),
set by using XtSetValues (S), retrieved by using XtGetValues (G), or is not applicable (N/A).
DtEditor Resource
Set
Name
Class
Type
Default
Access
DtNautoShowCursorPosition
DtCAutoShowCursorPosition
Boolean
True
CSG
DtNblinkRate
DtCBlinkRate
int
500
CSG
DtNbuttonFontList
DtCFontList
XmFontList
dynamic
CSG
DtNcolumns
DtCColumns
XmNcolumns
dynamic
CSG
DtNcursorPosition
DtCCursorPosition
XmTextPosition
0
CSG
DtNcursorPositionVisible
DtCCursorPositionVisible
Boolean
True
CSG
DtNdialogTitle
DtCDialogTitle
XmString
NULL
CSG
DtNeditable
DtCEditable
Boolean
True
CSG
DtNlabelFontList
DtCFontList
XmFontList
dynamic
CSG
DtNmaxLength
DtCMaxLength
int
largest integer
CSG
DtNoverstrike
DtCOverstrike
Boolean
False
CSG
DtNrows
DtCRows
XmNrows
dynamic
CSG
DtNscrollHorizontal
DtCScroll
Boolean
True
CG
DtNscrollLeftSide
DtCScrollSide
Boolean
dynamic
CG
DtNscrollTopSide
DtCScrollSide
Boolean
False
CG
DtNscrollVertical
DtCScroll
Boolean
True
CG
DtNshowStatusLine
DtCShowStatusLine
Boolean
False
CSG
DtNspellFilter
DtCspellFilter
char *
spell
CSG
]]>
DtNtextBackground
DtCBackground
Pixel
dynamic
CSG
DtNtextDeselectCallback
DtCCallback
XtCallbackList
NULL
C
DtNtextFontList
DtCFontList
XmFontList
dynamic
CSG
DtNtextForeground
DtCForeground
Pixel
dynamic
CSG
DtNtextSelectCallback
DtCCallback
XtCallbackList
NULL
C
DtNtextTranslations
DtCTranslations
XtTranslations
NULL
CS
DtNtopCharacter
DtCTextPosition
XmTextPosition
0
CSG
DtNwordWrap
DtCWordWrap
Boolean
False
CSG
DtNautoShowCursorPosition
Ensures that the text visible in the scrolled edit window contains the
insert cursor when set to True. If the insert cursor changes, the contents
of the DtEditor widget may scroll in order to bring the insertion point into
the window.
DtNblinkRate
Specifies the blink rate of the text cursor in milliseconds. The time
indicated in the blink rate relates to the time the cursor is visible and
the time the cursor is invisible (that is, the time it takes to blink the
insertion cursor on and off is twice the blink rate). The cursor does not
blink when the blink rate is set to zero. The value cannot be negative.
DtNbuttonFontList
Specifies the font list used for the DtEditor buttons (the buttons appearing
in the DtEditor dialogs). If this value is NULL at initialization, it is initialized by looking up the parent
hierarchy of the widget for an ancestor that is a subclass of the XmBulletinBoard, VendorShell or XmMenuShell widget class. If such an ancestor is found, the font
list is initialized to the appropriate default font list of the ancestor widget
( XmNdefaultFontList for VendorShell and XmMenuShell, and XmNbuttonFontList for XmBulletinBoard ). If no such ancestor is found, the default is implementation
dependent.
DtNcolumns
Specifies the initial width of the edit window of the DtEditor widget
as an integral number of characters. The width equals the number of characters
this resource specifies multiplied by the maximum character width of the associated
font. For proportionate fonts, the actual number of characters that fit on
a given line may be greater than the value specified. The value must be greater
than zero. The default value depends on the value of the DtNwidth resource.
DtNcursorPosition
Indicates the position in the DtEditor widget where the current insert
cursor is located. This position is determined by the number of characters
from the beginning of the text. The first character position is zero.
DtNcursorPositionVisible
When set to True, this resource specifies that the insert cursor position
is marked by a blinking text cursor.
DtNdialogTitle
Specifies an XmString that appears as part of the titles for the dialogs
displayed by the DtEditor widget. If this resource is non- NULL, it is used as the prefix of the
DtNeditable
When set to True, this resource indicates that the user can edit the
text; otherwise, it prohibits the user from editing the text.
DtNlabelFontList
Specifies the font list used for the labels for DtEditor (the labels
appear in the DtEditor dialogs). If this value is NULL
at initialization, it is initialized by looking up the parent hierarchy of
the widget for an ancestor that is a subclass of the XmBulletinBoard, VendorShell or XmMenuShell widget class. If such an ancestor is found, the font list is
initialized to the XmNlabelFontList
of the ancestor widget. If no such ancestor is found, the default is implementation
dependent.
DtNmaxLength
Specifies the maximum length of the text string that can be entered
into the DtEditor widget from the keyboard. This value must be non-negative.
Strings entered using the &cdeman.DtEditorSetContents; or &cdeman.DtEditorSetContentsFromFile; functions ignore this resource.
DtNoverstrike
When set to False, characters typed into the DtEditor widget are inserted
at the position of the insertion cursor. This is the default behavior. If
set to True, characters typed into the DtEditor widget replace the characters
that directly follow the insertion cursor. When the end of the line is reached,
characters are appended to the end of the line. DtNoverstrikeIndicatorLabel appears in the status line whenever
DtNoverstrike is
True.
]]>
DtNrows
Specifies the initial height of the edit window of the DtEditor widget
measured in character heights. The value must be greater than zero.
DtNscrollHorizontal
When set to True, this resource adds a ScrollBar that allows the user
to scroll horizontally through text.
DtNscrollLeftSide
When set to True, this resource indicates that the vertical ScrollBar
should be placed on the left side of the scrolled edit window. This attribute
is ignored if DtNscrollVertical
is False. The default value may depend on the value of the XmNstringDirection resource.
DtNscrollTopSide
When set to True, this resource indicates that the horizontal ScrollBar
should be placed on the top side of the scrolled edit window. This attribute
is ignored if DtNscrollHorizontal
is False.
DtNscrollVertical
When set to True, this resource adds a ScrollBar that allows the user
to scroll vertically through text.
DtNshowStatusLine
When set to True,
the DtEditor widget displays a status line below the
edit window.
The status line contains a field
that displays the current line number of the insert cursor, total
number of lines in the document, and whether
the DtEditor widget is in overstrike mode.
The user can enter a line number in the
line number display to go directly to that line.
The status line also includes a Motif Text Field widget
(XmTextField)
for displaying application supplied messages.
This field is a convenient way for an application to display status and
feedback about the document being edited.
The Text Field ID is retrieved using
&cdeman.DtEditorGetMessageTextFieldID;. A message is displayed by
setting the
XmNvalue or
XmNvalueWcs resource of this widget.
If the Text field is not needed, it can be unmanaged by calling
XtUnmanageWidget(3) with its ID.
DtNspellFilter
Specifies the filter used to identify spelling errors.
The
&cdeman.DtEditorInvokeSpellDialog; function filters the contents of a DtEditor widget
through the filter specified by
DtNspellFilter. The filter
specified should accept a file name and produce a list of misspelled and
unrecognized words in this file on standard out.
The default filter is
spell(1). ]]>
DtNtextBackground
Specifies the background of the edit window and the text fields for
DtEditor (the text fields appear in the DtEditor dialogs).
DtNtextDeselectCallback
Specifies a function called whenever the selection becomes NULL (that is, no text is selected within the
edit area). The reason sent by the callback is DtEDITOR_TEXT_DESELECT.
DtNtextFontList
Specifies the font list used for the edit window and the text fields
for DtEditor (the text fields appear in the DtEditor dialogs). If this value is NULL
at initialization, it is initialized by looking up the parent hierarchy of
the widget for an ancestor that is a subclass of the XmBulletinBoard or VendorShell widget class. If such an
ancestor is found, the font list is initialized to the XmNtextFontList of the ancestor widget. If no such ancestor is
found, the default is implementation dependent.
DtNtextForeground
Specifies the foreground of the edit window and the text fields for
DtEditor (the text fields appear in the DtEditor dialogs).
DtNtextSelectCallback
Specifies a function called whenever the selection becomes non-NULL (that is, some text is selected within
the edit area). The reason sent by the callback is DtEDITOR_TEXT_SELECT.
DtNtextTranslations
Adds translations to the edit window. Translations specified with DtNtextTranslations override any duplicate translations
defined for the edit window.
DtNtopCharacter
Displays the line that contains the position of text at the top of the
scrolled edit window. The line is displayed at the top of the DtEditor widget
without shifting the text left or right. The position is determined by the
number of characters from the beginning of the text. The first character position
is zero.
XtGetValues(3) for DtNtopCharacter returns the position of the first character in
the line that is displayed at the top of the DtEditor widget.
DtNwordWrap
Indicates that text not go off the right edge of the window, but that
lines are broken at word breaks with soft line feeds when they reach the right
edge of the window.
Word wrap affects only the visual appearance of the contents of a DtEditor
widget. The line breaks (soft line feeds) are not physically inserted into
the text. The DtEditor widget supports substituting newlines
when the contents of the widget are retrieved or saved to a file (see &cdeman.DtEditorGetContents; and &cdeman.DtEditorSaveContentsToFile;).
Localization Resources
The following table defines a set of widget resources designed for
localization of the DtEditor widget and its dialogs.
Default values for these resources depends on the locale.
DtEditor
Localization Resource Set
Name
Class
Type
Default
Access
DtNcenterToggleLabel
DtCCenterToggleLabel
XmString
Dynamic
CSG
DtNchangeAllButtonLabel
DtCChangeAllButtonLabel
XmString
Dynamic
CSG
DtNchangeButtonLabel
DtCChangeButtonLabel
XmString
Dynamic
CSG
DtNchangeFieldLabel
DtCChangeFieldLabel
XmString
Dynamic
CSG
DtNcurrentLineLabel
DtCCurrentLineLabel
XmString
Dynamic
CSG
DtNfindButtonLabel
DtCFindButtonLabel
XmString
Dynamic
CSG
DtNfindChangeDialogTitle
DtCFindChangeDialogTitle
XmString
Dynamic
CSG
DtNfindFieldLabel
DtCFindFieldLabel
XmString
Dynamic
CSG
DtNformatAllButtonLabel
DtCFormatAllButtonLabel
XmString
Dynamic
CSG
DtNformatParagraphButtonLabel
DtCFormatParagraphButtonLabel
XmString
Dynamic
CSG
DtNformatSettingsDialogTitle
DtCFormatSettingsDialogTitle
XmString
Dynamic
CSG
DtNinformationDialogTitle
DtCInformationDialogTitle
XmString
Dynamic
CSG
DtNjustifyToggleLabel
DtCJustifyToggleLabel
XmString
Dynamic
CSG
DtNleftAlignToggleLabel
DtCLeftAlignToggleLabel
XmString
Dynamic
CSG
DtNleftMarginFieldLabel
DtCLeftMarginFieldLabel
XmString
Dynamic
CSG
DtNmisspelledListLabel
DtCMisspelledListLabel
XmString
Dynamic
CSG
DtNoverstrikeLabel
DtCOverstrikeLabel
XmString
Dynamic
CSG
DtNrightAlignToggleLabel
DtCRightAlignToggleLabel
XmString
Dynamic
CSG
DtNrightMarginFieldLabel
DtCRightMarginFieldLabel
XmString
Dynamic
CSG
DtNspellDialogTitle
DtCSpellDialogTitle
XmString
Dynamic
CSG
DtNtotalLineCountLabel
DtCTotalLineCountLabel
XmString
Dynamic
CSG
DtNcenterToggleLabel
Specifies the label for the center alignment toggle button in the
Format Settings dialog.
The default value in the C locale is
Center.
DtNchangeAllButtonLabel
Specifies the label for the button in the
Find/Change and Spell dialogs that change all
occurrences of the Find string in the document.
The default value in the C locale is
Change All.
DtNchangeButtonLabel
Specifies the label for the button in the
Find/Change and Spell dialogs that change the next
occurrence of the Find string in the document.
The default value in the C locale is
Change.
DtNchangeFieldLabel
Specifies the label for the field in the
Find/Change dialog where the user specifies the
replacement string.
The default value in the C locale is
Change To:.
DtNcurrentLineLabel
Specifies the label for the current line number field in the status line.
The default value in the C locale is
Line:.
DtNfindButtonLabel
Specifies the label for the button in the
Find/Change dialog that finds the next occurrence
of the Find string in the document.
The default value in the C locale is
Find.
DtNfindChangeDialogTitle
Specifies the title for the Find/Change dialog.
If
DtNdialogTitle is non-
NULL, it is added as a prefix to this resource to form the title.
The default value in the C locale is
Find/Change.
DtNfindFieldLabel
Specifies the label for the field in the
Find/Change dialog where the user specifies the
search string.
The default value in the C locale is
Find:.
DtNformatAllButtonLabel
Specifies the label for the button in the
Format Settings dialog that formats the complete document.
The default value in the C locale is
All.
DtNformatParagraphButtonLabel
Specifies the label for the button in the
Format Settings dialog that formats the paragraph
containing the insertion cursor.
The default value in the C locale is
Paragraph.
DtNformatSettingsDialogTitle
Specifies the title for the Format Settings dialog.
If
DtNdialogTitle is non-
NULL, it is added as a prefix to this resource to form the title.
The default value in the C locale is
Format Settings.
DtNinformationDialogTitle
Specifies the title for the Information dialog used to present
feedback and general information to the user.
If
DtNdialogTitle is non-
NULL, it is added as a prefix to this resource to form the title.
The default value in the C locale is
Information.
DtNjustifyToggleLabel
Specifies the label for the justify alignment toggle button in the
Format Settings dialog.
The default value in the C locale is
Justify.
DtNleftAlignToggleLabel
Specifies the label for the left alignment toggle button in the
Format Settings dialog.
The default value in the C locale is
Left Align.
DtNleftMarginFieldLabel
Specifies the label for the left margin value field in the
Format Settings dialog.
The default value in the C locale is
Left Margin:.
DtNmisspelledListLabel
Specifies the label for the list of unrecognized and misspelled
words in the Spell dialog.
The default value in the C locale is
Misspelled Words:.
DtNoverstrikeLabel
Specifies the label in the status line that indicates
that the DtEditor widget is in overstrike mode.
The default value in the C locale is
Overstrike.
DtNrightAlignToggleLabel
Specifies the label for the right alignment toggle button in the
Format Settings dialog.
The default value in the C locale is
Right Align.
DtNrightMarginFieldLabel
Specifies the label for the right margin value field in the
Format Settings dialog.
The default value in the C locale is
Right Margin:.
DtNspellDialogTitle
Specifies the title for the Spell dialog.
If
DtNdialogTitle is non-
NULL, it is added as a prefix to this resource to form the title.
The default value in the C locale is
Spell.
DtNtotalLineCountLabel
Specifies the label for the display showing the total number of
lines in the document.
The total number of lines displayed is part of the status line.
The default value in the C locale is
Total:.
]]>
Localization Resources
The following table defines a set of widget resources designed for localization
of the DtEditor widget and its dialogs. Default values for these resources
depends on the locale.
DtEditor Localization
Resource Set
Name
Class
Type
Default
Access
DtNfindChangeDialogTitle
DtCFindChangeDialogTitle
XmString
Dynamic
CSG
DtNformatSettingsDialogTitle
DtCFormatSettingsDialogTitle
XmString
Dynamic
CSG
DtNinformationDialogTitle
DtCInformationDialogTitle
XmString
Dynamic
CSG
DtNfindChangeDialogTitle
Specifies the title for the Find/Change dialog. If DtNdialogTitle is non-NULL,
it is added as a prefix to this resource to form the title. The default value
in the C locale is Find/Change.
DtNformatSettingsDialogTitle
Specifies the title for the Format Settings dialog. If DtNdialogTitle is non-NULL,
it is added as a prefix to this resource to form the title. The default value
in the C locale is Format Settings.
DtNinformationDialogTitle
Specifies the title for the Information dialog used to present feedback
and general information to the user. If DtNdialogTitle is non-NULL, it is
added as a prefix to this resource to form the title. The default value in
the C locale is Information.
]]>
Inherited Resources
The DtEditor widget inherits behavior and resources from the following
named superclasses. For a complete description of each resource, see the for that superclass.
XmForm Resource
Set
Name
Class
Type
Default
Access
XmNfractionBase
XmCMaxValue
int
100
CSG
XmNhorizontalSpacing
XmCSpacing
Dimension
0
CSG
XmNrubberPositioning
XmCRubberPositioning
Boolean
False
CSG
XmNverticalSpacing
XmCSpacing
Dimension
0
CSG
XmBulletinBoard
Resource Set
Name
Class
Type
Default
Access
XmNallowOverlap
XmCAllowOverlap
Boolean
True
CSG
XmNautoUnmanage
XmCAutoUnmanage
Boolean
True
CG
XmNbuttonFontList
XmCButtonFontList
XmFontList
dynamic
CSG
XmNcancelButton
XmCWidget
Window
NULL
SG
XmNdefaultButton
XmCWidget
Window
SG
XmNdefaultPosition
XmCDefaultPosition
Boolean
True
CSG
XmNdialogStyle
XmCDialogStyle
unsigned char
dynamic
CSG
XmNdialogTitle
XmCDialogTitle
XmString
NULL
CSG
XmNfocusCallback
XmCCallback
XtCallbackList
NULL
C
XmNlabelFontList
XmCLabelFontListk
XmFontList
dynamic
CSG
XmNmapCallback
XmCCallback
XtCallbackList
NULL
C
XmNmarginHeight
XmCMarginHeight
Dimension
10
CSG
XmNmarginWidth
XmCMarginWidth
Dimension
10
CSG
XmNnoResize
XmCNoResize
Boolean
False
CSG
XmNresizePolicy
XmCResizePolicy
unsigned char
XmRESIZE_ANY
CSG
XmNshadowType
XmCShadowType
unsigned char
XmSHADOW_OUT
CSG
XmNtextFontList
XmCTextFontList
XmFontList
dynamic
CSG
XmNtextTranslations
XmCTranslations
XtTranslations
NULL
C
XmNunmapCallback
XmCCallback
XtCallbackList
NULL
C
XmManager Resource
Set
Name
Class
Type
Default
Access
XmNbottomShadowColor
XmCBottomShadowColor
Pixel
dynamic
CSG
XmNbottomShadowPixmap
XmCBottomShadowPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNforeground
XmCForeground
Pixel
dynamic
CSG
XmNhelpCallback
XmCCallback
XtCallbackList
NULL
C
XmNhighlightColor
XmCHighlightColor
Pixel
dynamic
CSG
XmNhighlightPixmap
XmCHighlightPixmap
Pixmap
dynamic
CSG
XmNinitialFocus
XmCInitialFocus
Widget
NULL
CSG
XmNnavigationType
XmCNavigationType
XmNavigationType
dynamic
CSG
XmNshadowThickness
XmCShadowThickness
Dimension
dynamic
CSG
XmNstringDirection
XmCStringDirection
XmStringDynamic
dynamic
CG
XmNtopShadowColor
XmCTopShadowColor
Pixel
dynamic
CSG
XmNtopShadowPixmap
XmCTopShadowPixmap
Pixmap
dynamic
CSG
XmNtraversalOn
XmCTraversalOn
Boolean
dynamic
CSG
XmNunitType
XmCUnitType
unsigned char
dynamic
CSG
XmNuserData
XmCUserData
XtPointer
NULL
CSG
Composite Resource
Set
Name
Class
Type
Default
Access
XmNchildren
XmCReadOnly
WidgetList
NULL
G
XmNinsertPosition
XmCInsertPosition
XtOrderProc
default procedure
CSG
XmNnumChildren
XmCReadOnly
Cardinal
0
G
Core Resource Set
Name
Class
Type
Default
Access
XmNaccelerators
XmCAccelerators
XtAccelerators
dynamic
CSG
XmNancestorSensitive
XmCSensitive
Boolean
dynamic
G
XmNbackground
XmCBackground
Pixel
dynamic
CSG
XmNbackgroundPixmap
XmCPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNborderColor
XmCBorderColor
Pixel
XtDefaultForeground
CSG
XmNborderPixmap
XmCPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNborderWidth
XmCBorderWidth
Dimension
0
CSG
XmNcolormap
XmCColormap
Colormap
dynamic
CG
XmNdepth
XmCDepth
int
dynamic
CG
XmNdestroyCallback
XmCCallback
XtCallbackList
NULL
C
XmNheight
XmCHeight
Dimension
dynamic
CSG
XmNinitialResourcesPersistent
XmCInitialResourcesPersistent
Boolean
True
C
XmNmappedWhenManaged
XmCMappedWhenManaged
Boolean
True
CSG
XmNscreen
XmCScreen
Screen *
dynamic
CG
XmNsensitive
XmCSensitive
Boolean
True
CSG
XmNtranslations
XmCTranslations
XtTranslations
dynamic
CSG
XmNwidth
XmCWidth
Dimension
dynamic
CSG
XmNx
XmCPosition
Position
0
CSG
XmNy
XmCPosition
Position
0
CSG
Callback Information
The DtEditor widget has three callback functions of interest:
DtNtextSelectCallback
and DtNtextDeselectCallback
The DtNtextSelectCallback
and DtNtextDeselectCallback resources
allow an application to enable and disable certain commands or menu items
based on whether there is a selection. DtNtextSelectCallback specifies a function called whenever the selection becomes non-NULL (that is, some text is selected within
the edit window), while DtNtextDeselectCallback specifies a function called whenever the selection becomes NULL (that is, no text is selected within the
edit window). The reasons sent by the callbacks are DtEDITOR_TEXT_SELECT and DtEDITOR_TEXT_DESELECT.
XmNhelpCallback
An application that wishes to present help information to the user on
the DtEditor widget and its dialogs should set the XmNhelpCallback resource and use the Reason field passed as part
of DtEditorHelpCallbackStruct to
set the contents of its Help dialog. A pointer to the following structure
is passed to the XmNHelpCallback callback.
typedef struct {
int reason,
XEvent *event
} XmAnyCallbackStruct;
reason
Indicates why the callback was invoked. The possible reasons are:
DtEDITOR_HELP_EDIT_WINDOW
The help request originated in the edit window.
DtEDITOR_HELP_STATUS_LINE
The help request originated in the status line.
DtEDITOR_HELP_STATUS_CURRENT_LINE
The help request originated in the Current Line number
display in the status line.
DtEDITOR_HELP_STATUS_TOTAL_LINES
The help request originated in the Total Lines display in
the status line.
DtEDITOR_HELP_STATUS_MESSAGE
The help request originated in the Message field in the
status line.
DtEDITOR_HELP_STATUS_OVERSTRIKE
The help request originated in the Overstrike Indicator in
the status line.
]]>
DtEDITOR_HELP_FORMAT_DIALOG
The help request originated in the Help button in the Format dialog.
DtEDITOR_HELP_FORMAT_LEFT_MARGIN
The help request originated in the Left Margin field in the Format dialog.
DtEDITOR_HELP_FORMAT_RIGHT_MARGIN
The help request originated in the Right Margin field in the Format
dialog.
DtEDITOR_HELP_FORMAT_ALIGNMENT
The help request originated in the Alignment buttons in the Format dialog.
DtEDITOR_HELP_CHANGE_DIALOG
The help request originated in the Help button in the Find/Change dialog.
DtEDITOR_HELP_CHANGE_FIND
The help request originated in the Find field in the Find/Change dialog.
DtEDITOR_HELP_CHANGE_CHANGE
The help request originated in the Change To field in the Find/Change
dialog.
DtEDITOR_HELP_SPELL_DIALOG
The help request originated in the help button in the Spell
dialog.
DtEDITOR_HELP_SPELL_MISSPELLED_WORDS
The help request originated in the List of Misspelled Words
in the Spell dialog.
DtEDITOR_HELP_SPELL_CHANGE
The help request originated in the Change To field in the
Spell dialog.
]]>
event
A pointer to the XEvent that
caused this callback to be invoked. It may be NULL.
Translations
The DtEditor widget translations for the edit window are described in
the following list. The DtNtextTranslations
resource can be used to modify these translations.
KLeft
backward-character
MShift KLeft
key-select
]]>key-select
]]>
(left)
MCtrl KLeft
backward-word
MShift MCtrl KLeft
backward-word
]]>backward-word
]]>
(extend)
KRight
forward-character
MShift KRight
key-select
]]>key-select
]]>
(right)
MCtrl KRight
forward-word
MShift MCtrl KRight
forward-word
]]>forward-word
]]>
(extend)
KUp
process-up
MShift KUp
process-shift-up
MCtrl KUp
backward-paragraph
MShift MCtrl KUp
backward-paragraph
]]>backward-paragraph
]]>
(extend)
KDown
process-down
MShift KDown
process-shift-down
MCtrl KDown
forward-paragraph
MShift MCtrl KDown
forward-paragraph
]]>forward-paragraph
]]>
(extend)
KBeginLine
beginning-of-line
MShift KBeginLine
beginning-of-line
]]>beginning-of-line
]]>
(extend)
KEndLine
end-of-line
MShift KEndLine
end-of-line
]]>end-of-line
]]>
(extend)
KPageUp
previous-page
MShift KPageUp
previous-page
]]>previous-page
]]>
(extend)
KPageLeft
page-left
KPageDown
next-page
MShift KPageDown
next-page
]]>next-page
]]>
(extend)
KPageRight
page-right
KBeginData
beginning-of-file
MShift KBeginData
beginning-of-file
]]>beginning-of-file
]]>
(extend)
KEndData
end-of-file
MShift KEndData
end-of-file
]]>end-of-file
]]>
(extend)
KDelete
delete-next-character
MCtrl KDelete
delete-to-end-of-line
KBackSpace
delete-previous-character
MCtrl KBackSpace
delete-previous-word
MShift KBackSpace
delete-to-start-of-line
MAlt KBackSpace
undo-edit
MCtrl Kz
undo-edit
MCtrl K/
select-all
MCtrl K\
deselect-all
MCtrl Kg
go-to-line ]]>
MCtrl Kq
quote-next-character
MCtrl Kx
cut-clipboard
MCtrl Kc
copy-clipboard
MCtrl Kv
paste-clipboard
KHelp
Help
KInsert
toggle-insert-mode
KEnter
new-line-and-indent
MAnyKCancel
process-cancel
Action Routines
The DtEditor widget action routines are described here:
backward-character ( )
This action moves the insertion cursor one character to the left. This
action may have different behavior in a right-to-left language environment.
backward-paragraph (extend)
If this action is called with no argument, it moves the insertion cursor
to the first non-whitespace character following the first previous blank line
or beginning of the text. If the insertion cursor is already at the beginning
of a paragraph, the action moves the insertion cursor to the beginning of
the previous paragraph.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
backward-word ( extend)
If this action is called with no argument, it moves the insertion cursor
to the first non-whitespace character after the first whitespace character
to the left or after the beginning of the line. If the insertion cursor is
already at the beginning of a word, this action moves the insertion cursor
to the beginning of the previous word. This action may have different behavior
in a locale other than the C locale.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
beginning-of-file (extend)
If this action is called with no argument, it moves the insertion cursor
to the beginning of the text.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
beginning-of-line (extend)
If this action is called with no argument, it moves the insertion cursor
to the beginning of the line.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
clear-selection ( )
This action clears the current selection by replacing each character
except carriage-return with a space character.
copy-clipboard ( )
This action copies the current selection to the clipboard.
cut-clipboard ( )
This action cuts the current selection to the clipboard.
delete-next-character ( )
If there is a non-NULL selection,
this action deletes the selection; otherwise, it deletes the character following
the insertion cursor.
delete-next-word ( )
If there is a non-NULL selection,
this action deletes the selection; otherwise, it deletes the characters following
the insertion cursor to the next space, tab or end of line character.
delete-previous-character ( )
If there is a non-NULL selection,
this action deletes the selection; otherwise, it deletes the character of
text immediately preceding the insertion cursor.
delete-previous-word ( )
If there is a non-NULL selection,
this action deletes the selection; otherwise, it deletes the characters preceding
the insertion cursor to the next space, tab or beginning of the line character.
This action may have different behavior in a locale other than the C locale.
delete-to-end-of-line ( )
If there is a non-NULL selection,
this action deletes the selection; otherwise, it deletes the characters following
the insertion cursor to the next end-of-line character.
delete-to-start-of-line ( )
If there is a non-NULL selection,
this action deletes the selection; otherwise, it deletes the characters preceding
the insertion cursor to the previous beginning-of-line character.
deselect-all ( )
This action deselects the current selection.
end-of-file ( extend)
If this action is called with no argument, it moves the insertion cursor
to the end of the text.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
end-of-line ( extend)
If this action is called with no argument, it moves the insertion cursor
to the end of the line.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
forward-character ( )
This action moves the insertion cursor one character to the right. This
action may have different behavior in a right-to-left language environment.
forward-paragraph (extend)
If this action is called with no argument, it moves the insertion cursor
to the first non-whitespace character following the next blank line. If the
insertion cursor is already at the beginning of a paragraph, this action moves
the insertion cursor to the beginning of the next paragraph.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
forward-word ( extend)
If this action is called with no argument, it moves the insertion cursor
to the first whitespace character or end-of-line following the next non-whitespace
character. If the insertion cursor is already at the end of a word, this action
moves the insertion cursor to the end of the next word. This action may have
different behavior in a locale other than the C locale.
If called with an argument of extend,
this action moves the insertion cursor, as in the case of no argument, and
extends the current selection.
go-to-line ( )
This action moves the keyboard focus to the Current Line text field to allow the user to
move the insertion cursor to a new line.
This action is only valid if
DtNshowStatusLine has a value of
True.
For a description of the status line, see the
Editor Status Line heading in this manual page.
]]>
Help ( )
This action calls the callbacks for XmNhelpCallback if any exist. If there are no help callbacks for this widget,
this action calls the help callbacks for the nearest ancestor that has them.
insert-string ( string)
This action deletes the entire selection if there is a non-NULL selection and the cursor is not disjoint
from it. It inserts string before the insertion cursor.
key-select ( direction)
If this action is called with an argument of right, it moves the insertion cursor one character to the right and
extends the current selection. If this action is called with an argument of
left, it moves the insertion cursor one character
to the left and extends the current selection. If this action is called with
no argument, it extends the current selection.
newline-and-backup ( )
If there is a non-NULL selection
and the cursor is not disjoint from it, this action deletes the entire selection,
inserts a newline just before the insertion cursor and repositions the insertion
cursor to the end of the line before the newline.
newline-and-indent ( )
If there is a non-NULL selection
and the cursor is not disjoint from it, this action deletes the entire selection,
inserts a newline and then the same number of whitespace characters as at
the beginning of the previous line.
next-page ( extend)
If this action is called with no argument, it moves the insertion cursor
forward one page.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
page-left ( )
This action scrolls the viewing window left one page of text.
page-right ( )
This action scrolls the viewing window right one page of text.
paste-clipboard ( )
This action pastes the contents of the clipboard before the insertion
cursor.
previous-page ( extend)
If this action is called with no argument, it moves the insertion cursor
back one page.
If this action is called with an argument of extend, it moves the insertion cursor, as in the case of no argument,
and extends the current selection.
process-cancel ( )
This action cancels the current extend-adjust or secondary-adjust operation and leaves the selection state as it
was before the operation; otherwise, (and if the parent is a manager) it passes
the event to the parent.
process-down ( )
This action moves the insertion cursor down one line.
process-shift-down ( )
This action moves the insertion cursor down one line, extending the
current selection.
process-shift-up ( )
This action moves the insertion cursor up one line, extending the current
selection.
process-up ( )
This action moves the insertion cursor up one line.
select-all ( )
Selects all text.
toggle-insert-mode ( )
This action toggles the state of the text insertion mode. By default,
characters typed into the DtEditor widget are inserted at the position of
the insertion cursor. In overstrike mode, characters entered into the DtEditor
widget replace the characters that directly follow the insertion cursor. In
overstrike mode, characters are appended to the end of the line when the end
of a line is reached.
quote-next-character ( )
This action treats the next typed character as a special character and
inserts it into the text without interpreting it. Enables the insertion of
special instructional characters or special language characters, such as the
character marking a form feed or the umlaut used in German text.
undo-edit ( )
This action undoes the last change (deletion or insertion) made to the
text. A change consists of either a set of consecutive insertions, or a set
of consecutive deletions followed by up to one set of consecutive insertions.
An insertion is consecutive if there have been no intervening deletions, and
it is continuing forward from the same point. A deletion is consecutive if
there have been no intervening insertions, and its start or end position is
coincidental with the last deletion (that is, the deletion is continuing from
the same point, either forward or backward). Undoing an edit once restores
the original text. Undoing an edit twice restores the last change.
Convenience Functions
The Widget Library contains a number of functions that apply to the
DtEditor widget.
The following lists summarize these functions.
DtEditor Life Cycle Functions
DtCreateEditor ( )
Creates a new instance of a DtEditor widget.
DtEditorReset ( )
Restores a DtEditor widget to its initial state.
DtEditor Input/Output Functions
DtEditorAppend ( )
Appends content data to the end of a DtEditor
widget.
DtEditorAppendFromFile ( )
Appends the contents of a file to the end of a DtEditor
widget.
DtEditorGetContents ( )
Retrieves the entire contents of a DtEditor
widget.
DtEditorInsert ( )
Inserts content data at the current insert position.
DtEditorInsertFromFile ( )
Inserts the contents of a file at the current insert position.
DtEditorReplace ( )
Replaces a portion of text with the supplied data.
DtEditorReplaceFromFile ( )
Replaces a portion of text with the contents of a file.
DtEditorSaveContentsToFile ( )
Saves the entire contents to a file.
DtEditorSetContents ( )
Loads content data into a DtEditor
widget, replacing the entire contents of the widget.
DtEditorSetContentsFromFile ( )
Loads the contents of a file into a DtEditor
widget, replacing the entire contents of the widget.
DtEditor Selection Functions
DtEditorClearSelection ( )
Replaces the currently selected contents with blanks.
DtEditorCopyToClipboard ( )
Copies the currently selected contents to the clipboard.
DtEditorCutToClipboard ( )
Removes the currently selected contents, placing it on the clipboard.
DtEditorDeleteSelection ( )
Removes the currently selected contents.
DtEditorDeselect ( )
Deselects any selected contents.
DtEditorPasteFromClipboard ( )
Pastes the contents of the clipboard into a DtEditor
widget, replacing any currently selected contents.
DtEditorSelectAll ( )
Selects the entire contents of a DtEditor widget.
DtEditor Format Functions
DtEditorFormat ( )
Formats the contents of all or part of a DtEditor
widget.
DtEditorInvokeFormatDialog ( )
Displays the format dialog that enables the user
to specify format settings for margins and
justification style and to perform formatting
operations.
DtEditor Find and Change Text Functions
DtEditorChange ( )
Changes one or all occurrences of a string.
DtEditorFind ( )
Finds the next occurrence of a string.
DtEditorInvokeFindChangeDialog ( )
Displays the dialog that enables the user
to search for, and optionally change, a string.
DtEditorInvokeSpellDialog ( )
Displays a dialog with a list of misspelled
words in the current contents.
DtEditor Auxiliary Functions
DtEditorDisableRedisplay ( )
Temporarily prevents visual update of a DtEditor widget.
DtEditorEnableRedisplay ( )
Forces the visual update of a DtEditor widget.
]]>
DtEditorCheckForUnsavedChanges ( )
Reports whether the contents of a DtEditor
widget have been altered since they were last
retrieved or saved.
DtEditorGetInsertionPosition ( )
Returns the insertion cursor position of a DtEditor
widget.
DtEditorGetLastPosition ( )
Returns the position of the last character
in the edit window.
DtEditorGetMessageTextFieldID ( )
Retrieves the widget ID of the Text Field
widget used to display application messages.
DtEditorGetSizeHints ( )
Retrieves sizing information from a DtEditor
widget.
DtEditorGoToLine ( )
Moves the insert cursor to the specified line.
DtEditorSetInsertionPosition ( )
Sets the position of the insertion cursor.
DtEditorTraverseToEditor ( )
Sets keyboard traversal to the edit window of a DtEditor
widget.
DtEditorUndoEdit ( )
Undoes the last edit made by a user.
FILES
/usr/dt/lib/nls/msg/$LANG/DtWidget.cat ( )
Message catalog for DtWidget library.
]]>
SEE ALSO
&cdeman.Dt.Editor.h;, &cdeman.DtCreateEditor;,
&cdeman.DtEditorAppend;, &cdeman.DtEditorAppendFromFile;,
&cdeman.DtEditorChange;, &cdeman.DtEditorCheckForUnsavedChanges;,
&cdeman.DtEditorClearSelection;, &cdeman.DtEditorCopyToClipboard;,
&cdeman.DtEditorCutToClipboard;, &cdeman.DtEditorDeleteSelection;,
&cdeman.DtEditorDeselect;,
&cdeman.DtEditorFind;, &cdeman.DtEditorFormat;,
&cdeman.DtEditorGetContents;, &cdeman.DtEditorGetInsertionPosition;,
&cdeman.DtEditorGetLastPosition;,
&cdeman.DtEditorGetSizeHints;, &cdeman.DtEditorGoToLine;,
&cdeman.DtEditorInsert;, &cdeman.DtEditorInsertFromFile;,
&cdeman.DtEditorInvokeFindChangeDialog;, &cdeman.DtEditorInvokeFormatDialog;,
&cdeman.DtEditorPasteFromClipboard;, &cdeman.DtEditorReplace;,
&cdeman.DtEditorReplaceFromFile;,
&cdeman.DtEditorSaveContentsToFile;, &cdeman.DtEditorSelectAll;,
&cdeman.DtEditorSetContents;, &cdeman.DtEditorSetContentsFromFile;,
&cdeman.DtEditorSetInsertionPosition;, &cdeman.DtEditorTraverseToEditor;,
&cdeman.DtEditorUndoEdit;; Composite, Constraint, Core,
XmBulletinBoard, XmFontList,
XmForm, XmManager
in the &str-ZM;. ]]>