Skip to main content
summaryrefslogtreecommitdiffstats
blob: c540992b9298df46c0a94e9972e0754f56148d15 (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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<%@ jet package="comrel.refactoring" class="RefactoringWizardPage"
imports="org.eclipse.emf.refactor.refactoring.generator.core.* comrel.generator.refactoring.*"%>
<%ComrelConfig refactoringConfig = (ComrelConfig) argument; %>
/**
 * <copyright>
 * </copyright>
 *
 * $Id: RefactoringWizardPage.javajet,v 1.1 2010/07/15 13:08:44 tarendt Exp $
 */
package <%=refactoringConfig.getPackageName()%>;

import java.util.List;

import org.eclipse.emf.refactor.refactoring.runtime.ltk.ui.AbstractRefactoringWizard;
import org.eclipse.emf.refactor.refactoring.runtime.ui.IInputPageButtonCreator;
import org.eclipse.emf.refactor.refactoring.runtime.ui.InputPageButtonLoader;

import org.eclipse.ltk.ui.refactoring.UserInputWizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Text;

/**
 * Class for setting model refactoring specific parameters
 * by the user.
 * @generated
 */
public class RefactoringWizardPage extends 
				UserInputWizardPage implements Listener {
	
	/**
	 * Controller of the EMF model refactoring.
	 * @generated
	 */			
	private final RefactoringController controller;
	
<% for (ParameterInfo pc : refactoringConfig.getParameters()) { %>
	/**
	 * Label for each parameter.
	 * @generated
	 */	
	private Label <%=pc.getName()%>Label;
	
	/**
	 * TextField for each parameter.
	 * @generated
	 */
	private Text <%=pc.getName()%>Widget;
<% } %>

	/**
	 * Default constructor using a name and the controller of the 
	 * EMF model refactoring.
	 * @param name Name of the WizardPage.
	 * @param controller Controller of the EMF model refactoring.
	 * @generated
	 */
	public RefactoringWizardPage
		(String name, RefactoringController controller) {
		super(name);
		this.controller = controller;
	}

	/**
	 * @see org.eclipse.swt.widgets.Listener#
	 * handleEvent(org.eclipse.swt.widgets.Event)
	 * @generated
	 */
	@SuppressWarnings("unchecked")
	@Override
	public void handleEvent(Event event) {		
		getWizard().getContainer().updateButtons();

<% for (ParameterInfo pc : refactoringConfig.getParameters()) { %>				
		if (<%=pc.getName()%>Widget != null) {
			String <%=pc.getName()%> = <%=pc.getName()%>Widget.getText();
			if (!<%=pc.getName()%>.isEmpty()){
				((RefactoringDataManagement) 
						this.controller.getDataManagementObject()).
						getInPortByName("<%=pc.getName()%>").
						setValue(<%=pc.getName()%>);
			} else {
				((RefactoringDataManagement) 
						this.controller.getDataManagementObject()).
						getInPortByName("<%=pc.getName()%>").
						setValue("unspecified");
			}
		}
<% } %>

	}
	
	/**
	 * @see org.eclipse.jface.dialogs.IDialogPage#
	 * createControl(org.eclipse.swt.widgets.Composite)
	 * @generated
	 */
	@Override
	public void createControl(Composite parent) {
		Composite composite = new Composite(parent, SWT.NONE);
		GridLayout gl = new GridLayout();
		gl.numColumns = 2;
		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
		composite.setLayout(gl);
		
<% for (ParameterInfo pc : refactoringConfig.getParameters()) { %>	
		
		<%=pc.getName()%>Label = new Label(composite, SWT.NONE);
		<%=pc.getName()%>Label.setText("<% if (pc.getDescription() != null) {%> <%=pc.getDescription()%> <% } else { %> value of variable '<%=pc.getName()%>'<% } %>: ");		
		<%=pc.getName()%>Label.setEnabled(true);
		
		<%=pc.getName()%>Widget = new Text(composite, SWT.BORDER);
		<%=pc.getName()%>Widget.setToolTipText
				("value of variable '<%=pc.getName()%>'");
		<%=pc.getName()%>Widget.setEnabled(true);
		<%=pc.getName()%>Widget.setLayoutData(gd);
		<%=pc.getName()%>Widget.addListener(SWT.Modify, this);
		
<% } %>

		List<IInputPageButtonCreator> buttonCreators = InputPageButtonLoader.iNSTANCE.getInputPageButtonCreatorClasses();
		for(IInputPageButtonCreator creator : buttonCreators){
			creator.createButton(composite, controller, (AbstractRefactoringWizard)this.getWizard());
		}
		
		setControl(composite);
	}
	
}
	

Back to the top