carbidecpp22devenv/plugins/org.eclipse.gmf.templates.legacy_1.0.0.v20090614-0839/graphdef.codegen.templates/Layout.xpt
changeset 422 033392511bf7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/carbidecpp22devenv/plugins/org.eclipse.gmf.templates.legacy_1.0.0.v20090614-0839/graphdef.codegen.templates/Layout.xpt	Fri Dec 04 11:06:59 2009 -0600
@@ -0,0 +1,92 @@
+/*
+ * Copyright (c) 2006, 2008 Borland Software Corporation
+ * 
+ * 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
+ *
+ * Contributors:
+ *    Artem Tikhomirov (Borland) - initial API and implementation
+ *    Michael Golubev (Borland) - GridLayout attributes
+ */
+
+«IMPORT "http://www.eclipse.org/gmf/2006/GraphicalDefinition"»
+«IMPORT "http://www.eclipse.org/emf/2002/Ecore"»
+«EXTENSION Util»
+
+«DEFINE Init(EString owningFigureVariable) FOR gmfgraph::Layout-»
+«owningFigureVariable».setLayoutManager(«EXPAND Runtime::newInstance»);
+«ENDDEFINE»
+
+«DEFINE Init(EString owningFigureVariable) FOR gmfgraph::LayoutRef-»
+«EXPAND Init(owningFigureVariable) FOR actual-»
+«ENDDEFINE»
+
+«DEFINE Init(EString owningFigureVariable) FOR gmfgraph::BorderLayout-»
+«LET "layout" + owningFigureVariable.toFirstUpper() 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(EString owningFigureVariable) FOR gmfgraph::GridLayout-»
+«LET "layout" + owningFigureVariable.toFirstUpper() 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(EString owningFigureVariable) FOR gmfgraph::FlowLayout-»
+«LET "layout" + owningFigureVariable.toFirstUpper() 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(«!vertical»);
+«ENDIF»
+	«owningFigureVariable».setLayoutManager(«layoutVarName»);
+«ENDLET»
+«ENDDEFINE»
+
+«DEFINE Init(EString owningFigureVariable) FOR gmfgraph::CustomLayout-»
+«LET "layout" + owningFigureVariable.toFirstUpper() AS layoutVarName»
+	«EXPAND Runtime::newInstance(layoutVarName)»
+«EXPAND attr::CustomClass::Init(layoutVarName)-»
+	«owningFigureVariable».setLayoutManager(«layoutVarName»);
+«ENDLET»
+«ENDDEFINE»
+
+«DEFINE alignment(EBoolean forceSingleLine) FOR gmfgraph::Alignment-»
+«IF value == Alignment::BEGINNING.value-»
+«IF forceSingleLine»ALIGN_TOPLEFT«ELSE»ALIGN_LEFTTOP«ENDIF-»
+«ELSEIF value == Alignment::END.value-»
+«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»