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
103 NoRunFileUserInterface = 0x00,
104 RunFileButton = 0x01,
105 RunFileShortcut = 0x02,
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);
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;
287 virtual void updateCompletionModel(
const QString& str) = 0;
291 virtual int cursorOffset(
const QString& completion) = 0;
294 QStringList autocompletePreferenceList();
299 void setAutocompletePreferenceList(
const QStringList& list);
Q_DECLARE_OPERATORS_FOR_FLAGS(ctkConsole::EditorHints)
QStringList AutocompletePreferenceList
QScopedPointer< ctkConsolePrivate > d_ptr