blob: ab6abcbbf72c07320bb302dbd3d46240e457d2da [file] [log] [blame]
@GenModel(fileExtensions="perspective")
@GenModel(modelName="PerspectiveDsl")
@GenModel(prefix="PerspectiveDsl")
@GenModel(updateClasspath="false")
@GenModel(copyrightText="Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http{//www.eclipse.org/legal/epl-v10.html
Based on ideas from Xtext, Xtend, Xcore
Contributors{
Joerg Riegel - Initial implementation
")
@Ecore(nsURI="http://osbp.eclipse.org/xtext/perspective/PerspectiveDsl")
@Ecore(nsPrefix="perspectivedsl")
@Ecore(rootPackage="perspectivedsl")
package org.eclipse.osbp.xtext.perspective
import org.eclipse.osbp.xtext.chart.Chart
import org.eclipse.osbp.xtext.dialogdsl.Dialog
import org.eclipse.osbp.xtext.organizationdsl.Organization
import org.eclipse.osbp.xtext.reportdsl.Report
import org.eclipse.osbp.xtext.table.Table
import org.eclipse.osbp.xtext.topologydsl.Topology
import org.eclipse.osbp.xtext.action.ActionToolbar
import org.eclipse.emf.ecore.EObject
import org.eclipse.emf.ecore.InternalEObject
import org.eclipse.xtext.common.types.JvmTypeReference
import org.eclipse.osbp.dsl.xtext.lazyresolver.api.EcoreUtil3
import org.eclipse.osbp.dsl.semantic.common.types.LPackage
import org.eclipse.osbp.xtext.blip.Blip
import org.eclipse.osbp.xtext.blip.BlipUserTask
class PerspectiveModel{
contains PerspectivePackage[] packages
}
type InternalEObject wraps InternalEObject
class PerspectiveLazyResolver {
op EObject eResolveProxy(InternalEObject proxy) {
return EcoreUtil3.resolve(proxy, this.eResource().resourceSet);
}
}
class PerspectivePackage extends LPackage{
contains Perspective[] perspectives
}
class PerspectiveBase extends PerspectiveLazyResolver{
String name
}
class Perspective extends PerspectiveBase{
boolean description
String descriptionValue
String iconURI
String accessibilityPhrase
refers Blip process
refers BlipUserTask userTask
refers ActionToolbar toolbar
contains resolving transient JvmTypeReference toolbarTypeJvm
contains PerspectiveElement[] elements
}
class PerspectiveElement extends PerspectiveLazyResolver{
String elementId
String accessibilityPhrase
String containerData
contains PerspectiveElement[] elements
}
class PerspectiveSashContainer extends PerspectiveElement {
SashOrientation orientation
refers PerspectiveElement selectedElement
}
class PerspectivePart extends PerspectiveElement {
boolean description
String descriptionValue
String iconURI
contains PerspectiveView view
boolean isClosable
}
class PerspectivePartStack extends PerspectiveElement {
refers PerspectivePart selectedElement
}
interface PerspectiveView extends PerspectiveLazyResolver{
}
class PerspectiveSelection extends PerspectiveView {
refers Table ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveTable extends PerspectiveView {
refers Table ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveGrid extends PerspectiveView {
refers Table ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveChart extends PerspectiveView {
refers Chart ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveReport extends PerspectiveView {
refers Report ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveOrganization extends PerspectiveView {
refers Organization ref
}
class PerspectiveTopology extends PerspectiveView {
refers Topology ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveDialog extends PerspectiveView {
refers Dialog ref
contains resolving transient JvmTypeReference refTypeJvm
}
class PerspectiveBPMN extends PerspectiveView {
}
enum SashOrientation {
HORIZONTAL as 'horizontal'
VERTICAL as 'vertical'
}