23 #ifndef CONSOLEWIDGET_H
24 #define CONSOLEWIDGET_H
28 #include "common/sharedStructures.h"
29 #include "common/sharedStructuresQt.h"
30 #include "../python/qDebugStream.h"
31 #include "../global.h"
33 #include "abstractCodeEditorWidget.h"
34 #include "../codeEditor/modes/lineBackgroundMarker.h"
35 #include "../codeEditor/modes/pyGotoAssignment.h"
36 #include "../codeEditor/panels/lineNumber.h"
42 #include <qstringlist.h>
44 #include <qsettings.h>
46 #include <qelapsedtimer.h>
55 class DequeCommandList;
66 static const QString newCommandPrefix;
68 virtual QString codeText(
int &line,
int &column)
const;
71 virtual void loadSettings();
72 virtual void contextMenuAboutToShow(
int contextMenuLine);
81 void pythonRunSelection(QString selectionText);
82 void pythonStateChanged(tPythonTransitions pyTransition);
83 void clearCommandLine();
84 void startInputCommandLine(QSharedPointer<QByteArray> buffer,
ItomSharedSemaphore *inputWaitCond);
88 void sendToLastCommand(QString cmd);
89 void sendToPythonMessage(QString cmd);
95 void dragEnterEvent (QDragEnterEvent *event);
97 void wheelEvent(QWheelEvent *event);
98 bool canInsertFromMimeData(
const QMimeData *source)
const;
99 void mouseDoubleClickEvent(QMouseEvent *e);
103 void textDoubleClicked(
int position,
int line,
int modifiers);
104 void clearAndStartNewCommand();
105 void toggleAutoWheel(
bool enable);
116 CmdQueueItem(
const QString &text,
int lineBegin,
int nrOfLines) :
118 m_lineBegin(lineBegin),
119 m_nrOfLines(nrOfLines)
122 QString m_singleLine;
135 bool inputModeEnabled;
136 bool calltipsModeCurrentState;
137 bool autoCompletionModeCurrentState;
143 RetVal execCommand(
int lineBegin,
int lineEnd);
144 RetVal useCmdListCommand(
int dir);
149 void moveCursorToEnd();
154 void enableInputTextMode();
155 void disableInputTextMode();
166 QTimer m_receiveStreamBufferTimer;
167 bool m_splitLongLines;
168 int m_splitLongLinesMaxLength;
171 QSharedPointer<LineBackgroundMarkerMode> m_markErrorLineMode;
172 QSharedPointer<LineBackgroundMarkerMode> m_markCurrentLineMode;
173 QSharedPointer<LineBackgroundMarkerMode> m_markInputLineMode;
174 QSharedPointer<LineNumberPanel> m_lineNumberPanel;
182 QSharedPointer<QByteArray> m_inputStreamBuffer;
187 QMap<QString, QAction*> m_contextMenuActions;
191 static const QString longLineWrapPrefix;
201 RetVal add(
const QString &cmd);
203 QString getPrevious();
208 std::deque<QString> m_cmdList;
209 std::deque<QString>::reverse_iterator m_rit;
Definition: consoleWidget.h:133
Class for managing status values (like errors or warning)
Definition: retVal.h:54
Definition: apiFunctionsGraph.cpp:39
semaphore which can be used for asychronous thread communication. By using this class it is possible ...
Definition: sharedStructuresQt.h:57
Definition: consoleWidget.h:195
tStreamMessageType
Definition: typeDefs.h:76