Author: DartPeng
Date: 2009-03-23 19:43:00 -0400 (Mon, 23 Mar 2009)
New Revision: 14299
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksConstants.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLConnectionSection.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLSectionFilter.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/ui/
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/util/GraphicalInformationSaver.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/model/JavaBeanModel.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractSmooksPropertySection.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/LineConnectionSectionFilter.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksResourceChangeListener.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksUIActivator.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/TypeIDSelectionWizardPage.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksConfigFileNewWizardPage.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksNewWizardPage.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/AbstractXMLModelAnalyzer.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLAnalyzer.java
Log:
JBIDE-2870
Add new feature for x2x
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml 2009-03-23 23:07:59 UTC (rev
14298)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml 2009-03-23 23:43:00 UTC (rev
14299)
@@ -17,7 +17,7 @@
point="org.eclipse.ui.editors">
<editor
name="Smooks Editor"
- extensions="smooks"
+ extensions="xml"
icon="icons/smooks-sm.gif"
class="org.jboss.tools.smooks.ui.editors.SmooksFormEditor"
id="org.jboss.tools.smooks.ui.editors.SmooksFormEditor">
@@ -61,6 +61,12 @@
id="org.jboss.tools.smooks.ui.connection.beanpopulator.section"
tab="org.jboss.tools.smooks.ui.connection.beanpopulator.propertyTab">
</propertySection>
+ <propertySection
+ class="org.jboss.tools.smooks.xml2xml.XML2XMLConnectionSection"
+ filter="org.jboss.tools.smooks.xml2xml.XML2XMLSectionFilter"
+ id="org.jboss.tools.smooks.ui.xml2xml.propertySection"
+ tab="org.jboss.tools.smooks.ui.xml2xml.propertySection.tab">
+ </propertySection>
</propertySections>
</extension>
<extension
@@ -104,6 +110,11 @@
id="org.jboss.tools.smooks.ui.connection.beanpopulator.propertyTab"
label="BeanPopulator Connection">
</propertyTab>
+ <propertyTab
+ category="connection"
+ id="org.jboss.tools.smooks.ui.xml2xml.propertySection.tab"
+ label="XML2XML Properties">
+ </propertyTab>
</propertyTabs>
</extension>
<extension
@@ -244,7 +255,7 @@
point="org.eclipse.core.contenttype.contentTypes">
<content-type
base-type="org.eclipse.core.runtime.xml"
- file-extensions="smooks"
+ file-extensions="xml"
id="org.jboss.tools.smooks.ui.smooks.contentType"
name="Smooks Configuration File"
priority="normal">
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/util/GraphicalInformationSaver.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/util/GraphicalInformationSaver.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/util/GraphicalInformationSaver.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -34,6 +34,7 @@
import org.jboss.tools.smooks.graphical.MappingDataType;
import org.jboss.tools.smooks.graphical.Param;
import org.jboss.tools.smooks.graphical.Params;
+import org.jboss.tools.smooks.ui.SmooksConstants;
import org.jboss.tools.smooks.ui.modelparser.SmooksConfigurationFileGenerateContext;
/**
@@ -58,8 +59,8 @@
IFile file = ((IFileEditorInput) input).getFile();
IContainer container = file.getParent();
String fileName = file.getName();
- if (fileName.endsWith(".smooks")) {
- String gfileName = fileName + ".graph";
+ if (fileName.endsWith(SmooksConstants.SMOOKS_EXTENTION_NAME_WITHDOT)) {
+ String gfileName = fileName + SmooksConstants.SMOOKS_GRAPH_EXTENTION_NAME_WITHDOT;
if (container != null) {
IFile gfile = container.getFile(new Path(gfileName));
if (!gfile.exists()) {
@@ -83,8 +84,8 @@
public GraphicalInformationSaver(IFile file) {
IContainer container = file.getParent();
String fileName = file.getName();
- if (fileName.endsWith(".smooks")) {
- String gfileName = fileName + ".graph";
+ if (fileName.endsWith(SmooksConstants.SMOOKS_EXTENTION_NAME_WITHDOT)) {
+ String gfileName = fileName + SmooksConstants.SMOOKS_GRAPH_EXTENTION_NAME_WITHDOT;
if (container != null) {
IFile gfile = container.getFile(new Path(gfileName));
if (!gfile.exists()) {
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/model/JavaBeanModel.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/model/JavaBeanModel.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/model/JavaBeanModel.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -35,6 +35,8 @@
public class JavaBeanModel implements IValidatable, IXMLStructuredObject,
Cloneable, ITransformTreeNode {
+ private boolean flat = false;
+
private Properties extendProperties = new Properties();
protected PropertyChangeSupport support = new PropertyChangeSupport(this);
@@ -82,6 +84,14 @@
return isRootClassModel || getParent() == null;
}
+ public boolean isFlat() {
+ return flat;
+ }
+
+ public void setFlat(boolean flat) {
+ this.flat = flat;
+ }
+
/**
* @param isRootClassModel
* the isRootClassModel to set
@@ -220,8 +230,10 @@
if (returnType instanceof ParameterizedType) {
Type gtype = ((ParameterizedType) returnType)
.getActualTypeArguments()[0];
- beanType = (Class) gtype;
- componentClass = beanType;
+ if (gtype instanceof Class) {
+ beanType = (Class) gtype;
+ componentClass = beanType;
+ }
}
}
}
@@ -344,7 +356,11 @@
private List properties;
public List getProperties() {
-
+ JavaBeanModel parent = this.getParent();
+ if (parent != null) {
+ if (parent.isFlat())
+ return Collections.emptyList();
+ }
if (properties == null) {
properties = new ArrayList();
if (isPrimitive())
@@ -399,8 +415,7 @@
protected JavaBeanModel newChildJavaBean(Class clazz, String name,
PropertyDescriptor pd, Class parentClass, boolean lazyLoading) {
- return new JavaBeanModel(clazz, name, pd, parentClass,
- lazyLoading);
+ return new JavaBeanModel(clazz, name, pd, parentClass, lazyLoading);
}
public void setProperties(List properties) {
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractSmooksPropertySection.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractSmooksPropertySection.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractSmooksPropertySection.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -17,6 +17,7 @@
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
import org.jboss.tools.smooks.ui.editors.SmooksFormEditor;
import org.jboss.tools.smooks.ui.editors.SmooksGraphicalFormPage;
+import org.jboss.tools.smooks.ui.gef.model.AbstractStructuredDataModel;
import org.jboss.tools.smooks.ui.gef.model.LineConnectionModel;
/**
@@ -82,7 +83,30 @@
}
return null;
}
+
+ protected Object getReferenceSourceModel() {
+ LineConnectionModel line = getLineConnectionModel();
+ if (line != null) {
+ AbstractStructuredDataModel s = (AbstractStructuredDataModel) line
+ .getSource();
+ if (s != null)
+ return s.getReferenceEntityModel();
+ }
+ return null;
+ }
+ protected Object getReferenceTargetModel() {
+ LineConnectionModel line = getLineConnectionModel();
+ if (line != null) {
+ AbstractStructuredDataModel s = (AbstractStructuredDataModel) line
+ .getTarget();
+ if (s != null)
+ return s.getReferenceEntityModel();
+ }
+ return null;
+ }
+
+
public boolean isLock() {
return lock;
}
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/LineConnectionSectionFilter.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/LineConnectionSectionFilter.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/LineConnectionSectionFilter.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -15,7 +15,8 @@
* @see org.eclipse.jface.viewers.IFilter#select(java.lang.Object)
*/
public boolean select(Object toTest) {
- return false;
+ // for debug
+ return true;
}
}
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksConstants.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksConstants.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksConstants.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -0,0 +1,18 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.ui;
+
+/**
+ * @author DartPeng
+ *
+ */
+public class SmooksConstants {
+ public static final String SMOOKS_EXTENTION_NAME = "xml";
+
+ public static final String SMOOKS_EXTENTION_NAME_WITHDOT = "." +
SMOOKS_EXTENTION_NAME;
+
+ public static final String SMOOKS_GRAPH_EXTENTION_NAME = "graph";
+
+ public static final String SMOOKS_GRAPH_EXTENTION_NAME_WITHDOT = "."
+SMOOKS_GRAPH_EXTENTION_NAME;
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksConstants.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksResourceChangeListener.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksResourceChangeListener.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksResourceChangeListener.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -17,7 +17,6 @@
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Status;
import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jdt.core.JavaCore;
@@ -110,9 +109,7 @@
public boolean visit(IResourceDelta delta) {
IResource res = delta.getResource();
String fileExtension = res.getFileExtension();
- if (!Messages
- .getString(
- "SmooksResourceChangeListener.SmooksFileExtensionName").equals(fileExtension))
{ //$NON-NLS-1$
+ if (!SmooksConstants.SMOOKS_EXTENTION_NAME.equals(fileExtension)) { //$NON-NLS-1$
return true;
}
int flags = delta.getFlags();
@@ -128,21 +125,17 @@
fileExtension = fileName.substring(dotIndex + 1,
fileName.length());
}
- if (!Messages
- .getString(
- "SmooksResourceChangeListener.SmooksFileExtensionName").equals(fileExtension))
{ //$NON-NLS-1$
+ if (!SmooksConstants.SMOOKS_EXTENTION_NAME.equals(fileExtension)) { //$NON-NLS-1$
return true;
}
- fileName += Messages
- .getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$NON-NLS-1$
+ fileName += SmooksConstants.SMOOKS_GRAPH_EXTENTION_NAME_WITHDOT; //$NON-NLS-1$
path = path.removeLastSegments(1);
path = path.append(fileName);
}
IPath newPath = res.getFullPath();
fileName = newPath.lastSegment();
- fileName += Messages
- .getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$NON-NLS-1$
+ fileName += SmooksConstants.SMOOKS_GRAPH_EXTENTION_NAME_WITHDOT; //$NON-NLS-1$
newPath = newPath.removeLastSegments(1).append(fileName);
newFile(path, newPath);
}
@@ -170,8 +163,7 @@
}
IPath path = res.getFullPath();
String fileName = path.lastSegment();
- fileName += Messages
- .getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$NON-NLS-1$
+ fileName += SmooksConstants.SMOOKS_GRAPH_EXTENTION_NAME_WITHDOT; //$NON-NLS-1$
path = path.removeLastSegments(1).append(fileName);
deleteFile(path);
break;
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksUIActivator.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksUIActivator.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksUIActivator.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -2,7 +2,6 @@
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.jboss.tools.smooks.javabean.ui.JavaImageConstants;
import org.jboss.tools.smooks.utils.SmooksGraphConstants;
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/TypeIDSelectionWizardPage.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/TypeIDSelectionWizardPage.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/TypeIDSelectionWizardPage.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -246,6 +246,20 @@
}
});
+
+ Button x2xButton = new Button(mainComposite,SWT.RADIO);
+ x2xButton.setText("XML-to-XML(XSL inner)");
+ x2xButton.addSelectionListener(new SelectionAdapter(){
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ setPageComplete(true);
+ setSourceID("org.jboss.tools.smooks.xml.viewerInitor.xml");
+ setTargetID("org.jboss.tools.smooks.xml.viewerInitor.xml");
+ getContainer().updateButtons();
+ }
+
+ });
setPageComplete(false);
// GridLayout gl = new GridLayout();
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksConfigFileNewWizardPage.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksConfigFileNewWizardPage.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksConfigFileNewWizardPage.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -7,6 +7,7 @@
import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+import org.jboss.tools.smooks.ui.SmooksConstants;
/**
*
@@ -17,10 +18,10 @@
public SmooksConfigFileNewWizardPage(String pageName,
IStructuredSelection selection) {
super(pageName, selection);
- setFileExtension("smooks"); //$NON-NLS-1$
+ setFileExtension(SmooksConstants.SMOOKS_EXTENTION_NAME); //$NON-NLS-1$
super.setTitle(Messages.getString("SmooksConfigFileNewWizardPage.NewConfigFileWizardPageTitle"));
//$NON-NLS-1$
super.setDescription(Messages.getString("SmooksConfigFileNewWizardPage.NewConfigFileWizardPageDescription"));
//$NON-NLS-1$
- this.setFileName(Messages.getString("SmooksConfigFileNewWizardPage.NewConfigFileWizardPageDefaultFileName"));
//$NON-NLS-1$
+ this.setFileName("smooks-config.xml"); //$NON-NLS-1$
}
@Override
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksNewWizardPage.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksNewWizardPage.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/wizards/SmooksNewWizardPage.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -22,6 +22,7 @@
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.dialogs.ContainerSelectionDialog;
+import org.jboss.tools.smooks.ui.SmooksConstants;
/**
* @deprecated
@@ -148,7 +149,7 @@
containerText.setText(container.getFullPath().toString());
}
}
- fileText.setText("smooks-config.smooks");
+ fileText.setText("smooks-config" +
SmooksConstants.SMOOKS_EXTENTION_NAME_WITHDOT);
}
/**
@@ -209,7 +210,7 @@
if (dotLoc != -1) {
String ext = fileName.substring(dotLoc + 1);
if (ext.equalsIgnoreCase("smooks") == false) {
- updateStatus("File extension must be \"smooks\"");
+ updateStatus("File extension must be
\""+SmooksConstants.SMOOKS_EXTENTION_NAME+"\"");
return;
}
}
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/AbstractXMLModelAnalyzer.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/AbstractXMLModelAnalyzer.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/AbstractXMLModelAnalyzer.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -190,7 +190,10 @@
private String processXSLFragmentString(String cdata) {
// cdata = cdata.replaceAll(":", "-");
int start_index = cdata.indexOf("<");
- int end_index = cdata.indexOf(">");
+ int end_index = cdata.indexOf("/>");
+ if (end_index == -1) {
+ end_index = cdata.indexOf(">");
+ }
if (start_index == -1 || end_index == -1)
return cdata;
String contents = cdata.substring(start_index, end_index);
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLAnalyzer.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLAnalyzer.java 2009-03-23
23:07:59 UTC (rev 14298)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLAnalyzer.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -376,7 +376,10 @@
// cdata = cdata.replace(":", "-");
// return cdata;
int start_index = cdata.indexOf("<");
- int end_index = cdata.indexOf(">");
+ int end_index = cdata.indexOf("/>");
+ if(end_index == -1){
+ end_index = cdata.indexOf(">");
+ }
if (start_index == -1 || end_index == -1)
return cdata;
String contents = cdata.substring(start_index, end_index);
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLConnectionSection.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLConnectionSection.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLConnectionSection.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -0,0 +1,128 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.xml2xml;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.forms.widgets.Section;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
+import org.jboss.tools.smooks.ui.AbstractSmooksPropertySection;
+import org.jboss.tools.smooks.ui.gef.model.LineConnectionModel;
+import org.jboss.tools.smooks.ui.gef.model.PropertyModel;
+import org.jboss.tools.smooks.xml.model.TagObject;
+import org.jboss.tools.smooks.xml.model.TagPropertyObject;
+import org.jboss.tools.smooks.xml.ui.XMLPropertiesSection;
+
+/**
+ * @author DartPeng
+ *
+ */
+public class XML2XMLConnectionSection extends AbstractSmooksPropertySection {
+
+ private Button mappingButton;
+ private Button bindingButton;
+
+ public void createControls(Composite parent,
+ TabbedPropertySheetPage tabbedPropertySheetPage) {
+ super.createControls(parent, tabbedPropertySheetPage);
+ TabbedPropertySheetWidgetFactory factory = tabbedPropertySheetPage
+ .getWidgetFactory();
+
+ Section section = createRootSection(factory, parent);
+ section.setText("XML2XML Properties"); //$NON-NLS-1$
+ Composite controlComposite = factory.createComposite(section);
+ section.setClient(controlComposite);
+
+ GridLayout gl = new GridLayout();
+ gl.numColumns = 2;
+
+ controlComposite.setLayout(gl);
+
+ mappingButton = factory.createButton(controlComposite, "Mapping Type",
+ SWT.RADIO);
+ bindingButton = factory.createButton(controlComposite, "Binding Type",
+ SWT.RADIO);
+
+ hookButton();
+ }
+
+ private void hookButton() {
+ mappingButton.addSelectionListener(new SelectionAdapter(){
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ if(isLock()) return;
+ if(mappingButton.getSelection()) return;
+ Object obj = getReferenceSourceModel();
+ if(obj instanceof TagPropertyObject){
+ return;
+ }
+ PropertyModel pro = new
PropertyModel(XMLPropertiesSection.MAPPING_TYPE,XMLPropertiesSection.MAPPING);
+ LineConnectionModel line = getLineConnectionModel();
+ if(line != null){
+ line.addPropertyModel(pro);
+ fireDirty();
+ }
+ }
+
+ });
+ bindingButton.addSelectionListener(new SelectionAdapter(){
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ if(isLock()) return;
+ if(bindingButton.getSelection()) return;
+ Object obj = getReferenceSourceModel();
+ if(obj instanceof TagObject){
+ return;
+ }
+ PropertyModel pro = new
PropertyModel(XMLPropertiesSection.MAPPING_TYPE,XMLPropertiesSection.BINDING);
+ LineConnectionModel line = getLineConnectionModel();
+ if(line != null){
+ line.addPropertyModel(pro);
+ fireDirty();
+ }
+ }
+
+ });
+ }
+
+
+ @Override
+ public void refresh() {
+ lockEventFire();
+ LineConnectionModel line = getLineConnectionModel();
+ if (line != null) {
+ Object mapping = line
+ .getProperty(XMLPropertiesSection.MAPPING_TYPE);
+ Object sourceModel = getReferenceSourceModel();
+ Object targetModel = getReferenceTargetModel();
+ mappingButton.setEnabled(true);
+ bindingButton.setEnabled(true);
+ if(sourceModel instanceof TagObject){
+ mappingButton.setEnabled(true);
+ bindingButton.setEnabled(false);
+ }
+ if(sourceModel instanceof TagPropertyObject){
+ mappingButton.setEnabled(false);
+ bindingButton.setEnabled(true);
+ }
+ if (XMLPropertiesSection.MAPPING.equals(mapping)) {
+ mappingButton.setSelection(true);
+ bindingButton.setSelection(false);
+ }
+ if (XMLPropertiesSection.BINDING.equals(mapping)) {
+ mappingButton.setSelection(false);
+ bindingButton.setSelection(true);
+ }
+ }
+ unLockEventFire();
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLConnectionSection.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLSectionFilter.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLSectionFilter.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLSectionFilter.java 2009-03-23
23:43:00 UTC (rev 14299)
@@ -0,0 +1,24 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.xml2xml;
+
+import org.jboss.tools.smooks.ui.AbstractConnectionModelSectionFilter;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+
+/**
+ * @author DartPeng
+ *
+ */
+public class XML2XMLSectionFilter extends AbstractConnectionModelSectionFilter {
+
+ public boolean select(Object toTest) {
+ Object source = getReferenceSourceObject(toTest);
+ Object target = getReferenceTargetObject(toTest);
+ if (source instanceof AbstractXMLObject
+ && target instanceof AbstractXMLObject)
+ return true;
+ return false;
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2xml/XML2XMLSectionFilter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain