Pages
API Documentation
On this page

KRichTextWidget Class

A KRichTextEdit with common actions. More...

  • Header: #include <KRichTextWidget>
  • CMake: find_package(KF6 REQUIRED COMPONENTS TextWidgets)
    target_link_libraries(mytarget PRIVATE KF6::TextWidgets)
  • Inherits: KRichTextEdit

List of all members, including inherited members

Public Types

Public Functions

Public Slots

Detailed Description

This class implements common actions which are often used with KRichTextEdit. All you need to do is to call createActions(), and the actions will be added to your KXMLGUIWindow. Remember to also add the chosen actions to your application ui.rc file.

See the KRichTextWidget::RichTextSupportValues enum for an overview of supported actions.

Member Type Documentation

enum KRichTextWidget::RichTextSupportValues

flags KRichTextWidget::RichTextSupport

These flags describe what actions will be created by createActions() after passing a combination of these flags to setRichTextSupport().

Constant Value Description
KRichTextWidget::DisableRichText 0x00 No rich text support at all, no actions will be created. Do not use in combination with other flags.
KRichTextWidget::SupportBold 0x01 Action to format the selected text as bold. If no text is selected, the word under the cursor is formatted bold. This is a KToggleAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportItalic 0x02 Action to format the selected text as italic. If no text is selected, the word under the cursor is formatted italic. This is a KToggleAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportUnderline 0x04 Action to underline the selected text. If no text is selected, the word under the cursor is underlined. This is a KToggleAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportStrikeOut 0x08 Action to strike out the selected text. If no text is selected, the word under the cursor is struck out. This is a KToggleAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportFontFamily 0x10 Action to change the font family of the currently selected text. If no text is selected, the font family of the word under the cursor is changed. Displayed as a combobox when inserted into the toolbar. This is a KFontAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportFontSize 0x20 Action to change the font size of the currently selected text. If no text is selected, the font size of the word under the cursor is changed. Displayed as a combobox when inserted into the toolbar. This is a KFontSizeAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportTextForegroundColor 0x40 Action to change the text color of the currently selected text. If no text is selected, the text color of the word under the cursor is changed. Opens a QColorDialog to select the color.
KRichTextWidget::SupportTextBackgroundColor 0x80 Action to change the background color of the currently selected text. If no text is selected, the background color of the word under the cursor is changed. Opens a QColorDialog to select the color.
KRichTextWidget::FullTextFormattingSupport 0xff A combination of all the flags above. Includes all actions that change the format of the text.
KRichTextWidget::SupportChangeListStyle 0x100 Action to make the current line a list element, change the list style or remove list formatting. Displayed as a combobox when inserted into a toolbar. This is a KSelectAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportIndentLists 0x200 Action to increase the current list nesting level. This makes it possible to create nested lists.
KRichTextWidget::SupportDedentLists 0x400 Action to decrease the current list nesting level.
KRichTextWidget::FullListSupport 0xf00 All of the three list actions above. Includes all list-related actions.
KRichTextWidget::SupportAlignment 0x100000 Actions to align the current paragraph left, right, center or justify. These actions are KToogleActions. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportRuleLine 0x400000 Action to insert a horizontal line.
KRichTextWidget::SupportHyperlinks 0x800000 Action to convert the current text to a hyperlink. If no text is selected, the word under the cursor is converted. This action opens a dialog where the user can enter the link target.
KRichTextWidget::SupportFormatPainting 0x1000000 Action to make the mouse cursor a format painter. The user can select text with that painter. The selected text gets the same format as the text that was previously selected.
KRichTextWidget::SupportToPlainText 0x2000000 Action to change the text of the whole text edit to plain text. All rich text formatting will get lost.
KRichTextWidget::SupportSuperScriptAndSubScript 0x4000000 Actions to format text as superscript or subscript. If no text is selected, the word under the cursor is formatted as selected. This is a KToggleAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::SupportDirection 0x8000000 Action to change direction of text to Right-To-Left or Left-To-Right.
KRichTextWidget::SupportHeading (since Qt 5.70) 0x10000000 Action to make the current line a heading (up to six levels, corresponding to HTML h1...h6 tags). Displayed as a combobox when inserted into a toolbar. This is a KSelectAction. The status is automatically updated when the text cursor is moved.
KRichTextWidget::FullSupport 0xffffffff Includes all above actions for full rich text support

The RichTextSupport type is a typedef for QFlags<RichTextSupportValues>. It stores an OR combination of RichTextSupportValues values.

Member Function Documentation

[explicit] KRichTextWidget::KRichTextWidget(QWidget *parent)

Constructor parent the parent widget

[explicit] KRichTextWidget::KRichTextWidget(const QString &text, QWidget *parent = nullptr)

Constructs a KRichTextWidget object

text The initial text of the text edit, which is interpreted as HTML.

parent The parent widget

[override virtual noexcept] KRichTextWidget::~KRichTextWidget()

Destructor

[virtual] QList<QAction *> KRichTextWidget::createActions()

Creates the actions and adds them to the given action collection.

Call this before calling setupGUI() in your application, but after calling setRichTextSupport().

The XML file of your KXmlGuiWindow needs to have the action names in them, so that the actions actually appear in the menu and in the toolbars.

Below is a list of actions that are created, depending on the supported rich text subset set by setRichTextSupport(). The list contains action names. Those names need to be the same in your XML file.

See the KRichTextWidget::RichTextSupportValues enum documentation for a detailed explanation of each action.

XML Name RichTextSupportValues flag
format_text_foreground_color SupportTextForegroundColor
format_text_background_color SupportTextBackgroundColor
format_font_family SupportFontFamily
format_font_size SupportFontSize
format_text_bold SupportBold
format_text_italic SupportItalic
format_text_underline SupportUnderline
format_text_strikeout SupportStrikeOut
format_align_left SupportAlignment
format_align_center SupportAlignment
format_align_right SupportAlignment
format_align_justify SupportAlignment
direction_ltr SupportDirection
direction_rtl SupportDirection
format_list_style SupportChangeListStyle
format_list_indent_more SupportIndentLists
format_list_indent_less SupportDedentLists
insert_horizontal_rule SupportRuleLine
manage_link SupportHyperlinks
format_painter SupportFormatPainting
action_to_plain_text SupportToPlainText
format_text_subscript & format_text_superscript SupportSuperScriptAndSubScript
format_heading_level SupportHeading

KRichTextWidget::RichTextSupport KRichTextWidget::richTextSupport() const

Returns the supported rich text subset available. Returns The supported subset.

Note: Getter function for property richTextSupport.

See also setRichTextSupport()

[slot] void KRichTextWidget::setActionsEnabled(bool enabled)

Disables or enables all of the actions created by createActions().

This may be useful in cases where rich text mode may be set on or off.

enabled Whether to enable or disable the actions.

void KRichTextWidget::setRichTextSupport(const KRichTextWidget::RichTextSupport &support)

Sets the supported rich text subset available.

The default is KRichTextWidget::FullSupport and will be set in the constructor.

You need to call createActions() afterwards.

support The supported subset.

Note: Setter function for property richTextSupport.

See also richTextSupport()

void KRichTextWidget::updateActionStates()

Tells KRichTextWidget to update the state of the actions created by createActions().

This is normally automatically done, but there might be a few cases where you'll need to manually call this function.

Call this function only after calling createActions().

We use cookies to personalize content and to analyze our traffic. Please decide if you are willing to accept cookies from our website.