The QMultiLineEdit widget is a simple editor for inputting text. More...
#include <qmultilineedit.h>
Inherits QTableView.
The QMultiLineEdit widget provides multiple line text input and display. It is intended for moderate amounts of text. There are no arbitrary limitations, but if you try to handle megabytes of data, performance will suffer.
Per default, the edit widget does not perform any word wrapping. This can be adjusted by calling setWordWrap(). Both dynamic wrapping according to the visible width or a fixed number of character or pixels is supported.
The widget can be used to display text by calling setReadOnly(TRUE)
The default key bindings are described in keyPressEvent(); they cannot be customized except by inheriting the class.
Examples: qdir/qdir.cpp mainlyQt/editor.cpp layout/layout.cpp mainlyXt/editor.cpp mainlyMotif/editor.cpp rot13/rot13.cpp scrollview/scrollview.cpp customlayout/main.cpp
Normal
- display characters as they are entered. This is
the default.
NoEcho
- do not display anything.
Password
- display asterisks instead of the characters
actually entered.
See also: setEchoMode(), echoMode() and QLineEdit::EchoMode.
The following values are valid:
NoWrap
- no word wrap at all.
WidgetWidth
- word wrap depending on the current
width of the editor widget
FixedPixelWidth
- wrap according to a fix amount
of pixels ( see wrapColumnOrWidth() )
FixedColumnWidth
- wrap according to a fix character
column. This is useful whenever you need formatted text that
can also be displayed gracefully on devices with monospaced
fonts, for example a standard VT100 terminal. In that case
wrapColumnOrWidth() should typically be set to 80.
See also: setWordWrap().
The following values are valid:
AtWhiteSpace
- break only after whitespace
Anywhere
- break anywhere
See also: setWrapPolicy().
Constructs a new, empty, QMultiLineEdit.
Destroys the QMultiLineEdit.
Returns the alignment.
See also: setAlignment() and Qt::AlignmentFlags.
[slot]
Appends s to the text.
Returns TRUE if the cursor is placed at the beginning of the text.
Returns TRUE if the cursor is placed at the end of the text.
Returns TRUE if the view updates itself automatically whenever it is changed in some way.
See also: setAutoUpdate().
[virtual protected]
Deletes the character on the left side of the text cursor and moves the cursor one position to the left. If a text has been marked by the user (e.g. by clicking and dragging) the cursor is put at the beginning of the marked text and the marked text is removed.
See also: del().
[slot]
Removes all text.
[slot]
Copies the marked text to the clipboard. Will only copy if echoMode() is Normal.
[slot]
This function is obsolete. It is provided to keep old programs working. We strongly advise against using it in new code.
Backward compatibility.
[virtual protected]
Moves the cursor one line down. If mark is TRUE, the text is marked.
See also: cursorUp(), cursorLeft() and cursorRight().
[virtual protected]
Moves the cursor one character to the left. If mark is TRUE, the text is marked. If wrap is TRUE, the cursor moves to the end of the previous line if it is placed at the beginning of the current line.
See also: cursorRight(), cursorUp() and cursorDown().
[protected]
Returns the top center point where the cursor is drawn.
This function is obsolete. It is provided to keep old programs working. We strongly advise against using it in new code.
Use getCursorPosition() instead.
[virtual protected]
Moves the cursor one character to the right. If mark is TRUE, the text is marked. If wrap is TRUE, the cursor moves to the beginning of the next line if it is placed at the end of the current line.
See also: cursorLeft(), cursorUp() and cursorDown().
[virtual protected]
Moves the cursor up one line. If mark is TRUE, the text is marked.
See also: cursorDown(), cursorLeft() and cursorRight().
Moves the cursor one word to the left. If mark is TRUE, the text is marked.
See also: cursorWordForward().
Moves the cursor one word to the right. If mark is TRUE, the text is marked.
See also: cursorWordBackward().
[slot]
Copies the selected text to the clipboard and deletes the selected text.
[static]
Returns the distance between tab stops.
See also: setDefaultTabStop();.
[virtual protected]
Deletes the character on the right side of the text cursor. If a text has been marked by the user (e.g. by clicking and dragging) the cursor is put at the beginning of the marked text and the marked text is removed.
See also: backspace().
[slot]
Deselects all text (i.e. removes marking) and leaves the cursor at the current position.
[virtual protected]
Handles drag leave events, cancelling any auto-scrolling.
Reimplemented from QWidget.
[virtual protected]
Handles drag motion events, accepting text and positioning the cursor.
Reimplemented from QWidget.
[virtual protected]
Handles drop events, pasting text.
Reimplemented from QWidget.
Returns the currently set echo mode.
See also: setEchoMode().
Returns the edited flag of the line edit. If this returns FALSE, the contents has not been changed since the construction of the QMultiLineEdit (or the last call to setEdited( FALSE ), if any). If it returns TRUE, the contents have been edited, or setEdited( TRUE ) has been called.
See also: setEdited().
[virtual protected]
Moves the text cursor to the right end of the line. If mark is TRUE text is marked towards the last position. If it is FALSE and the cursor is moved, all marked text is unmarked.
See also: home().
[virtual protected]
Starts the cursor blinking.
Reimplemented from QWidget.
[virtual protected]
stops the cursor blinking.
Reimplemented from QWidget.
Returns the current line and character position within that line, in the variables pointed to by line and col respectively.
See also: setCursorPosition().
[protected]
If there is marked text, sets line1, col1, line2 and col2 to the start and end of the marked region and returns TRUE. Returns FALSE if there is no marked text.
[protected]
Returns a pointer to the text at line line.
Returns the horizontal margin current set. The default is 3.
See also: setHMargin().
[protected]
Returns TRUE if there is marked text.
[virtual protected]
Moves the text cursor to the left end of the line. If mark is TRUE, text is marked towards the first position. If it is FALSE and the cursor is moved, all marked text is unmarked.
See also: end().
[slot]
Inserts s at the current cursor position.
[virtual protected]
Inserts c at the current cursor position.
[virtual]
Inserts txt at line number line, after character number col in the line. If txt contains newline characters, new lines are inserted.
The cursor position is adjusted. If the insertion position is equal to the cursor position, the cursor is placed after the end of the new text.
[protected]
Inserts c at the current cursor position. (this function is provided for backward compatibility - it simply calls insert()).
[virtual]
Inserts txt at line number line. If line is less than zero, or larger than the number of rows, the new text is put at the end. If txt contains newline characters, several lines are inserted.
The cursor position is not changed.
[protected]
Returns wether row is the last row in a paragraph.
This function is only interesting in word wrap mode, otherwise its return value is always TRUE.
See also: setWordWrap().
Returns TRUE if this multi line edit is in overwrite mode, i.e. if characters typed replace characters in the editor.
See also: setOverwriteMode().
Returns FALSE if this multi line edit accepts text input. Scrolling and cursor movements are accepted in any case.
See also: setReadOnly() and QWidget::isEnabled().
Returns whether the multilineedit is currently undo enabled or not.
See also: setUndoEnabled().
[virtual protected]
The key press event handler converts a key press to some line editor action.
Here are the default key bindings when isReadOnly() is FALSE:
Here are the default key bindings when isReadOnly() is TRUE:
Reimplemented from QWidget.
[virtual protected]
Deletes text from the current cursor position to the end of the line.
[virtual protected]
Handles auto-copy of selection (X11 only).
Reimplemented from QWidget.
Returns the length of the current text.
See also: setMaxLength().
[protected]
Returns the number of characters at line number line.
[protected]
Returns a copy of the marked text.
Returns the currently set text length limit, or -1 if there is no limit (this is the default).
See also: setMaxLength().
Returns the currently set line length limit, or -1 if there is no limit (this is the default).
See also: setMaxLineLength().
Returns the width in pixels of the longest text line in this editor.
Returns the currently set line limit, or -1 if there is no limit (the default).
See also: setMaxLines().
[virtual]
Returns a size sufficient for one character, and scroll bars.
Reimplemented from QWidget.
[virtual protected]
Handles double click events.
Reimplemented from QWidget.
[virtual protected]
Handles mouse move events.
Reimplemented from QWidget.
[virtual protected]
Handles mouse press events.
Reimplemented from QWidget.
[virtual protected]
Handles mouse release events.
Reimplemented from QWidget.
[virtual protected]
Makes a line break at the current cursor position.
Returns the number of lines in the editor. The count includes any empty lines at top and bottom, so for an empty editor this method will return 1.
[virtual protected]
Moves the cursor one page down. If mark is TRUE, the text is marked.
[virtual protected]
Moves the cursor one page up. If mark is TRUE, the text is marked.
[virtual protected]
Implements the basic drawing logic.
Reimplemented from QTableView.
[slot]
Copies text from the clipboard onto the current cursor position. Any marked text is first deleted.
[slot]
Redos the last text operation.
[signal]
This signal is emitted when the availability of redo changes. If yes is TRUE, then redo() will work until redoAvailable(FALSE) is next emitted.
[virtual]
Deletes the line at line number line. If line is less than zero, or larger than the number of lines, no line is deleted.
[virtual protected]
Reimplemented for internal purposes.
Reimplemented from QWidget.
[signal]
This signal is emitted when the user presses the return or enter key. It is not emitted if isReadOnly() is TRUE.
See also: textChanged().
[slot]
Selects all text without moving the cursor.
Sets the alignment. Possible values are AlignLeft, AlignCenter
and AlignRight.
See also: alignment() and Qt::AlignmentFlags.
[virtual]
Sets the auto-update option of multi-line editor to enable.
If enable is TRUE (this is the default) then the editor updates itself automatically whenever it has changed in some way (generally, when text has been inserted or deleted).
If enable is FALSE, the view does NOT repaint itself, or update its internal state variables itself when it is changed. This can be useful to avoid flicker during large changes, and is singularly useless otherwise: Disable auto-update, do the changes, re-enable auto-update, and call repaint().
Warning: Do not leave the view in this state for a long time (i.e. between events ). If, for example, the user interacts with the view when auto-update is off, strange things can happen.
Setting auto-update to TRUE does not repaint the view, you must call repaint() to do this (preferable repaint(FALSE) to avoid flicker).
See also: autoUpdate() and repaint().
[virtual]
Sets the cursor position to character number col in line number line. The parameters are adjusted to lie within the legal range.
If mark is FALSE, the selection is cleared. otherwise it is extended
See also: cursorPosition().
[static]
Sets the distance between tab stops for all QMultiLineEdit instances to \ex, which is measured in multiples of the width of a lower case 'x' in the widget's font. The initial value is 8.
Warning: This function does not cause a redraw. It is best to call it before any QMultiLineEdit widgets are shown.
See also: defaultTabStop().
[virtual]
Sets the echo mode to em. The default is Normal.
The display is updated according.
See also: setEchoMode().
Sets the edited flag of this line edit to on. The edited flag is never read by QMultiLineEdit, but is changed to TRUE whenever the user changes its contents.
This is useful e.g. for things that need to provide a default value, but cannot find the default at once. Just open the widget without the best default and when the default is known, check the edited() return value and set the line edit's contents if the user has not started editing the line edit. Another example is to detect whether the contents need saving.
See also: edited().
[virtual]
Sets the fixed height of the QMultiLineEdit so that lines text lines are visible given the current font.
See also: setMaxLines() and setFixedHeight().
[virtual]
Reimplements QWidget::setFont() to update the list box line height.
[virtual]
Sets the horizontal margin.
See also: hMargin().
Sets the maximum text length to m. Use -1 for unlimited (the default). Existing overlong text will be truncated.
See also: maxLength().
[virtual]
Sets the maximum length of lines to m. Use -1 for unlimited (the default). Existing long lines will be truncated.
See also: maxLineLength().
[virtual]
Sets the maximum number of lines to m. Use -1 for unlimited (the default). Existing excess lines will be deleted.
See also: maxLines().
[virtual]
Sets overwrite mode if on is TRUE. Overwrite mode means that characters typed replace characters in the editor.
See also: isOverwriteMode().
[virtual]
If on is FALSE, this multi line edit accepts text input. Scrolling and cursor movements are accepted in any case.
See also: isReadOnly() and QWidget::setEnabled().
[virtual]
Not supported at this time.
[virtual]
Sets the text to s, removing old text, if any.
Examples: mainlyQt/editor.cpp layout/layout.cpp mainlyXt/editor.cpp mainlyMotif/editor.cpp scrollview/scrollview.cpp customlayout/main.cpp
Sets the maximum number of operations that can be stored on the undo stack.
See also: undoDepth().
Sets undo enabled to enable
See also: isUndoEnabled().
[virtual]
Not supported at this time.
Sets the word wrap mode.
Per default, wrapping keeps words intact. To allow breaking within
words, set the wrap policy to Anywhere
(see setWrapPolicy() ).
The default wrap mode is NoWrap.
See also: wordWrap(), setWrapColumnOrWidth() and setWrapPolicy().
Sets the wrap column or wrap width, depending on the word wrap mode.
See also: setWordWrap().
Defines where text can be wrapped in word wrap mode.
The default is AtWhiteSpace.
/sa setWordWrap(), wrapPolicy().
[virtual]
Returns a size sufficient for a few lines of text, or any value set by setFixedVisibleLines().
Reimplemented from QWidget.
[virtual]
Specifies that this widget can use additional space, and that it can survive on less than sizeHint().
Reimplemented from QWidget.
[protected]
Returns the string shown at line row, including processing of the echoMode().
Returns a copy of the whole text. If the multi line edit contains no text, a null string is returned.
[signal]
This signal is emitted when the text is changed by an event or by a slot. Note that the signal is not emitted when you call a non-slot function such as insertLine().
See also: returnPressed().
Returns the text at line number line (possibly the empty string), or a null string if line is invalid.
[protected]
Returns the width in pixels of the string s. NOTE: only appropriate for whole lines.
[protected]
Returns the width in pixels of the text at line line.
[virtual protected]
Cursor blinking, drag scrolling.
Reimplemented from QObject.
[slot]
Undos the last text operation.
[signal]
This signal is emitted when the availability of undo changes. If yes is TRUE, then undo() will work until undoAvailable(FALSE) is next emitted.
Returns the maximum number of operations that can be stored on the undo stack.
See also: setUndoDepth().
Not supported at this time.
[virtual protected]
Reimplemented for internal reasons; the API is not affected. Passes wheel events to the vertical scrollbar.
Reimplemented from QWidget.
Returns the current word wrap mode.
See also: setWordWrap().
Returns the wrap column or wrap width, depending on the word wrap mode.
See also: setWordWrap() and setWrapColumnOrWidth().
Returns the current word wrap policy.
See also: setWrapPolicy().
Search the documentation, FAQ, qt-interest archive and more (uses
www.troll.no):
This file is part of the Qt toolkit, copyright © 1995-2000 Troll Tech, all rights reserved.
Copyright © 2000 Troll Tech | Trademarks | Qt version 2.1.0 (pre-release)
|