SciDAVis  1.D4
Public Slots | Public Member Functions | Protected Member Functions | Private Slots | Private Attributes
ScriptEdit Class Reference

Editor widget with support for evaluating expressions and executing code. More...

#include <ScriptEdit.h>

Inheritance diagram for ScriptEdit:
scripted

List of all members.

Public Slots

void evaluate ()
void execute ()
void executeAll ()
QString exportASCII (const QString &file=QString::null)
void exportPDF (const QString &fileName)
QString importASCII (const QString &file=QString::null)
void insertFunction (const QString &)
void insertFunction (QAction *action)
void print ()
void scriptPrint (const QString &)
void setContext (QObject *context)
void updateIndentation ()

Public Member Functions

void customEvent (QEvent *)
 Handle changing of scripting environment.
int lineNumber (int pos) const
 Map cursor positions to line numbers.
 ScriptEdit (ScriptingEnv *env, QWidget *parent=0, QString name="")
 Constructor.
- Public Member Functions inherited from scripted
 scripted (ScriptingEnv *env)
void scriptingChangeEvent (ScriptingChangeEvent *)
 ~scripted ()

Protected Member Functions

virtual void contextMenuEvent (QContextMenuEvent *e)
virtual void keyPressEvent (QKeyEvent *e)

Private Slots

void handleContentsChange (int position, int chars_removed, int chars_added)
 Called whenever the contents of the text document changes.
void insertErrorMsg (const QString &message)
 Insert an error message from the scripting system at printCursor.

Private Attributes

QAction * actionEval
QAction * actionExecute
QAction * actionExecuteAll
QAction * actionExport
QAction * actionImport
QAction * actionPrint
bool d_changing_fmt
 True iff the text is programmatically changed and handleContentsChange() should do nothing.
bool d_error
 True iff we are inside evaluate(), execute() or executeAll() there were errors.
QTextBlockFormat d_fmt_default
 Format used for resetting success/failure markers.
QTextBlockFormat d_fmt_failure
 Format used for marking code that resulted in an error.
QTextBlockFormat d_fmt_success
 Format used for marking code that was executed or evaluated successfully.
QMenu * functionsMenu
 Submenu of context menu with mathematical functions.
ScriptmyScript
 Script used for executing/evaluating code or expressions.
QTextCursor printCursor
 Cursor used for output of evaluation results and error messages.

Additional Inherited Members

- Protected Attributes inherited from scripted
ScriptingEnvscriptEnv

Detailed Description

Editor widget with support for evaluating expressions and executing code.

Future Plans


Constructor & Destructor Documentation

ScriptEdit::ScriptEdit ( ScriptingEnv env,
QWidget *  parent = 0,
QString  name = "" 
)

Member Function Documentation

void ScriptEdit::contextMenuEvent ( QContextMenuEvent *  e)
protectedvirtual
void ScriptEdit::customEvent ( QEvent *  e)
void ScriptEdit::evaluate ( )
slot
void ScriptEdit::execute ( )
slot
void ScriptEdit::executeAll ( )
slot
QString ScriptEdit::exportASCII ( const QString &  file = QString::null)
slot
void ScriptEdit::exportPDF ( const QString &  fileName)
slot

Referenced by Note::exportPDF().

void ScriptEdit::handleContentsChange ( int  position,
int  chars_removed,
int  chars_added 
)
privateslot

Called whenever the contents of the text document changes.

References d_changing_fmt, and d_fmt_default.

Referenced by ScriptEdit().

QString ScriptEdit::importASCII ( const QString &  file = QString::null)
slot
void ScriptEdit::insertErrorMsg ( const QString &  message)
privateslot

Insert an error message from the scripting system at printCursor.

After insertion, the text cursor will have the error message selected, allowing the user to delete it and fix the error.

References d_error, and printCursor.

Referenced by customEvent(), and ScriptEdit().

void ScriptEdit::insertFunction ( const QString &  fname)
slot

Referenced by insertFunction(), and ScriptEdit().

void ScriptEdit::insertFunction ( QAction *  action)
slot
void ScriptEdit::keyPressEvent ( QKeyEvent *  e)
protectedvirtual

References updateIndentation().

int ScriptEdit::lineNumber ( int  pos) const

Map cursor positions to line numbers.

Referenced by evaluate(), execute(), and scriptPrint().

void ScriptEdit::print ( )
slot
void ScriptEdit::scriptPrint ( const QString &  text)
slot

References lineNumber(), and printCursor.

Referenced by customEvent(), and ScriptEdit().

void ScriptEdit::setContext ( QObject *  context)
inlineslot

References myScript, and Script::setContext().

void ScriptEdit::updateIndentation ( )
slot

Referenced by keyPressEvent().


Member Data Documentation

QAction * ScriptEdit::actionEval
private

Referenced by contextMenuEvent(), and ScriptEdit().

QAction* ScriptEdit::actionExecute
private

Referenced by contextMenuEvent(), and ScriptEdit().

QAction * ScriptEdit::actionExecuteAll
private

Referenced by contextMenuEvent(), and ScriptEdit().

QAction * ScriptEdit::actionExport
private

Referenced by contextMenuEvent(), and ScriptEdit().

QAction * ScriptEdit::actionImport
private

Referenced by contextMenuEvent(), and ScriptEdit().

QAction * ScriptEdit::actionPrint
private

Referenced by contextMenuEvent(), and ScriptEdit().

bool ScriptEdit::d_changing_fmt
private

True iff the text is programmatically changed and handleContentsChange() should do nothing.

Referenced by evaluate(), execute(), and handleContentsChange().

bool ScriptEdit::d_error
private

True iff we are inside evaluate(), execute() or executeAll() there were errors.

Referenced by evaluate(), execute(), and insertErrorMsg().

QTextBlockFormat ScriptEdit::d_fmt_default
private

Format used for resetting success/failure markers.

Referenced by evaluate(), handleContentsChange(), and ScriptEdit().

QTextBlockFormat ScriptEdit::d_fmt_failure
private

Format used for marking code that resulted in an error.

Referenced by evaluate(), execute(), and ScriptEdit().

QTextBlockFormat ScriptEdit::d_fmt_success
private

Format used for marking code that was executed or evaluated successfully.

Referenced by evaluate(), execute(), and ScriptEdit().

QMenu* ScriptEdit::functionsMenu
private

Submenu of context menu with mathematical functions.

Referenced by contextMenuEvent(), and ScriptEdit().

Script* ScriptEdit::myScript
private

Script used for executing/evaluating code or expressions.

Referenced by customEvent(), evaluate(), execute(), executeAll(), ScriptEdit(), and setContext().

QTextCursor ScriptEdit::printCursor
private

Cursor used for output of evaluation results and error messages.

Referenced by evaluate(), execute(), executeAll(), insertErrorMsg(), ScriptEdit(), and scriptPrint().


The documentation for this class was generated from the following files: