51 #ifndef __ctkConsole_h
52 #define __ctkConsole_h
56 #include <QTextCharFormat>
60 #include "ctkWidgetsExport.h"
62 class ctkConsolePrivate;
70 Q_PROPERTY(QColor promptColor READ promptColor WRITE setPromptColor)
71 Q_PROPERTY(QColor outputTextColor READ outputTextColor WRITE setOutputTextColor)
72 Q_PROPERTY(QColor errorTextColor READ errorTextColor WRITE setErrorTextColor)
73 Q_PROPERTY(QColor stdinTextColor READ stdinTextColor WRITE setStdinTextColor)
74 Q_PROPERTY(QColor commandTextColor READ commandTextColor WRITE setCommandTextColor)
75 Q_PROPERTY(QColor welcomeTextColor READ welcomeTextColor WRITE setWelcomeTextColor)
76 Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor)
77 Q_PROPERTY(QString ps1 READ ps1 WRITE setPs1)
78 Q_PROPERTY(QString ps2 READ ps2 WRITE setPs2)
79 Q_PROPERTY(
int cursorPosition READ cursorPosition)
80 Q_PROPERTY(
int cursorColumn READ cursorColumn)
81 Q_PROPERTY(
int cursorLine READ cursorLine)
83 Q_PROPERTY(EditorHints editorHints READ editorHints WRITE setEditorHints)
84 Q_ENUMS(Qt::ScrollBarPolicy)
85 Q_PROPERTY(Qt::ScrollBarPolicy scrollBarPolicy READ scrollBarPolicy WRITE setScrollBarPolicy)
86 Q_PROPERTY(
QList<QKeySequence> completerShortcuts READ completerShortcuts WRITE setCompleterShortcuts)
88 Q_PROPERTY(RunFileOptions runFileOptions READ runFileOptions WRITE setRunFileOptions)
95 AutomaticIndentation = 0x01,
96 RemoveTrailingSpaces = 0x02,
97 SplitCopiedTextByLine = 0x4
99 Q_DECLARE_FLAGS(EditorHints, EditorHint)
103 NoRunFileUserInterface = 0x00,
104 RunFileButton = 0x01,
105 RunFileShortcut = 0x02,
107 Q_DECLARE_FLAGS(RunFileOptions, RunFileOption)
114 QTextCharFormat getFormat() const;
117 void setFormat(const QTextCharFormat& Format);
120 QFont shellFont() const;
123 void setShellFont(const QFont& font);
131 QColor promptColor()const;
134 void setPromptColor(const QColor& newColor);
136 QColor outputTextColor()const;
139 void setOutputTextColor(const QColor& newColor);
141 QColor errorTextColor()const;
144 void setErrorTextColor(const QColor& newColor);
146 QColor stdinTextColor()const;
149 void setStdinTextColor(const QColor& newColor);
151 QColor commandTextColor()const;
154 void setCommandTextColor(const QColor& newColor);
156 QColor welcomeTextColor()const;
159 void setWelcomeTextColor(const QColor& newColor);
161 QColor backgroundColor()const;
163 void setBackgroundColor(const QColor& newColor);
165 EditorHints editorHints()const;
168 void setEditorHints(const EditorHints& newEditorHints);
170 Qt::ScrollBarPolicy scrollBarPolicy()const;
173 void setScrollBarPolicy(const Qt::ScrollBarPolicy& newScrollBarPolicy);
176 void printMessage(const QString& message, const QColor& color);
179 virtual QString ps1() const;
182 virtual
void setPs1(const QString& newPs1);
185 virtual QString ps2() const;
188 virtual
void setPs2(const QString& newPs2);
192 int cursorPosition() const;
196 int cursorColumn() const;
200 int cursorLine() const;
202 static QString stdInRedirectCallBack(
void * callData);
206 QList<QKeySequence> completerShortcuts()const;
211 void setCompleterShortcuts(const
QList<QKeySequence>& keys);
216 void addCompleterShortcut(const QKeySequence& key);
218 RunFileOptions runFileOptions()const;
223 void setRunFileOptions(const RunFileOptions& newOptions);
228 void aboutToExecute(const QString&);
229 void executed(const QString&);
233 void cursorPositionChanged();
238 virtual
void clear();
241 virtual
void reset();
245 virtual
void exec(const QString&);
249 virtual
void runFile(const QString& filePath);
254 virtual
void runFile();
257 virtual
void printHelp();
262 QString readInputLine();
265 virtual
void executeCommand(const QString& Command);
268 ctkConsole(ctkConsolePrivate * pimpl, QWidget* parentObject);
270 QScopedPointer<ctkConsolePrivate> d_ptr;
QStringList autocompletePreferenceList()
Returns the autocomplete preference list.
virtual int cursorOffset(const QString &completion)=0
void setAutocompletePreferenceList(const QStringList &list)
QStringList AutocompletePreferenceList
virtual void updateCompletionModel(const QString &str)=0
Q_DECLARE_OPERATORS_FOR_FLAGS(ctkConsole::EditorHints)