Contents
Component IDEDebug
comment:Contains
IDE::Debugger (Stack Level Editor)
to invoke Debugger from your code send "halt" message to every Object.
Do not forget to enable debuging (standard is on) in system menu
IDE::ErrorStack
It parse the tcl error message an can show it es method list
IDE::TrackerBrowser
It can track the messages call to Xotcl Objects.
To enable tracking
1. Choose one class and invoke menu Class>Track this Class
2. You can also track one object (use menu in object browser)
3. Invoke Tracker Browser from system menu
Classes
Classes Hierarchy
Objects
Class IDE::CallingCoverBrowser
superclasses:
IDE::Browser
Instprocs:
- getTitle {}
- specificInit {}
Procs:
- newBrowser {}
Class IDE::CoverClassView
superclasses:
IDE::ClassView
Instprocs:
- changeViewType {type}
- fillMenuStruct {ms}
- init {args}
- refreshBaseView {}
- resetResults {}
- selectFor {dummy}
Class IDE::CoverMethodView
superclasses:
IDE::MethodView
Instprocs:
- changeViewType {type}
- init {args}
- selectFor {class categories type}
Class IDE::DebugMethodListView
superclasses:
IDE::StackMethodListView
Instprocs:
- getMenuStruct {}
- selectItem {item}
Class IDE::DebugSubObjectsView
superclasses:
IDE::SubObjectsView
Instprocs:
- fillMenuStruct {ms}
- inspectCalledObject {}
Class IDE::Debugger
superclasses:
IDE::Browser
comment:The debugger is based on my halt
procedure by invoke this IDE::Debugger startDebugging is invoked.
This build debugger window an let user to view state of procedure call
based on introspection of stack levels.
To prohibite the next invokation of program the own event loop will
be build. See startBrowsing method. All tk events modifity action varible.
The loop use tkwait method to register modifikation of this variable
by resume the debugging loop will be exited an the normall program flow
will be continued
Instprocs:
- destroy {}
- displayIndex {index}
- displayLevelVar {var}
- editSave {value}
- evalAtLevel {string}
- evalLevel {string}
- inspectCalledObject {}
- inspectLevel {level}
- inspectLevelVar {var}
- showArguments {}
- specificInit {}
- startBrowsing {}
- substituteAtLevel {string}
- substituteLevel {string}
Procs:
- initializeAfterLoad {}
- newBrowser {}
- startDebugging {}
Class IDE::DebuggerMethodEdit
superclasses:
IDE::MethodEdit
Instprocs:
- evalDisplaySelection {}
- evalInspectSelection {}
- evalSelection {}
- evalSelectionAction {}
- evalSubstituteSelection {}
- setEvaluationRet {string}
Class IDE::ErrorStack
superclasses:
IDE::Browser
Instprocs:
- editSave {value}
- inspectObjectFromStack {level}
- parseErrorInfo {pinfo}
- showErrorInfo {}
- specificInit {}
Procs:
- activate {}
- deactivate {}
- newBrowser {errorInfo}
Class IDE::LocalVarsView
parameter: {label {Local Vars}}
superclasses:
IDE::VarsView
Instprocs:
- editSave {value}
- getMenuStruct {}
- selectItem {var}
- showLevel {alevel}
- showVarValue {var}
Class IDE::StackMethodListView
superclasses:
IDE::MethodListView
subclasses:
IDE::DebugMethodListView
Instprocs:
- fillMenuStruct {ms}
- findNextMethodPlace {method index}
- inspectObject {}
- selectItem {item}
Class IDE::TrackedMethodList
superclasses:
IDE::ListView
IDE::GUICommands
Instprocs:
- fillMenuStruct {ms}
- getMenuStruct {}
- removeTrackItem {actual}
- updateList {}
Class IDE::TrackerBrowser
superclasses:
IDE::Browser
comment:Trackerbrowser can show all calls to speciefie object or class
it work with object IDE::MethodTracker
Instprocs:
- specificInit {}
- Tracker browser use filter mechanismus of XOTcl
to protocol all call to specified object or class.
The user can choose what will be tracked and which information should be displayed
Procs:
- addToProtocol {text}
- addToTrackList {item}
- newBrowser {}
- openBrowser {}
- removeFromTrackList {item}
Object IDE::MethodTracker
comment:This object manage tracking of classes and objects.
By initializing it make new filter method to xotc::Object.
This method is used to redirect all call to IDE::MethodTracker.
It handle adding and deleting tracking by settings filters and
redirect the calls to IDE::TrackerBrowser.
Procs:
- getTrackingList {}
- initializeAfterLoad {}
- methodEntry {calledclass object calledproc callingclass callingobject callingproc mArgs}
- methodExit {calledclass object calledproc callingclass callingobject callingproc returnValue}
- registerClassForTracking {class}
- registerObjectForTracking {object}
- setObjectFilterMethod {}
- unregisterClassForTracking {class}
- unregisterObjectForTracking {object}