-// Copyright (C) 2015-2016 OPEN CASCADE
+// Copyright (C) 2015-2023 OPEN CASCADE
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
class PyEditor_Keywords;
class PyEditor_Completer;
class PyEditor_PyHighlighter;
+class QMenu;
class PYEDITOR_EXPORT PyEditor_Editor : public QPlainTextEdit
{
void setSettings( const PyEditor_Settings& );
const PyEditor_Settings& settings() const;
+
QString text() const;
QStringList keywords() const;
void deleteSelected();
void append( const QString& );
void setText( const QString& text );
+ void setCurrentLine( int );
protected:
virtual void keyPressEvent( QKeyEvent* );
virtual void resizeEvent( QResizeEvent* );
virtual void paintEvent( QPaintEvent* );
+ virtual void contextMenuEvent( QContextMenuEvent* );
PyEditor_Keywords* userKeywords() const;
PyEditor_Keywords* standardKeywords() const;
void updateLineNumberAreaWidth( int );
void updateLineNumberArea( const QRect&, int );
+Q_SIGNALS:
+ void customizeMenu( QMenu* );
+
private:
bool matchLeftParenthesis( const QTextBlock&, int, int );
bool matchRightParenthesis( const QTextBlock&, int, int );