blob: 1dbcd63202c2a39d38e8196fa93d3d38b80b3e84 [file] [log] [blame]
package TVAppDsl;
@exeed(classIcon="application")
class Application extends NamedElement {
val Content[*] contents;
}
@exeed(label="return self.name;")
abstract class NamedElement {
attr String name;
}
abstract class Content extends NamedElement {
}
@exeed(classIcon="text", label="return self.name + ': ' + self.information;")
class Text extends Content {
@exeed(multiLine="true")
attr String information;
val TextHistory[*] history;
}
@exeed(classIcon="history", label="return 'Revision ' + self.revision + ': ' + self.information;")
class TextHistory {
attr Integer revision;
attr String information;
}
@exeed(classIcon="vote")
class Vote extends Content {
val VoteContent[*] contents;
}
abstract class VoteContent extends NamedElement {
}
@exeed(classIcon="choice")
class Choice extends VoteContent {
}
@exeed(classIcon="information")
class Label extends VoteContent {
}
@exeed(classIcon="menu")
class Menu extends Content {
val Content[*] contents;
}