blob: e0bb5ee604428c4f2b969ab2ae8e00ff39fa8fb0 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
/******************************************************************************
* Copyright (c) 2006, 2020 Borland Software Corporation, CEA LIST, Artal
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Artem Tikhomirov (Borland) - initial API and implementation
* Michael Golubev (Borland) - GridLayout attributes
* Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - Bug 569174
*****************************************************************************/
«IMPORT 'http://www.eclipse.org/papyrus/gmf/2020/GraphicalDefinition'»
«IMPORT 'http://www.eclipse.org/emf/2002/Ecore'»
«EXTENSION Util»
«DEFINE Init(owningFigureVariable : String) FOR gmfgraph::Layout-»
«owningFigureVariable».setLayoutManager(«EXPAND Runtime::newInstance»);
«ENDDEFINE»
«DEFINE Init(owningFigureVariable : String) FOR gmfgraph::LayoutRef-»
«EXPAND Init(owningFigureVariable) FOR actual-»
«ENDDEFINE»
«DEFINE Init(owningFigureVariable : String) FOR gmfgraph::BorderLayout-»
«LET 'layout' + owningFigureVariable.firstToUpper() AS layoutVarName»
«EXPAND Runtime::newInstance(layoutVarName)»
«IF null <> spacing-»
«layoutVarName».setHorizontalSpacing(«spacing.dx»);// TODO mapMode?
«layoutVarName».setVerticalSpacing(«spacing.dy»);
«ENDIF-»
«owningFigureVariable».setLayoutManager(«layoutVarName»);
«ENDLET»
«ENDDEFINE»
«DEFINE Init(owningFigureVariable : String) FOR gmfgraph::GridLayout-»
«LET 'layout' + owningFigureVariable.firstToUpper() AS layoutVarName»
«EXPAND Runtime::newInstance(layoutVarName)»
«layoutVarName».numColumns = «numColumns»;
«layoutVarName».makeColumnsEqualWidth = «equalWidth»;
«IF null <> spacing-»
«layoutVarName».horizontalSpacing = «spacing.dx»;
«layoutVarName».verticalSpacing = «spacing.dy»;
«ENDIF-»
«IF null <> margins-»
«layoutVarName».marginWidth = «margins.dx»;
«layoutVarName».marginHeight = «margins.dy»;
«ENDIF-»
«owningFigureVariable».setLayoutManager(«layoutVarName»);
«ENDLET»
«ENDDEFINE»
«DEFINE Init(owningFigureVariable : String) FOR gmfgraph::FlowLayout-»
«LET 'layout' + owningFigureVariable.firstToUpper() AS layoutVarName»
«EXPAND Runtime::newInstance(layoutVarName)»
«layoutVarName».setStretchMinorAxis(«matchMinorSize»);
«layoutVarName».setMinorAlignment(«EXPAND Runtime::fqn».«EXPAND alignment(forceSingleLine) FOR minorAlignment»);
«IF forceSingleLine»
«layoutVarName».setSpacing(«majorSpacing»);
«layoutVarName».setVertical(«vertical»);
«ELSE»
«layoutVarName».setMajorAlignment(«EXPAND Runtime::fqn».«EXPAND alignment(forceSingleLine) FOR majorAlignment»);
«layoutVarName».setMajorSpacing(«majorSpacing»);
«layoutVarName».setMinorSpacing(«minorSpacing»);
«layoutVarName».setHorizontal(«not vertical»);
«ENDIF»
«owningFigureVariable».setLayoutManager(«layoutVarName»);
«ENDLET»
«ENDDEFINE»
«DEFINE Init(owningFigureVariable : String) FOR gmfgraph::CustomLayout-»
«LET 'layout' + owningFigureVariable.firstToUpper() AS layoutVarName»
«EXPAND Runtime::newInstance(layoutVarName)»
«EXPAND attr::CustomClass::Init(layoutVarName)-»
«owningFigureVariable».setLayoutManager(«layoutVarName»);
«ENDLET»
«ENDDEFINE»
«DEFINE alignment(forceSingleLine : Boolean) FOR gmfgraph::Alignment-»
«IF self = gmfgraph::Alignment::BEGINNING-»
«IF forceSingleLine»ALIGN_TOPLEFT«ELSE»ALIGN_LEFTTOP«ENDIF-»
«ELSEIF self = gmfgraph::Alignment::END-»
«IF forceSingleLine»ALIGN_BOTTOMRIGHT«ELSE»ALIGN_RIGHTBOTTOM«ENDIF-»
«ELSE-»
ALIGN_CENTER«ENDIF-»
«REM»XXX implement as extension
switch (value) {
case Alignment.BEGINNING : ""
default : ""
}«ENDREM»
«ENDDEFINE»
|