54 lines
1.1 KiB
Plaintext
54 lines
1.1 KiB
Plaintext
@startuml
|
|
|
|
package jmri #DDDDDD {
|
|
|
|
interface NewFunction
|
|
|
|
}
|
|
|
|
package jmri.swing #DDDDDD {
|
|
|
|
class NewFunctionPane {
|
|
NewFunctionPane(NewFunction ..)
|
|
}
|
|
note right: This is both a base for\nother classes, and the implementation\nfor generic NewFunctionPane references
|
|
NewFunction *-- NewFunctionPane : configures
|
|
}
|
|
|
|
package jmri.implementation #DDDDDD {
|
|
|
|
abstract class AbstractNewFunction
|
|
NewFunction <|-- AbstractNewFunction
|
|
|
|
class NewFunctionTypeA
|
|
AbstractNewFunction <|-- NewFunctionTypeA
|
|
|
|
}
|
|
|
|
package jmri.implementation.swing #DDDDDD {
|
|
|
|
class NewFunctionTypeAPane {
|
|
NewFunctionTypeAPane(NewFunctionTypeA ..)
|
|
}
|
|
NewFunctionPane <|-- NewFunctionTypeAPane
|
|
NewFunctionTypeA *-- NewFunctionTypeAPane : configures
|
|
}
|
|
|
|
package jmri.jmrit.ToolB #DDDDDD {
|
|
|
|
class NewFunctionTypeB
|
|
|
|
AbstractNewFunction <|-- NewFunctionTypeB
|
|
}
|
|
|
|
package jmri.jmrit.ToolB.swing #DDDDDD {
|
|
|
|
class NewFunctionTypeBPane {
|
|
NewFunctionTypeBPane(NewFunctionTypeB ..)
|
|
}
|
|
NewFunctionPane <|-- NewFunctionTypeBPane
|
|
NewFunctionTypeB *-- NewFunctionTypeBPane : configures
|
|
}
|
|
|
|
@enduml
|