Contents

Component IDEView

comment:
There are the basis browser for XOTclIDE

1. Component Browser
2. Method Browser
3. Object Browser
4. Configuration Browser

and their subelements
Classes Classes Hierarchy Objects

Class IDE::ArrayBrowser

parameter: vobject varray {atHead 1}
superclasses:
IDE::Browser IDE::GUICommands
Instprocs:
addKey {}
dispatchWithKey {procName}
editSave {value}
fillMenuStruct {aMenuStruct}
getMenuStruct {}
getTitle {}
initContents {}
inspectAsObject {key}
inspectAsObjectList {key}
removeKey {key}
selectKey {key}
specificInit {}
Procs:
inspectArray {object array}

Class IDE::Browser

subclasses:
IDE::TestBrowser IDE::CommentScanerBrowser IDE::HtmlGeneratorBrowser IDE::EditionChooser IDE::EditionsMultiChooser IDE::ConfigmapBrowser IDE::EditionBrowser IDE::ChangesBrowser IDE::CallingCoverBrowser IDE::TrackerBrowser IDE::ErrorStack IDE::Debugger IDE::VersionBrowser IDE::SyntaxChecker IDE::SyntaxErrorView IDE::ComponentSaveWizard IDE::TclGroupDefinition IDE::ArrayBrowser IDE::SpawnMethodEdit IDE::ProtBrowser IDE::ResultBrowser IDE::ClassDefinition IDE::HeritageBrowser IDE::Transcript IDE::CompBrowser IDE::MethodBrowser IDE::ObjectBrowser IDE::ConfigurationBrowser
comment:
This is the base class for all IDE Browser

It can buid the system menu and status info bar.

Please overwrite method specificInit for your own GUI.

Instprocs:

buildTopLevel {}
createSystemMenu {}
destroy {}
getTitle {}
init {window args}
initStatusBar {y columns}
initStatusBarWin {win}
setStatusBarText {text}
setTitleAddition {add}
specificInit {}
Overwrite this method to build your own GUI

Class IDE::ClassDefinition

parameter: {superclassList {}} classView {mode create} {parameter {}} className
superclasses:
IDE::Browser
Instprocs:
actionCreate {}
actionTemplate {}
addToList {}
checkClassView {}
createSystemMenu {}
delFromList {}
destroy {}
downListElem {}
getClassDefinition {}
getParameter {}
getTitle {}
setClassesList {}
specificInit {}
upListElem {}
Procs:
newChildClass {superclass view}
newClass {view}
redefineClass {class view}
unknown {args}

Class IDE::ClassSelector

comment:
A dialog for selecting classes
interafec is
IDE::ClassSelector getClass
cancel by returning {}

Procs:

getClass {}
getUnregisteredClass {}

Class IDE::ClassView

parameter: {label Classes/Objects}
superclasses:
IDE::HListView IDE::GUICommands IDE::FocusPerKey
subclasses: IDE::CoverClassView IDE::ClassViewDB
comment:
Warning 

vclass varible hold an actual displayed object
it can by an real Xotcl Class or
IDE::ProcsGroup
a wrapper for structure tcl procs in groups

Instprocs:

browseChildren {actual}
browseHeritage {actual}
buttonDoublePush {}
buttonPush {}
canModifyComponent {}
changeHeritageView {}
changeViewType {type}
classTemplate {}
classWizard {mode}
copyClass {actual}
createInstance {isSelectionClass}
createTclProcsGroup {name withNamespace}
deleteClass {actual}
dispatchWithSelectedNoGroup {procName}
editSave {skript}
editSaveComment {comment}
exportToFile {actual}
fillMenuStruct {ms}
getActualComponentObject {}
getMenuStruct {}
init {args}
inspectAllInstances {actual}
isProcView {}
isSelectionClass {}
isSelectionNoGroup {}
isValidContext {}
moveToComp {actual}
newTclProcsGroup {}
refreshList {}
refreshView {}
renameTclProcsGroup {actual}
selectFor {component}
selectItem {class}
setEditText {text}
setViewType {type}
trackClass {actual}

Class IDE::CodeController

comment:
This class is designed as mixin for IDE::TclModeEdit it can accept the
code from the edit directly.

Instprocs:

editSave {skript}
handleProc {script}
setTextType {text type}
syntaxCheck {text editor}

Class IDE::CompBrowser

superclasses:
IDE::Browser
comment:
Build the main work tool for an XOTclIDE programmer

If there is Version Control available it
create its commonent from another class with
pre IDE::DB* see specificInit method

Instprocs:

getActualComponentObject {}
getTitle {}
initStatusBarWin {win}
specificInit {}
Procs:
newBrowser {}

Class IDE::CompView

parameter: {label {Components Alt-1}}
superclasses:
IDE::ListView IDE::GUICommands IDE::FocusPerKey
subclasses: IDE::CompViewDB
Instprocs:
createNewComponent {component}
editSave {comment}
editSaveComment {comment}
fillMenuStruct {ms}
getActualComponentObject {}
getMenuStruct {}
importFromSource {}
init {args}
loadFromSource {}
loadPackage {}
newComponent {}
refreshFromInterpreter {}
refreshView {}
registerClass {actual}
renameComponent {component}
runPkgMkIndex {}
saveAsSource {actual}
searchClass {}
selectItem {item}
setAutoPath {}
setVersion {actual}
showComponents {}
unloadComponent {actual}

Class IDE::ComponentSaveWizard

superclasses:
IDE::Browser
Instprocs:
actionSave {}
addAllToList {}
addToList {}
changeDir {}
createSystemMenu {}
delFromList {}
getTitle {}
setComponentList {}
specificInit {}
Procs:
newBrowser {}

Class IDE::ConfigEdit

superclasses:
IDE::MethodEdit
Instprocs:
saveValue {value}

Class IDE::ConfigurationBrowser

parameter: {atHead 1}
superclasses:
IDE::Browser IDE::GUICommands
Instprocs:
addToList {}
addUnmanagedPackage {}
changeViewType {type}
checkRequirements {}
delFromList {}
destroy {}
downListElem {}
fillMenuStruct {aMenuStruct}
getMenuStruct {}
getTitle {}
initCompList {}
initFromSystem {}
loadComponents {}
loadFromFile {}
saveAsFile {args}
selectCompVersion {version}
selectComponent {compItem}
setComponentList {}
specificInit {}
upListElem {}
updateCompList {}
Procs:
showBrowser {}

Class IDE::ContextEval

comment:
This class is used for mixins to overwrite the string
evalution from selected text.

please init the instance variable "context" with the contex object.
All eval are do by using

$context eval $script

Instprocs:

evalString {string}

Class IDE::HeritageBrowser

parameter: {vtype heritage}
superclasses:
IDE::Browser
Instprocs:
browse {class}
getTitle {}
specificInit {}
Procs:
newBrowser {tclass}
newBrowserChild {tclass}

Class IDE::HeritageClassView

parameter: {label Classes} {vtype heritage}
superclasses:
IDE::HListView IDE::GUICommands IDE::FocusPerKey
Instprocs:
editSave {skript}
fillMenuStruct {ms}
getMenuStruct {}
refresh {}
selectFor {class}
selectItem {tclass}

Class IDE::MethodBrowser

superclasses:
IDE::Browser
comment:
Method Prowser implements View for all tcl/xotcl Methods
It is used as result view for several method based search function.

The search functions are implemented as class methods

Instprocs:

colorizeSearchString {}
setMethodList {list}
setSearchString {re_string}
specificInit {}
Procs:
emptySearchResult {}
newBrowser {}
newBrowserList {list title}
obsoleteMatchList {text mlist}
searchAndConvertObsoleteSelfCall {}
searchBreakPoints {}
searchImplementorsAll {implementor nocomplain}
searchImplementorsClass {implementor class}
searchImplementorsComponent {implementor component}
searchImplementorsDialog {}
searchObsoleteCall {}
searchSendersAll {method}
searchTextAll {text}
searchTextClass {text class}
searchTextComponent {text component}
unknown {args}

Class IDE::MethodCategoryView

parameter: {label Categories}
superclasses:
IDE::ListView IDE::GUICommands IDE::FocusPerKey
Instprocs:
changeViewType {vtype}
deleteCategory {actual}
fillMenuStruct {ms}
getMenuStruct {}
init {args}
isValidContext {}
newCategory {}
renameCategory {actual}
selectFor {class objtype}
selectItem {cat}

Class IDE::MethodEdit

superclasses:
IDE::Editor
subclasses: IDE::DebuggerMethodEdit IDE::TclModeEdit IDE::ConfigEdit
Instprocs:
addToPopMenu {m}
changeViewType {type}
fillMenuStruct {ms}
ignoreNoChanges {}
init {args}
save {}
saveForce {}
saveSource {value}
saveValue {value}
setTextControler {text contr}
setTextTypeControler {text type contr}

Class IDE::MethodListView

superclasses:
IDE::ListView IDE::GUICommands
subclasses: IDE::StackMethodListView
Instprocs:
browseChildren {actual}
browseHeritage {actual}
editSave {skript}
fillMenuStruct {ms}
getMenuStruct {}
removeMethod {actual}
searchImplementors {actual}
searchSenders {actual}
selectItem {item}

Class IDE::MethodSelector

Procs:
getMethod {}
getMethodsForPattern {patern}

Class IDE::MethodView

parameter: {label Methods}
superclasses:
IDE::ListView IDE::GUICommands IDE::FocusPerKey
subclasses: IDE::CoverMethodView IDE::MethodViewDB IDE::ObjectMethodView
Instprocs:
backMethod {}
checkItem {hitem}
closeAllSpawned {}
deleteMethod {method}
editSave {skript}
editSaveComment {comment}
fillMenuStruct {ms}
forwardMethod {}
getComponentInContext {}
getEditText {hitem}
getMenuStruct {}
handleScript {script}
init {args}
insertMethodToEdit {y}
invokeProcs {actual}
isValidContext {}
moveToCategory {methods}
newInitializeAfterLoad {}
newMethodTemplate {}
newOverwriteMethodTemplate {}
refreshActual {}
refreshView {}
searchImplementors {range}
searchSenders {range}
searchText {range}
selectFor {class categories type}
selectHItem {hitem}
selectHItemRefresh {hitem}
selectItem {method}
selectionToMethod {}
spawnMethod {}
spawnMethodUnderCursor {}
syntaxCheck {text editor}
viewMethodUnderCursor {}

Class IDE::ObjectBrowser

parameter: {type single} {atHead 1}
superclasses:
IDE::Browser IDE::GUICommands
Instprocs:
browseClass {args}
browseMixins {}
destroyActual {}
fillMenuStruct {ms}
getMenuStruct {}
inspectParent {}
printFilters {}
printSelf {}
printString {}
save {}
setViewList {list}
setViewObject {object}
specificInit {}
trackObject {}
Procs:
browseAllInstances {class}
browseAllObjectInstances {}
browseAllObjects {}
browseObjectsList {list}
browseObjectsListCheck {list}
newBrowser {object}

Class IDE::ObjectMethodView

superclasses:
IDE::MethodView
Instprocs:
changeVisibility {}
fillMenuStruct {ms}
getMethodsFor {class visibility}
invokeMethod {actual}
searchImplementors {actual}
searchMixinClass {object method}
searchSenders {actual}
selectFor {object}
selectItem {method}

Class IDE::ObjectsView

parameter: {type list}
superclasses:
IDE::ListView IDE::GUICommands
Instprocs:
selectItem {object}

Class IDE::ProtBrowser

superclasses:
IDE::Browser
Instprocs:
append {text}
specificInit {}
Procs:
newBrowser {}

Class IDE::ResultBrowser

parameter: result
superclasses:
IDE::Browser
subclasses: IDE::VersionTreeView
Instprocs:
getTitle {}
specificInit {}
Procs:
newBrowser {result}

Class IDE::SpawnMethodEdit

superclasses:
IDE::Browser
Instprocs:
getTitle {}
specificInit {}

Class IDE::SubObjectsView

parameter: {label Subobjects}
superclasses:
IDE::HListView IDE::GUICommands
subclasses: IDE::DebugSubObjectsView
Instprocs:
fillMenuStruct {ms}
getMenuStruct {}
inspectObject {}
inspectObjectInThis {}
refresh {}
selectFor {object}
selectItem {object}
selectionAsObject {}
setList {list}

Class IDE::SyntaxChecker

parameter: {atHead 1}
superclasses:
IDE::Browser IDE::GUICommands
Instprocs:
checkComponents {}
excludeIDE {}
fillMenuStruct {aMenuStruct}
getBodyForItem {item}
getMenuStruct {}
getTitle {}
protokollToFile {args}
readComponents {}
removeMethod {}
selectAll {}
selectError {item}
selectMethod {item}
setListViews {}
setStateText {text}
specificInit {}
Procs:
newBrowser {}

Class IDE::SyntaxErrorView

parameter: errors editor controler
superclasses:
IDE::Browser
Instprocs:
createSystemMenu {}
forceSaving {}
getTitle {}
selectError {item}
specificInit {}

Class IDE::TclGroupDefinition

parameter: classView {mode define}
superclasses:
IDE::Browser
Instprocs:
actionCreate {}
checkClassView {}
createSystemMenu {}
destroy {}
getTitle {}
getValuesFromGUI {}
specificInit {}
Procs:
newGroup {view}
unknown {args}

Class IDE::Transcript

superclasses:
IDE::Browser
Instprocs:
destroy {}
getTitle {}
specificInit {args}
warning {string}
Procs:
buildMain {}
newBrowser {}
warning {string}

Class IDE::VarsView

parameter: {label {Object Vars}}
superclasses:
IDE::ListView IDE::GUICommands
subclasses: IDE::LocalVarsView
Instprocs:
editSave {value}
fillMenuStruct {ms}
getMenuStruct {}
inspectArray {actual}
inspectAsObject {actual}
inspectAsObjectsList {actual}
refresh {}
searchReferences {actual}
selectFor {object}
selectItem {var}
unsetVariable {actual}

Object IDE::System

comment:
This object held the system generic methods as
1. quering envirorments parameters (directory, user)
2. specify systems menu
3. quering systems constants
4. evaluate user scripts

Procs:

browseString {string}
createInstance {class}
evalInspectString {string}
evalString {string}
exitIDEGUI {}
getCoreComponents {}
getCoreComponentsAll {}
getExtraComponents {}
getMenuStruct {}
getSystemDir {}
getUserId {}
getVersion {}
getXotclPackages {}
handleResult {result}
initDatabase {}
initDatabaseNoConnect {}
initializeAfterLoad {}
inspectString {res}
invokeInstproc {object instproc}
invokeProc {object proc}
invokeProcWithArg {object proc arg}
isDatabase {}
isIgnoreIDEComponents {}
loadExtras {extra}
showBusyWhile {script}
showFreshMethods {}
signalComponentsChanged {}
substituteString {string}
tryBrowseAsObjectList {string}
unknown {args}
versionAllCoreComponents {versionInfo}
IDE::SystemConfigMap loadComponentsFromList [IDE::SystemConfigMap getCleanedLoadList [concat [my getExtraComponents] [my getCoreComponents]]]