mcrl2::gui::qt::CodeEditor

Include file:

#include "mcrl2/gui/codeeditor.h
class mcrl2::gui::qt::CodeEditor

The CodeEditor class defines a text editor for code (used for specification and properties)

Private attributes

QFont mcrl2::gui::qt::CodeEditor::codeFont
CodeHighlighter *mcrl2::gui::qt::CodeEditor::highlighter
bool mcrl2::gui::qt::CodeEditor::isSpecificationEditor
bool mcrl2::gui::qt::CodeEditor::lightPalette
LineNumberArea *mcrl2::gui::qt::CodeEditor::lineNumberArea
QFont mcrl2::gui::qt::CodeEditor::lineNumberFont
QAction *mcrl2::gui::qt::CodeEditor::zoomInAction
QAction *mcrl2::gui::qt::CodeEditor::zoomOutAction

Public member functions

void changeHighlightingRules()

changeHighlightingRules Change the highlighting rules depending on the purpose of the code editor and its colour palette

CodeEditor(QWidget *parent = 0)

CodeEditor Constructor.

Parameters:

  • parent The parent of this widget

void lineNumberAreaPaintEvent(QPaintEvent *event)

lineNumberAreaPaintEvent Paints the line number area on the screen

Parameters:

  • event A paint event

int lineNumberAreaWidth()

lineNumberAreaWidth Computes the width needed for the line number area

Returns: The width needed for the line number area

void setPurpose(bool isSpecificationEditor)

setPurpose Set whether this code editor is for editing specifications or mu-calculus formulae

Parameters:

  • isSpecificationEditor Whether this code editor is for editing specifications

~CodeEditor()

public-slot

mcrl2::gui::qt::CodeEditor::deleteChar

deleteChar Allows the user to delete text

mcrl2::gui::qt::CodeEditor::zoomIn

zoomIn Allows the user to zoom in on the text

Parameters:

  • range How much to zoom in

mcrl2::gui::qt::CodeEditor::zoomOut

zoomOut Allows the user to zoom out from the text

Parameters:

  • range How much to zoom out

Protected member functions

void changeEvent(QEvent *event) override

changeEvent Changes the syntax highlighting when the colour palette of the window changes

event The change event

void keyPressEvent(QKeyEvent *event) override

keyPressEvent Adds key events for zooming

Parameters:

  • event The key event

void paintEvent(QPaintEvent *event) override

paintEvent Adds placeholder text

Parameters:

  • event The paint event

void resizeEvent(QResizeEvent *event) override

resizeEvent Resizes the line number area when the window is resized

Parameters:

  • event The resize event

void wheelEvent(QWheelEvent *event) override

wheelEvent Adds mouse wheel events for zooming

Parameters:

  • event The mouse wheel event

Private member functions

void setFontSize(int pixelSize)

setFontSize Sets the font size and tab width

Parameters:

  • pixelSize The desired font size in pixels

private-slot

mcrl2::gui::qt::CodeEditor::highlightCurrentLine

highlightCurrentLine Highlights the line the cursor is on

mcrl2::gui::qt::CodeEditor::showContextMenu

showContextMenu Creates and shows a context menu

Parameters:

  • position The position where to create the context menu

mcrl2::gui::qt::CodeEditor::updateLineNumberArea

updateLineNumberArea Updates the line number area after the scrollbar has been used

Parameters:

  • rect The rectangle that covers the line number area

  • dy The amount of pixels scrolled

mcrl2::gui::qt::CodeEditor::updateLineNumberAreaWidth

updateLineNumberAreaWidth Updates the width of the line number area