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 145322 Details for
Bug 236977
make it more simple to reassign to self
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
add on hover affordance
clipboard.txt (text/plain), 7.93 KB, created by
Steffen Pingel
on 2009-08-21 17:26:14 EDT
(
hide
)
Description:
add on hover affordance
Filename:
MIME Type:
Creator:
Steffen Pingel
Created:
2009-08-21 17:26:14 EDT
Size:
7.93 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.mylyn.tasks.ui >Index: src/org/eclipse/mylyn/internal/tasks/ui/editors/TextAttributeEditor.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/editors/TextAttributeEditor.java,v >retrieving revision 1.18 >diff -u -r1.18 TextAttributeEditor.java >--- src/org/eclipse/mylyn/internal/tasks/ui/editors/TextAttributeEditor.java 24 Jul 2009 12:05:45 -0000 1.18 >+++ src/org/eclipse/mylyn/internal/tasks/ui/editors/TextAttributeEditor.java 21 Aug 2009 21:27:48 -0000 >@@ -51,7 +51,7 @@ > } else { > text = toolkit.createText(parent, getValue(), SWT.FLAT); > text.setFont(EditorUtil.TEXT_FONT); >- text.setData(FormToolkit.KEY_DRAW_BORDER, Boolean.TRUE); >+ text.setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TEXT_BORDER); > text.addModifyListener(new ModifyListener() { > public void modifyText(ModifyEvent e) { > setValue(text.getText()); >Index: src/org/eclipse/mylyn/internal/tasks/ui/editors/PersonAttributeEditor.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/editors/PersonAttributeEditor.java,v >retrieving revision 1.6 >diff -u -r1.6 PersonAttributeEditor.java >--- src/org/eclipse/mylyn/internal/tasks/ui/editors/PersonAttributeEditor.java 5 Dec 2008 23:25:50 -0000 1.6 >+++ src/org/eclipse/mylyn/internal/tasks/ui/editors/PersonAttributeEditor.java 21 Aug 2009 21:27:48 -0000 >@@ -11,9 +11,24 @@ > > package org.eclipse.mylyn.internal.tasks.ui.editors; > >+import org.eclipse.jface.layout.GridDataFactory; >+import org.eclipse.mylyn.internal.provisional.commons.ui.CommonImages; > import org.eclipse.mylyn.tasks.core.IRepositoryPerson; > import org.eclipse.mylyn.tasks.core.data.TaskAttribute; > import org.eclipse.mylyn.tasks.core.data.TaskDataModel; >+import org.eclipse.swt.SWT; >+import org.eclipse.swt.events.MouseEvent; >+import org.eclipse.swt.events.MouseTrackAdapter; >+import org.eclipse.swt.events.MouseTrackListener; >+import org.eclipse.swt.layout.GridData; >+import org.eclipse.swt.layout.GridLayout; >+import org.eclipse.swt.widgets.Composite; >+import org.eclipse.swt.widgets.Display; >+import org.eclipse.swt.widgets.Text; >+import org.eclipse.ui.forms.events.HyperlinkAdapter; >+import org.eclipse.ui.forms.events.HyperlinkEvent; >+import org.eclipse.ui.forms.widgets.FormToolkit; >+import org.eclipse.ui.forms.widgets.ImageHyperlink; > > /** > * @author Steffen Pingel >@@ -25,6 +40,79 @@ > } > > @Override >+ public Text getText() { >+ return super.getText(); >+ } >+ >+ @Override >+ public void createControl(Composite parent, FormToolkit toolkit) { >+ String userName = getModel().getTaskRepository().getUserName(); >+ if (isReadOnly() || userName == null || userName.length() == 0) { >+ super.createControl(parent, toolkit); >+ } else { >+ final Composite composite = new Composite(parent, SWT.NONE); >+ GridLayout parentLayout = new GridLayout(2, false); >+ parentLayout.marginHeight = 0; >+ parentLayout.marginWidth = 0; >+ parentLayout.horizontalSpacing = 0; >+ composite.setLayout(parentLayout); >+ composite.setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TEXT_BORDER); >+ >+ super.createControl(composite, toolkit); >+ getText().setData(FormToolkit.KEY_DRAW_BORDER, Boolean.FALSE); >+ GridDataFactory.fillDefaults().grab(true, false).applyTo(getText()); >+ >+ final ImageHyperlink selfLink = new ImageHyperlink(composite, SWT.NO_FOCUS); >+ selfLink.setActiveImage(CommonImages.getImage(CommonImages.PERSON_ME)); >+ selfLink.setHoverImage(CommonImages.getImage(CommonImages.PERSON_ME)); >+ selfLink.addHyperlinkListener(new HyperlinkAdapter() { >+ @Override >+ public void linkActivated(HyperlinkEvent e) { >+ String userName = getModel().getTaskRepository().getUserName(); >+ if (userName != null && userName.length() > 0) { >+ getText().setText(userName); >+ setValue(userName); >+ } >+ } >+ }); >+ GridDataFactory.fillDefaults().applyTo(selfLink); >+ MouseTrackListener mouseListener = new MouseTrackAdapter() { >+ int version = 0; >+ >+ @Override >+ public void mouseEnter(MouseEvent e) { >+ ((GridData) selfLink.getLayoutData()).exclude = false; >+ composite.layout(); >+ selfLink.setImage(CommonImages.getImage(CommonImages.PERSON_ME)); >+ selfLink.redraw(); >+ version++; >+ } >+ >+ @Override >+ public void mouseExit(MouseEvent e) { >+ final int lastVersion = version; >+ Display.getDefault().asyncExec(new Runnable() { >+ public void run() { >+ if (version != lastVersion || selfLink.isDisposed()) { >+ return; >+ } >+ selfLink.setImage(null); >+ selfLink.redraw(); >+ ((GridData) selfLink.getLayoutData()).exclude = true; >+ composite.layout(); >+ } >+ }); >+ } >+ }; >+ getText().addMouseTrackListener(mouseListener); >+ selfLink.addMouseTrackListener(mouseListener); >+ >+ toolkit.paintBordersFor(composite); >+ setControl(composite); >+ } >+ } >+ >+ @Override > public String getValue() { > IRepositoryPerson repositoryPerson = getAttributeMapper().getRepositoryPerson(getTaskAttribute()); > if (repositoryPerson != null) { >Index: src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorActionPart.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorActionPart.java,v >retrieving revision 1.54 >diff -u -r1.54 TaskEditorActionPart.java >--- src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorActionPart.java 19 Jul 2009 20:47:16 -0000 1.54 >+++ src/org/eclipse/mylyn/internal/tasks/ui/editors/TaskEditorActionPart.java 21 Aug 2009 21:27:48 -0000 >@@ -325,6 +325,10 @@ > } > editorControl.setLayoutData(gd); > >+ if (editor instanceof PersonAttributeEditor) { >+ editorControl = ((PersonAttributeEditor) editor).getText(); >+ } >+ > // the following listeners are hooked up so that changes to something in the actions area > // will cause the corresponding radio button to become selected. Note that we can't just use > // a focus listener due to bug 254806 >Index: src/org/eclipse/mylyn/tasks/ui/editors/AttributeEditorToolkit.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/AttributeEditorToolkit.java,v >retrieving revision 1.18 >diff -u -r1.18 AttributeEditorToolkit.java >--- src/org/eclipse/mylyn/tasks/ui/editors/AttributeEditorToolkit.java 24 Jul 2009 12:05:46 -0000 1.18 >+++ src/org/eclipse/mylyn/tasks/ui/editors/AttributeEditorToolkit.java 21 Aug 2009 21:27:48 -0000 >@@ -28,6 +28,7 @@ > import org.eclipse.mylyn.internal.tasks.ui.PersonProposalProvider; > import org.eclipse.mylyn.internal.tasks.ui.editors.EditorUtil; > import org.eclipse.mylyn.internal.tasks.ui.editors.Messages; >+import org.eclipse.mylyn.internal.tasks.ui.editors.PersonAttributeEditor; > import org.eclipse.mylyn.internal.tasks.ui.editors.RichTextAttributeEditor; > import org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTextViewerConfiguration.Mode; > import org.eclipse.mylyn.tasks.core.data.TaskAttribute; >@@ -73,8 +74,10 @@ > } > > public void adapt(AbstractAttributeEditor editor) { >- if (editor.getControl() instanceof Text || editor.getControl() instanceof CCombo) { >- Control control = editor.getControl(); >+ if (editor.getControl() instanceof Text || editor.getControl() instanceof CCombo >+ || editor instanceof PersonAttributeEditor) { >+ Control control = (editor instanceof PersonAttributeEditor) ? ((PersonAttributeEditor) editor).getText() >+ : editor.getControl(); > if (!editor.isReadOnly() && hasContentAssist(editor.getTaskAttribute())) { > IContentProposalProvider contentProposalProvider = createContentProposalProvider(editor.getTaskAttribute()); > ILabelProvider labelPropsalProvider = createLabelProposalProvider(editor.getTaskAttribute());
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 236977
: 145322 |
145323
|
145357