carbidecpp22devenv/plugins/org.eclipse.gmf.templates.legacy_1.0.0.v20090614-0839/codegen.templates/xpt/propsheet/LabelProvider.xpt
changeset 422 033392511bf7
equal deleted inserted replaced
421:631a44165bcf 422:033392511bf7
       
     1 /*
       
     2  * Copyright (c) 2007 Borland Software Corporation
       
     3  * 
       
     4  * All rights reserved. This program and the accompanying materials
       
     5  * are made available under the terms of the Eclipse Public License v1.0
       
     6  * which accompanies this distribution, and is available at
       
     7  * http://www.eclipse.org/legal/epl-v10.html
       
     8  *
       
     9  * Contributors:
       
    10  *    Artem Tikhomirov (Borland) - initial API and implementation
       
    11  */
       
    12 «IMPORT "http://www.eclipse.org/gmf/2008/GenModel"»
       
    13 «IMPORT "http://www.eclipse.org/emf/2002/Ecore"»
       
    14 
       
    15 «DEFINE Class FOR gmfgen::GenPropertySheet»
       
    16 	«EXPAND xpt::Common::copyright FOR editorGen-»
       
    17 package «packageName»;
       
    18 
       
    19 «EXPAND xpt::Common::generatedClassComment»
       
    20 public class «labelProviderClassName» extends «EXPAND extendsList» {
       
    21 
       
    22 «EXPAND cons»
       
    23 «EXPAND getTextMethod»
       
    24 «EXPAND getImageMethod»
       
    25 «EXPAND unwrapMethods»
       
    26 
       
    27 «EXPAND additions»
       
    28 }
       
    29 «ENDDEFINE»
       
    30 
       
    31 «DEFINE extendsList FOR gmfgen::GenPropertySheet»org.eclipse.jface.viewers.DecoratingLabelProvider«ENDDEFINE»
       
    32 
       
    33 «DEFINE cons FOR gmfgen::GenPropertySheet»
       
    34 	«EXPAND xpt::Common::generatedMemberComment»
       
    35 	public «labelProviderClassName»() {
       
    36 		super(new org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider(«editorGen.plugin.getActivatorQualifiedClassName()».getInstance().getItemProvidersAdapterFactory()), null);
       
    37 	}
       
    38 «ENDDEFINE»
       
    39 
       
    40 «DEFINE getTextMethod FOR gmfgen::GenPropertySheet»
       
    41 	«EXPAND xpt::Common::generatedMemberComment»
       
    42 	public String getText(Object element) {
       
    43 		Object selected = unwrap(element); 
       
    44 «IF editorGen.navigator != null-»
       
    45 		if (selected instanceof «editorGen.navigator.getNavigatorGroupQualifiedClassName()») {
       
    46 			return ((«editorGen.navigator.getNavigatorGroupQualifiedClassName()») selected).getGroupName();
       
    47 		}
       
    48 «ENDIF-»
       
    49 		return super.getText(selected);
       
    50 	}
       
    51 «ENDDEFINE»
       
    52 
       
    53 «DEFINE getImageMethod FOR gmfgen::GenPropertySheet»
       
    54 	«EXPAND xpt::Common::generatedMemberComment»
       
    55 	public org.eclipse.swt.graphics.Image getImage(Object element) {
       
    56 		return super.getImage(unwrap(element));
       
    57 	}
       
    58 «ENDDEFINE»
       
    59 
       
    60 «DEFINE unwrapMethods FOR gmfgen::GenPropertySheet»
       
    61 	«EXPAND xpt::Common::generatedMemberComment»
       
    62 	private Object unwrap(Object element) {
       
    63 		if (element instanceof org.eclipse.jface.viewers.IStructuredSelection) {
       
    64 			return unwrap(((org.eclipse.jface.viewers.IStructuredSelection) element).getFirstElement());
       
    65 		}
       
    66 		if (element instanceof org.eclipse.gef.EditPart) {
       
    67 			return unwrapEditPart((org.eclipse.gef.EditPart) element);
       
    68 		}
       
    69 		if (element instanceof org.eclipse.core.runtime.IAdaptable) {
       
    70 			org.eclipse.gmf.runtime.notation.View view = (org.eclipse.gmf.runtime.notation.View) ((org.eclipse.core.runtime.IAdaptable) element).getAdapter(org.eclipse.gmf.runtime.notation.View.class);
       
    71 			if (view != null) {
       
    72 				return unwrapView(view);
       
    73 			}
       
    74 		}
       
    75 		return element;
       
    76 	}
       
    77 	«EXPAND unwrapEditPartMethod»
       
    78 	«EXPAND unwrapViewMethod»
       
    79 «ENDDEFINE»
       
    80 
       
    81 «DEFINE unwrapEditPartMethod FOR gmfgen::GenPropertySheet»
       
    82 	«EXPAND xpt::Common::generatedMemberComment»
       
    83 	private Object unwrapEditPart(org.eclipse.gef.EditPart p) {
       
    84 		if (p.getModel() instanceof org.eclipse.gmf.runtime.notation.View) {
       
    85 			return unwrapView((org.eclipse.gmf.runtime.notation.View) p.getModel());
       
    86 		}
       
    87 		return p.getModel();
       
    88 	}
       
    89 «ENDDEFINE»
       
    90 
       
    91 «DEFINE unwrapViewMethod FOR gmfgen::GenPropertySheet»
       
    92 	«EXPAND xpt::Common::generatedMemberComment»
       
    93 	private Object unwrapView(org.eclipse.gmf.runtime.notation.View view) {
       
    94 		return view.getElement() == null ? view : view.getElement();
       
    95 	}
       
    96 «ENDDEFINE»
       
    97 
       
    98 «DEFINE additions FOR gmfgen::GenPropertySheet»«ENDDEFINE»