Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 74220 Details for
Bug 197056
[Schema][Editors] Move attribute "use" field "deprecated" field
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
final version
patch197056g.txt (text/plain), 13.62 KB, created by
Adam Archer
on 2007-07-19 23:25:34 EDT
(
hide
)
Description:
final version
Filename:
MIME Type:
Creator:
Adam Archer
Created:
2007-07-19 23:25:34 EDT
Size:
13.62 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.pde.ui >Index: src/org/eclipse/pde/internal/ui/editor/schema/SchemaAttributeDetails.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/schema/SchemaAttributeDetails.java,v >retrieving revision 1.33 >diff -u -r1.33 SchemaAttributeDetails.java >--- src/org/eclipse/pde/internal/ui/editor/schema/SchemaAttributeDetails.java 19 Jul 2007 20:29:27 -0000 1.33 >+++ src/org/eclipse/pde/internal/ui/editor/schema/SchemaAttributeDetails.java 20 Jul 2007 03:25:36 -0000 >@@ -9,6 +9,7 @@ > * IBM Corporation - initial API and implementation > *******************************************************************************/ > package org.eclipse.pde.internal.ui.editor.schema; >+import org.eclipse.jface.layout.GridLayoutFactory; > import org.eclipse.osgi.util.NLS; > import org.eclipse.pde.core.IModelChangedEvent; > import org.eclipse.pde.internal.core.ischema.IMetaAttribute; >@@ -25,9 +26,11 @@ > import org.eclipse.pde.internal.ui.parts.ComboPart; > import org.eclipse.pde.internal.ui.parts.FormEntry; > import org.eclipse.swt.SWT; >+import org.eclipse.swt.custom.StackLayout; > import org.eclipse.swt.events.SelectionAdapter; > import org.eclipse.swt.events.SelectionEvent; > import org.eclipse.swt.graphics.Color; >+import org.eclipse.swt.layout.GridData; > import org.eclipse.swt.widgets.Button; > import org.eclipse.swt.widgets.Composite; > import org.eclipse.swt.widgets.Label; >@@ -58,7 +61,12 @@ > private Button fDepTrue; > private Button fDepFalse; > private ComboPart fType; >- private ComboPart fUse; >+ private ComboPart fUseDefault; >+ private ComboPart fUseOther; >+ private StackLayout fUseLayout; >+ private Composite fUseComp; >+ private Composite fUseCompDefault; >+ private Composite fUseCompOther; > > public SchemaAttributeDetails(ElementSection section) { > super(section, false, true); >@@ -79,6 +87,8 @@ > Color foreground = toolkit.getColors().getColor(IFormColors.TITLE); > > fName = new FormEntry(parent, toolkit, PDEUIMessages.SchemaDetails_name, SWT.NONE); >+ // Ensures label columns on every detail page are same width >+ ((GridData)fName.getLabel().getLayoutData()).widthHint = minLabelWeight; > > Label label = toolkit.createLabel(parent, PDEUIMessages.SchemaDetails_deprecated); > label.setForeground(foreground); >@@ -86,17 +96,32 @@ > fDepTrue = buttons[0]; > fDepFalse = buttons[1]; > >- label = toolkit.createLabel(parent, PDEUIMessages.SchemaAttributeDetails_type); >+ label = toolkit.createLabel(parent, PDEUIMessages.SchemaAttributeDetails_use); > label.setForeground(foreground); >- fType = createComboPart(parent, toolkit, TYPES, 2); > >- createTypeDetails(parent, toolkit); >+ fUseComp = toolkit.createComposite(parent); >+ GridData gd = new GridData(GridData.FILL_HORIZONTAL); >+ gd.horizontalSpan = 2; >+ fUseComp.setLayoutData(gd); >+ fUseLayout = new StackLayout(); >+ fUseComp.setLayout(fUseLayout); > >- label = toolkit.createLabel(parent, PDEUIMessages.SchemaAttributeDetails_use); >+ fUseCompDefault = toolkit.createComposite(fUseComp); >+ fUseCompDefault.setLayout(GridLayoutFactory.fillDefaults().margins(0,0).numColumns(2).create()); >+ >+ fUseDefault = createComboPart(fUseCompDefault, toolkit, USE, 1, SWT.NONE); >+ fValue = new FormEntry(fUseCompDefault, toolkit, null, 0, 1); >+ >+ fUseCompOther = toolkit.createComposite(fUseComp); >+ fUseCompOther.setLayout(GridLayoutFactory.fillDefaults().margins(0,0).create()); >+ >+ fUseOther = createComboPart(fUseCompOther, toolkit, USE, 1); >+ >+ label = toolkit.createLabel(parent, PDEUIMessages.SchemaAttributeDetails_type); > label.setForeground(foreground); >- fUse = createComboPart(parent, toolkit, USE, 2); >+ fType = createComboPart(parent, toolkit, TYPES, 2); > >- fValue = new FormEntry(parent, toolkit, PDEUIMessages.SchemaAttributeDetails_defaultValue, null, false, 6); >+ createTypeDetails(parent, toolkit); > > toolkit.paintBordersFor(parent); > setText(PDEUIMessages.SchemaAttributeDetails_title); >@@ -117,22 +142,24 @@ > int kind = fAttribute.getKind(); > fType.select(isStringType ? 1 + kind : 0); > >- fUse.select(fAttribute.getUse()); >+ fUseDefault.select(fAttribute.getUse()); >+ fUseOther.select(fAttribute.getUse()); > Object value = fAttribute.getValue(); >- fValue.setValue(value != null ? value.toString() : "", true); //$NON-NLS-1$ >+ fValue.setValue(value != null ? value.toString() : PDEUIMessages.SchemaAttributeDetails_defaultDefaultValue, true); > > boolean editable = isEditableElement(); > if (fAttribute.getUse() != 2) { >- fValue.getLabel().setEnabled(false); >- fValue.getText().setEditable(false); >+ fUseLayout.topControl = fUseCompOther; > } else { >- fValue.setEditable(editable); >+ fUseLayout.topControl = fUseCompDefault; > } >+ fUseComp.layout(); > fName.setEditable(editable); > fDepTrue.setEnabled(editable); > fDepFalse.setEnabled(editable); > fType.setEnabled(editable); >- fUse.setEnabled(editable); >+ fUseDefault.setEnabled(editable); >+ fUseOther.setEnabled(editable); > } > > public void hookListeners() { >@@ -200,24 +227,45 @@ > fireSelectionChange(); > } > }); >- fUse.addSelectionListener(new SelectionAdapter() { >+ fUseDefault.addSelectionListener(new SelectionAdapter() { > public void widgetSelected(SelectionEvent e) { > if (blockListeners()) > return; >- int use = fUse.getSelectionIndex(); >- fAttribute.setUse(use); >- fValue.getLabel().setEnabled(use == 2); >- fValue.getText().setEditable(use == 2); >- if (use == 2 && fValue.getValue().length() == 0) { >- fValue.setValue(PDEUIMessages.SchemaAttributeDetails_defaultDefaultValue); >- fValue.getText().setSelection(0, fValue.getValue().length()); >- fValue.getText().setFocus(); >- } else if (use != 2) >- fValue.setValue(""); //$NON-NLS-1$ >- >+ int i = fUseDefault.getSelectionIndex(); >+ setBlockListeners(true); >+ fUseOther.select(i); >+ setBlockListeners(false); >+ doUseChange(i); >+ } >+ }); >+ fUseOther.addSelectionListener(new SelectionAdapter() { >+ public void widgetSelected(SelectionEvent e) { >+ if (blockListeners()) >+ return; >+ int i = fUseOther.getSelectionIndex(); >+ setBlockListeners(true); >+ fUseDefault.select(i); >+ setBlockListeners(false); >+ doUseChange(i); > } > }); > } >+ >+ private void doUseChange (int index) { >+ fAttribute.setUse(index); >+ if (index == 2) { >+ fUseLayout.topControl = fUseCompDefault; >+ fUseComp.layout(); >+ if (fValue.getValue().equals(PDEUIMessages.SchemaAttributeDetails_defaultDefaultValue)) >+ fValue.getText().setSelection(0, fValue.getValue().length()); >+ fValue.getText().setFocus(); >+ } else if (index != 2) { >+ fUseLayout.topControl = fUseCompOther; >+ fUseComp.layout(); >+ fValue.setValue(PDEUIMessages.SchemaAttributeDetails_defaultDefaultValue); >+ fUseCompOther.setFocus(); >+ } >+ } > > public void modelChanged(IModelChangedEvent event) { > Object[] changedObjs = event.getChangedObjects(); >Index: src/org/eclipse/pde/internal/ui/editor/schema/SchemaElementDetails.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/schema/SchemaElementDetails.java,v >retrieving revision 1.25 >diff -u -r1.25 SchemaElementDetails.java >--- src/org/eclipse/pde/internal/ui/editor/schema/SchemaElementDetails.java 19 Jul 2007 20:29:27 -0000 1.25 >+++ src/org/eclipse/pde/internal/ui/editor/schema/SchemaElementDetails.java 20 Jul 2007 03:25:37 -0000 >@@ -31,6 +31,7 @@ > import org.eclipse.swt.events.SelectionAdapter; > import org.eclipse.swt.events.SelectionEvent; > import org.eclipse.swt.graphics.Color; >+import org.eclipse.swt.layout.GridData; > import org.eclipse.swt.widgets.Button; > import org.eclipse.swt.widgets.Composite; > import org.eclipse.swt.widgets.Label; >@@ -57,7 +58,9 @@ > Color foreground = toolkit.getColors().getColor(IFormColors.TITLE); > > fName = new FormEntry(parent, toolkit, PDEUIMessages.SchemaDetails_name, SWT.NONE); >- >+ // Ensures label columns on every detail page are same width >+ ((GridData)fName.getLabel().getLayoutData()).widthHint = minLabelWeight; >+ > Label label = toolkit.createLabel(parent, PDEUIMessages.SchemaDetails_deprecated); > label.setForeground(foreground); > Button[] buttons = createTrueFalseButtons(parent, toolkit, 2); >Index: src/org/eclipse/pde/internal/ui/editor/schema/SchemaRootElementDetails.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/schema/SchemaRootElementDetails.java,v >retrieving revision 1.20 >diff -u -r1.20 SchemaRootElementDetails.java >--- src/org/eclipse/pde/internal/ui/editor/schema/SchemaRootElementDetails.java 18 Jul 2007 23:17:14 -0000 1.20 >+++ src/org/eclipse/pde/internal/ui/editor/schema/SchemaRootElementDetails.java 20 Jul 2007 03:25:37 -0000 >@@ -22,6 +22,7 @@ > import org.eclipse.swt.events.SelectionAdapter; > import org.eclipse.swt.events.SelectionEvent; > import org.eclipse.swt.graphics.Color; >+import org.eclipse.swt.layout.GridData; > import org.eclipse.swt.widgets.Button; > import org.eclipse.swt.widgets.Composite; > import org.eclipse.swt.widgets.Label; >@@ -45,6 +46,8 @@ > Color foreground = toolkit.getColors().getColor(IFormColors.TITLE); > > fName = new FormEntry(parent, toolkit, PDEUIMessages.SchemaDetails_name, SWT.READ_ONLY); >+ // Ensures label columns on every detail page are same width >+ ((GridData)fName.getLabel().getLayoutData()).widthHint = minLabelWeight; > > Label label = toolkit.createLabel(parent, PDEUIMessages.SchemaDetails_deprecated); > label.setForeground(foreground); >Index: src/org/eclipse/pde/internal/ui/editor/schema/AbstractSchemaDetails.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/schema/AbstractSchemaDetails.java,v >retrieving revision 1.22 >diff -u -r1.22 AbstractSchemaDetails.java >--- src/org/eclipse/pde/internal/ui/editor/schema/AbstractSchemaDetails.java 19 Jul 2007 22:48:58 -0000 1.22 >+++ src/org/eclipse/pde/internal/ui/editor/schema/AbstractSchemaDetails.java 20 Jul 2007 03:25:36 -0000 >@@ -30,6 +30,7 @@ > import org.eclipse.swt.events.ModifyListener; > import org.eclipse.swt.events.SelectionAdapter; > import org.eclipse.swt.events.SelectionEvent; >+import org.eclipse.swt.graphics.GC; > import org.eclipse.swt.layout.GridData; > import org.eclipse.swt.layout.GridLayout; > import org.eclipse.swt.widgets.Button; >@@ -49,6 +50,8 @@ > protected static final String[] BOOLS = > new String[] { Boolean.toString(true), Boolean.toString(false) }; > >+ protected int minLabelWeight; >+ > private Section fSection; > private SchemaDtdDetailsSection fDtdSection = null; > private ElementSection fElementSection; >@@ -83,7 +86,16 @@ > } > > public final void createContents(Composite parent) { >- >+ // This is a hacked fix to ensure that the label columns on every details >+ // page have the same width. SchemaDetails_translatable plus 11 pixels >+ // represents the longest label on any field on any details page. This >+ // occurs on SchemaStringAttributeDetails and 11 is the size of the >+ // horizontal indent that contributes to the label's width. >+ GC gc = new GC(parent); >+ minLabelWeight = gc.textExtent(PDEUIMessages.SchemaDetails_translatable).x + 11; >+ gc.dispose(); >+ gc = null; >+ > parent.setLayout(FormLayoutFactory.createDetailsGridLayout(false, 1)); > FormToolkit toolkit = getManagedForm().getToolkit(); > fSection = toolkit.createSection(parent, Section.DESCRIPTION | ExpandableComposite.TITLE_BAR); >@@ -244,10 +256,10 @@ > fElementSection.fireSelection(selection); > } > >- protected ComboPart createComboPart(Composite parent, FormToolkit toolkit, String[] items, int colspan) { >+ protected ComboPart createComboPart(Composite parent, FormToolkit toolkit, String[] items, int colspan, int style) { > ComboPart cp = new ComboPart(); > cp.createControl(parent, toolkit, SWT.READ_ONLY); >- GridData gd = new GridData(GridData.FILL_HORIZONTAL); >+ GridData gd = new GridData(style); > gd.horizontalSpan = colspan; > gd.horizontalIndent = FormLayoutFactory.CONTROL_HORIZONTAL_INDENT; > cp.getControl().setLayoutData(gd); >@@ -256,6 +268,10 @@ > return cp; > } > >+ protected ComboPart createComboPart(Composite parent, FormToolkit toolkit, String[] items, int colspan) { >+ return createComboPart(parent, toolkit, items, colspan, GridData.FILL_HORIZONTAL); >+ } >+ > protected Button[] createTrueFalseButtons(Composite parent, FormToolkit toolkit, int colSpan) { > Composite comp = toolkit.createComposite(parent, SWT.NONE); > GridLayout gl = new GridLayout(2, false); >Index: src/org/eclipse/pde/internal/ui/pderesources.properties >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/pderesources.properties,v >retrieving revision 1.892 >diff -u -r1.892 pderesources.properties >--- src/org/eclipse/pde/internal/ui/pderesources.properties 19 Jul 2007 15:58:29 -0000 1.892 >+++ src/org/eclipse/pde/internal/ui/pderesources.properties 20 Jul 2007 03:25:36 -0000 >@@ -377,7 +377,7 @@ > SchemaEditor_ElementSection_newChoice=New Choice > SchemaEditor_ElementSection_newAttribute = New Attribute > SchemaEditor_ElementSection_newSequence=New Sequence >-SchemaAttributeDetails_defaultDefaultValue=(ENTER DEFAULT) >+SchemaAttributeDetails_defaultDefaultValue=Enter default value > > ReviewPage_noSampleFound=No sample has been selected. >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 197056
:
74203
|
74204
|
74205
|
74206
|
74207
|
74213
|
74215
|
74216
|
74217
|
74220
|
74315