BALL::VIEW::PyWidget Class Reference
[Modular Widgets]

Python Widget This class is a Window for a Python interpreter interface. More...

#include <pyWidget.h>

Inheritance diagram for BALL::VIEW::PyWidget:
Inheritance graph
[legend]

List of all members.


Public Member Functions

Constructors and Destructors
PyWidget (QWidget *parent=0, const char *name=0)
Standard constructor.
PyWidget (const PyWidget &p)
only needed for Pyhon Interface
~PyWidget ()
bool isValid () const
Is full Python support available?

Friends

class MyLineEdit

ModularWidget related methods

QTextEdit * text_edit_
QTextEdit * script_output_
MyTextEdit * script_edit_
QTabWidget * tab_widget_
PythonHighlighter highlighter_1_
PythonHighlighter highlighter_2_
MyLineEdit * line_edit_
QComboBox * combo_box_
QComboBox * editor_combo_box_
List< Hotkey > hotkeys_
String working_dir_
bool valid_
bool started_startup_script_
Preferences * preferences_
Position current_line_
bool multi_line_mode_
Size multi_lines_
String multi_line_text_
vector< String > history_
vector< bool > results_
Position history_position_
String startup_script_
PythonSettings * python_settings_
RunPythonThread * thread_
bool stop_script_
Size complete_prefix_
String class_
String member_
Position intend_
bool running_
bool silent_
bool full_silent_
bool script_mode_
String current_script_
virtual void initializeWidget (MainControl &main_control)
Setup the menu entries.
virtual void finalizeWidget (MainControl &main_control)
Remove menu entries.
void initializePreferencesTab (Preferences &preferences)
Initialize a preferences tab for the widget (if needed).
void finalizePreferencesTab (Preferences &preferences)
Remove the preferences tab.
virtual void applyPreferences ()
Apply the preferences of the specific tab.
virtual void scriptDialog (bool run=false)
Open a dialog to select a script.
bool toAbortScript ()
void map (String modifier, String key, String command, String comment="")
Map a key to a command Modifier can be: "", Ctrl, Shift Key should be F2 - F12.
void unmap (String modifier, String key)
see above
void insertHotkey (const Hotkey &hotkey)
void removeHotkey (const Hotkey &hotkey)
void reactTo (const QKeyEvent &e)
virtual bool canHandle (const String &fileformat) const
Test if this ModularWidget can handle a given file format.
virtual bool openFile (const String &filename)
Tell this ModularWidget to open a given file.
bool openFile (const String &filename, bool run, bool is_current=false)
Run a Python script from a given file.
bool runString (String command)
String getCurrentLine () const
void dump (std::ostream &s, Size depth) const
Internal state dump.
void showClassDocu (String classname, String member)
virtual void fetchPreferences (INIFile &inifile)
Load settings from an INIFile.
virtual void writePreferences (INIFile &inifile)
Write settings to an INIFile.
void checkMenu (MainControl &main_control)
Menu checking method.
QString getCurrentScript ()
bool isInDirectMode () const
void showEditContextMenu (const QPoint &point)
void showContextMenu (const QPoint &point)
void showCompletion ()
void clear ()
Explicit default initialization.
void exportHistory ()
void abortScript ()
void showDocumentation ()
bool runCurrentScript ()
void loadScript ()
void execScript ()
void saveScript ()
void clearScript ()
virtual void hotkeyItem ()
virtual void modifyHotkeys ()
void appendText (const String &text, bool output=false, bool state_message=false)
bool getMembers (const String &classname, QStringList &sl, const String &prefix)
virtual bool returnPressed ()
virtual bool completionSelected_ ()
virtual void showHelp_ ()
virtual void printCursorPosition_ ()
virtual void createScript_ ()
virtual void clearHistory_ ()
bool getClassAndMember_ (String toc)
void setError_ (bool state)
virtual void startInterpreter ()
Start the interpreter.
virtual void paste ()
bool parseLine_ (String line)
Parse a and execute a given string. If silent_ is set to true, no prompts are being printed.
void appendToHistory_ (const String &line)
void newPrompt_ ()
Print prompt.
bool testMultilineStart_ (const String &line)
const char * getPrompt_ () const
bool storeScript_ ()
String runCommand_ (const String &command, bool &state)
void appendText_ (QTextEdit *te, String text)
void retrieveHistoryLine_ (Position index)
Replace the line the cursor is in with a line from the history.
virtual void contentsDragEnterEvent (QDragEnterEvent *e)
virtual void contentsDropEvent (QDropEvent *e)
bool keyPressed (QKeyEvent *e)
void createMenuHelpEntry_ (QMenu *menu, QTextEdit *text_edit, const QPoint &point)
void findError_ (String result)
String getCurrentWord_ (QTextCursor &text_cursor)
QComboBox * getCompletionBox_ ()
List< Hotkey >::Iterator findKey_ (Hotkey &hotkey)

Detailed Description

Python Widget This class is a Window for a Python interpreter interface.

So it is possible to access all data in the running application in realtime with the script language. PyWidget also has the capablities to run a Python script from a file at startup, or on demand from the user.


Constructor & Destructor Documentation

BALL::VIEW::PyWidget::PyWidget ( QWidget * parent = 0,
const char * name = 0
)

Standard constructor.

If the widget is part of a BALL MainControl widget, it inserts a menu entry Tools|Restart Python into the menu bar.

Parameters:
parent the parent widget
name the widget name

Member Function Documentation

virtual void BALL::VIEW::PyWidget::applyPreferences ( ) [virtual]

Apply the preferences of the specific tab.

In this method the widget can extract any changed values from its preferences tab (if required). This method is called automatically by the applyPreferencesTab from the MainControl object if the apply button in the Preferences dialog is pressed.

Parameters:
preferences the Preferences dialog of the MainControl
See also:
initializePreferencesTab

finalizePreferencesTab

applyPreferencesTab

Reimplemented from BALL::VIEW::ModularWidget.

virtual bool BALL::VIEW::PyWidget::canHandle ( const String & fileformat ) const [virtual]

Test if this ModularWidget can handle a given file format.

(Overloaded from ModularWidget)

Parameters:
fileform short string with the file extension (e.g. PDB)
See also:
openFile

Reimplemented from BALL::VIEW::ModularWidget.

void BALL::VIEW::PyWidget::checkMenu ( MainControl & main_control ) [virtual]

Menu checking method.

This method is called MainControl::checkMenus before a popup menu is shown. It should be used to update the state of menu entries (e.g. disable or enable entries).

Parameters:
main_control the MainControl object whose menus should be checked

Reimplemented from BALL::VIEW::ModularWidget.

void BALL::VIEW::PyWidget::clear ( ) [virtual, slot]

Explicit default initialization.

Currently does nothing.

Reimplemented from BALL::VIEW::ModularWidget.

void BALL::VIEW::PyWidget::dump ( std::ostream & s,
Size depth
) const [virtual]

Internal state dump.

Dump the current internal state of this mainControl to the output ostream s with dumping depth depth. Calls ConnectionObject::dump.

Parameters:
s output stream where to output the internal state
depth the dumping depth

Reimplemented from BALL::VIEW::ModularWidget.

virtual void BALL::VIEW::PyWidget::fetchPreferences ( INIFile & inifile ) [virtual]

Load settings from an INIFile.

See also:
ModularWidget::fetchPreferences

Reimplemented from BALL::VIEW::DockWidget.

void BALL::VIEW::PyWidget::finalizePreferencesTab ( Preferences & preferences ) [virtual]

Remove the preferences tab.

This method can remove a preferences widget (if created in initializePreferencesTab) from the Preferences dialog of the MainControl. This method is called automatically by MainControl::aboutToExit() at the end of the application.

Parameters:
preferences the Preferences dialog of the MainControl

Reimplemented from BALL::VIEW::ModularWidget.

void BALL::VIEW::PyWidget::initializePreferencesTab ( Preferences & preferences ) [virtual]

Initialize a preferences tab for the widget (if needed).

This method can be used to create preferences widgets that can be inserted into the Preferences dialog with the method insertTab. This method is called automatically by MainControl::show at the start of the application.

Parameters:
preferences the Preferences dialog of the MainControl

Reimplemented from BALL::VIEW::ModularWidget.

void BALL::VIEW::PyWidget::newPrompt_ ( ) [protected]

Print prompt.

Determine the correct type of prompt and append it to the current text. The cursor is placed after the prompt and textChanged is emitted.

bool BALL::VIEW::PyWidget::openFile ( const String & filename,
bool run,
bool is_current = false
)

Run a Python script from a given file.

Parameters:
is_current states wheter this file is currently loaded in the editor

virtual bool BALL::VIEW::PyWidget::openFile ( const String & filename ) [virtual]

Tell this ModularWidget to open a given file.

(Overloaded from ModularWidget)

See also:
canHandle

Reimplemented from BALL::VIEW::ModularWidget.

void BALL::VIEW::PyWidget::retrieveHistoryLine_ ( Position index ) [protected]

Replace the line the cursor is in with a line from the history.

Used to display text from the history (cursor down/up). The previous content of the line is stored in current_line_ if this is the first time the history function is used for this specific line.

virtual void BALL::VIEW::PyWidget::startInterpreter ( ) [protected, virtual]

Start the interpreter.

This method initializes the interpreter if it is not yet running. An already running interpreter is reinitialized. This method calls PyInitialize() to create an interpreter.

virtual void BALL::VIEW::PyWidget::writePreferences ( INIFile & inifile ) [virtual]

Write settings to an INIFile.

See also:
ModularWidget::writePreferences

Reimplemented from BALL::VIEW::DockWidget.


Generated on Thu Aug 6 18:31:01 2009 for BALL by doxygen 1.5.8