Contents

Component IDEPersistenceAdd

comment:
GUI additionals for Version Control System as

1. ChangesBrowser
2. Repository Viewer (To View stuff directly from Database)
Classes Classes Hierarchy Objects

Class IDE::ChangesBrowser

parameter: {mode components}
superclasses:
IDE::Browser
subclasses: IDE::CMapsChangesBrowser
comment:
This browser can show changes among components, classes and methods
It use also IDE::TextDiffScaner to show changes of two textes.

The mode of this browser is depended of class invoke method

Instprocs:

changeViewType {vt}
compareComponents {c1 c2}
compareMethods {m1 m2}
compareObjects {c1 c2}
destroy {}
getDiffFromArrays {a1_ref a2_ref}
getSourcesWindows {fwin}
getTitle {}
nextDifference {}
selectClass {class}
selectMethod {method}
setCompareLabels {lab1 lab2}
setMethodLabels {lab1 lab2}
setTextLeft {text}
setTextRight {text}
specificInit {}
Procs:
compareComponents {comp1 comp2}
compareMethods {meth1 meth2}
compareObjects {obj1 obj2}
newBrowser {}
unknown {args}

Class IDE::ComponentEdition

comment:
This is a simpe functionless wrapper for db-persistence component.
It is used to show contents of one component.
The objects and methods bodies are build as intern array list and not
really objects.
It has tha same interface that IDE::Component for viewing. That means
the viewer can use it both (polymorphismus).

Instprocs:

getName {}
getObject {name}
getObjectNames {}
init {compid}
printString {}
setObjectsArray {arr_ref}
This method are also impelented by IDE::ComponentPersistence It is used to fill in informations about classes and objects

Class IDE::EditionBrowser

parameter: {mode component}
superclasses:
IDE::Browser
Instprocs:
changeViewType {state}
destroy {}
selectClass {class}
selectMethod {method}
specificInit {}
viewComponent {compEdition}
viewObject {objectEdition}
Procs:
browseComponentEdition {compEdition}
browseComponentId {compId}
browseObjectEdition {objectEdition}
unknown {args}

Class IDE::ObjectEdition

Instprocs:
getClassMethodBody {method}
getInstanceMethodBody {method}
getName {}
init {tname objid}
initMethodsArrays {}
printString {}
setClassMethodsArray {arr_ref}
setInstanceMethodsArray {arr_ref}

Class IDE::TextDiffScaner

parameter: textWin1 textWin2
comment:
This class can compare to text pieces and recognize changes.
It do the same job as diff unix command

Instprocs:

beginOfEqual {start}
endOfEqual {start}
getLine1 {line}
getLine2 {line}
init {}
initLength {}
markNextDiff {}
scane {}

Class IDE::VersionTreeView

superclasses:
IDE::ResultBrowser
comment:
This should show the heritage of versions and edititions.

Procs:

computeVersionTreeText {comps}
newBrowser {result}
showVersionTreeComponent {name}
showVersionTreeMethod {name object type}
showVersionTreeObject {name}

Object IDE::VersionControlQueries

Procs:
todayChangedMethods {}