blob: 8d76aa4934c10b745ba3fe350546d0e161fd9914 [file] [log] [blame]
// force bigModel == 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
Based on ideas from Xtext, Xtend, Xcore
Joerg Riegel - Initial implementation
package org.eclipse.osbp.xtext.chart
import org.eclipse.osbp.xtext.datamartdsl.DatamartAxis
import org.eclipse.osbp.xtext.datamartdsl.DatamartDefinition
import org.eclipse.emf.ecore.EObject
import org.eclipse.emf.ecore.InternalEObject
import org.eclipse.osbp.dsl.semantic.common.types.LPackage
import org.eclipse.osbp.xtext.oxtype.resource.EcoreUtil3
import org.eclipse.xtext.xtype.XImportSection
class ChartModel {
contains XImportSection importSection
contains ChartPackage[] packages
type InternalEObject wraps InternalEObject
class ChartLazyResolver {
op EObject eResolveProxy(InternalEObject proxy) {
return EcoreUtil3.resolve(proxy, this.eResource().resourceSet);
class ChartBase extends ChartLazyResolver{
String name
class ChartPackage extends LPackage{
contains Chart[] charts
class Chart extends ChartBase{
boolean selectById
boolean description
String descriptionValue
boolean polling
int pollingTime
contains ChartOption charttype
contains ChartDatamart source
interface ChartOption extends ChartLazyResolver{}
class ChartBar extends ChartOption {
boolean shadow
boolean animated
boolean swapped
boolean stacked
class ChartLine extends ChartOption {
boolean animated
boolean showMarker
boolean trendLine
boolean zoom
boolean cursor
boolean tooltip
boolean fillToZero
boolean fillArea
class ChartPie extends ChartOption {
boolean empty
class ChartDonut extends ChartOption {
class ChartBubble extends ChartOption {
boolean multiplier
String multiplierValue
boolean gradient
boolean transparent
class ChartGauge extends ChartOption {
boolean labeled
String labelValue
boolean hasTicks
int minValue
int maxValue
boolean hasIntervals
contains ChartInterval[] intervals
class ChartTree extends ChartOption {
boolean map
boolean collapsible
interface ChartInterval extends ChartLazyResolver {}
class ChartNumberInterval extends ChartInterval {
int numberIntervalValue
contains ChartRangeElement numberRange
class ChartDatamart extends ChartLazyResolver {
refers DatamartDefinition datamartRef
contains ChartElement[] elements
interface ChartElement extends ChartLazyResolver{}
class ChartLegend extends ChartElement {
LegendPlacementEnum placement
boolean toggle
boolean replot
ToggleTypeEnum toggleType
class ChartHighlighter extends ChartElement {
TooltipLocationEnum location
boolean tooltipAlways
boolean insideChart
class ChartAxis extends ChartElement {
refers DatamartAxis axis
RenderTypeEnum renderType
boolean shortLabel
int angle
interface ChartRangeElement extends ChartLazyResolver {}
class ChartSegmentColor extends ChartRangeElement {
String rgb
enum LegendPlacementEnum{
INSIDE as 'inside'
INSIDE_GRID as 'inside-grid'
OUTSIDE as 'outside'
OUTSIDE_GRID as 'outside-grid'
enum ToggleTypeEnum{
NORMAL as 'normal'
SLOW as 'slow'
FAST as 'fast'
enum TooltipLocationEnum{
NORTH as 'north'
NORTH_EAST as 'north-east'
EAST as 'east'
SOUTH_EAST as 'south-east'
SOUTH as 'south'
SOUTH_WEST as 'south-west'
WEST as 'west'
NORTH_WEST as 'north-west'
enum RenderTypeEnum{
CATEGORY as 'category'
LINEAR as 'linear'
DATE as 'date'
LOG as 'logarithmic'
PYRAMID as 'pyramid'