QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
A shell script code editor based on QScintilla2. More...
#include <qgscodeeditorshell.h>
Public Member Functions | |
QgsCodeEditorShell (QWidget *parent=nullptr, QgsCodeEditor::Mode mode=QgsCodeEditor::Mode::ScriptEditor, Qgis::ScriptLanguage language=Qgis::ScriptLanguage::Unknown) | |
Constructor for QgsCodeEditorShell. | |
Qgis::ScriptLanguage | language () const override |
Returns the associated scripting language. | |
Public Member Functions inherited from QgsCodeEditor | |
QgsCodeEditor (QWidget *parent=nullptr, const QString &title=QString(), bool folding=false, bool margin=false, QgsCodeEditor::Flags flags=QgsCodeEditor::Flags(), QgsCodeEditor::Mode mode=QgsCodeEditor::Mode::ScriptEditor) | |
Construct a new code editor. | |
void | addWarning (int lineNumber, const QString &warning) |
Adds a warning message and indicator to the specified a lineNumber. | |
virtual void | callTip () override |
void | clearWarnings () |
Clears all warning messages from the editor. | |
bool | foldingVisible () |
Returns true if the folding controls are visible in the editor. | |
QStringList | history () const |
Returns the list of commands previously executed in the editor. | |
void | insertText (const QString &text) |
Insert text at cursor position, or replace any selected text if user has made a selection. | |
QgsCodeInterpreter * | interpreter () const |
Returns the attached code interpreter, or nullptr if not set. | |
bool | isCursorOnLastLine () const |
Returns true if the cursor is on the last line of the document. | |
virtual Qgis::ScriptLanguageCapabilities | languageCapabilities () const |
Returns the associated scripting language capabilities. | |
int | linearPosition () const |
Convenience function to return the cursor position as a linear index. | |
bool | lineNumbersVisible () const |
Returns whether line numbers are visible in the editor. | |
Q_DECL_DEPRECATED bool | marginVisible () |
Returns whether margins are in a visible state. | |
QgsCodeEditor::Mode | mode () const |
Returns the code editor mode. | |
int | selectionEnd () const |
Convenience function to return the end of the selection as a linear index Contrary to the getSelection method, this method returns the cursor position if no selection is made. | |
int | selectionStart () const |
Convenience function to return the start of the selection as a linear index Contrary to the getSelection method, this method returns the cursor position if no selection is made. | |
void | setCustomAppearance (const QString &scheme=QString(), const QMap< QgsCodeEditorColorScheme::ColorRole, QColor > &customColors=QMap< QgsCodeEditorColorScheme::ColorRole, QColor >(), const QString &fontFamily=QString(), int fontSize=0) |
Sets a custom appearance for the widget, disconnecting it from using the standard appearance taken from QSettings. | |
void | setFoldingVisible (bool folding) |
Set whether the folding controls are visible in the editor. | |
void | setHistoryFilePath (const QString &path) |
Sets the file path to use for recording and retrieving previously executed commands. | |
void | setInterpreter (QgsCodeInterpreter *newInterpreter) |
Sets an attached code interpreter for executing commands when the editor is in the QgsCodeEditor::Mode::CommandInput mode. | |
void | setLinearPosition (int position) |
Convenience function to set the cursor position as a linear index. | |
void | setLinearSelection (int start, int end) |
Convenience function to set the selection using linear indexes. | |
void | setLineNumbersVisible (bool visible) |
Sets whether line numbers should be visible in the editor. | |
Q_DECL_DEPRECATED void | setMarginVisible (bool margin) |
Set margin visible state. | |
void | setTitle (const QString &title) |
Set the widget title. | |
int | wrapPosition (int line=-1) |
Returns the linear position of the start of the last wrapped part for the specified line, or for the current line if line = -1 If wrapping is disabled, returns -1 instead. | |
Protected Member Functions | |
void | initializeLexer () override |
Called when the dialect specific code lexer needs to be initialized (or reinitialized). | |
Protected Member Functions inherited from QgsCodeEditor | |
void | contextMenuEvent (QContextMenuEvent *event) override |
bool | eventFilter (QObject *watched, QEvent *event) override |
void | focusOutEvent (QFocusEvent *event) override |
void | keyPressEvent (QKeyEvent *event) override |
QColor | lexerColor (QgsCodeEditorColorScheme::ColorRole role) const |
Returns the color to use in the lexer for the specified role. | |
QFont | lexerFont () const |
Returns the font to use in the lexer. | |
virtual void | populateContextMenu (QMenu *menu) |
Called when the context menu for the widget is about to be shown, after it has been fully populated with the standard actions created by the base class. | |
virtual QString | reformatCodeString (const QString &string) |
Applies code reformatting to a string and returns the result. | |
void | runPostLexerConfigurationTasks () |
Performs tasks which must be run after a lexer has been set for the widget. | |
virtual void | showMessage (const QString &title, const QString &message, Qgis::MessageLevel level) |
Shows a user facing message (eg a warning message). | |
void | updatePrompt () |
Triggers an update of the interactive prompt part of the editor. | |
void | updateSoftHistory () |
Updates the soft history by storing the current editor text in the history. | |
Additional Inherited Members | |
Public Types inherited from QgsCodeEditor | |
enum class | Flag : int { CodeFolding = 1 << 0 , ImmediatelyUpdateHistory = 1 << 1 } |
Flags controlling behavior of code editor. More... | |
typedef QFlags< Flag > | Flags |
Flags controlling behavior of code editor. | |
enum class | MarginRole : int { LineNumbers = 0 , ErrorIndicators = 1 , FoldingControls = 2 } |
Margin roles. More... | |
enum class | Mode { ScriptEditor , OutputDisplay , CommandInput } |
Code editor modes. More... | |
Public Slots inherited from QgsCodeEditor | |
virtual bool | checkSyntax () |
Applies syntax checking to the editor. | |
void | clearPersistentHistory () |
Clears the entire persistent history of commands run in the editor. | |
void | clearSessionHistory () |
Clears the history of commands run in the current session. | |
virtual void | moveCursorToEnd () |
Moves the cursor to the end of the document and scrolls to ensure it is visible. | |
virtual void | moveCursorToStart () |
Moves the cursor to the start of the document and scrolls to ensure it is visible. | |
void | reformatCode () |
Applies code reformatting to the editor. | |
void | removeHistoryCommand (int index) |
Removes the command at the specified index from the history of the code editor. | |
void | runCommand (const QString &command, bool skipHistory=false) |
Runs a command in the editor. | |
void | showHistory () |
Shows the command history dialog. | |
void | showNextCommand () |
Shows the next command from the session in the editor. | |
void | showPreviousCommand () |
Shows the previous command from the session in the editor. | |
virtual void | toggleComment () |
Toggle comment for the selected text. | |
bool | writeHistoryFile () |
Stores the commands executed in the editor to the persistent history file. | |
Signals inherited from QgsCodeEditor | |
void | helpRequested (const QString &word) |
Emitted when documentation was requested for the specified word. | |
void | persistentHistoryCleared () |
Emitted when the persistent history of commands run in the editor is cleared. | |
void | sessionHistoryCleared () |
Emitted when the history of commands run in the current session is cleared. | |
Static Public Member Functions inherited from QgsCodeEditor | |
static QColor | color (QgsCodeEditorColorScheme::ColorRole role) |
Returns the color to use in the editor for the specified role. | |
static QColor | defaultColor (QgsCodeEditorColorScheme::ColorRole role, const QString &theme=QString()) |
Returns the default color for the specified role. | |
static QFont | getMonospaceFont () |
Returns the monospaced font to use for code editors. | |
static QString | languageToString (Qgis::ScriptLanguage language) |
Returns a user-friendly, translated name of the specified script language. | |
static void | setColor (QgsCodeEditorColorScheme::ColorRole role, const QColor &color) |
Sets the color to use in the editor for the specified role. | |
Static Public Attributes inherited from QgsCodeEditor | |
static constexpr int | SEARCH_RESULT_INDICATOR = QsciScintilla::INDIC_MAX - 1 |
Indicator index for search results. | |
static const QgsSettingsEntryBool * | settingContextHelpHover |
static QgsSettingsTreeNode * | sTreeCodeEditor = QgsSettingsTree::sTreeGui->createChildNode( QStringLiteral( "code-editor" ) ) |
Static Protected Member Functions inherited from QgsCodeEditor | |
static bool | isFixedPitch (const QFont &font) |
Returns true if a font is a fixed pitch font. | |
A shell script code editor based on QScintilla2.
Adds syntax highlighting and code autocompletion.
QgsCodeEditorShell supports either Bash (Linux) or Batch (Windows) code interpreters. By default the Batch interpreter will be used on Windows platforms and the Bash interpreter on all other platforms.
Definition at line 102 of file qgscodeeditorshell.h.
QgsCodeEditorShell::QgsCodeEditorShell | ( | QWidget * | parent = nullptr , |
QgsCodeEditor::Mode | mode = QgsCodeEditor::Mode::ScriptEditor , |
||
Qgis::ScriptLanguage | language = Qgis::ScriptLanguage::Unknown |
||
) |
Constructor for QgsCodeEditorShell.
The language argument may be Qgis::ScriptLanguage::Unknown, Qgis::ScriptLanguage::Bash or Qgis::ScriptLanguage::Batch. If the language is Qgis::ScriptLanguage::Unknown, then the Qgis::ScriptLanguage::Batch interpreter will be used on Windows platforms and the Qgis::ScriptLanguage::Bash interpreter on all other platforms.
Definition at line 26 of file qgscodeeditorshell.cpp.
|
overrideprotectedvirtual |
Called when the dialect specific code lexer needs to be initialized (or reinitialized).
The default implementation does nothing.
Reimplemented from QgsCodeEditor.
Definition at line 76 of file qgscodeeditorshell.cpp.
|
overridevirtual |
Returns the associated scripting language.
Reimplemented from QgsCodeEditor.
Definition at line 71 of file qgscodeeditorshell.cpp.