Author: DartPeng
Date: 2008-11-17 01:33:24 -0500 (Mon, 17 Nov 2008)
New Revision: 11835
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSectonFilter.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractConnectionModelSectionFilter.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSection.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSectionFilter.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLStructuredDataLabelDecorator.java
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/model/util/SmooksModelUtils.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/commandprocessor/JavaBeanModelCommandProcessor.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSection.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/SmooksResourceChangeListener.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksFormEditor.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksNormalContentEditFormPage.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/figures/TreeItemRelationFigure.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/model/AbstractStructuredDataConnectionModel.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/utils/UIUtils.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/AbstractXMLObject.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/XMLObjectAnalyzer.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
Log:
JBIDE-3193
1.Add a new property section for XML model
2.Add a label decorater for XML data viewer to display xml name-space url
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/model/util/SmooksModelUtils.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/model/util/SmooksModelUtils.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/model/util/SmooksModelUtils.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -14,7 +14,6 @@
import java.util.List;
import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.ExtendedMetaData;
import org.eclipse.emf.ecore.xml.type.AnyType;
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml 2008-11-17 04:10:06 UTC (rev
11834)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/plugin.xml 2008-11-17 06:33:24 UTC (rev
11835)
@@ -95,14 +95,18 @@
type="org.jboss.tools.smooks.ui.gef.model.LineConnectionModel">
</input>
</propertySection>
- <propertySection
-
class="org.jboss.tools.smooks.javabean.ui.JavaBeanPropertiesSection"
- id="org.jboss.tools.smooks.ui.javabean.propertyTab.Section"
+ <propertySection
+
class="org.jboss.tools.smooks.javabean.ui.JavaBeanPropertiesSection"
+
filter="org.jboss.tools.smooks.javabean.ui.JavaBeanPropertiesSectonFilter"
+ id="org.jboss.tools.smooks.ui.javabean.propertyTab.Section"
tab="org.jboss.tools.smooks.ui.javabean.propertyTab">
- <input
-
type="org.jboss.tools.smooks.ui.gef.model.LineConnectionModel">
- </input>
</propertySection>
+ <propertySection
+ class="org.jboss.tools.smooks.xml.ui.XMLPropertiesSection"
+
filter="org.jboss.tools.smooks.xml.ui.XMLPropertiesSectionFilter"
+ id="org.jboss.tools.smooks.ui.xml.propertySection"
+ tab="org.jboss.tools.smooks.ui.xml.propertyTab">
+ </propertySection>
</propertySections>
</extension>
<extension
@@ -128,6 +132,11 @@
id="org.jboss.tools.smooks.ui.javabean.propertyTab"
label="JavaBean Properties">
</propertyTab>
+ <propertyTab
+ category="connection"
+ id="org.jboss.tools.smooks.ui.xml.propertyTab"
+ label="XML Properties">
+ </propertyTab>
</propertyTabs>
</extension>
<extension
@@ -269,4 +278,16 @@
priority="normal">
</content-type>
</extension>
+ <extension
+ point="org.eclipse.ui.decorators">
+ <decorator
+ adaptable="false"
+
class="org.jboss.tools.smooks.xml.ui.XMLStructuredDataLabelDecorator"
+ id="org.jboss.tools.smooks.ui.xml.decorator"
+ label="Smooks XML Data Viewer Decorator"
+ lightweight="false"
+ objectClass="org.jboss.tools.smooks.xml.model.TagObject"
+ state="true">
+ </decorator>
+ </extension>
</plugin>
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/commandprocessor/JavaBeanModelCommandProcessor.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/commandprocessor/JavaBeanModelCommandProcessor.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/commandprocessor/JavaBeanModelCommandProcessor.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -34,9 +34,11 @@
CreateConnectionCommand command = (CreateConnectionCommand) gefCommand;
if (command.getSource() != null && command.getTarget() != null) {
Object m = command.getTarget();
- if (m instanceof AbstractStructuredDataModel) {
+ Object s = command.getSource();
+ if (m instanceof AbstractStructuredDataModel && s instanceof
AbstractStructuredDataModel) {
+ Object source = ((AbstractStructuredDataModel)s).getReferenceEntityModel();
Object t = ((AbstractStructuredDataModel)m).getReferenceEntityModel();
- if (!UIUtils.isInstanceCreatingConnection(t)) {
+ if (!UIUtils.isInstanceCreatingConnection(source,t)) {
if (t instanceof JavaBeanModel) {
Class clazz = ((JavaBeanModel) t).getBeanClass();
if (clazz != null && clazz != String.class) {
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSection.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSection.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSection.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -48,6 +48,7 @@
import org.jboss.tools.smooks.javabean.model.JavaBeanModel;
import org.jboss.tools.smooks.ui.AbstractSmooksPropertySection;
import org.jboss.tools.smooks.ui.SmooksUIActivator;
+import org.jboss.tools.smooks.ui.gef.editparts.AbstractStructuredDataEditPart;
import org.jboss.tools.smooks.ui.gef.model.AbstractStructuredDataModel;
import org.jboss.tools.smooks.ui.gef.model.LineConnectionModel;
import org.jboss.tools.smooks.ui.gef.model.PropertyModel;
@@ -63,8 +64,6 @@
private Text instanceClassText;
- private boolean lock = false;
-
protected String beanClassType;
protected String instanceClass;
@@ -81,13 +80,8 @@
super.createControls(parent, tabbedPropertySheetPage);
TabbedPropertySheetWidgetFactory factory = tabbedPropertySheetPage
.getWidgetFactory();
- Composite main = factory.createComposite(parent);
- FillLayout fill = new FillLayout();
- fill.marginHeight = 8;
- fill.marginWidth = 8;
- main.setLayout(fill);
- Section section = factory.createSection(main, Section.TITLE_BAR);
+ Section section = createRootSection(factory, parent);
section.setText(Messages.getString("JavaBeanPropertiesSection.JavaBeanProperties"));
//$NON-NLS-1$
Composite controlComposite = factory.createComposite(section);
section.setClient(controlComposite);
@@ -298,46 +292,18 @@
}
return null;
}
-
- private JavaBeanModel getTargetJavaBeanModel() {
- ISelection s = (ISelection) this.getSelection();
- if (s instanceof IStructuredSelection) {
- IStructuredSelection selection = (IStructuredSelection) s;
- Object obj = selection.getFirstElement();
- if (obj == null)
- return null;
- if (obj instanceof EditPart) {
- Object model = ((EditPart) obj).getModel();
- if (model instanceof LineConnectionModel) {
- AbstractStructuredDataModel target = (AbstractStructuredDataModel)
((LineConnectionModel) model)
- .getTarget();
- Object referenceObj = target.getReferenceEntityModel();
- if (referenceObj instanceof JavaBeanModel) {
- return (JavaBeanModel) referenceObj;
- }
- }
+ protected JavaBeanModel getTargetJavaBeanModel() {
+ LineConnectionModel connection = getLineConnectionModel();
+ if(connection != null){
+ AbstractStructuredDataModel t = (AbstractStructuredDataModel)connection.getTarget();
+ Object target = t.getReferenceEntityModel();
+ if(target != null && target instanceof JavaBeanModel){
+ return (JavaBeanModel)target;
}
}
return null;
}
- private LineConnectionModel getLineConnectionModel() {
- ISelection s = (ISelection) this.getSelection();
- if (s instanceof IStructuredSelection) {
- IStructuredSelection selection = (IStructuredSelection) s;
- Object obj = selection.getFirstElement();
- if (obj == null)
- return null;
- if (obj instanceof EditPart) {
- Object model = ((EditPart) obj).getModel();
- if (model instanceof LineConnectionModel) {
- return (LineConnectionModel) model;
- }
- }
- }
- return null;
- }
-
public void refresh() {
super.refresh();
lockEventFire();
@@ -389,13 +355,4 @@
}
return null;
}
-
- private void unLockEventFire() {
- lock = false;
- }
-
- private void lockEventFire() {
- lock = true;
- }
-
}
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSectonFilter.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSectonFilter.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSectonFilter.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -0,0 +1,31 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.javabean.ui;
+
+import org.jboss.tools.smooks.javabean.model.JavaBeanModel;
+import org.jboss.tools.smooks.ui.AbstractConnectionModelSectionFilter;
+
+/**
+ * @author Dart
+ *
+ */
+public class JavaBeanPropertiesSectonFilter extends
+ AbstractConnectionModelSectionFilter {
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.viewers.IFilter#select(java.lang.Object)
+ */
+ public boolean select(Object toTest) {
+ Object source = this.getReferenceSourceObject(toTest);
+ Object target = this.getReferenceTargetObject(toTest);
+ if (source != null && source instanceof JavaBeanModel) {
+ return true;
+ }
+ if (target != null && target instanceof JavaBeanModel) {
+ return true;
+ }
+ return false;
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/ui/JavaBeanPropertiesSectonFilter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractConnectionModelSectionFilter.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractConnectionModelSectionFilter.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractConnectionModelSectionFilter.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -0,0 +1,51 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.ui;
+
+import org.eclipse.gef.EditPart;
+import org.eclipse.jface.viewers.IFilter;
+import org.jboss.tools.smooks.ui.gef.model.AbstractStructuredDataModel;
+import org.jboss.tools.smooks.ui.gef.model.LineConnectionModel;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+
+/**
+ * @author Dart
+ *
+ */
+public abstract class AbstractConnectionModelSectionFilter implements IFilter {
+
+
+ public LineConnectionModel getConnectionModel(Object input){
+ if (input instanceof EditPart) {
+ Object model = ((EditPart) input).getModel();
+ if (model instanceof LineConnectionModel) {
+ return (LineConnectionModel) model;
+ }
+ }
+ return null;
+ }
+
+ public Object getReferenceSourceObject(Object input){
+ LineConnectionModel connection = getConnectionModel(input);
+ if(connection != null){
+ AbstractStructuredDataModel s = (AbstractStructuredDataModel)connection.getSource();
+ if(s != null){
+ return s.getReferenceEntityModel();
+ }
+ }
+ return null;
+ }
+
+ public Object getReferenceTargetObject(Object input){
+ LineConnectionModel connection = getConnectionModel(input);
+ if(connection != null){
+ AbstractStructuredDataModel s = (AbstractStructuredDataModel)connection.getTarget();
+ if(s != null){
+ return s.getReferenceEntityModel();
+ }
+ }
+ return null;
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractConnectionModelSectionFilter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
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 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/AbstractSmooksPropertySection.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -4,19 +4,31 @@
package org.jboss.tools.smooks.ui;
import org.eclipse.gef.DefaultEditDomain;
+import org.eclipse.gef.EditPart;
import org.eclipse.gef.GraphicalEditPart;
import org.eclipse.gef.GraphicalViewer;
+import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.forms.widgets.Section;
import org.eclipse.ui.views.properties.tabbed.AbstractPropertySection;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
+import org.jboss.tools.smooks.javabean.model.JavaBeanModel;
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;
/**
* @author Dart
*
*/
public class AbstractSmooksPropertySection extends AbstractPropertySection {
+
+ protected boolean lock = false;
+
protected void fireDirty() {
IStructuredSelection selection = (IStructuredSelection) this
.getSelection();
@@ -32,4 +44,45 @@
}
}
}
+
+ protected Section createRootSection(TabbedPropertySheetWidgetFactory factory , Composite
parent){
+ Composite main = factory.createComposite(parent);
+ FillLayout fill = new FillLayout();
+ fill.marginHeight = 8;
+ fill.marginWidth = 8;
+ main.setLayout(fill);
+ return factory.createSection(main, Section.TITLE_BAR);
+ }
+
+ protected LineConnectionModel getLineConnectionModel() {
+ ISelection s = (ISelection) this.getSelection();
+ if (s instanceof IStructuredSelection) {
+ IStructuredSelection selection = (IStructuredSelection) s;
+ Object obj = selection.getFirstElement();
+ if (obj == null)
+ return null;
+ if (obj instanceof EditPart) {
+ Object model = ((EditPart) obj).getModel();
+ if (model instanceof LineConnectionModel) {
+ return (LineConnectionModel) model;
+ }
+ }
+ }
+ return null;
+ }
+
+ public boolean isLock() {
+ return lock;
+ }
+
+ protected void unLockEventFire() {
+ lock = false;
+ }
+
+ protected void lockEventFire() {
+ lock = true;
+ }
+
+
+
}
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 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/SmooksResourceChangeListener.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -80,10 +80,14 @@
IFile newFile = ResourcesPlugin.getWorkspace().getRoot()
.getFile(newPath1);
if (newFile.exists()) {
- if (MessageDialog.openQuestion(new Shell(Display
- .getDefault()),
Messages.getString("SmooksResourceChangeListener.CoverFile"),
Messages.getString("SmooksResourceChangeListener.ConverFileMsg1") //$NON-NLS-1$
//$NON-NLS-2$
- + newFile.getFullPath()
- + Messages.getString("SmooksResourceChangeListener.ConverFileMsg2"))) {
//$NON-NLS-1$
+ if (MessageDialog
+ .openQuestion(
+ new Shell(Display.getDefault()),
+ Messages
+ .getString("SmooksResourceChangeListener.CoverFile"),
Messages.getString("SmooksResourceChangeListener.ConverFileMsg1") //$NON-NLS-1$
//$NON-NLS-2$
+ + newFile.getFullPath()
+ + Messages
+ .getString("SmooksResourceChangeListener.ConverFileMsg2"))) {
//$NON-NLS-1$
newFile.setContents(file.getContents(), true, true,
monitor);
}
@@ -106,7 +110,9 @@
public boolean visit(IResourceDelta delta) {
IResource res = delta.getResource();
String fileExtension = res.getFileExtension();
- if
(!Messages.getString("SmooksResourceChangeListener.SmooksFileExtensionName").equals(fileExtension))
{ //$NON-NLS-1$
+ if (!Messages
+ .getString(
+ "SmooksResourceChangeListener.SmooksFileExtensionName").equals(fileExtension))
{ //$NON-NLS-1$
return true;
}
int flags = delta.getFlags();
@@ -122,17 +128,21 @@
fileExtension = fileName.substring(dotIndex + 1,
fileName.length());
}
- if
(!Messages.getString("SmooksResourceChangeListener.SmooksFileExtensionName").equals(fileExtension))
{ //$NON-NLS-1$
+ if (!Messages
+ .getString(
+ "SmooksResourceChangeListener.SmooksFileExtensionName").equals(fileExtension))
{ //$NON-NLS-1$
return true;
}
- fileName +=
Messages.getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$NON-NLS-1$
+ fileName += Messages
+ .getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$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 += Messages
+ .getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$NON-NLS-1$
newPath = newPath.removeLastSegments(1).append(fileName);
newFile(path, newPath);
}
@@ -143,14 +153,16 @@
}
IProject project = res.getProject();
try {
- IProjectNature nature = project
- .getNature(JavaCore.NATURE_ID);
- if (nature != null) {
- IJavaProject javaProject = JavaCore.create(project);
- IPath outPut = javaProject.getOutputLocation();
- IPath removeRes = res.getFullPath();
- if (outPut.isPrefixOf(removeRes)) {
- break;
+ if (project.isOpen()) {
+ IProjectNature nature = project
+ .getNature(JavaCore.NATURE_ID);
+ if (nature != null) {
+ IJavaProject javaProject = JavaCore.create(project);
+ IPath outPut = javaProject.getOutputLocation();
+ IPath removeRes = res.getFullPath();
+ if (outPut.isPrefixOf(removeRes)) {
+ break;
+ }
}
}
} catch (CoreException e) {
@@ -158,7 +170,8 @@
}
IPath path = res.getFullPath();
String fileName = path.lastSegment();
- fileName +=
Messages.getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$NON-NLS-1$
+ fileName += Messages
+ .getString("SmooksResourceChangeListener.SmooksGraphFileExtensionName");
//$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/editors/SmooksFormEditor.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksFormEditor.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksFormEditor.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -136,8 +136,8 @@
.createErrorStatus(e));
}
}
-
- protected void assosiateEditors(){
+
+ protected void assosiateEditors() {
xmlTextEditor.addSaveListener(graphicalPage);
graphicalPage.addAnalyzeListener(xmlTextEditor);
graphicalPage.addAnalyzeListener(normalPage);
@@ -240,11 +240,12 @@
@Override
public void doSave(IProgressMonitor monitor) {
this.graphicalPage.doSave(monitor);
-// IEditorPart activeEditor = this.getEditor(this.getCurrentPage());
-// if (activeEditor != normalPage && activeEditor != null) {
-// activeEditor.doSave(monitor);
-// fireEditorDirty(false);
-// }
+ fireEditorDirty(false);
+ // IEditorPart activeEditor = this.getEditor(this.getCurrentPage());
+ // if (activeEditor != normalPage && activeEditor != null) {
+ // activeEditor.doSave(monitor);
+ // fireEditorDirty(false);
+ // }
}
public void fireEditorDirty(boolean dirty) {
@@ -268,10 +269,6 @@
public Object getAdapter(Class adapter) {
if (adapter == IPropertySheetPage.class) {
- System.out.println();
- }
- if (adapter == IPropertySheetPage.class
- && this.getActiveEditor() == graphicalPage) {
tabbedPropertySheetPage = new TabbedPropertySheetPage(this);
return tabbedPropertySheetPage;
}
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksNormalContentEditFormPage.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksNormalContentEditFormPage.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksNormalContentEditFormPage.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -117,7 +117,14 @@
setGUIStates();
}
+
+
+ @Override
+ public boolean isDirty() {
+ return false;
+ }
+
public void setGUIStates() {
if (resourceBlock != null) {
resourceBlock.setSectionStates(!disableGUI);
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/figures/TreeItemRelationFigure.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/figures/TreeItemRelationFigure.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/figures/TreeItemRelationFigure.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -45,21 +45,25 @@
graphics.popState();
}
-
public void caculateLocationY() {
- if (treeItem != null) {
+ if (treeItem != null && !treeItem.isDisposed()) {
int y = this.collapsedParentItemLocation(treeItem);
Tree tree = treeItem.getParent();
int height = tree.getItemHeight();
- this.setLocation(new Point(0, y + height/2));
+ this.setLocation(new Point(0, y + height / 2));
}
}
protected int collapsedParentItemLocation(TreeItem item) {
- int y = item.getBounds().y;
- if (y == 0) {
- if (item.getParentItem() != null)
- return this.collapsedParentItemLocation(item.getParentItem());
+ int y = 0;
+ if (item != null && !item.isDisposed()) {
+ y = item.getBounds().y;
+ if (y == 0) {
+ if (item.getParentItem() != null)
+ return this.collapsedParentItemLocation(item
+ .getParentItem());
+ }
+ return y;
}
return y;
}
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/model/AbstractStructuredDataConnectionModel.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/model/AbstractStructuredDataConnectionModel.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/gef/model/AbstractStructuredDataConnectionModel.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -4,6 +4,7 @@
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.List;
public class AbstractStructuredDataConnectionModel implements PropertyChangeListener {
@@ -78,7 +79,7 @@
return properties.toArray();
}
- protected List<PropertyModel> getProperties() {
+ public List<PropertyModel> getProperties() {
return properties;
}
@@ -92,6 +93,19 @@
support.firePropertyChange(CONNECTION_PROPERTY_CHANGE, null, property);
}
+ public void removePropertyModel(String propertyName){
+ List<PropertyModel> list= this.getProperties();
+ for (Iterator<PropertyModel> iterator = list.iterator(); iterator.hasNext();) {
+ PropertyModel propertyModel = (PropertyModel) iterator.next();
+ if(propertyModel.getName().equals(propertyName)){
+ list.remove(propertyModel);
+ support.firePropertyChange(CONNECTION_PROPERTY_CHANGE, propertyModel, null);
+ break;
+ }
+ }
+
+ }
+
public void removePropertyModel(PropertyModel property){
property.removePropertyChangeListener(this);
this.getProperties().remove(property);
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/utils/UIUtils.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/utils/UIUtils.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/utils/UIUtils.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -20,6 +20,7 @@
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jst.jsp.core.internal.modelhandler.TagModelLoader;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Shell;
@@ -45,6 +46,8 @@
import org.jboss.tools.smooks.ui.gef.model.PropertyModel;
import org.jboss.tools.smooks.ui.gef.model.TargetModel;
import org.jboss.tools.smooks.ui.modelparser.SmooksConfigurationFileGenerateContext;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+import org.jboss.tools.smooks.xml.model.DocumentObject;
import org.jboss.tools.smooks.xml.model.TagObject;
/**
@@ -54,7 +57,7 @@
*/
public class UIUtils {
- public static final String[] SELECTORE_SPLITER = new String[] { "\\",
//$NON-NLS-1$
+ public static final String[] SELECTORE_SPLITER = new String[] { "\\",
//$NON-NLS-1$
"/" }; //$NON-NLS-1$
public static FillLayout createFillLayout(int marginW, int marginH) {
@@ -64,6 +67,20 @@
return fill;
}
+ public static AbstractXMLObject getRootTagXMLObject(AbstractXMLObject xmlObj) {
+ AbstractXMLObject parent = xmlObj.getParent();
+ while (true) {
+ AbstractXMLObject p = parent.getParent();
+ if (p == null)
+ break;
+ parent = p;
+ }
+ if (parent instanceof DocumentObject) {
+ parent = ((DocumentObject) parent).getRootTag();
+ }
+ return parent;
+ }
+
public static void checkSelector(String selector)
throws InvocationTargetException {
if (selector == null)
@@ -71,9 +88,12 @@
for (int i = 0; i < SELECTORE_SPLITER.length; i++) {
String splitString = SELECTORE_SPLITER[i];
if (selector.indexOf(splitString) != -1) {
- throw new InvocationTargetException(new Exception(
- Messages.getString("UIUtils.SelectorCheckErrorMessage1") + splitString
//$NON-NLS-1$
- + Messages.getString("UIUtils.SelectorCheckErrorMessage2") + selector +
"\"")); //$NON-NLS-1$ //$NON-NLS-2$
+ throw new InvocationTargetException(
+ new Exception(
+ Messages
+ .getString("UIUtils.SelectorCheckErrorMessage1") + splitString
//$NON-NLS-1$
+ + Messages
+ .getString("UIUtils.SelectorCheckErrorMessage2") + selector +
"\"")); //$NON-NLS-1$ //$NON-NLS-2$
}
}
}
@@ -157,19 +177,24 @@
LineConnectionModel connection) {
AbstractStructuredDataModel sourceModel = (AbstractStructuredDataModel) connection
.getSource();
- Object referenceObj = sourceModel.getReferenceEntityModel();
- return isInstanceCreatingConnection(referenceObj);
+ AbstractStructuredDataModel targetModel = (AbstractStructuredDataModel) connection
+ .getTarget();
+ Object target = targetModel.getReferenceEntityModel();
+ Object source = sourceModel.getReferenceEntityModel();
+ return isInstanceCreatingConnection(source, target);
}
- public static boolean isInstanceCreatingConnection(Object targetModel) {
- Object referenceObj = targetModel;
- if (referenceObj != null) {
- if (referenceObj instanceof JavaBeanModel) {
- return !((JavaBeanModel) referenceObj).isPrimitive();
+ public static boolean isInstanceCreatingConnection(Object sourceModel,
+ Object targetModel) {
+ if (targetModel != null) {
+ if (targetModel instanceof JavaBeanModel) {
+ if (sourceModel instanceof TagObject) {
+ return !((JavaBeanModel) targetModel).isPrimitive();
+ }
+ if (sourceModel instanceof JavaBeanModel) {
+ return !((JavaBeanModel) targetModel).isPrimitive();
+ }
}
- if (referenceObj instanceof TagObject) {
- return true;
- }
}
return false;
}
@@ -185,11 +210,11 @@
context);
CompositeResolveCommand compositeCommand = new CompositeResolveCommand(
context);
- compositeCommand
- .setResolveDescription(Messages.getString("UIUtils.ConnectAllConnections"));
//$NON-NLS-1$
- disconnectCommand
- .setResolveDescription(Messages.getString("UIUtils.DisconnectAllConnections")
//$NON-NLS-1$
- + currentNode.getName() + Messages.getString("UIUtils.Node"));
//$NON-NLS-1$
+ compositeCommand.setResolveDescription(Messages
+ .getString("UIUtils.ConnectAllConnections")); //$NON-NLS-1$
+ disconnectCommand.setResolveDescription(Messages
+ .getString("UIUtils.DisconnectAllConnections") //$NON-NLS-1$
+ + currentNode.getName() + Messages.getString("UIUtils.Node"));
//$NON-NLS-1$
AbstractStructuredDataModel targetNode = UIUtils.findGraphModel(root,
currentNode);
if (targetNode instanceof IConnectableModel) {
@@ -214,9 +239,11 @@
if (tempMap.get(sourceParentNode) == null) {
JavaModelConnectionResolveCommand connectParent = new
JavaModelConnectionResolveCommand(
context);
- connectParent.setResolveDescription(Messages.getString("UIUtils.ConnectNode1")
//$NON-NLS-1$
+ connectParent.setResolveDescription(Messages
+ .getString("UIUtils.ConnectNode1") //$NON-NLS-1$
+ context.getSourceViewerLabelProvider().getText(
- sourceParent) + Messages.getString("UIUtils.ConnectNode2")
//$NON-NLS-1$
+ sourceParent)
+ + Messages.getString("UIUtils.ConnectNode2") //$NON-NLS-1$
+ parentNode.getName() + "\""); //$NON-NLS-1$
connectParent.setSourceModel(sourceParentNode);
connectParent.setTargetModel(targetParentNode);
@@ -259,11 +286,13 @@
if (pgm != null && pgm instanceof IConnectableModel) {
if (((IConnectableModel) pgm)
.getModelTargetConnections().isEmpty()) {
- String errorMessage =
Messages.getString("UIUtils.ParentNodeConnectErrorMessage1") //$NON-NLS-1$
+ String errorMessage = Messages
+ .getString("UIUtils.ParentNodeConnectErrorMessage1") //$NON-NLS-1$
+ javaModel.getName()
+ "\" : \"" //$NON-NLS-1$
+ parent.getName()
- + Messages.getString("UIUtils.ParentNodeConnectErrorMessage2");
//$NON-NLS-1$
+ + Messages
+ .getString("UIUtils.ParentNodeConnectErrorMessage2"); //$NON-NLS-1$
DesignTimeAnalyzeResult dr = new DesignTimeAnalyzeResult();
dr.setErrorMessage(errorMessage);
createJavaModelConnectionErrorResolveCommand(dr,
@@ -306,14 +335,18 @@
}
if (instanceClazz == null) {
DesignTimeAnalyzeResult result = new DesignTimeAnalyzeResult();
- result.setErrorMessage(Messages.getString("UIUtils.InstanceLoadedErrorMessage1")
//$NON-NLS-1$
- + ((JavaBeanModel) refObj).getName()
- + Messages.getString("UIUtils.InstanceLoadedErrorMessage2")
//$NON-NLS-1$
- + instanceName + "\""); //$NON-NLS-1$
+ result
+ .setErrorMessage(Messages
+ .getString("UIUtils.InstanceLoadedErrorMessage1") //$NON-NLS-1$
+ + ((JavaBeanModel) refObj).getName()
+ + Messages
+ .getString("UIUtils.InstanceLoadedErrorMessage2") //$NON-NLS-1$
+ + instanceName + "\""); //$NON-NLS-1$
JavaModelResolveCommand command = new JavaModelResolveCommand(
context);
command
- .setResolveDescription(Messages.getString("UIUtils.InstanceLoadedResolveMessage1")
//$NON-NLS-1$
+ .setResolveDescription(Messages
+ .getString("UIUtils.InstanceLoadedResolveMessage1") //$NON-NLS-1$
+ ((JavaBeanModel) refObj)
.getBeanClass()
.getCanonicalName() + "\""); //$NON-NLS-1$
@@ -325,16 +358,22 @@
}
if (instanceClazz != null && instanceClazz.isInterface()) {
DesignTimeAnalyzeResult result = new DesignTimeAnalyzeResult();
- result.setErrorMessage(Messages.getString("UIUtils.JavaModelLoadedErrorMessage1")
//$NON-NLS-1$
- + ((JavaBeanModel) refObj).getName()
- + Messages.getString("UIUtils.JavaModelLoadedErrorMessage2")
//$NON-NLS-1$
- + instanceName + "\""); //$NON-NLS-1$
+ result
+ .setErrorMessage(Messages
+ .getString("UIUtils.JavaModelLoadedErrorMessage1") //$NON-NLS-1$
+ + ((JavaBeanModel) refObj).getName()
+ + Messages
+ .getString("UIUtils.JavaModelLoadedErrorMessage2") //$NON-NLS-1$
+ + instanceName + "\""); //$NON-NLS-1$
if (List.class.isAssignableFrom(instanceClazz)) {
JavaModelResolveCommand command = new JavaModelResolveCommand(
context);
command
- .setResolveDescription(Messages.getString("UIUtils.InstanceClassResolveMessage1"));
//$NON-NLS-1$
- command.setInstanceName(Messages.getString("UIUtils.InstanceClassResolveMessage2"));
//$NON-NLS-1$
+ .setResolveDescription(Messages
+ .getString("UIUtils.InstanceClassResolveMessage1")); //$NON-NLS-1$
+ command
+ .setInstanceName(Messages
+ .getString("UIUtils.InstanceClassResolveMessage2")); //$NON-NLS-1$
command.setJavaBean((JavaBeanModel) refObj);
result.addResolveCommand(command);
}
@@ -481,7 +520,9 @@
.getTreeCotentProvider(dataTypeID);
if (tprovider == null)
return false;
- viewer.setLabelProvider(new DecoratingLabelProvider(lprovider, null));
+ viewer.setLabelProvider(new DecoratingLabelProvider(lprovider,
+ SmooksUIActivator.getDefault().getWorkbench()
+ .getDecoratorManager().getLabelDecorator()));
viewer.setContentProvider(tprovider);
return true;
}
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/AbstractXMLObject.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/AbstractXMLObject.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/AbstractXMLObject.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -23,6 +23,16 @@
protected String name;
+ public String getNamespaceURL() {
+ return namespaceURL;
+ }
+
+ public void setNamespaceURL(String namespaceURL) {
+ this.namespaceURL = namespaceURL;
+ }
+
+ protected String namespaceURL = null;
+
protected List<AbstractXMLObject> children = new
ArrayList<AbstractXMLObject>();
public String getName() {
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/XMLObjectAnalyzer.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/XMLObjectAnalyzer.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/model/XMLObjectAnalyzer.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -64,7 +64,7 @@
}
tag.setName(element.getName());
fillProperties(element, tag);
-
+ tag.setNamespaceURL(element.getNamespaceURI());
List list = element.elements();
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
Element childElement = (Element) iterator.next();
@@ -79,8 +79,8 @@
}
protected boolean hasSameNameProperty(String proName, TagObject tag) {
- List pros = tag.getProperties();
- for (Iterator iterator = pros.iterator(); iterator.hasNext();) {
+ List<TagPropertyObject> pros = tag.getProperties();
+ for (Iterator<TagPropertyObject> iterator = pros.iterator(); iterator.hasNext();)
{
TagPropertyObject tp = (TagPropertyObject) iterator.next();
if (tp.getName().equals(proName))
return true;
@@ -97,7 +97,7 @@
}
TagPropertyObject pro = new TagPropertyObject();
pro.setName(attr.getName());
-
+ pro.setNamespaceURL(attr.getNamespaceURI());
tag.addProperty(pro);
}
}
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSection.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSection.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSection.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -0,0 +1,146 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.xml.ui;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+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.AbstractStructuredDataModel;
+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.AbstractXMLObject;
+
+/**
+ * @author Dart
+ *
+ */
+public class XMLPropertiesSection extends AbstractSmooksPropertySection {
+
+ private static final String SELECTOR_NAMESPACE = "selector-namespace";
+ private Text namespaceText;
+ private Button checkButton;
+
+ @Override
+ public void createControls(Composite parent,
+ TabbedPropertySheetPage tabbedPropertySheetPage) {
+ super.createControls(parent, tabbedPropertySheetPage);
+ TabbedPropertySheetWidgetFactory factory = tabbedPropertySheetPage
+ .getWidgetFactory();
+ Section section = createRootSection(factory, parent);
+ section.setText("XML Properties"); //$NON-NLS-1$
+
+ section.setLayout(new FillLayout());
+
+ Composite com = factory.createComposite(section);
+ section.setClient(com);
+
+ GridLayout gl = new GridLayout();
+ gl.numColumns = 2;
+ com.setLayout(gl);
+
+ checkButton = factory.createButton(com, "Set Namespace", SWT.CHECK);
+ checkButton.addSelectionListener(new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ if (isLock())
+ return;
+ boolean check = checkButton.getSelection();
+ if (check) {
+ LineConnectionModel connection = getLineConnectionModel();
+ AbstractXMLObject obj = getXMLSourceModel();
+ if (connection != null && obj != null) {
+ PropertyModel property = new PropertyModel();
+ property.setName(SELECTOR_NAMESPACE);
+ property.setValue(obj.getNamespaceURL());
+ connection.addPropertyModel(property);
+ }
+ } else {
+ LineConnectionModel connection = getLineConnectionModel();
+ if (connection != null) {
+ connection.removePropertyModel(SELECTOR_NAMESPACE);
+ }
+ }
+ fireDirty();
+ }
+
+ });
+ GridData gd = new GridData(GridData.FILL_HORIZONTAL);
+ gd.horizontalSpan = 2;
+ checkButton.setLayoutData(gd);
+
+ factory.createLabel(com, "Namespace : ");
+ namespaceText = factory.createText(com, "");
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ namespaceText.setLayoutData(gd);
+ namespaceText.setEditable(false);
+ }
+
+ @Override
+ public void refresh() {
+ super.refresh();
+ lockEventFire();
+ checkButton.setSelection(false);
+ unLockEventFire();
+ AbstractXMLObject source = this.getXMLSourceModel();
+ if (source != null) {
+ String namespace = source.getNamespaceURL();
+ if (namespace != null) {
+ namespaceText.setText(namespace);
+ LineConnectionModel connection = getLineConnectionModel();
+ if (connection != null) {
+ List<PropertyModel> list = connection.getProperties();
+ for (Iterator<PropertyModel> iterator = list.iterator(); iterator
+ .hasNext();) {
+ PropertyModel propertyModel = (PropertyModel) iterator
+ .next();
+ if (propertyModel.getName()
+ .equals(SELECTOR_NAMESPACE)) {
+ if (propertyModel.getValue().equals(namespace)) {
+ lockEventFire();
+ checkButton.setSelection(true);
+ unLockEventFire();
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Get the XML type source model
+ *
+ * @return XML data type source model
+ */
+ private AbstractXMLObject getXMLSourceModel() {
+ LineConnectionModel connection = this.getLineConnectionModel();
+ if (connection != null) {
+ AbstractStructuredDataModel sourceModel = (AbstractStructuredDataModel) connection
+ .getSource();
+ if (sourceModel != null) {
+ Object source = sourceModel.getReferenceEntityModel();
+ if (source instanceof AbstractXMLObject) {
+ return (AbstractXMLObject) source;
+ }
+ }
+ }
+
+ return null;
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSection.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSectionFilter.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSectionFilter.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSectionFilter.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -0,0 +1,29 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.xml.ui;
+
+import org.jboss.tools.smooks.ui.AbstractConnectionModelSectionFilter;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+
+/**
+ * @author Dart
+ *
+ */
+public class XMLPropertiesSectionFilter extends
+ AbstractConnectionModelSectionFilter {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.jface.viewers.IFilter#select(java.lang.Object)
+ */
+ public boolean select(Object toTest) {
+ Object source = getReferenceSourceObject(toTest);
+ if (source != null && source instanceof AbstractXMLObject) {
+ return true;
+ }
+ return false;
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLPropertiesSectionFilter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLStructuredDataLabelDecorator.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLStructuredDataLabelDecorator.java
(rev 0)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLStructuredDataLabelDecorator.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -0,0 +1,77 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.xml.ui;
+
+import org.eclipse.jface.viewers.IDecorationContext;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.jface.viewers.LabelDecorator;
+import org.eclipse.swt.graphics.Image;
+import org.jboss.tools.smooks.utils.UIUtils;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+
+/**
+ * @author Dart
+ *
+ */
+public class XMLStructuredDataLabelDecorator extends LabelDecorator {
+
+ @Override
+ public Image decorateImage(Image image, Object element,
+ IDecorationContext context) {
+ return null;
+ }
+
+ @Override
+ public String decorateText(String text, Object element,
+ IDecorationContext context) {
+ return null;
+ }
+
+ @Override
+ public boolean prepareDecoration(Object element, String originalText,
+ IDecorationContext context) {
+ return false;
+ }
+
+ public Image decorateImage(Image image, Object element) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public String decorateText(String text, Object element) {
+ if (element instanceof AbstractXMLObject) {
+ AbstractXMLObject parent = UIUtils
+ .getRootTagXMLObject((AbstractXMLObject) element);
+ String namespace = parent.getNamespaceURL();
+ if (parent != element && namespace != null) {
+ namespace = namespace.trim();
+ if (namespace.equals(((AbstractXMLObject) element).getNamespaceURL())) {
+ return text;
+ }
+ }
+ if (((AbstractXMLObject) element).getNamespaceURL() != null)
+ text += " ["
+ + ((AbstractXMLObject) element).getNamespaceURL() + "]";
+ return text;
+ }
+ return text;
+ }
+
+ public void addListener(ILabelProviderListener listener) {
+
+ }
+
+ public void dispose() {
+
+ }
+
+ public boolean isLabelProperty(Object element, String property) {
+ return false;
+ }
+
+ public void removeListener(ILabelProviderListener listener) {
+
+ }
+
+}
Property changes on:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml/ui/XMLStructuredDataLabelDecorator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java 2008-11-17
04:10:06 UTC (rev 11834)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java 2008-11-17
06:33:24 UTC (rev 11835)
@@ -10,6 +10,9 @@
******************************************************************************/
package org.jboss.tools.smooks.xml2java.analyzer;
+import java.lang.reflect.Array;
+import java.util.ArrayList;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -114,6 +117,17 @@
// addResourceConfigType(listType, resourceConfigType);
// set the selector string value
resourceConfigType.setSelector(source.getName());
+
+ // add the properties of connection
+ List<PropertyModel> propertyList = connection.getProperties();
+ for (Iterator<PropertyModel> iterator = propertyList.iterator();
iterator.hasNext();) {
+ PropertyModel propertyModel = (PropertyModel) iterator.next();
+ if (propertyModel.getName().equals("selector-namespace")) {
+ resourceConfigType.setSelectorNamespace(propertyModel
+ .getValue());
+ break;
+ }
+ }
// create a resource and add it to resourceConfig
ResourceType resourceType = SmooksFactory.eINSTANCE
.createResourceType();
@@ -224,9 +238,10 @@
// TODO if the type of input source/target data is illegal , throw
// exceptions.
// MODIFY by Dart 2008.11.07
-// throw new RuntimeException(
-// "[XMLBeanAnalyzer]Can't load the source/target data from Smooks
configuration file.");
- return MappingResourceConfigList.createEmptyList();
+ // throw new RuntimeException(
+ // "[XMLBeanAnalyzer]Can't load the source/target data from Smooks
configuration file."
+ // );
+ return MappingResourceConfigList.createEmptyList();
}
AbstractXMLObject sourceRoot = (AbstractXMLObject) sourceObject;
JavaBeanModel sourceTarget = (JavaBeanModel) targetObject;
@@ -237,15 +252,16 @@
// TODO if can't find the org.milyn.javabean.BeanPopulator , throw
// exception
// MODIFY by Dart 2008.11.07
-// throw new RuntimeException("Can't parse the config file.");
- return null;
+ // throw new RuntimeException("Can't parse the config file.");
+ return null;
}
String xmlName = rootResourceConfig.getSelector();
AbstractXMLObject source = findXMLObjectByName(xmlName, sourceRoot);
if (source == null) {
// TODO if can't find the root , throw exception
// MODIFY by Dart 2008.11.07
- throw new
RuntimeException(Messages.getString("XML2JavaAnalyzer.CantFindRootNodeErrorMessage"));
//$NON-NLS-1$
+ throw new RuntimeException(Messages
+ .getString("XML2JavaAnalyzer.CantFindRootNodeErrorMessage"));
//$NON-NLS-1$
// return MappingResourceConfigList.createEmptyList();
}
@@ -290,6 +306,21 @@
MappingModel mapping = new MappingModel(sourceRoot, targetJavaBean);
configList.getMappingModelList().add(mapping);
+ String namespace = config.getSelectorNamespace();
+ if(namespace != null){
+ PropertyModel np = new PropertyModel();
+ np.setName("selector-namespace");
+ np.setValue(namespace);
+ mapping.getProperties().add(np);
+ }
+// String targetProfile = config.getTargetProfile();
+// if(targetProfile != null){
+// PropertyModel np = new PropertyModel();
+// np.setName("targetProfile");
+// np.setValue(targetProfile);
+// mapping.getProperties().add(np);
+// }
+
configList.addResourceConfig(config);
this.setSelectorIsUsed(config.getSelector());
@@ -340,7 +371,9 @@
if (newRoot == null) {
// TODO If can't find the element , throw exception
// MODIFY by Dart , 2008.11.07
- throw new
RuntimeException(Messages.getString("XML2JavaAnalyzer.CantFindNodeErrorMessage1")+
newSelector + Messages.getString("XML2JavaAnalyzer.CantFindNodeErrorMessage2"));
//$NON-NLS-1$ //$NON-NLS-2$
+ throw new RuntimeException(
+ Messages
+ .getString("XML2JavaAnalyzer.CantFindNodeErrorMessage1") + newSelector
+ Messages.getString("XML2JavaAnalyzer.CantFindNodeErrorMessage2"));
//$NON-NLS-1$ //$NON-NLS-2$
}
createMappingResourceConfigList(configList, listType,
resourceConfig1, newRoot, targetBean);
@@ -350,7 +383,9 @@
if (source == null) {
// TODO If can't find the element , throw exception
// MODIFY by Dart , 2008.11.07
- throw new
RuntimeException(Messages.getString("XML2JavaAnalyzer.CantFindNodeErrorMessage1")+
selector + Messages.getString("XML2JavaAnalyzer.CantFindNodeErrorMessage2"));
//$NON-NLS-1$ //$NON-NLS-2$
+ throw new RuntimeException(
+ Messages
+ .getString("XML2JavaAnalyzer.CantFindNodeErrorMessage1") + selector +
Messages.getString("XML2JavaAnalyzer.CantFindNodeErrorMessage2")); //$NON-NLS-1$
//$NON-NLS-2$
}
if (source != null) {
MappingModel mapping = new MappingModel(source, targetBean);
@@ -419,7 +454,8 @@
if (rt == null)
continue;
String value = rt.getValue();
- if(value != null) value = value.trim();
+ if (value != null)
+ value = value.trim();
if (SmooksModelConstants.BEAN_POPULATOR.equals(value)) {
return resource;
}
@@ -489,8 +525,10 @@
boolean connectAuto = MessageDialog
.openQuestion(
displayParent,
- Messages.getString("XML2JavaAnalyzer.ConnectQDlgTitle"),
//$NON-NLS-1$
- Messages.getString("XML2JavaAnalyzer.ConnectQDlgContent"));
//$NON-NLS-1$
+ Messages
+ .getString("XML2JavaAnalyzer.ConnectQDlgTitle"), //$NON-NLS-1$
+ Messages
+ .getString("XML2JavaAnalyzer.ConnectQDlgContent")); //$NON-NLS-1$
if (connectAuto) {
// connect root model
LineConnectionModel connectionModel = new LineConnectionModel();